美文网首页区块链
技术分享 |下一代区块链技术框架 Substrate

技术分享 |下一代区块链技术框架 Substrate

作者: 642155e30a13 | 来源:发表于2019-02-21 15:49 被阅读12次

作者:郭光华 

春节前的《区块链技术公开课100讲》第13讲,一块链习特地邀请了ChainX创始人及CTO郭光华来担任此次分享嘉宾,围绕了《下一代区块链技术框架Substrate》主题,和大家深入探讨了区块链发展现状、Substrate重塑区块链、创新方向、Polkadot & ChainX、如何参与等5个方面。

讲师:郭光华,Substrate和Polkadot社区核心开发者,ChainX创始人&CTO。

完整版视频如下:

下一代区块链技术框架Substrate

区块链发展现状


以太坊为代表的区块链自我改良派,历史的包袱太重,走得慢。EOS为代表的改革派,雷声大雨点小。

不管是以太坊的自我改良,还是EOS的的改革,他们都是认识到了区块链现有状况:区块链智能合约基本能用,但离大规模应用还差得远 ,这主要是目前区块链框架在(扩展性,易用性,共识能源问题)的局限性导致的。

我们从Code说话, 以太坊各个技术的更新还可以,但执行速度慢。EOS像是有上气没下气。唯有Substrate是最前沿的革命派。

Substrate重塑区块链

上面我们说到了现有区块链,只是验证了区块链dapp能用,但没法做到大规模应用。主要局限于三点,下面我们分三部分来分析substrate 如何解决这些问题。

扩展性

现有区块链都是单链模式, 一条链的最大的tps 不能过万(单台计算机tps 差不多10万tps,因为hash等加密算法的重复利用,链的tps << 1/10 单台计算机计算)。

Substrate可以灵活的拓展任意条parachain,  好比现在的分布式计算,3台机子算不过来, 我们加机器。

各层结构的模块化: 区块链大致由(p2p, rpc, consensus, storage,crypto)这几部分组成。但现有的链都是把这几个模块糅合在一起。

parity团队因为在长期开发以太坊,积累了经验, 把这几个模块往高层次抽象。如substrate 会做到devp2p, libp2p 网络一键选择更换。再如任意种hash算法替换。

任意代码的升级,比普通云服务器的升级更简便。因为每一个substrate 节点都含有两份可执行runtime内核代码。

一份是本地编译的二进制代码。另一份是存在链上的wasm代码。为什么两份代码就能解决了快速稳定升级?这是个好问题

易用性

两层结构合约:runtime合约和contract 合约.wasm 合约,支持rust/c/c++ wasm的原生storage 接口.

极高层次的抽象,可以使不同的开发人员做不同部分的开发.

双层执行 code(native, wasm)

双层共识

双层合约

双层p2p

多模版密码库

共识

多种共识并行交互执行, 最早是algrand 定义了快慢速通道共识并行,但那现在还是在白皮书里, 现在的substrate 就能做到了aura + grandpa 两种共识并行运行。 

这种组合共识,既有POW的分散性,又没有他的能源浪费问题,还有一个100%的确定性,而不是pow的概率确定性, 尤其是性能方面,pow不可与之同日而语。

aura 提供了快速并发出块性, 像POW一样节点分散,可以支持1000个节点同时在同一高度同时出块。

grandpa 提供了确定性,只要用bft确认最后一个大家公知的块即可。 这对传统BFT的通信消息量减少99%以上。


Libp2p

IPFS 团队定义的一个协议, 是目前市面上支持各种协议最广,最稳定的p2p库。Devp2p,  以太坊的p2p层协议,比较单一简单

Rust


社区特别open的个语言和区块链open思想吻合。有C++的性能, 没有C++的运行时不确定。从语言库级别支持std, no_std 两套代码规范, no_std的代码兼容wasm这种确定性执行

创新方向

区块链技术现在都在努力往哪些方面创新:共识、隐私、合约VM

共识

Cardano, Algrand, difinity 等等, 这些项目都是以共识创新而闻名的项目, 然而,这些项目的共识创新现在都只停留在白皮书里。 Substrate 实现了他们白皮书里所期望的共识效果

优秀共识所期望的点: 像POW一样,大家都有同等的同时出块的公平权利,又没有他的能源浪费和性能问题。其实就是Substrate 的Aura + grandpa共识,也是VB所常说的casper

Casper + tendermint 的比较, 或者1年前的一些技术可以参考我老婆翻译的一些文章:https://lilymoana.github.io/ConsensusCompare.html

隐私

Bulletproofs 基于这协议的隐私币有许多

零知识证明, parity 团队也正在用substrate 框架去实现zcash

抗量子密码学,同态加密等理论加密算法的研究

合约VM


WASM 阵营: 基于wasm VM 的链越来越多, 根本原因是wasm生态特别丰富,wasm现在已经支持c/c++/rust等编译型语言,其他各种语言都是在支持的路途中。

非wasm阵营,如solidity 等VM

Polkadot & ChainX

Polkadot 多链如何组织与管理


共识的一致管理:共识由relay chain 统一管理, 各个parachain的验证人由relay chain 随机随时分配。 举个最简单的例子, 比如polkadot 网络由三条链组成(relay, para1, para2),一共有7个验证人节点, 那么relay chain 管理共识的模块,可以采取2: 3 :3 的个数随机分配给 relay, para1, para2 三条链随机出块

消息的统一路由:消息路由这是polkadot 需要做的第二大部分, 这部分在白皮书里有介绍,但实现正在展开中,大致的思路可以对比参看路由器的路由协议。 只是这些不同链的路由,最后由relaychain统一管理

ChainX 多币如何组织与管理

跨链方式的选择:这又回到之前咱们说的问题, hash 和椭圆曲线谁更好的问题。 两个例子:

BTC:是用hash方式的共识,更优选择是链上轻节点。

EOS:是椭圆曲线式的共识, 更优选择分布式密钥多签。

币在ChainX上价值的互换:ChainX 会在Runtime合约层内嵌各种coin撮合的交易所,同时也会把这些API接口留给合约层, 这样任何开发合约的用户,可以自如的选择任何币种作为价值驱动来开发自己的合约。 比如, 可以用BTC来开发合约。

如何参与

在区块链世界即将爆发的前夕,我们如何参与进来。技术人员如何参与 - hack substrate,开发合约的过程可以带着这三个问题去学习:

交易怎么调用进来

相关业务逻辑如何处理

处理结果如何存储在链上

如何保证一致性

_______________________________________

          

                                        直播预告

                                          主题:智能合约设计中的常用算法

                                                             直播时间:

                                         北京时间2月24日(本周日)晚上8点

                                                         导师介绍:唐飞虎

唐飞虎

                                                             前谷歌工程师

                                               开源山寨币矿池 Gpool Cofounder

                                                ACM/ICPC 亚洲赛区区域赛金牌

                                                      2015 微软编程之美冠军

                                                          梦日记中文站主编

                                                    加密货币拟人链接偶像主催

                                                   区块链游戏隐秘世界 OL 策划

                                                                  分享大纲:

                                                             什么是智能合约 

                                                          智能合约可以做什么

                                                          为什么需要应用算法

                                                                   盲拍算法

                                                                抵押分红算法

                                                              连续流动性算法

                                                                   听课方式:

                        添加Jessie小姐姐微信号(yikuailianxi),回复“15”,听岛娘讲区块链!

                                                                驱动幸福生活

                                                                链接美好未来

                                           你的每一次转发,让区块链世界更有意义。

                                                     一块链习更多好课等你来看哦

                                                                关注「一块链习」

                                                  与全球1000+区块链开发者一块学习

相关文章

  • 技术分享 |下一代区块链技术框架 Substrate

    作者:郭光华 春节前的《区块链技术公开课100讲》第13讲,一块链习特地邀请了ChainX创始人及CTO郭光华来担...

  • Chainx 简介

    Chainx 是使用 Polkadot 技术 Substrate 开发的一个项目,Substrate 简化了区块链...

  • Substrate介绍: 如何运行和交互

    介绍 Substrate是parity创建的下一代区块链框架 1.0使用Apache 2.0,商业项目可以不受限制...

  • 区块链及应用

    最近在小组技术分享会上分享了区块链技术及应用,这里也记录整理下,我所理解的区块链技术。区块链,就是一种分布式账本,...

  • 理解区块链技术的一个视角

    我发现理解区块链技术的一个障碍就是难免在互联网的思维框架里去理解区块链技术。初次接触区块链技术时很容易对其产...

  • THOR从溯源到支付 关怀你的每一步

    区块链正在以新的思维模式、技术架构推动整个实体经济的技术、框架、效率以及模式的变革,在此光环之下的区块链技术如何落...

  • 区块链的技术与未来——简历链CVH

    一夜之间,区块链火了。“区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。”“区块链是未来5年...

  • 区块链技术的发展阶段相当于互联网的1994年

    区块链是下一代互联网的核心技术,而区块链技术的发展阶段相当于互联网的1994年,其实我们今天对区块链的神话与困惑都...

  • 区块链的技术跟历史意义

    区块链技术的历史意义及运用优势 1.历史意义 区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术...

  • 区块基石引燃区块链3.0变革

    区块链技术正在改变世界 区块链技术正在改变世界 区块链技术落地将极大地影响我们的社会 实施区块链技术将在未来对我们...

网友评论

    本文标题:技术分享 |下一代区块链技术框架 Substrate

    本文链接:https://www.haomeiwen.com/subject/sdzryqtx.html