百度入局, 一文读懂年交易过4亿「超级链」究竟是什么?
记者 | Aholiab
出品 | 区块链大本营(blockchain_camp)
从去年至今,百度在区块链上的动作不断,先是推出了区块链开放平台「BaaS」,又推出了区块链养成游戏莱茨狗,接着又用区块链的信息展现百度百科,将词条的版本信息签名存储在区块链上。随后又抛出了一个大招——XuperChain(百度自研区块链技术)。
从2018年初项目启动至今,短短一年多的时间,这个以「自主研发」、「高性能」、「模块化」为初衷的开发平台,已经积累了338万用户,区块高度达到了41,598,999,总交易笔数过4亿。
不仅如此,XuperChain还对比特币和以太坊的开发者进行兼容,支持多平行链的运营以及热插拔共识算法。可见其野心之大。
几天前,营长专访了百度资深研发工程师、负责XuperChain开源项目的孙君意,这位技术大哥说起XuperChain的100%中国研发可以说非常自豪。甚至最后还提到,开发者即使暂时不想开发区块链应用,看看XuperChain的开源代码,对技术提升也会很有帮助。对技术十分自信。
那么,超级链到底是怎样的产品?研发者在它的设计上又有哪些独到之处?让我们跟随孙君意一起来看看吧。
纯「国产」的超级链
营长:请谈谈XuperChain项目建立的初衷以及与其他区块链开发平台的不同之处。
孙君意:XuperChain项目是2018年初启动的,最初的目标是打造一个自主研发、高性能、模块化的区块链系统。虽然现在不乏以太坊、EOS这样的优质公链,但我们还是想提倡国产自研,我们希望打造一个适合中国开发者的区块链开发平台。
说到亮点,我认为主要体现在我们是在经典的比特币UTXO模型之上做了进一步的抽象,以太坊用了账户模型,它的缺点是不能并行。我们通过对UTXO进一步抽象,系统模型可以描述一个更加通用的数据资源的变迁,从而做到并行化的合约执行和验证。
营长:你提到「适合中国开发者」的区块链开发平台,体现在哪些方面?
孙君意:一个是体现在我们对开发者的支持,比如我们有一个微信社群,24小时都有运营的同学值班去解答开发者的疑惑。无论是技术上的问题还是商业合作的问题,都会第一时间去响应。此外,我们在中文社区和中文文档方面会更加友好。
第二,我们有一些国内的标杆应用,比如北京互联网法院等司法类应用都是基于我们的底层技术来支撑的。
区块链与行业应用
营长:除了你提到的法院场景外,目前超级链还有哪些应用落地的案例?
孙君意:目前我们尝试用超级链技术与各行各业,各种应用场景进行结合,包括:司法存证、智慧政务、智慧医疗、商品溯源等方向上都有积极的应用探索落地。
在司法存证项目中,超级链作为底层技术为北京、广州互联网法院搭建了司法存证链,实现了区块链电子证据具备司法效力;
司法区块链网络
在政务项目上,区块链技术与一网通办等政务项目相结合,更好的帮助政府实现数据协同,提高办事效率;
在智慧医疗项目上,超级链技术满足了医疗大数据的商业化应用需求,促进医疗大数据商业分润模式的建立;
在商品溯源上,超级链基于区块链技术,加上人工智能识图技术,为大闸蟹溯源提供服务,确保每一只品牌大闸蟹和产地等信息的前后一致性。
营长:在同时满足多个行业及应用场景方面,是否会面临一些挑战?你们是怎么做的?
孙君意:挑战是有的,我认为光靠区块链是不够的,还需要与很多现有的其他技术相结合,比如说AI。区块链技术与AI结合将放大双方的价值。区块链能够保证上链以后数据的真实性和不可篡改,但在链上和链下数据交换过程中如何保证数据的真实性同样重要,人工智能的加入能够完成这个真实性闭环。只有与其他技术有机的结合,区块链才能给出一个整体可实施的解决方案。只靠区块链一种技术,覆盖的场景比较有限。
以百度超级链大闸蟹溯源为例,厂商在蟹农捕捞大闸蟹之后,对大闸蟹产地、照片和蟹商认证蟹号进行采集,将信息透明、安全地储存在区块链上,消费者在收货时可以利用AI蟹脸识别技术将大闸蟹信息与链上记录的信息进行对比,确保每一只品牌大闸蟹和产地等信息的前后一致性。
百度大闸蟹溯源
说到在满足不同行业需求方面,我觉得超级链更像是当初大数据行业里的Hadoop。我们提供解决方案,把这些方案做成一个个实际部署的联盟链。现在很多商业落地的场景就是这样做的。
营长:所以应用并不是部署在超级链上?
孙君意:是的。超级链不提供托管环境,应用开发者(例如法院、公安局、司法局、版权保护中心)会有一些节点,基于节点做开发。超级链提供区块链技术和产品解决方案。
营长:对于开发平台来说,开发者生态建设至关重要,超级链在这块有哪些动作?
孙君意:生态建设不能一蹴而就。我们主要会做以下几点。
首先,我们会在开源技术上持续的投入,与开发者一起不断升级我们的技术,持续的为开源技术进行贡献,为开发者提供最新版本、持续迭代的技术;其次,我们会通过视频课程和线下沙龙等活动,从技术层面给予开发者技术指导,对于一些重点项目也会给予额外的资源支持;最后,我们还会与高校及有影响力的机构进行合作,传播超级链的开源技术,提高市场覆盖率。
初探「可插拔」共识算法
营长:在一般的开发品平台中,DPoS+PBFT是常用的算法组合,在超级链上除了这两个算法之外,还有一个授权共识,请问这一共识的作用和原理是什么?
孙君意:我先说一下超级链共识的一个基本思维。我们认为没有一个共识能解决所有的问题。因此我们希望提供一个机制,让开发者可以根据自己的需要选择共识算法。也就是我们所谓的「可插拔共识」。
在这一机制下,开发者只要实现两个接口就可以接入超级链的架构中了。一个接口是验证出块权,另一个是判断是否应该自己出块。
说到授权共识。其实也是在一些实际的商业应用中,我们发现在一些联盟链的场景里其实他们并不需要一个像DPoS那样的选举流程,只要在最初确定有权出块的各个addressx,写到创世区块里面就ok了。所以授权共识提供的就是这样一种简化的方式,免去了投票和竞选等流程。
营长:超级链上的存储与计算分离,是指平行链的解决方案吗?
孙君意:这里更多指的是我们的数据模型,叫做XuperModel。它主要实现智能合约的虚拟机和账本的一个松耦合。在XuperModel的结构下,一个交易中数据里面通过它的Input、Output描述它的读写集,其中读集是通过哈希指针指向账本中的过往交易输出。
这样,如果你需要去验证一个合约,其实只需要从哈希指针指向的input里把数据加载进来,后面这个合约只需要重复计算就能验证合约的正确性。而重复计算验证的逻辑可以调度到任何一个没有全账本计算的节点上面进行。这就实现了计算的并行化。也就是存储与计算分离。如下图所示:
营长:最后请对CSDN的读者说几句话。
孙君意:我认为CSDN是国内顶尖的开发者社区,我从开始读书的时候就经常上CSDN,CSDN的确汇集了大量的优秀开发者。作为开发者,可以多参考超级链的开源代码。因为我认为它是一个非常有诚意的项目。
这些代码无论从架构设计还是单元测试、存储模型、分布式等方面都有很大的参考价值。即使现在还没想做区块链开发,相信也是可以学到很多东西的。
*7月27日,百度超级链将在北京中关村举办百度超级链首场技术沙龙,和开发者面对面交流区块链技术和行业应用,想来参加的同来可以点击「阅读原文」报名!
推荐阅读:
猛戳"阅读原文"有惊喜哟
老铁在看了吗?👇