宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > PEPE币 > 正文

号称 Libra 最大创新的 Move 与 Solidity、DeepSEA 到底有何区别?

作者:

时间:1900/1/1 0:00:00

6月18日,Facebook发布Libra项目白皮书,旨在建立一个简单的全球性货币且为数十亿人赋能的金融基础设施。

FacebookLibra在全球被普遍关注,金融监管者、从业者和学者纷纷从不同角度进行解读。还有很多人从哲学、学或是经济学等角度分析Libra。正如一千个人眼中有一千个哈姆雷特,一千个人心中也有一千种货币观点。

我们作为一个技术驱动的公司,更关注这次Libra发布的智能合约语言Move,这个被很多人都誉为Libra最大的创新,Move和以太坊的Solidity、以及可验证智能合约的DeepSEA语言到底有哪些区别呢?

众所周知,基于以太坊的编程语言Solidity是目前区块链领域中最常用的开发语言之一。

即使Solidity在安全性方面存在一定的缺陷,并在近几年发生了不少类似合约溢出的安全事件,并导致用户大量损失。但由于其良好的适应性和可扩展性,已被广大开发者和社区用户所积极采用。

而这次Libra携Move强势归来,便是主打的安全牌。基于Rust和100%静态类型验证的全新思路,从底层内存和智能合约编程的代码层面,来提高了安全性,以期避免发生在以太坊的安全事件。这也是这次Libra发布后,不少人都认为,Move语言才是Libra最大的创新。

亚运数字人民币硬件钱包正式发布:金色财经报道,“杭州2022年亚运会”微信公众号消息,12月14日,亚运数字人民币硬件钱包发布暨公交场景启动仪式在杭州举行。据介绍,硬件钱包分为卡式和手环式两种类型,使用数字人民币APP内“贴一贴”功能与软钱包进行绑定、存入数字人民币后,日常消费与收款设备“碰一碰”即可完成支付。[2022/12/14 21:44:19]

但可能我们不太了解的是,由美国区块链安全公司CertiK、耶鲁大学实验室和哥伦比亚大学实验室共同研发的编程语言DeepSEA的研发也将于近期开发完成。

该语言利用植入其编程语言本身的形式化验证技术,自动创建数学原理来证明源代码的安全性,并获得了以太坊基金会、IBMBlockchain和量子链基金会的科研奖金。DeepSEA语言在主打安全性的同时,也在寻求兼容除EVM之外的更多虚拟机,实现信息和资产的跨链共享。

今天来自CertiK的安全专家团队对Move、Solidity、DeepSEA进行了分析比较,解释这三种编程语言之间的差异,并详细说明其中的优缺点和复杂性。

Solidity

以太坊成功地在应用场景中引入了智能合约的概念:

当比特币将储存在区块链上的数据类型进行编码时,以太坊的用户就可以上传任意一个程序来定制该系统。与比特币相比,以太坊最大的不同点是:它可以支持更加强大的脚本语言,允许开发者在上面开发任意应用,实现任意智能合约,就是基于这个图灵完备编程语言——Solidity用以执行这些智能合约。

Abra为整合该平台上的稳定币拟推出USD-A余额功能:9月23日消息,加密资产管理平台Abra首席执行官Bill Barhydt表示,Abra计划在未来几周内将所有稳定币整合到一起,即该公司新推出的USD-A余额功能。

Barhydt介绍称,Abra的USD-A将在USDT、USDC、BUSD、TUSD、USDP和Dai等其他稳定币中“自动移动”,为客户提供相对于美元的最佳价格。与币安的做法不同,Abra不会下架其他稳定币或合并到自己的稳定币下,而是它计划汇总客户的稳定币余额,这些余额将自动以USD-A显示。他补充说,作为Abra Boost计划的一部分,USD-A将用于赚取利息。(福布斯)[2022/9/23 7:15:57]

在Solidity上发行一个应用程序其实十分的简单,它可以让用户创建一个自己的Token,用户可以自行持有或者将其转移至任何以太坊的账户上,也就是我们常说的发币程序。

简而言之,实现这个功能的方法只需要上传一个储存表格的程序,表中需要显示每个用户持有多少代币,并列出一些功能即可。

比如将一个账户上的代币转移至另一账户上的代码如下:

但是,在实际运行过程中,Solidity的使用并没有我们想象的那么顺利。比如经常出现的整数溢出漏洞会导致Token无限增发、重入风险会导致智能合约遭受到类似DAO攻击的严重损失等。

DigiDaigaku Genesis系列NFT近24小时交易额增幅超400%:金色财经消息,OpenSea数据显示,DigiDaigaku Genesis系列NFT近24小时交易额为365 ETH,24小时交易额增幅达469%。近24小时交易额排名位列OpenSea第3。[2022/8/29 12:54:21]

2018年4月,就有黑客利用以太坊ERC-20智能合约中整数溢出漏洞攻击BEC智能合约,成功向两个地址转出了天量级别的BEC代币,导致市场上大量增发的BEC被抛售。此事使得当日BEC的价值几乎归零,64亿人民币瞬间蒸发。

另一个Solidity可能存在的错误是在编译器中仍存在一些漏洞,这些漏洞可能会导致智能合约存在巨大的安全风险。通常程序员只查看程序的源代码,如果编译器有一个bug导致它打出的字节是错误的,这样的错误非常难以防范,即便经过了完善的人工测试和静态分析也仍然不可避免。

整体而言Solidity是一个功能强大并且非常灵活的编程语言——但是仍旧存在安全风险。Solidity不提供任何证明代码安全性的功能。因此由第三方提供智能合约代码审计、或者第三方的形式化验证是证明代码正确的最有效的方式。目前基于以太坊的智能合约应用广泛,Solidity的安全性是值得我们重视的。

Bitfinex ETH空头持仓近24小时增长40%:8月27日消息,数据显示,当前BitfinexETH空头持仓量为35370.76枚,近24小时持仓增加了101,34.98枚 ETH,增幅达40%。此外,Bitfinex ETH多头持仓近24小时增加24,958.69枚 ETH ,当前总持仓量为151,075.88枚。[2022/8/27 12:51:46]

Move

Libra的智能合约编程语言Move,通过Rust语言固有的安全机制和Move语言100%的静态类型验证等措施来达到提高安全的能力。但是经过CertiK的安全专家团队研究发现,与Solidity相比,Move拥有以下三个重要的不同之处:

首先,Move通过省略某些特征——动态调度和一般指针——来限制语言的表达,而对语言灵活性的大规模限制可能会引发重入错误。Move的设计者表示,这些限制会让编写Move的形式化验证工具更加简单,但是目前这些工具并不存在,Facebook团队表示已经充分认识到形式化验证的优势和重要性。

一个人口味最好杂一点,耳音要好一些,能多听懂几种方言。口味单调一点,耳音差一点,也不要紧,最要紧的是对生活的兴趣要广一点。

“我们将创建一种逻辑规范语言和自动形式化验证工具,利用Move的验证友好设计(参见第3.4节)。

CME 比特币期货持仓未平仓总量自 12,242 张上升至 13,537 张:据 KingData 数据监控,CFTC 6 月 15 日至 6 月 21 日 CME 比特币期货持仓周报显示:

未平仓总量自 12,242 张上升至 13,537 张。

机构多头头寸 8,182 张,空头头寸 10,189 张,多空持仓比例 1:1.2,机构多空力量均衡,整体偏向看空;

大户多头头寸 2,391 张,空头头寸 333 张,多空持仓比例 7.2:1,大户显著偏向看涨;

散户多头头寸 1,048 张,空头头寸 1,099 张,多空持仓比例 1:1,散户多空力量均衡,略微偏向看空。[2022/6/27 1:33:55]

验证工具链将有检查特定程序功能正确性的属性,这些属性超出了Move字节码验证器执行的安全保证(参?见5.2节)。”

——Facebook团队

其次,Move支持“资源类型”。模块可以定义特定类型的数据为“资源”,这意味着模块外部的任何代码都不能查看该类型值的内容:它们只能在变量之间移动并传递给函数,这虽然能够帮助Move的开发人员确保资源得到保存,但它们还不足以确保功能的正确性——Move设计者也同意这一点,并认为最终他们将需要使用形式化验证。

第三,关于执行的问题:Move的编译器会生成类型化的字节码,同时,有一个可以检查输出类型是否正确的“字节码验证器”。需要说明的是,这种“验证器”与形式化验证无关,它仅是对输出类型进行一次完整性的检查。当然,仍然可能会存在它创建类型正确但内容错误的编译器bug。

综上而言,Libra的Move语言额外添加了一层规范,可以避免很多Solidity的漏洞,然而这些安全性和正确性的保障仍旧是单独存在的壁垒加持。

DeepSEA

DeepSEA是一个将安全性放在首位的函数式编程语言,使用形式化验证对源代码进行安全保护。允许用户在高抽象的层面上对代码进行推理,实现无缝验证代码安全性的过程。

DeepSEA编译器能够为每个程序自动输出两个重要信息:

1.一个可执行的字节码。

2.一个可以加载到Coq中的程序模型。

作为Coq的本机编程语言。由于Coq是一个完全通用的定理证明环境,因此可以与任何类型的人工编写规范相关联,除了安全性之外,也具备灵活性和兼容性。

图为将DeepSEA语言写到EVM编译器中的例子:

与Solidity相比,DeepSEA语言与Move类似,在程序模型上会有所限制。目前来看,在第一个版本中还未引用,所以开发团队将会用与Move使用相同的“树状结构储存”结构,它具有与Move谈及的相同的“验证友好设计”。

DeepSEA系统的另一个主要优势是其编译器本身是由Coq编写的,并已证明其正确性。这意味着它在基础上就与其他的系统不同。我们可以确保高级语言的语义将会保留在字节码中。这与仅检查输出类型是否正确的Move不同,DeepSEA检查输出的内容是否正确。

DeepSEA的设计理念是为了提供一个高于其他语言能够提供的保护层。在区块链世界中,系统具有去中心化、可自我执行、永久、开源等特性,这让哪怕是最微小的错误都有可能导致巨大且严重的问题。作为一个新时代的编程语言,DeepSEA的开发团队运用过去的经验和知识,致力于为创造一个更加安全和可信赖的区块链生态铺路。

虽然Move语言比标准编程稍稍先进一些,提供了“验证友好”的设计。但它仍旧需要创造额外的工具,这与继承了形式化验证语言本身的DeepSEA不同,DeepSEA语言允许开发者在一个交互式辅助证明工具的环境下开发自己的智能合约。

未来

综上所述,我们发现在智能合约编程语言这个底层技术支撑中,不同的安全实现方式,将会给我们的应用带来不同的安全保障。Solidity的动态灵活、应用广泛却安全性不够;Move语言的安全性提升但是还没有做到全方位的安全保障机制;DeepSEA的安全机制相对领先,但是还没有在足够多的应用上使用。

随着区块链生态环境的不断成熟,新的编程语言开始浮现,和过去几年间所发生的安全问题相抗衡。Solidity作为先行者,拥有了巨大的采用度和公众熟悉度等优势,Move和DeepSEA等新语言也紧随其后,取其精华,去其糟粕,学习其一路走来的经验,避免历史上的错误重演。

随着这三个语言的先后问世,智能合约开发者拥有了更大程度的选择自由的同时,在安全的前提下,未来的区块链世界将会变得更加丰富多彩。这值得每一个人拭目以待。

关于CertiK

CertiK公司于2017年底成立于纽约和硅谷,2019年初成立北京办公室,我们是由来自耶鲁大学和哥伦比亚大学的科研团队携数十年研究成果成立,通过形式化验证科技为智能合约和区块链应用及协议提供代码安全解决方案。团队迄今已经成功守护了价值近45亿美元的数字资产免受黑客攻击。

GeneralInformation:

Audit&Partnerships:

Website:certik.org

Twitter:@certik.org

Telegram:t.me/certik.org

Medium:medium.com/certik

币乎:bihu.com/people/1093109

原文链接点击:号称Libra最大创新的Move与Solidity、DeepSEA到底有何区别?

标签:MOVMOVESEADITmovez币为何总跌Movement DAOSEADEXDITTO价格

PEPE币热门资讯
BTC突破12000 补涨行情下该关注这三个币

本文观点仅代表个人,仅限交流学习,所有内容不构成任何投资建议。想及时了解更多行情信息,请添加官方微信进群:jiamibaoluo.

1900/1/1 0:00:00
火星一线 | NewsBTC分析师:BCH、TRX、ADA、XRP、EOS等竞争币或将继续走高

火星财经APP一线报道,NewsBTC分析师AayushJindal指出,随着加密货币市场总值飙升至3500亿美元以上,BTC、ETH分别突破12000美元以及330美元.

1900/1/1 0:00:00
关于杠杆借贷费率调整为按小时计息的公告

尊敬的用户, 为满足杠杆用户更精细化的借贷需求,火币全球站将于新加坡时间6月28日11:00调整杠杆借贷计息规则,原“按日计息”将更改为“按小时计息”.

1900/1/1 0:00:00
一个月前的话:天空才是市场的极限

昨天A股市场传出了一个大新闻。《华盛顿邮报》日前发表报道称,三家中国大型银行拒绝执行美法院关于违反朝鲜制裁调查的传票,将面临被切断美元清算渠道的风险,并根据案件细节,猜测三家银行分别为交通银行、浦发银行和招商银行.

1900/1/1 0:00:00
俄罗斯最大的比特币挖矿的矿场开建,造价730万美元

配置3000件矿机设备,占地面积4000平方米,俄罗斯最大的比特币挖矿的矿场让我们感到惊讶。这个计划的背后是神秘宇宙规划的。该矿场在之前“苏联肥料生产实验室”曾经使用过的地方建造。这个地方自从过去二十年以来没人居住.

1900/1/1 0:00:00
Reminder: Downtime Scheduled For June 26th, 8.30 AM UTC

Thisisareminderthattomorrow,atapproximately8:30AMUTC.

1900/1/1 0:00:00