mt logoMyToken
总市值:
0%
恐慌指数:
0%
币种:--
交易所 --
ETH Gas:--
EN
USD
APP
Ap Store QR Code

Scan Download

科普 | Facebook的Libra带来的最大创新:智能合约语言Move

收藏
分享

这是白话区块链的第 1331 期原创
作者 | 郭立芳
出品|白话区块链(ID:hellobtc)


2019 年6 月 18 日,Facebook 高调公布了 Libra 白皮书,在全球范围内引发热议,Libra 还发布了技术白皮书,详细介绍了其新开发的智能合约语言 Move 。 Move 横空出世, 尤为吸人眼球。有人评价,这才是智能合约语言应有的模样,被很多人誉为 Libra 最大的创新。

简单地讲,比特币是对货币的编程,以太坊是对应用的编程,而 Libra 是对资产的编程,Move 就是对这门资产编程的语言。 所以, 要搞懂 Move,先弄清楚什么是 Libra


01 什么是 Libra ?

Libra 在英文中是“天秤座”的意思,天秤座象征着平衡与公正。根据 Facebook 公布的项目白皮书, Libra 是“货币”和与其对应的金融基础设施的综合体,形象地讲,可以被看作同时具有支付宝和跨境支付的功能, 未来的 Libra 可能具有国内支付、跨境支付、货币、证券和金融服务等一系列功能

Libra 白皮书的技术方案中,采用的智能合约语言就是 Move , 是为操作数字资产而生的 智能合约 语言。 李笑来对 Facebook 的 Move 语言的评价,却与众不同:Facebook 又犯傻,用得着专门设计个 Move 语言吗?

设计 Move 语言真的是多此一举吗?

现实世界的资产数字化过程中面临着两方面的困难: 稀缺性和权限控制

所谓稀缺性就是 不允许用户随意复制资源 ;权限控制通俗地讲,就是你只能花自己的钱,不能花别人的钱,这在已有的区块链编程语言中得不到良好的支持,一旦出现问题,对于资产将是灾难性的,需要通过创建一个新的智能合约语言来解决此类问题。

这个智能合约语言之所以叫 Move , 表示区块链上的币从一个账户转移到另一个账户时,也就是实现资产的 Move ,即移动,而不是简单的 Copy,这样做的好处是,杜绝了像以太坊之前出现的各种合约记账的错误与漏洞。

还有人联想,可能与 Facebook  的格言 Move Fast and Break Thing 对应,达到了一语双关的效果。

02 Move 语言有什么特点?

Move 语言的主要设计目标是 灵活性、安全性和可验证性

1、安全可靠

概括地说,Move 作为一种新的编程语言,作用是为 Libra 区块链提供安全可编程的基础。提交给 Libra 区块链的每个交易,都使用以 Move 编写的交易脚本进行编码。

简单来说,Move 有三大功能: 发行数字货币、Token 和数字资产; 灵活处理区块链交易; 验证器管理。

区块链项目的智能合约语言,安全性是第一位的,不然,你被黑客攻击了 ,就等于把资产拱手送人,还拿走不谢,甚至会害用户家破人亡,所以,Move 设计的核心诉求就是安全性 。

在 Move 语言中,所有的合约执行路径都能在编译的时候确定,然后可以进行非常充分地分析、验证。Move 合约在运行前,都会被一个验证器进行校验,这个验证器可以检查出各种类型错误,而且合约执行的时候,还一边运行,一边被检查,所以,Move 合约相对安全。

2、记账不容易出错

传统的编程语言,包括以太坊智能合约语言中,对于数字资产的记账方式,是有可能出错的,因为它们就好比你们单位墙上的标语,人人都可以念,导致记账是有可能重复的。比如,过去几年里的各种记账漏洞搞得大家对智能合约的未来丧失信心。

Move 合约采用资源类型,数字资产只能被消耗,不允许复制资源,目的是防止意外重复和丢失。 就像你手上的蛋糕,吃掉一块,就少一块,这样一来,数字资产就像资源一样,不能被复制,不能凭空消失。例如某个公司搞营销活动,就可以在 Libra 中通过 Move 合约产生和验证优惠券的资产,还可以使用和转让。

3、成本更低

在 Move 语言中,一个 Token 可以被想象成一个箱子,像资源一样进行传递,且不会暴露箱子内部的任何细节,这使得运行成本更低。

03 Move 和以太坊的 Solidity 语言有哪些区别?

以太坊的 Solidity 语言,功能强大并且非常灵活,具有良好的适应性和扩展性,但它的硬伤是存在安全风险。 安全问题是虚拟数字货币的基本要求,也是最大的痛点。

Move 语言,主打安全牌,针对以太坊智能合约中容易出安全漏洞的语言进行了大量的修改,额外添加了一层保护,可以避免很多 Solidity 的漏洞。

Move 语言 比以太坊的智能合约语言严密 ,可以在编译的时候发现编程的低级错误,而不是拖到运行期才爆出漏洞,这样保证智能合约在执行中不会发生低级错误。

Move 语言 会阻止代表其他用户发布数据 ,因此用户需要确认所发布的所有内容,使他们能够完全控制选择共享的信息。


04 小结

虽然,Move 看起来还不够细腻和成熟,但 Facebook 敢于创新,独家设计出真正适合金融应用的智能合约语言,甚至可能会成为区块链的“编程范式”的一个良好的开始。

Move 让智能合约开发者拥有了更大的选择自由,在安全的前提下,未来的区块链世界将会变得更加丰富多彩,值得每一个人拭目以待。

你认为设计 Move 语言真的是多此一举吗?为什么? 欢迎在留言区分享你的观点



END

上一篇 科普 | 什么是比特币?

『声明:本文为作者独立观点,不代表白话区块链立场,本内容仅供广大加密爱好者科普学习和交流,不构成投资意见或建议,请理性看待,树立正确的理念,提高风险意识。文章版权和最终解释权归白话区块链所有。』


欢迎长按二维码

阅读 白话区块链入门连载

↓↓↓


喜欢请点「在看」 ?

免责声明:本文版权归原作者所有,不代表MyToken(www.mytokencap.com)观点和立场;如有关于内容、版权等问题,请与我们联系。