Facebook 的 Libra 带来的最大创新:智能合约语言 Move | 白话区块链入门 176

Nafisa ·
更新时间:2024-09-20
· 957 次阅读

640?wx_fmt=gif

作者 | 郭立芳
出品|白话区块链(ID:hellobtc)

6 月 18 日,Facebook 高调公布了 Libra 白皮书,在全球范围内引发热议,Libra 还发布了技术白皮书,详细介绍了其新开发的智能合约语言 Move 。

Move 横空出世, 尤为吸人眼球。有人评价,这才是智能合约语言应有的模样,被很多人誉为 Libra 最大的创新。

简单地讲,比特币是对货币的编程,以太坊是对应用的编程,而 Libra 是对资产的编程,Move 就是对这门资产编程的语言。

所以,要搞懂 Move,先弄清楚什么是 Libra


01 什么是 Libra ?

640?wx_fmt=jpeg

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

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

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

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

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

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

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

 

02 Move 语言有什么特点?

640?wx_fmt=jpeg

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

1、安全可靠

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

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

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

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

2、记账不容易出错

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

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

3、成本更低

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

 

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

640?wx_fmt=jpeg

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

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

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

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


04 小结

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

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

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

「白话区块链入门系列」互动有奖

本文发布24小时后,将精选一名留言者,奖励8.8元红包;

指出本文事例、逻辑等重大错误、并提出优秀建议的留言,一经采纳,奖励50元

本系列长期接受投稿,稿酬丰厚。后台回复「投稿」获取详细信息。



往期内容精选

♢罗永浩:大多数人并不理解区块链,因此和朋友吃饭不能聊区块链? 

♢没有老板也没有CEO的的分布式自治组织是什么 ? 

♢如何制作以太坊/ ERC-20 冷钱包并进行离线签名转账?

♢电子现金很方便?或许你还不了解法定数字货币 

♢半小时吃掉 7000 多个比特币,何一口中的“深度”是什么意思?

★后台回复「入门」获取完整目录!★




——End——


『声明:本系列内容仅供区块链科普入门学习,不构成任何投资意见或建议。如有任何错漏,敬请留言指出。

640

640?wx_fmt=png

亲,据说99.9%有品位的人都点了「在看」?


作者:白话区块链-大白



move 创新 智能合约 区块链

需要 登录 后方可回复, 如果你还没有账号请 注册新账号