收起
1分钟1小时1天1周1个月

直播 | “区块链100分”线上分享第十八期——分享嘉宾陈小虎

中关村大数据产业联盟“区块链100分”线上分享交流活动,将于今天中午12:00正式上线第十八期。

2019年12月4日 10:00 区块链技术 大数据

中关村大数据产业联盟“区块链100分”线上分享交流活动,将于今天中午12:00正式上线第十八期。

主办方:中关村大数据产业联盟“区块链100分”& 31区

本期主题:《可扩展区块链的墨客实践》

本期主持人:中关村大数据产业联盟秘书长 赵国栋

主持人介绍:

赵国栋,中关村大数据产业联盟秘书长、国家大数据战略1142工程副组长、现任上市公司朗新科技、富邦股份、奥维云网独立董事、工信部专家库成员,中国计算机学会大数据专家委员会委员,首辅智库理事,盘古智库发起人兼学术委员。北京邮电大学经济管理学院特聘导师。《大数据时代的历史机遇》、《产业互联网》、《数字生态论》、《区块链世界》、《区块链与大数据》作者。

分享者:陈小虎

分享者简介: 

陈小虎:MOAC(墨客)公链创始人、CEO。浙江大学学士、硕士,加州大学硕士;硅谷18年以上的软件研发和管理经验;联合创办了多家初创企业;2012年起参与区块链技术的研发,井通区块链底层技术的发起和推动者之一;2017年推出墨客公链,首创多链分层分片架构;擅长算法、软件架构,具有非凡的洞察力和远见;在区块链技术领域递交了30多项专利。

赵国栋:本次分享由中关村大数据产业联盟联手BITCLUB联合举办(或战略合作),布洛克、天使城邦、31区、数据观等机构提供社群与传播支持,覆盖30+人数超过10000人的天使投资人社群及20+覆盖超过20000人区块链产业人士。本次分享内容,将在布洛克网站专栏、天使联盟旗下媒体矩阵再次传播。

赵国栋:重庆社群已经开通,重庆当地的各区县、各委办局领导都在看咱们的分享。

赵国栋:昨天井大的分享,非常成功。这位老兄总是在三言两语之间,就指出了问题的本质。相信看过昨天分享的同学们都有收获。

赵国栋:今天咱们跨洋分享继续。

小邦:大家好,我是BitClub数字天使俱乐部小邦。

赵国栋:井大是井系区块链的精神领袖,陈小虎井系区块链的的掌门人。

赵国栋:请小虎同学给大家带来一场技术的盛宴。

赵国栋:小虎从2012年开始接触区块链,在区块链领域已经递交了30多项专利。

陈小虎:谢谢大家。

赵国栋:我提前跟小虎学习了一下。有几个要点。

赵国栋:第一,就像以太坊一键发币的功能类似,小虎在实现一键发链的功能。

赵国栋:第二,基于墨客公链可以建立不同功能、不同类型的区块链。

赵国栋:第三,墨客公链,长期来看有可能成为下一代网络的基础。

赵国栋:这里面涉及大量的技术问题,我们还是请小虎一一道来。

陈小虎:感谢赵国栋老师。

陈小虎:非常高兴能有机会跟大家共享MOAC区块链的一些技术实践。

陈小虎:我们团队最早可以追溯到6年前,昨天井大也大致讲了最初的起因。

陈小虎:从2017年开始,我们针对已有的区块链技术的弱点,在我们对软件系统,以及区块链技术的深刻理解下,对可扩展的商用区块链的公链实现,提出了独特的设计和开发计划,这就是墨客的来源。

陈小虎:目前看起来,我们在2017年初提出的多层架构,多链系统,已经成为目前区块链发展的重要方向。

陈小虎:在与其他项目交流的过程中,看到越来越多的项目采用类似我们的框架。

陈小虎:这个一方面是好事情,证明我们有很好的前瞻性,我们的努力是正确的,而且比其他的项目有了更多的发展时间。

陈小虎:另一方面也说明区块链现在是逆水行舟,不进则退,有这么多的追赶者,如果我们不努力,很快就会被超过。

陈小虎:这里的话特别提一下以太坊,以太坊在过去的3年中,基本上没有值得让人眼前一亮的技术进展。而且从目前看,按现有的技术进展,短时间内也不会有太大的突破。这是很可惜的事情,反过来讲,也是我们的机会。

陈小虎:在提出了我们自认为比较先进的架构之后,具体的实现也是非常有挑战性的。经过团队的不懈努力,我们在2018年四月成功地实现了主网上线,然后在此基础上不断拓展,基本实现了白皮书的要求。

陈小虎:当前,我们的一个重要方向是在应用落地方面,我们与一些具有重大应用价值的应用合作,集中精力,让它们能快速,稳定的上线。

陈小虎:这里的例子有FileStorm,PAS项目等。后续我们的其他成员会陆续介绍。

陈小虎:接下来,我会稍微具体介绍一下我们的架构,也是今天的主要内容。

陈小虎:先给大家看一个图。


陈小虎:这是我们的双层架构,原来叫母子链架构,后来应用方觉得叫子链不够高大上,所以现在改称系统链和应用链。

陈小虎:这种双层架构有几个特殊的地方:

陈小虎:1. 应用链的生命周期是由系统链的智能合约来控制的。

陈小虎:这个相当于是给应用链提供了一个去中心化的”上帝“的角色。这个概念很重要。

陈小虎:因为对于一个区块链来讲,区块链的初始化,可信的随机数,还有可信私钥交换等等,都需要这么一个角色。

陈小虎:如果没有一个去中心化的,很多系统只能将就用中心化的。

陈小虎:在这里,墨客的系统链能够提供一个可编程的去中心化的“上帝”,是非常有用的。

陈小虎:再给大家看另外一个图。


陈小虎:这里就是第二个特殊的地方。

陈小虎:2. 这个架构定义了一个应用链和系统链,以及应用链和应用链之间通讯的通用框架,使得应用链有强大的功能,同时又可以“一键发链”的方式快速部署。

陈小虎:这里还值得一提的是,应用链可以周期性地将自己的区块哈希刷新记录到系统链当中,相当于是用系统链锚定了应用链的最终性。

井大:补充一句,一键发链,主要是针对标准化的简单应用,有点宣传的意思在里面。

陈小虎:谢谢井大补充。

井大:真正复杂的商业逻辑,不可能一键实现的。

井大:小虎你继续分享就好。

陈小虎:这样应用链即使是没有最终性的,比如POW,POR,也就有了最终性。

陈小虎:另外,由于系统链通常比应用链安全许多,这样的锚定,可以大大提高应用链的安全性。

陈小虎:并且由此可以衍生一些附加的功能,比如区块链扁平化等。

陈小虎:举个例子,比如对于存储容量比较小的应用链节点,可以在刷新之后,把不需要的历史记录删除,只要少量的节点记录全部历史即可。这样的做法,对于IOT节点是非常有用的。

赵国栋:这个双层结构,非常有意思。就像DC/EP,既可以改革,还不颠覆现有格局。

陈小虎:3. 我们完成了应用链的多种共识方式的实现。

陈小虎:这是基于这样一个逻辑,应用是多种多样的,不能靠一个共识方式支撑所有应用。

陈小虎:因此,我们提出了几种不同的共识模式供应用方选择:

陈小虎:第一个是快速合约应用链ProcWind,可以认为是一个通用处理器。

陈小虎:第二个是去中心化存储应用链FileStorm,可以看成是一个去中心化的文件存储系统。

陈小虎:第三个是强随机数应用链RandDrop,可以看成是一个专用处理器。

陈小虎:第四个是物联网应用方案IOTMist。

陈小虎:特别针对物联网节点容量小(包括存储,cpu,内存)的特点,采用多层(>2)的结构,应用链可以作为上层应用链的系统链,从而构建一个树状的区块链系统,满足物联网特殊的需求。

陈小虎:前面三个都已经实现,最后一个还在开发中。

陈小虎:第四个特殊点在于,我们由此可以根据不同共识协议构建多样性的应用。

陈小虎:更为重要的是,一个应用可以采用多个应用链来满足需求。

陈小虎:由于前面提到过的统一的框架,所以,一个应用可以同时使用两种不同的应用链ProcWind和Filestorm,实现应用逻辑和相关数据存储的去中心化。

陈小虎:物联网这个可以做垂直4层。

陈小虎:这样的应用,对未来基于海量用户以及用户自己控制的海量数据的场景,这个框架是很合适的。

井大:可以容纳10亿个节点。

井大:想一想现代数字城市。

陈小虎:井大说的很好。

陈小虎:5. 对于应用来讲,降低用户的准入门槛非常重要。

陈小虎:现有的区块链的访问方式其实并不友好。

陈小虎:最常见的基于智能合约的应用,用户在调用任何一个功能的时候,都需要消耗一定量的gas,这样要么用户事先就有了一定量的token,或者应用方自动给潜在用户事先充值。都很麻烦。

陈小虎:墨客的应用链的实现可以不需要采用token,所以避免了用户的准入门槛的问题。但是底层的系统链通过资源控制,可以避免应用链上的恶意用户的sybil 攻击。

陈小虎:至于用户说不想要token,我们的应用链完成可以实现。

陈小虎:接下来我想提一下底层的系统链。

陈小虎:刚才讲了,应用链可以有多种共识,而且可能有很多的应用链实例。

陈小虎:那么系统链必须是一个有足够安全性和去中心化的公链,才能支撑得起上面的大量的应用。

陈小虎:墨客的底层公链采用POW的方式。因为我们认为目前只有POW满足这样的要求。

陈小虎:墨客的POW采用类似于以太坊的GPU挖矿。

陈小虎:但是所有的POW公链有个问题,就是如果你不是所有同质POW的老大,你很容易受到51%攻击。

陈小虎:具体做法就是短时间内,从其他同质POW网络中租用大量算力,对目标POW公链进行攻击,得手后再退出。

陈小虎:这种短时间的租用其实成本非常低,低的让人惊讶。

陈小虎:那么MOAC作为小算力的POW公链,我们必须解决这个问题。

井大:etc好像就是这样被攻击了。

陈小虎:是的,再给大家看一个图。


陈小虎:这个是我们的解决方案。

陈小虎:具体的做法,我们创造性地采用考虑历史权重的POW,英文是POW-HWD。

陈小虎:这个方案的工作原理是利用:诚实的挖矿节点会持续地挖矿,而攻击者只是愿意短时间内消耗一定资源来攻击。

陈小虎:因此,在考虑历史贡献的情况下,可以降低突然涌入的大算力的影响。

陈小虎:在配置合适的历史窗口参数下,我们可以把攻击者的成本提高100倍-1000倍。

陈小虎:这样,小算力的POW的公链也能相当程度地提高抗攻击能力。

陈小虎:相关的内容我们已经发表在今年7月的IEEE blockchain conference上面。

陈小虎:最后,我再给一点新的干货。

陈小虎:这个是我对现有的共识方案的一些总结,也是对未来墨客发展方向的一个探索。

陈小虎:之前都没有公开过,这里给大家共享,大家看这个图。


陈小虎:基本上所有的区块链的共识协议,需要解决一个根本问题。

陈小虎:就是用什么方式决定谁可以产生下一个区块。

陈小虎:可以是上帝选择,或者轮流出块,或者投票选取,或者是随机选取。

陈小虎:选用不同的方式,就对应着不同的特性。

赵国栋:也对应着不同的功能,成为不同的链。

陈小虎:比如说PBFT,问题就是消息量太大,准入许可要求,在线率问题。

陈小虎:POW的问题就是消耗能源,没有最终性。

陈小虎:但是POW有个很好的特点是抗拷贝。

陈小虎:因为POW的算力是物理要求,不能同时复制多份。

陈小虎:对于POS来讲,就很容易复制另外一份。

陈小虎:在这个图里面,一个重要的信息是不同的协议能够适用的节点数量。

陈小虎:目前,支撑节点数量最多,也就是最去中心化的是POW。

陈小虎:大家看最下来两个绿色的协议,一个是RBFT,这个是井通的目标。我们希望是能够超越Libra的Hotstuff协议。

颜阳:在系统链这层,能够把pow+pos同时结合起来。

陈小虎:另外一个是SAV Protocol,这个是未来墨客发展的方向。我们希望它能够支持百万以上的节点,并且不需要消耗太多的能量。

陈小虎:这个图大家可以体会一下,我今天的讲话就到这里,谢谢大家。

赵国栋:辛苦小虎,感谢小虎的分享,的确不负技术盛宴之名。

赵国栋:大家有什么问题,可以敞开问哈,不要错过了和硅谷大牛直接切磋的机会。

赵国栋:而且井大也一直在线,随时补充。

井大:墨客是首创分层架构,应用链这里,实现了分片,而且实现了原子跨链,比cosmos和pokadat先落实。

群友:问题1:RBFT我们的整个井通在容错性上有改进吗?

陈小虎:回答问题1:有很大的改进,而且可以解决目前Libra的准入限制和节点数量问题。

颜阳:问题2:目前,这种分层架构能否用几个技术指标体现出它的性能?

陈小虎:回答问题2:分层架构有两种扩展,水平扩展和垂直扩展。垂直扩展刚才井大讲了,可以最多有4层,水平扩展是无限的。可以至少支持1000条应用链。具体的tps我就不讲了。每一条应用链都类似于一个以太坊。可以支持多合约。

赵国栋:目前区块链几个热点技术,墨客都有涉及,而且取得了成果。

颜阳:问题3:分层架构体现了它的应用的灵活性,但是有的时候底层链需要不得不update的时候,会不会增加发布的复杂性?

陈小虎:回答问题3:应用链其实有一个很好的特性,应用链的代码是和底层系统链的代码是分开的。底层的更新不影响上层的应用。更加极端一点,应用链可以脱离底层单独运行,但是就少了很多跨链和刷新的功能。但是神奇的是,根据需要,应用链可以再接回底层。

陈小虎:补充一下,上述讲的应用链的4种共识方式,每个都有独立的代码。

陈小虎:未来可以让用户自己定义新的共识方式。

武源文:真正面向海量应用生态的强大架构设计 。

颜阳:多层架构这样其实解决了我们在应用过程中,还要倒回来重新修改封装的底层的问题,对于运营来讲,带来了很大的便宜性。

陈小虎:对的。

赵国栋:咱们今天交流就结束了,谢谢小虎,谢谢井大,明天跨洋交流我们继续哈。

陈小虎:谢谢各位的观看。