内容简介:正如我们在让我们深入探索Lityc(编译器)和CVM是如何让编程更安全的吧
正如我们在 第一篇文章 中提到的那样,Lity由动态可扩展语言、编译器LityC和CyberMiles 自己的虚拟机CVM组成,这些都存在于CyberMiles 区块链。作为Solidity语言的超集,Lity更加灵活、性能更好并且更加安全。怎么会这样?
- LibENI(以太坊本地接口库)动态虚拟机扩展允许在CVM上即时添加本地函数,无需停止、升级或分叉区块链 。 参考网站:https://www.litylang.org/performance/
- 即将发布的Lity规则引擎会把正式的商业规则嵌入到智能合约中,这将大幅提高开发人员的效率并且极大降低错误出现的可能性。参考网站:https://www.litylang.org/business_rules/
- ERC 检查器不仅可以检查并且能够自动修复智能合约上的常见安全bug。参考网站:https://www.litylang.org/security/#erc-checker
让我们深入探索Lityc(编译器)和CVM是如何让编程更安全的吧
利用更好的安全性
对已知的由以太坊Solidity智能合约引起的安全问题,CyberMiles 团队分类提取了常见模式,并在Lity 语言编译器和CVM中针对这些模式安装了检查器。我们采取了积极主动的措施来防止95%的智能合约错误,这些错误曾经造成了以太坊资产丢失。但他们极有可能压根儿不会发生在CyberMiles上。
使用Lity编译器(Lityc)来保护你的智能合约
ERC检查器是Lity编译器的一个工具,用来确保智能合约符合他们所要实施的ERC标准。
在ERC的世界里:
ERC20 是最常见的token/coin发行合约标准。
这个示例展示了ERC20 检查器如何工作
ERC223是ERC20的增强版,可以阻止无意中将资产转移到合约地址的行为,这是以太坊上常见的资金流失的常见原因。(多说一句,为了更加安全,我们建议CyberMiles 上所有的ERC20合约都能符合ERC223标准。)
这个示例展示了ERC 223检查器如何工作
○ERC827是ERC20、ERC223的增强版,使ERC20 更安全并且易于使用,同时也能和ERC20 工具 保持兼容。简单来说,ERC827可以实现ERC20、ERC827的所有功能,但是相较于ERC223的改进,ERC827还有更多新玩法。比如,可以通过代码设置接收token的范围,如果设置为只接受1000个以上CMT的转账,那么低于1000的转账就不会成功。
这个示例展示了ERC 827检查器如何工作
○ ERC721 是用来发行不可替代token的智能合约标准,举个例子,风靡一时的加密猫游戏使用的就是ERC721合约。
这个示例展示了ERC 721检查器如何工作
○ ERC884 是用来发行美国股票证书的证券token标准。
这个示例展示了ERC 884检查器如何工作
点击查看视频:Lity编译器工具:ERC20、ERC223、ERC827、ERC721、ERC884检查器
(ERC20、ERC223、ERC827、ERC721、ERC884检查器示例合集)
整数溢出是以太坊智能合约常见安全问题之一。Lity可以主动消除智能合约代码发生整数溢出的几率,这是怎么做到的呢?
- Lity编译器(Lityc)会检查是否在整数中使用SafetMath。如果整数操作中没有设置SafeMath,Lity编译器会发出警告。
- CVM会在运行时检测是否存在整数溢出问题,并且停止执行含有错误的合约,而不是让合约带着整数溢出问题继续执行。
(CyberMiles 如何帮助避免溢出问题)
Lity由CyberMiles基金会开发,并作为免费软件在GPL下发布。 参阅我们最新的文档来使用Lity吧。
相关阅读
以上所述就是小编给大家介绍的《能防止95%的智能合约错误,Lity是怎么做到的?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。