| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 区块链 -> 一文盘点Starcoin的十大亮点 -> 正文阅读 |
|
[区块链]一文盘点Starcoin的十大亮点 |
2021年5月18日,Starcoin公开举办了一场Starcoin主网启动的活动,邀请到一批加密行业的领跑者、建设者和创新人员一起见证Starcoin主网的诞生。Starcoin主网上线之后短短几个月,在业内赢得了很多的目光,积累了一批忠实的粉丝。那么对比其他的公链,Starcoin究竟有什么样的优势呢?本文盘点出Starcoin的十大亮点和创新设计,供大家参考。 增强的PoWStarcoin共识是中本聪共识的增强版本。Bitcoin的中本聪共识中,有两种方式提高网络吞吐,增加区块大小或短出块间隔。这两种方式都会增大网络中出现叔块或者孤块的概率,而叔块和孤块的增加又会加重网络的拥塞,进而减低双花攻击的难度,从而威胁网络的安全。为了解决这个问题,平衡好吞吐量和网络拥塞的情况,最大限度地利用网络,Starcoin共识在Bitcoin共识的基础之上,进行了优化和增强:
自举的经济模型STC是Starcoin网络的原生Token,发行总量为 3,185,136,000个STC,总量恒定,被锁定在Treasury模块中。一部分奖励那些守护Starcoin网络安全的诚实节点,另一部分通过提款权以线性释放的方式,进入链上生态。通过激励链上生态,让整体应用繁荣。有了繁荣的链上生态应用,链上的基础生态收益,最后通过一些方式让流通的STC再次回归到Treasury模块中。 明确的所有权在以Solidity为智能合约语言的公链里面,以ERC20为例,虽然钱包显示某个ERC20属于某个账户,但是,在账户的数据存储中并没有这部分数据。这些数据在哪呢?这些数据被统一存储在该ERC20的合约实现的账户下,通过类似于Map的数据结构,以Address进行标记区分。这种集中存储数据的方式,一方面数据的所有权并不归对应的账户所有,另一方面,存在安全隐患。 在Starcoin的账户模型中,任何合约产生的数据,都可以分散地存储在用户各自的账户数据下。用户需要操作自己的数据时,从自己账户下把数据拿出来,传给合约进行操作。一方面,明确了这部分数据是属于哪个账户,另一方面降低了数据的安全隐患。 状态收费状态爆炸是很多公链面临的问题,很多数据,被写到链上,即便不再有任何的价值和意义,也要长期保存,也要被其他节点同步。这其实是很浪费资源的事情,一个只增不减的分布式系统,长期来看,很难持续维护,这是早晚要面对的问题。 Starcoin在设计之初,就重点考虑了状态爆炸的问题,通过巧妙的设计,为状态收费做了长远的准备,逐步淘汰哪些没有价值的数据。淘汰无价值数据,为更多的价值数据提供增值空间,这是一个良性的发展规律。 线性逻辑的智能合约语言Move在DeFi时代,安全问题频频发生,例如TheDAO漏洞、Parity钱包漏洞、PolyNetwork漏洞等等,每年动辄数亿美元的损失。产生这些漏洞的原因是多种多样的,但是大部分常见的漏洞,只是开发设计的时候被忽略了,例如溢出问题。一方面,谁也没法完全保证不出漏洞,另一方面,安全是计算机行业一个非常专业的细分领域,通常有专门的从业人员,与智能合约开发通常不是一批人。实际上,这是对智能合约开发者有更高的安全方面的要求,变相提高了开发门槛。 Starcoin期望选择一个更安全的语言作为其智能合约语言,从语言的层面解决大部分常见的漏洞,例如溢出漏洞,降低开发人员的门槛,降低智能合约的安全风险,从而减少漏洞的产生。出于这样的初衷,Starcoin最终选择Move作为智能合约语言。 Move是一门线性逻辑的智能合约语言,面向资源编程,有非常良好的安全特性。智能合约开发者同样在只关注业务逻辑的情况下,能够轻松地写出符合一定安全要求的合约来,可以极大限度地避免溢出、无限增发等常见的安全隐患。 形式化验证形式化验证是一项比较前沿的技术,通过数学的手段来证明程序的安全性。以Ethereum为首的公链一直在探索通过形式化验证来提升智能合约的安全性,已经探索了多年,一直没有找到很好的可落地的方案。 Move在面向资源编程提升安全性的基础上,已经支持了一套成熟的形式化验证工具,使用者只需编写SPEC就能通过数学手段来为程序的安全性提供证明,轻松地避免由于疏忽而引起的很多安全隐患。 StdlibStarcoin有一个非常有意思、其他公链没有的特性:Stdlib。 Starcoin通过Stdlib的方式,实现官方订制和发布一些通用的合约,方便其他用户使用,开箱即用,非常方便。Starcoin主要发布两类合约:
链上治理DAOStarcoin在Stdlib中定制了一套非常通用的链上治理DAO合约,开箱即用。任何人都可以使用,任何合约层的决策都可以以链上治理的方式完成。同时,社区的任何人都可以以投赞成票或者反对票的方式,参与社区的治理。 这是一个通用的DAO,支持任何类型的Token投票。投票有有效时间,只有在规定的时间内,投票数达到Token流通量的4%的阈值之后,投票才有效。如果赞成票多余反对票,则投票通过,否则,反对票多余赞成票,则投票未通过。 安全的智能合约升级方案Starcoin崇尚法律即代码。在某些极特殊的情况下,Starcoin也希望有一种安全升级智能合约的方案。 Starcoin的合约通过Module名来标记唯一性,Ethereum的合约通过HashCode来标记唯一性。所以Starcoin的智能合约能够在保证兼容性的情况下,进行升级。然后,通过与链上治理DAO进行结合,对合约的升级进行投票,在全体社区成员的监督下,达到安全升级智能合约的目的。Starcoin的Stdlib就使用这种方式安全的升级。 可扩展的二层Starcoin是分层的智能合约与DeFi网络,这意味着Starcoin不仅仅有一层网络,也会设计和实现自己的二层。Starcoin的二层致力于安全地连接每一个人,将区块链技术渗透到日常生活场景中,让用户享受到区块链的红利和便捷。 Starcoin的二层将是一个通用的方案。通过寻找一种安全的算法,让一层和二层更native地结合,让数据能够在两层之间安全、自由、便捷地流通。 Starcoin的更多特性除了上面提到的十个亮点,Starcoin有意思的亮点还很多,例如一等公民Resource、双MerkleAccumulator、双层状态树、两阶段提交、天生的NFT类型、更安全的Token、Oracle协议、便捷的合约账户等等,有时间再慢慢补充。 Starcoin不仅仅是一条公链,从一层出发,囊括了为DeFi而生的智能合约Move、可扩展的二层,跟其他公链对比,各个层面都有很多优秀的设计和创新。???? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 1:50:43- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |