值得信赖的区块链资讯!
比推数据  |  比推终端  |  比推英文  |  比推 APP  | 

下载比推 APP

值得信赖的区块链资讯!
iPhone
Android

智能合约中的代码逻辑,究竟该如何设计?

链闻ChainNews

1 智能合约与 Defi

智能合约,最早由 nick szabo 在 1996 年提出。最早在博士的论文 [1] 中,智能合约的提出,就是引用在金融合约抵押品的例子。但是 90 年代当时缺少可信的执行环境,智能合约并没有被应用到实际产业中,比特币诞生后,人们发现比特币的底层技术—区块链,天生可以为智能合约提供可信的执行环境。

以太坊看到了区块链和智能合约的契合,发布了白皮书《以太坊:下一代智能合约和去中心化应用平台》,于是,智能合约开始有生命力了。

比特币引领区块链,以太坊复兴智能合约。最早,大家用智能合约来承载各种理想,把一切资产和模式都搬到区块链上,用合约写个项目,发爱西欧。之后爱西欧热潮退去,经历了 18 年的熊市后,Defi–也就是去中心化金融,开始重新审视以太坊智能合约应用。其实智能合约,天然适合金融合约。

于是,除了去中心化交易所,借贷、预测市场、跨境支付、差价合约等等金融产品,都开始用智能合约去构建。由于 Defi 在以太坊的兴起,以太坊也似乎找到了新的自我定位:从世界计算机,到全球经济结算层。

世界计算机是什么?区块链+图灵完备。全球经济结算层是什么?是一个没有门槛、对任何人开放的、没有监管的、资产在全球通过链上自由流动的金融体系。因为 EVM 又贵又慢,无法承担世界计算机的性能。那么什么东西适合这种设定?可以接受又贵又慢?金融。金融本身低频、大额的交易,能够使以太坊目前的缺点不成为阻碍。

现阶段的以太坊,最适合做的就是 Defi。Defi 产品的本质就是一个智能合约。Defi 生态的本质就是,智能合约之间的交互。目前在以太坊已经聚集了不少 Defi 应用,也吸引了来自红杉等风投公司的投资。

æ™ºèƒ½åˆçº¦ä¸­çš„ä»£ç é€»è¾‘ï¼Œç©¶ç«Ÿè¯¥å¦‚ä½•è®¾è®¡ï¼Ÿ

2018 年 10 月-2019 年 2 月的 4 起融资

2 智能合约的本质

那么,智能合约的本质是什么?拆开来讲,智能合约是 Smart Contract,Smart:由代码实现,执行确定性结果。这是由图灵机的特性决定的。Contract:合约是定义了各方权利和义务的,具有法律约束力的协议,底层是逻辑学。

智能合约和人工智能无关,但是很容易联想到一起,更确切的说法可以叫:persistent scripts 持久性脚本。

一旦用代码写好,就可以持久运行的程序脚本。所以说,理解智能合约,应该是:智能合约是定义各方权利和义务的,可验证的计算机程序。

从智能合约的本质来看,这就是为什么可以说 Code is law。因为用代码把各方的权利与义务提前规范好了,代码跑起来,自动运行,没有人能够去更改和作恶。也就是「去中心化」即「去信任的」的含义。不需要你去相信人性,相信代码就好啦,只需要验证了代码的公正。

但是,智能合约本身是有局限性的。从代码角度,写没有 bug 的代码是一件非常困难的事情,即使做好了所有可能的预防措施,在相当复杂的软件中也总会存在意想不到的执行路径或者可能的漏洞。

3 智能合约的两大局限

法律角度:法律合约也需要解释与仲裁。创建毫无漏洞法律合约是非常困难的。这就是为什么在出现争议时我们需要法庭。而计算机只会执行写好的条款,无法「人工智能」地去解决未预料的情况,区块链的不变性增加了这个问题,因为合约无法轻易修改。

这就引出了 智能合约的去中心化悖论。智能合约该不该升级?能升级的话,就需要管理员在智能合约留后门,留后门的智能合约是不是意味着中心化?智能合约不升级的话,又不符合软件开发的规律。

所以说,不要用去中心化来形容智能合约。智能合约的「去信任」来自两方面:1. 自动执行写好的逻辑;2. 可验证。可验证的意思是,如果有 bug 有人作恶,任何人在链上都可以看见。对于智能合约无法提前规定的东西,比如突发情况的争议。通过引入链上治理和博弈论来解决,使作恶成本大于诚信成本。

对于智能合约本身的部分,依靠第三方的安全审计来尽量避免 bug。对于合约修改和升级的需求,通过设立公示期,公示升级时间和内容,再执行的方法。类似宪法修正案。

智能合约的去中心化悖论,是智能合约的第一个局限。

第二个局限,智能合约是一个封闭的系统。独立运行在链上世界,无法和真实世界产生联系。这就是为什么 Defi 生态需要一个预言机作为基础设施。预言机的作用是,作为链下世界和链上世界的桥梁,把真实世界的数据,打入到智能合约中,让智能合约可以引用,比如此时此刻 Eth 的价格。对于用户来说,现在在 Defi 世界里玩耍,其实是在和智能合约做交互,对人的门槛要求很高。

这其实是区块链世界,权利与义务的问题,去中心化,表面上扩张了每个人的权利:每个人都可以自己管理私钥,不托管资产给第三方。但同时,权利与义务对等。在 code is law 的世界里,有能力承担对等义务的人又有多少?使用一个 Defi 产品时,还是要相信团队的代码能力和审计公司的水平。不可能说,每用一个 Defi 产品之前,还要自己 reveiw 一下合约写的靠不靠谱。所以,Defi 虽然是普惠金融,但是依旧需要精英治理。

权利与义务的同时下放,同样带给 defi 产品很大的使用门槛。这也是 dex 为什么市场一直无法和 cex 相比。教会爷爷奶奶申请自己的以太坊钱包、保存私钥不是一件简单的事。当然,Defi 还在早起阶段,需要基础设施、配套工具继续完善,用户越来越友好。

4 如何定制合约中的 LAW

总结一下,为 Defi 等产品设计智能合约时,需要注意什么?

1、DeFi 项目不需要完全去中心化,只需要资金托管的去信任,该要求高效率的部分一定要做到高效,才能占领市场。而不是等着用户过来用;

2、难点不在技术,在于经济体系的设计,引入激励和防止作恶;

3、找到一个具有共识的去中心化预言机方案;

Diane 相信,Defi 对传统金融的改革是具有实际意义的。tokenize everything,trade anytime,anywhere 不只是一个愿景。

在未来,资产相关的合约都可以通过智能合约表达和执行,这是真正的普惠金融。现在门槛稍高,需要自己提升姿势水平,才能畅游 Defi 世界,同时,Defi 的创业机会也在一个大窗口期,Diane 每周都会写文章去分析,欢迎大家加微信 Diane_1997,关注 Diane 的公众号,一起交流。

5 Q&A 环节

1 有什么不错的 defi 分享?

答:我系统梳理过 defi 产品布局:https://mp.weixin.qq.com/s/XDWUjKfW-RBPZYlhH5iwXA;

最近关注的是预测市场、借贷产品。

2 怎么选择预言机?

答:有的项目会自己搭建预言机系统,比如 augur,基于共识,所以效率会慢。追求效率的会用中心化预言机,不够安全。目前的解决方案是第三方预言机,国外的有 chainlink,国内团队有 dos network。

3 如何减少合约漏洞的损失?

答:合约中的交易一旦发生,无法更改,除非发动矿工回滚交易,这就是我说的智能合约的局限性所在。你用银行卡的话,出问题,有权力机构保护你的利益。区块链世界,黑客在食物链顶端。

4 Hydro Protocol 这是个什么协议?

答:hydro protocol 是去中心化交易协议,为 defi 提供各种类开源的去中心化交易场所。地址 https://hydroprotocol.io/。

5 Defi 如何解决跨链资产转移?

答:需要跨链基础设施,比如 cosmos 等。

6 去中心化交易所如何解决确认时间和扩容问题呢?

答:首先,去中心化交易所有不同的类型。一笔交易在交易所有两大环节:撮合和结算,撮合引擎放在中心服务器来做,其实就解决了交易速度和 tps 的问题。能达到和中心化交易所一样高的性能。

7 如何设计可升级的智能合约?

答:作为 admin,给智能合约留个能升级的权限。需要升级的时候,对外公示升级内容,设计一定时间的公示期,说明公示期到,立即自动执行升级。如果有争议,通过链上治理解决。


来源:链闻ChainNews


说明:比推所有文章只代表作者观点,不构成投资建议
原文链接:https://www.bitpush.news/articles/480286

比推快讯

更多 >>

下载比推 APP

24 小时追踪区块链行业资讯、热点头条、事实报道、深度洞察。

邮件订阅

金融科技决策者们都在看的区块链简报与深度分析,「比推」帮你划重点。