(10) 阅读 (2862)

Solidity 编辑词条词条保护

词条创建者 匿名网友

后期则以Christian Reitwiessner所领导的以太坊团队Solidity接手开发。该语言是针对以太坊虚拟机(EVM)所设计的四种语言之一(其他的还有Serpent,LLL,Viper(实验中)和Mutan(已弃用))。

康奈尔大学的研究人员指出,Solidity即是导致DAO在2016年被骇客攻击的部分原因之一。他表示:“这实际上并不是DAO合同本身的缺陷或漏洞;技术上来说,DAO确实是在EVM上如预期般地被执行,反而是Solidity将安全上的漏洞引入了合约之中,而这些漏洞不仅没被开发社群察觉,Solidity语言的设计者们也忽略了。

Solidity定义

编辑

Solidity是一种静态型别的编程语言,用于开发在EVM上执行的智能合约。 Solidity被编译为可在EVM上执行的字节码。[11][12]借由Solidity,开发人员能够编写出可自我执行其欲实现之商业逻辑的应用程序,该程式可被视为一份具权威性且永不可悔改的交易合约。[13][14]对已具备程式编辑能力的人而言,编写Solidity的难易度就如同编写一般的编程语言。[15]

Gavin Wood最初在规划Solidity语言时参照了ECMAScript的语法概念,使其对现有的Web开发者更容易入门; 与ECMAScript不同的地方在于Solidity具有静态型别和可变返回型别。而与目前其他EVM目标语言(如Serpent和Mutan)相比,其重要的差异在于Solidity具有一组复杂的成员变数使得合约可支援任意阶层的映射和结构。Solidity也支援继承,包含C3线性化多重继承。 另外还引入了一个应用程序二进制接口(ABI),该接口(ABI)可在单一合同中实现多种类型安全的功能。

内容由匿名网友提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://ispeak.vibaike.com/3356

发表评论

登录后才能评论
词条目录
  1. Solidity概况
  2. Solidity定义

轻触这里

关闭目录

目录