春节前的《区块链技术公开课100讲》第13讲,一块链习特意邀请了ChainX创始人及CTO郭光华来担任这次分享嘉宾,围绕了《下一代区块链技术框架Substrate》主题,和你们深刻探讨了区块链发展示状、Substrate重塑区块链、创新方向、Polkadot & ChainX、如何参与等5个方面。html
讲师:郭光华,Substrate和Polkadot社区核心开发者,ChainX创始人&CTO。c++
完整版视频以下:git
v.qq.com/x/page/l083…github
区块链发展示状算法
以太坊为表明的区块链自我改良派,历史的包袱过重,走得慢。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年前的一些技术能够参考我老婆翻译的一些文章:lilymoana.github.io/ConsensusCo…
隐私
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+区块链开发者一块学习