微软成立智能合约安全工作小组
微软宣布已经成立了一个专门的工作小组以改善智能合约的安全问题。
工作组的名称为Kinakuta,目的是为了让行业更容易地分享有关智能合约的信息和建议,该名称指的是能够自我执行基于区块链的代码。
尽管很多企业越来越多地对区块链能够自动完成复杂的交易感兴趣,但是在区块链领域内第一个大范围实施的智能合约项目TheDAO遭到攻击后,对智能合约安全的担忧就一直在增加。
从那时开始,很多人开始意识到智能合约是全新的技术,如果实施不当的话是很危险的。
然而,微软的业务开发和战略主管Marley Gray认为开放的信息和全新的工具能够帮助开发者避免以后犯错误。
Gray说道:
“我们感觉到了这个社区的巨大机遇。Kinakuta就是围绕微软创建最佳操作的社区,以收集最佳操作和工具并帮助开发者创建这些最佳操作。”
Gray说已经与Consensys的全球业务开发主管Andrew Keys一起起草了微软想要包含在该工作小组中的35位开发者和企业。这些企业包括负责以太坊区块链开发的以太坊基金会、银行联盟R3CEV和初创企业BlockApps。
在本月早些时候微软授权哈佛大学的研究者书写一份新的白皮书来证明是否以太坊智能合约会像预期的那样运行,之后就发布了该正式公告。
开发者能够使用这些资源来分析他们代码中的问题。
“我们希望探索能安全地用某种语言来编写智能合约的方式,”Gray说道。
正式验证
该白皮书提议了一种正式验证方法,证明或反证一个软件程序正确性的过程,在本例中这个软件程序就是一个智能合约。
第一个工具就是Solidity*,它会将一段Solidity代码翻译为F*语言,该语言能够验证是否这个程序会按照预期正确运行。然后EVM*(以太坊虚拟机)会将代表一个智能合约的EVM字节码反编译为Solitidy源代码。
第二个工具是必要的,因为在白皮书发布时,在Etherscan的112,802个智能合约中只有396个有Solidity版本的代码,因此使用字节码是第二个最好的选择。
尽管Solodity*缺乏复杂的功能支持,例如循环,但该团队能够翻译这396个用Solidity编写的合约中的46个合约。通过Solidity*运行这46个合约,他们发现只有一小部分的智能合约是有效的。
“这表明对已发布的合约进行大范围的分析将极有可能会发现更多的问题;我们会在以后进行分析工作,”该白皮书总结道。
然而,值得注意的是很多人对智能合约安全工具的飞速发展感到兴奋,一位行业的领导认为在短期内开发者将会继续犯错误。
以太坊创始人Vitalik Buterin写道他认为这些新的研究领域不会立即阻止像TheDAO这样的情况发生。
“还会有漏洞,”Buterin在以太坊的博客探索未来智能合约安全时写道,“我们将会学习更多。”
【来源】
http://www.coindesk.com/microsoft-launches-smart-contracts-security-working-group/
微信掃描關注公眾號,及時掌握新動向
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場