智能合约不够安全?微软建专项小组从编程语言入手根治

简介:

智能合约不够安全?微软建专项小组从编程语言入手根治

据外媒报道,微软对外公开其已经成立了一个专门负责提高智能合约安全性的工作小组“Kinakuta”,旨在让行业内共享智能合约信息和协议更加简单。

所谓智能合约,是指基于区块链自动执行命令的代码的合约形式。但由于The DAO等安全事件暴露了该技术还处于早期阶段的现状,不少对区块链抱有希望的人们更多的意识到,如果使用不当时是相当危险的。

不过,微软商业发展和战略主管Marley Gray表示,开放共享的信息和革新的工具或将帮助开发者在未来避免类似错误。Gray称,他已经和纽约初创公司ConsensYs的全球业务发展负责人Andrew Keys达成了合作,并准备邀请以太坊基金、R3CEV和初创公司BlockApps等35家公司进行合作。

Gray称:“我们想要探索能否有可能在最开始编写智能合约的时候就使用一种安全的语言来书写。”

据悉,微软将于本月不久后推出与哈佛大学研究员共同完成的白皮书,并正式发布成立智能合约小组的公告。这本白皮书提出了一种“形式验证”,或者说证明和反证明一个软件程序的正确性,这里指的就是智能合约。

智能合约不够安全?微软建专项小组从编程语言入手根治

此外,这个白皮书提出了用三种方法验证智能合约的两个工具:

第一种是Solidity*。将一部分Solidity代码翻译为F*——一种能够验证程序是否会正确执行设计的编程语言。然后还有EVM*,它会把智能合约的EVM字节码陈述反编译为Solidity源代码。


第二个工具十分必要,因为为112802个合约中只有396个可以形成Solidity版本的Etherscan(区块链浏览器)代码,因此未来的最佳选择是使用字节码。

尽管Solidity*目前缺少复杂的Solidity功能支持,比如loops,但团队还是成功地从396份智能合约当中破译出46份。通过Solidity*运行这46份合约之后,他们发现当中只有一小部分是“有效的”。

值得注意的是,虽然许多人对于智能合约安全工具的迅猛发展感到兴奋,白皮书总结道:“很明显,经过对已发布合约的大量分析之后,很有可能会发掘出普遍存在的漏洞;我们把这些分析留给未来的工作。”但也有一位行业领导认为,近期而言,开发者们将会继续犯错。






本文作者:温晓桦
本文转自雷锋网禁止二次转载, 原文链接
目录
相关文章
|
6月前
|
负载均衡 监控 安全
想成为一名顶尖Java开发工程师?这些优化手段一定要掌握!(八)
想成为一名顶尖Java开发工程师?这些优化手段一定要掌握!
|
6月前
|
消息中间件 存储 缓存
想成为一名顶尖Java开发工程师?这些优化手段一定要掌握!(五)
想成为一名顶尖Java开发工程师?这些优化手段一定要掌握!
|
6月前
|
Java
想成为一名顶尖Java开发工程师?这些优化手段一定要掌握!
JVM调优、Redis调优、MySQL调优、消息中间件调优、全文搜索ES调优、系统架构调优。
|
安全 区块链
关于MMMBSC互助智能合约(3m)开发系统实现技术
智能合约的整个产生和执行过程都是可追溯、不可篡改的。一旦触发合约就会立即执行,自动按照合约规范进行操作。整个过程智能高效,短时间快速完成更是体现了它的准确和经济。
关于MMMBSC互助智能合约(3m)开发系统实现技术
|
人工智能 供应链 大数据
什么是链游系统开发(区块链游戏开发)丨链游系统开发技术分析及源码
 从技术视角来看,区块链已由初期的技术探索进入到平台化、组件化和集成化发展阶段。主要体现在:一是平台化推动形成城市链网。长安链、蜀信链和海河链等城市链已经纷纷出现,城市链互相联通后将形成城市链网,以支撑更大规模的应用场景。二是组件化推动形成组件服务网络。隐私计算、智能合约等关键组件已形成独立平台,共同支撑应用创新的价值已经显现,更细分技术市场即将出现。三是集成化推动形成面向数据和多技术融合的数字科技操作系统。区块链将与大数据、云计算、人工智能等新一代信息技术深度融合,实现数据和资产价值的最大化。在平台化、组件化和集成化发展的过程中,将形成围绕区块链的数字科技体系和信息技术服务体系,更大规模的创
|
测试技术
【软件测试基础理论】软件内卷早已存在!(非功能-可移植性)
【软件测试基础理论】软件内卷早已存在!(非功能-可移植性)
|
开发者 前端开发 NoSQL
KPI过时了?为什么科技公司更偏爱OKR?| 开发者必读(092期)
最炫的技术新知、最热门的大咖公开课、最有趣的开发者活动、最实用的工具干货,就在《开发者必读》!
696 0
|
区块链
NIST发布区块链初学者概述:新晋区块链IT经理要了解什么?
美国国家标准与技术研究院(美国商务部的非监管机构)发布了区块链技术概述,旨在阐明该技术的核心特征,局限性和常见的误解。
1266 0
|
供应链 物联网 测试技术