• 注册
  • 综合生活 综合生活 关注:37 内容:289

    “区块链100分”第十八期——《可扩展区块链的墨客实践》

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • 综合生活
    • 墨客社区理事

      转自: 大数据栋察 2019-12-05
      “区块链100分”第十八期——《可扩展区块链的墨客实践》
      • 每天,我们将邀请一位专家给大家进行分享,并做好持续不间断的传播。

      • 我们希望借此平台汇聚更多的顶尖专家及人才;

      • 我们希望依此活动找到更多志同道合的伙伴;

      • 我们更希望倾听不同界的最强音,借彼此微薄之力,服务于国家战略!

      引言

      中关村大数据产业联盟秘书长赵国栋:本次分享由中关村大数据产业联盟联手BITCLUB联合举办(或战略合作),布洛克、天使城邦、31区、数据观等机构提供社群与传播支持,覆盖30+人数超过10000人的天使投资人社群及20+覆盖超过20000人区块链产业人士。本次分享内容,将在布洛克网站专栏、天使联盟旗下媒体矩阵再次传播。重庆社群已经开通,重庆当地的各区县、各委办局领导都在看咱们的分享。昨天井大的分享,非常成功。这位老兄总是在三言两语之间,就指出了问题的本质。相信看过昨天分享的同学们都有收获。今天咱们跨洋分享继续。井大是井系区块链的精神领袖,陈小虎井系区块链的的掌门人。请小虎同学给大家带来一场技术的盛宴。小虎从2012年开始接触区块链,在区块链领域已经递交了30多项专利。
      我提前跟小虎学习了一下。有几个要点。
      第一,就像以太坊一键发币的功能类似,小虎在实现一键发链的功能。
      第二,基于墨客公链可以建立不同功能、不同类型的区块链。
      第三,墨客公链,长期来看有可能成为下一代网络的基础。
      这里面涉及大量的技术问题,我们还是请小虎一一道来。
      陈小虎:感谢赵国栋老师。非常高兴能有机会跟大家共享MOAC区块链的一些技术实践。我们团队最早可以追溯到6年前,昨天井大也大致讲了最初的起因。从2017年开始,我们针对已有的区块链技术的弱点,在我们对软件系统,以及区块链技术的深刻理解下,对可扩展的商用区块链的公链实现,提出了独特的设计和开发计划,这就是墨客的来源。目前看起来,我们在2017年初提出的多层架构,多链系统,已经成为目前区块链发展的重要方向。在与其他项目交流的过程中,看到越来越多的项目采用类似我们的框架。这个一方面是好事情,证明我们有很好的前瞻性,我们的努力是正确的,而且比其他的项目有了更多的发展时间。另一方面也说明区块链现在是逆水行舟,不进则退,有这么多的追赶者,如果我们不努力,很快就会被超过。
      这里的话特别提一下以太坊,以太坊在过去的3年中,基本上没有值得让人眼前一亮的技术进展。而且从目前看,按现有的技术进展,短时间内也不会有太大的突破。这是很可惜的事情,反过来讲,也是我们的机会。在提出了我们自认为比较先进的架构之后,具体的实现也是非常有挑战性的。经过团队的不懈努力,我们在2018年四月成功地实现了主网上线,然后在此基础上不断拓展,基本实现了白皮书的要求。当前,我们的一个重要方向是在应用落地方面,我们与一些具有重大应用价值的应用合作,集中精力,让它们能快速,稳定的上线。这里的例子有FileStorm,PAS项目等。后续我们的其他成员会陆续介绍。

      第十八期:《可扩展区块链的墨客实践》

      主持人:赵国栋

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

      分享嘉宾:陈小虎

      分享者简介:

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

      第一部分

      系统链和应用链。

      接下来,我会稍微具体介绍一下我们的架构,也是今天的主要内容。
      先给大家看一个图。

      “区块链100分”第十八期——《可扩展区块链的墨客实践》

      这是我们的双层架构,原来叫母子链架构,后来应用方觉得叫子链不够高大上,所以现在改称系统链和应用链。
      这种双层架构有几个特殊的地方:
      1. 应用链的生命周期是由系统链的智能合约来控制的。这个相当于是给应用链提供了一个去中心化的”上帝“的角色。这个概念很重要。因为对于一个区块链来讲,区块链的初始化,可信的随机数,还有可信私钥交换等等,都需要这么一个角色。如果没有一个去中心化的,很多系统只能将就用中心化的。在这里,墨客的系统链能够提供一个可编程的去中心化的“上帝”,是非常有用的。再给大家看另外一个图。

      “区块链100分”第十八期——《可扩展区块链的墨客实践》

      这里就是第二个特殊的地方。
      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好像就是这样被攻击了。是的,再给大家看一个图。

      “区块链100分”第十八期——《可扩展区块链的墨客实践》

      这个是我们的解决方案。具体的做法,我们创造性地采用考虑历史权重的POW,英文是POW-HWD。这个方案的工作原理是利用:诚实的挖矿节点会持续地挖矿,而攻击者只是愿意短时间内消耗一定资源来攻击。因此,在考虑历史贡献的情况下,可以降低突然涌入的大算力的影响。
      在配置合适的历史窗口参数下,我们可以把攻击者的成本提高100倍-1000倍。这样,小算力的POW的公链也能相当程度地提高抗攻击能力。相关的内容我们已经发表在今年7月的IEEE blockchain conference上面。

      第三部分

      共识方案的一些总结

      最后,我再给一点新的干货。这个是我对现有的共识方案的一些总结,也是对未来墨客发展方向的一个探索。之前都没有公开过,这里给大家共享,大家看这个图。

      “区块链100分”第十八期——《可扩展区块链的墨客实践》

      基本上所有的区块链的共识协议,需要解决一个根本问题。就是用什么方式决定谁可以产生下一个区块。可以是上帝选择,或者轮流出块,或者投票选取,或者是随机选取。选用不同的方式,就对应着不同的特性。也对应着不同的功能,成为不同的链。比如说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种共识方式,每个都有独立的代码。
      陈小虎:未来可以让用户自己定义新的共识方式。
      武源文:真正面向海量应用生态的强大架构设计 。
      颜阳:多层架构这样其实解决了我们在应用过程中,还要倒回来重新修改封装的底层的问题,对于运营来讲,带来了很大的便宜性。
      陈小虎:对的。
      赵国栋:咱们今天交流就结束了,谢谢小虎,谢谢井大,明天跨洋交流我们继续哈。
      陈小虎:谢谢各位的观看。

      请登录之后再进行评论

      登录
    • 做任务
    • 实时动态
    • 偏好设置
    • 返回顶部
    • 帖子间隔 侧栏位置: