本文转载自公众号:万向区块链
在由万向区块链实验室举办的”区块链新经济·技术探索”第四届区块链全球峰会上,COSMOS创始人Jae Kwon作为演讲嘉宾受邀出席本次会议,带来了题为《区块链生态新架构》的演讲。Jae在演讲中,介绍了Cosmos-SDK,并讲解了如何通过Cosmos-SDK重构区块链的生态系统。下文整理自Jae Kwon演讲全文速记稿,有部分不影响原意的删减:
非常高兴跟大家介绍一下过去一年的工作成果:Cosmos-SDK,通过Cosmos-SDK重构区块链的生态系统。
Jae Kwon在演讲
Cosmos-SDK
目前,如果想要快速构建独立的区块链应用的方式很有限。对于开发人员来说,比较流行的方式有以下两种:第一是,Fork并扩展比特币的代码库;第二是,在以太坊上编写智能合约。
比特币是在基于工作量证明PoW共识之上,实现了针对账户交易的UTXO数据结构。用户需要依据交易大小支付手续费。若开发人员选择Fork比特币代码库开发,需要花费很多精力去维护可用性。同时,比特币提供的脚本语言十分原始,在上面开发的空间很小。Fork比特币代码库的开发方式可以认为是区块链1.0。以太坊的诞生就是为了解决区块链应用开发的问题。与比特币类似,以太坊也是基于PoW共识,以太坊内部采用了账户系统,同时使用了Patricia树数据结构。以太币ETH作为原生的手续费代币。用户可以编写智能合约运行在EVM上得到定制化的DApp。在以太坊上开发一个DApp的难度大大降低了。
以太坊为代表的区块链2.0开发模式已经无法满足现有需求。为了解决现有问题,Cosmos提出了Cosmos-SDK的概念。Cosmos-SDK是一个用Golang实现的用于开发一个基于权益证明PoS区块链的开发框架。使用它可以更好的控制区块链的安全性。利用Cosmos-SDK模块化的特性可更方便的继承代码,同时也提高了代码的可扩展性。
我们认为现在缺少的就是很好的软件框架来开发区块链,所以创建了SDK。我们所写的一切都是开源的,在GitHub上都有,希望建立丰富的库站系统,这样可以从我们的库和其他库当中获取资源,以安全的方式建立自己的区块链。基于Cosmos-SDK构建的区块链可以使用一组通用模块,开发人员可以简单地添加定制功能对应的新模块,从而实现扩展。 这些新的模块也会被不断重用,进而建立一种开放的生态,不断促进区块链的创新和发展。
Cosmos-SDK模块
Tendermint是Cosmos-SDK中核心模块之一。团队从2014年开始探索Tendermint的实现,并且开源了相关代码。Tendermint作为一种成熟的拜占庭容错共识协议,在共识和网络方面都有很多创新实践。使用Tendermint共识引擎可以很快达成共识,将大大提高区块链应用的处理能力。它具有快速最终性,只要几秒钟就能出块。每一个区块都是不会在未来被推翻的,同时区块链在正常情况下不会分叉。这与PoW共识需要等待1个小时才能确认交易是不同的。在上一个测试网中,有超过170名验证人的参与。同时,Tendermint共识算法也经过了形式化验证。
Cosmos-SDK中另一个重要的模块是权益证明模块PoS。通过抵押权益代币的方式,一旦出现了作恶的行为,系统会罚没一部分抵押代币。这样的问责制度可以维护系统的安全性。在Cosmos中的验证人就像PoW的矿池一样,它们可以接受其他人的委托。委托的行为只需要交易签名就可以实现。验证人的数量目前被定义为100个,随着验证人的数量不断增加,系统的去中心化程度也就越高,但这样也会带来一些出块时间增大的问题。委托人和验证人都可以获得抵押收益。为了防止长程攻击,PoS模块中设定了解绑期限。
链上治理模块是Cosmos-SDK中另一个重要模块,公共的区块链应该有自己的治理机制,这样你可以在链上进行提案,由利益相关者来看是否接受或拒绝提案,对防止”DAO”攻击来说这是非常有用的,因为社区有不同的意见,有了链上治理以后人们可以讨论并且投票。这样就可以防止像以太坊一样在被攻击后分叉,同时还允许通过发起提案来修改系统参数,区块链代码本身还可以进行升级。当然,委托人也可以投票,这是流动的民主。若你将权益委托给验证人,那么你就继承了她的投票。
另一个重要的模块是收益和手续费模块,验证人和委托人都可以获得抵押获利和手续费奖励。Cosmos-SDK的手续费模块被设计成可支持多种代币。
最为重要的模块是IBC(链间通信协议),现在区块链就像是之前的局域网一样,目前虽然有比特币和以太坊,但它们俩之间无法沟通,因为没有通信协议。在Cosmos-SDK上建立的区块链,如果加入了IBC模块就可以实现安全的通信。一些独立的区块链可以通过Cosmos Hub实现IBC通信,IBC就像互联网的tcp/ip协议一样重要。
Jae Kwon演讲现场
在Cosmos-SDK上构建项目
第一个在Cosmos-SDK上构建的区块链是Cosmos Hub。它将包含Cosmos-SDK中所有总要的模块。除了上述的模块外,另一个重要的模块是Peggy。Cosmos Hub是权益证明的区块链,通过IBC和其它链进行链接。如果你的区块链实现了IBC模块的功能,就可以和Cosmos Hub连接在一起,获得代币转移和数据的互操作性。Peggy可以实现基于Cosmos-SDK的区块链和现有的基于PoW区块链之间的通信,我们希望IBC成为一个区块链之间的公路,实现大规模的互操作性。
另外一个在Cosmos-SDK上实现的项目是Ethermint,Ethermint包含的模块和Cosmos Hub一样,但同时还有EVM模块,该模块完全兼容现有的EVM相关工具,你的智能合约可以在Ethermint上运行。共享安全的理念是可以有许多并行的区块链,由同一组验证人来保证共识,有了共享安全以后Ethermint可以和Cosmos Hub进行连接,这样就可以和Ethermint来进行交易,由此保证Ethermint智能合约的安全性。
IRIS Network是专门针对于亚洲市场的。IRISnet 通过延展 Cosmos IBC 协议和利用Tendermint开发接口来构造了区块链跨链服务基础设施,它的SDK支持应用专有链开发者更便捷地面向服务架构打造应用专有链,并在链上通过iService 发布自己的应用逻辑。 同时,IRISnet 的Hub支持这些服务能被跨链消费。这些服务不仅仅是通证的跨链转移,而且可以实现数据、复杂计算跨异构网络被消费。
LINO是在SDK上建立的新的区块链,它为了实现分布式视频资源共享。像是区块链上的Youtube一样,LINO内部新增了许多模块,例如名誉排名模块。大家可以用这个模块来激励和奖励最好视频的生产者,当然也可以用它提供微服务的模块,理论上是可以用微服务的模块找到视频托管的服务。
Kava是另一个区块链项目,它整合了区块链上的支付通道模块,并且提供跨帐本协议模块。Kava的区块链和Cosmos SDK联合在一起,将实现很高的交易吞吐量。
Fourth State是另外一个区块链项目,它本身包含Plasma模块,用Plasma模块可以保证账户的安全的恢复,如果区块链发生故障的话可以很快地恢复。还可以将Plasma的子链、基于Cosmos-SDK的区块链和以太坊的主网链接在一起。
我们现在有了一个框架来创建这些模块,使建立起来的区块链可以实现互操作性。Cosmos Hub将实现跨链互操作性,进而实现区块链互联网。为了实现下一波创新,我们必须要建立一个牢固、扎实的区块链开发框架。
Jae Kwon
Jae于2005年获得康奈尔大学计算机科学专业学士学位。他曾在硅谷的Alexa/Amazon等公司担任软件开发工程师,后在Yelp带领移动应用开发团队。Jae是希望通过基于权益证明PoS的共识算法,解决PoW共识问题的先行者之一。Jae是第一个真正提出将BFT研究应用到PoS公有区块链环境中的人。他在2014年创造了Tendermint,之后进一步提出了Cosmos:区块链互联网的概念。他希望通过Cosmos技术解决区块链的互操作性和可扩展的问题。
End
※———长按识别下方二维码 关注我们———※
本文由用户:yemengmao 发布,不代表网站的立场,转转请注明出处:http://www.maiyaotop.com/hangye/5600.html