0

以太坊和智能合约的关系【汇编20篇】

浏览

6200

文章

67

篇1:一文了解如何给智能合约增加隐私性

全文共 5651 字

+ 加入清单

对用户来说,普通交易的隐私保护(译者注:文中有时也会简称为隐私交易)基本上算是一个已解决了的问题(尽管在研究上仍然遗留了一些挑战)。如果我们想在不透露账户余额或转账金额的前提下转移密码学货币,我们有诸如大零币(Zcash)或门罗币(Monero)这样可接受的选项。不过,对于去中心化应用或者智能合约来说,隐私保护仍是一个尚未解决的问题。

是什么让智能合约与普通交易在输入 / 输出(I/O)的隐私保护上有所不同呢?

在本文中,我们将解密隐私保护从普通交易拓展到智能合约上会遇到哪些挑战。为此,我们将考察应用于隐私币的常用密码学工具,并探讨为什么这些工具不太适合更复杂的隐私应用。最后,我们将简要介绍最近提出的一些智能合约隐私保护方案。

隐私保护的定义

「隐私保护」到底是什么意思?

我们将从函数的角度来定义隐私保护。例如,我们可以把交易看作是一些函数,它以账户余额和转账金额作为输入。然后它输出更新后的余额。

图 1:以函数来表示交易过程。

(要实现隐私保护)我们可以考虑隐藏函数的输入和输出。就交易而言,这可以让我们隐藏账户余额和转账金额。你会愿意公开你的账户余额和转账历史吗?可能不会吧。因此,我们至少要支持函数(以及随后的智能合约)的 I/O 隐私保护。

图 2:隐藏函数的 I/O。

我们也可以考虑隐藏函数的_调用者_信息。有时候,函数输入会留下关于函数调用者身份的线索。在实践中,隐藏函数的输入和输出通常会和隐藏函数调用者的身份相结合。

图 3:隐藏函数调用者。

最后,我们可以考虑隐藏函数本身。这在密码学货币领域不太常见,其通常与隐藏函数的输入 / 输出相结合。

图 4:隐藏函数本身。

当你在本文中看到 「隐私保护」这个词时,请把它当成一个总称,指的是_至少支持 I/O 隐私保护_的东西。

好吧,但我们要在哪里用到隐私保护呢?

我们可以认为普通交易的隐私保护已被解决(至少在可行性方面确实如此,可扩展性又是另一回事了),所以让我们直接转到智能合约的隐私保护。

不过,我们先绕个弯子,回顾一下以太坊 ……

以太坊支持用户自定义的合约,合约以代码的形式执行(也就是 「智能合约」)。这些合约用以太坊自己的图灵完备的语言编写,每执行一个操作都要支付一些(预设的)费用。因此,每笔交易都要附上交易费,以激励矿工打包交易。

应用的隐私保护

智能合约让我们在区块链上得以构建丰富的应用 —— 从用户可交易各种密码学货币及其衍生品的去中心化交易所(DEX),到允许权益持有者对提案进行投票的去中心化自治组织(DAO)。

我觉得没必要长篇大论讲解为什么 DAO 需要隐私保护;在现实生活中,投票通常都是私下进行的,所以想要隐藏我们的虚拟投票也是非常合理的。

不过,以太坊的智能合约并没有提供任何形式的开箱即用的隐私保护。所有的信息都是公开可查看的 —— 合约的输入 / 输出,合约的功能,参与的用户,等等。为以太坊的智能合约_添加_隐私保护不是一件容易的事情,因为以太坊从一开始就没有被设计成支持隐私保护。虽然在以太坊上可以实现隐私交易(通过 1,2),但是更复杂的隐私保护操作往往过于昂贵,甚至超过以太坊单个区块的费用限额(即 gas limit),以至于无法实现。难道我们就不能设计一种新的密码学货币,从一开始就支持任何函数的隐私保护吗?毕竟,大零币和门罗币就是这样做的。

目前我们还不清楚如何在密码学货币中支持任意函数(例如在投票和交易所中需要的函数)的 I/O 隐私保护。为了理解这些挑战,我们需要考察密码学货币是如何支持隐私交易的。

通往隐私保护之路

我们先考察用于_普通交易_I/O 隐私保护的密码学工具。我们将关注账户模型而非 UTXO 模型的加密货币。账户模型在支持智能合约的场景下尤其有用,不过账户模型对于隐私计算来说不是必须的(我们将在后面看到)。

工具 1:同态加法

大多数密码学货币的隐私保护方案都依赖于具有_加法同态_的加密或承诺方案。为了简单起见,我们将专注于加密方案,但同样的原则也适用于承诺方案。

在加法同态加密方案下,我们有以下等式:Enc(a) + Enc(b) = Enc(a + b)。

因此,加法同态加密方案允许_任何人_这样验证交易的有效性:Enc(balance) + Enc(transfer amount) = Enc(balance + transfer amount)(余额的加密值与转账额的加密值之和,恰等于两者之和的加密值)。

图 5:Alice 在不透露账户余额或转账金额的情况下转账。

Alice 有自己的的公钥 —— pk_a。她用自己的公钥加密账户余额 bal_a (这样就只有她自己知道账户余额)。我们用 β_a 表示她加密后的余额,β_a = Enc(pk_a, bal_a)。Alice 的公钥 pk_a 和加密后的余额 β_a 都公开在网上,任何人都能查看。

Bob 同样如此;他也有自己的公钥 pk_b,只有他自己知道的账户余额 bal_b,以及用他的公钥加密后的余额 β_b,β_b = Enc(pk_b, bal_b)。

如果 Alice 想在不透露转账金额(amnt)或她自己的账户余额的情况下向 Bob 转账,她只需要公布用她自己的公钥加密后的转账金额,以及用 Bob 的公钥加密后的转账金额。我们分别用 c_a = Enc(pk_a, amnt) 和 c_b = Enc(pk_b, amnt) 来表示这些值。

现在任何人都可以计算更新后的余额。Alice 更新后的账户余额是 β_a - c_a,Bob 更新后的账户余额是 β_b + c_b。等一下!如果所有这些值都被加密了,我们怎么知道 Alice 的账户里有没有足够的钱支付 amnt 金额的转账呢?我们又怎么知道 c_a 和 c_b 加密的金额是不是一样的呢?

这就要用到我们的下一个工具 —— 零知识证明了。

工具 2:零知识证明(ZKP)

为了确保 Alice 没有在上述交易中作弊,她需要在交易中附上一个证明。这个证明需要表明她的账上有足够的资金以完成交易,她没有向 Bob 转一笔负数的金额(无论是意外还是恶意),而且 c_a 和 c_b 确实加密了相同的金额。

当然,Alice 不想透露她真实的账户余额和转账金额;因此,她附上了一个零知识证明 π,让所有其他用户相信必要的条件已经被满足,而无需透露任何额外的信息(如她的账户余额或转账金额)。

现在把所有的工具放在一起 ...

图 6:现在给隐私交易附上必要的 ZKP

Alice 用她和 Bob 的公钥分别对转账金额进行加密,得到了 c_a 和 c_b。她提供了一个 ZKP,π,证明她在交易中没有作弊。矿工们会验证所有的必要条件是否被满足,ZKP 是否有效。然后,他们会使用同态加法分别更新 Alice 和 Bob 的加密余额:β_a = β_a - c_a,β_b = β_b + c_b。注意,虽然用户提供了加密后的输入和一个 ZKP,但是矿工需要负责执行计算以及更新加密后的余额。在区块链中,我们假设大多数矿工是诚实的,所以我们知道他们会正确地更新 Alice 和 Bob 的余额。

注:这是一个大大简化的解释(例如,省去了为 确保加密安全 所需要的随机性)

将普通交易的隐私保护技术拓展到智能合约上面临的挑战

所以我们刚刚已经看到了,我们可以执行隐藏输入和输出的交易。那么我们可以把在隐私交易中用到的技术,用于支持应用的 I/O 隐私保护吗?换句话说:隐私计算和隐私交易是否不同?如果是,为什么?

问题 1

需要注意的是,隐私交易需要满足设定的条件才是正确的(即发送方要有足够的资金,转账金额必须为正数,等等)。我们如何能弄清楚一个任意的合约需要满足哪些条件?这些条件显然受特定的应用影响。在投票中,我们可能希望证明我们隐藏的投票是在正确的范围内进行的,而对于拍卖,我们可能希望证明我们的账上有足够的资金用于封闭投标。

对问题 1 的潜在解决方案

这个问题也没那么严重;只是需要用户做更多的工作。去中心化应用的开发者必须明确他们的特定应用需要满足哪些条件,并将这些条件传达给用户。为了能够证明各式各样的条件,我们可能希望在方案中支持一些通用的 ZKP。所谓_通用_的 ZKP 就是能够证明任意的声明(不像那些目前用在大零币里的 ZKP,它们是非通用的)。

问题 2

在普通交易中,我们只对属于同一个用户的值进行操作(即使用同一个密钥加密)。比如在图 6 中,矿工把用 Alice 的公钥加密后的余额与用 Alice 的公钥加密后的转账金额相加。如果我们想对属于不同用户的输入值进行隐私计算呢?这并不是一个多么牵强的需求,比如我们考虑对投票做隐私保护时就会涉及。

对问题 2 的潜在解决方案

目前还不清楚如何在用户相互之间不透露输入明文的情况下,支持对不同用户的输入进行计算。有一些先进的密码学元件(比如安全多方计算和基于多密钥的全同态加密 FHE),允许用户对不同密钥加密的输入进行计算。然而,这些方案的成本都非常高,而且有很多缺点。在密码学货币的应用场景下,目前似乎没有人有一个很好的解决方案来解决这个问题(除了与参与计算的其他用户共享明文,然后在同一个密钥下加密)。

问题 3

普通交易只需要同态加法,因为我们只需要将加密的转账金额加到加密的余额上。如果我们想进行更复杂的计算,可能涉及到乘法呢?

对问题 3 的潜在解决方案

同态乘法允许我们将加密的输入相乘,使得Enc(a)*Enc(b) = Enc(a*b)。通过同态加法和同态乘法,我们可以表示任意多项式函数。所以,我们很自然地想到这个问题:我们能够支持同态乘法吗?

一个既能支持同态加法,又能支持同态乘法的加密方案是全同态加密(FHE)。使用 FHE,我们仍然可以遵循图 6 中所描绘的模型。也就是,用户指定加密输入,要运行的函数,以及证明加密输入满足必要条件的 ZKP。矿工能够验证 ZKP。他们使用同态加法和同态乘法直接对用户提供的密文进行操作。

不幸的是,FHE 方案使用基于格(lattice)的加密技术,这(在目前)与密码学货币中使用的超高效的 ZKP 并不兼容。我们曾经写过关于 FHE 及其问题的 文章。目前,由于 FHE 存在一些缺点,还没有人提出基于 FHE 的解决方案。

这样,我们目前就只剩下两种方法来解决问题 3 了。

*接受我们只能支持同态加法的现状,遵循隐私交易模型。

图 7:遵循隐私交易模型

在这里,用户提供加密后的输入和一个 ZKP,证明他们的输入满足特定应用的一些指定条件。矿工验证证明,使用同态加法对输入进行操作。需要注意,应用于输入的函数只能用加法来表示。因此,只要函数只需要用到同态加法,我们就可以要求矿工对我们加密的输入执行任意满足该条件的函数。这就是__Zether__所采用的方法。

*要求用户线下计算。这样我们就不需要为加密 / 承诺支持同态乘法了。

图 8:将工作外包给用户

在这里,我们要求用户 Alice 将对明文的几乎所有计算都放到线下进行。她会公布计算的加密输入和加密输出。因为计算是在线下完成的(因此我们并不知道 Alice 是否诚实),她同样需要提供一个 ZKP 证明计算过程是正确的。注意,这一步对隐私交易来说是不必要的,因为矿工会执行计算,而我们假设大多数矿工是诚实的。就应用而言,她可能还需要另一个 ZKP,证明应用指定的条件已被满足。矿工所需要做的就是验证 ZKP 是否有效,然后同意 Alice 提出的状态变更。这就是 Zexe 和 Zkay 所采取的办法。

我不会在这里讨论哪种方法(图 7 与图 8)更优;只想说明它们是_不同_的。

智能合约的隐私保护

前面我们已经谈到了在区块链中支持任意函数的隐私保护要面临的一些问题,现在让我们来看一看一些已有方案的构造。

如果前面说得还不够清楚,我再重申一下,这个领域距离解决问题还有很长的路要走。设计这些构造的论文(即 Zether,Zkay,Zexe)都是在过去两年中发表的。

Zether 是一个建立在以太坊上的隐私交易方案。它可以延伸到支持有限的智能合约的 I/O 隐私保护 —— 即那些可以通过同态加法表示的合约。这使得我们可以执行简单的封闭式拍卖(假设竞拍者会一次买下所有单位)和隐私投票(假设投票选项非 0 即 1)。遗憾的是,由于 gas 的限制,目前在以太坊上只能实现在交易中隐藏用户余额和转账金额。与接下来的两种构造不同,Zether 使用的是 「透明」 的 ZKP (即 ZKP 不需要可信的启动设置)。

Zkay 同样延伸了以太坊的设计以支持智能合约的隐私保护。他们依赖 ZKP 保障隐私计算的正确性,从而可以将大部分工作丢给用户在线下完成。因此,这种设计选择使得它们能够支持比 Zether 更多类型的函数。

Zexe 则试图延展大零币的设计,以支持任意脚本。与前两者不同,Zexe 还可以支持函数本身的隐私保护。

方案隐私保护类型模型表达能力基于哪条链设计ZetherI/O图 7加法函数以太坊Zkay*I/O图 8任意函数以太坊Zexe*I/O, 函数**图 8任意函数大零币

Zkay 和 Zexe (如前所述)使用的是带有可信设置的 ZKP 方案。不过,这些 ZKP 方案当然可以被不需要 可信设置 的方案替代。

在区块链的场景中,I/O 隐私保护似乎比函数隐私保护更有意义,因为用户很可能希望在决定是否参与合约之前先对合约进行审计。

请注意,还有其他一些用于智能合约隐私保护的构造(即 Ekiden、Hawk、Arbitrum),但是这些方案都需要某种准-受信任(semi-trusted)的管理器或受信任的硬件。

大多数智能合约的隐私保护方案都需要额外的安全假设 —— 无论是受信任的启动设置(trusted setup),准-受信任的管理器还是受信任的硬件。然而,ZKP 是一个快速发展的领域,更高效透明的构造很可能会被创造出来。

期许

当涉及表达能力,信任和效率时,在智能合约的隐私保护上进行的探索提出了很多有趣的理论和实践挑战。现在,很难说在图 7 或者图 8 所代表的方法中,哪种(如果有一种的话)可能会在区块链的隐私计算中胜出。此外,未来全同态加密的进展能否转化到区块链中以解决问题 3,这也是一个很有趣的看点。

展开阅读全文

篇2:区块链智能合约的原理是什么?怎样才能触发智能合约生效?

全文共 901 字

+ 加入清单

区块链对很多人来说是非常神秘的系统,区块链智能合约很多人都不懂。其实,只要搞懂区块链智能合约的原理你就能懂区块链了。今天就来了解区块链智能合约的原理到底是什么?有智能合约的支持,区块链系统才能够正常的运行。只能合约的触发规则很多人都不懂,只有懂得了区块链智能合约的触发规则,你才能够更懂区块链到底是如何运行的。

区块链智能合约的原理是什么?怎样才能触发智能合约生效?区块链动态信息哪里获取?

1、区块链智能合约的原理是什么?区块链是去中心化的系统,这样的系统正常运行都是靠智能合约在维系。智能合约不是谁拟定的,是在系统形成之初就通过编程规定好了的,在一定的条件下就能够触发智能合约,触发了智能合约调用智能合约就能达成交易。这其中是不需要任何认为去管控和操作的。区块链智能合约的原理就是达到合约触发条件以后,自动执行合约内容。现在很多系统都采用了区块链智能合约原理,这样的原理对交易中的任何人都是平等的,而且更加的安全,没有任何所谓的中间商和主导者,是完全数字智能的管理方式。

2、怎样才能触发智能合约生效?不懂得区块链的人是不懂智能合约触发的。其实,智能合约就是一个很多条件加持的事务所版块。只要你将交易所需要的条条框框都做到了,你就可以触发职能合约自动生效。职能合约不需要人为干预,条件达到就会自动调用执行。区块链智能合约的原理是非常简单的,前面说到了。未来这种完全去中心化的系统能够得到更好地发展,是因为人们对于去中心化的需求是非常迫切的。没有中心管理者,平等公正安全快捷这些都是可以实现的,不再是遥远不可及的事情。

3、区块链动态信息哪里获取?要了解区块链自然要掌握足够多有关区块链的动态信息才行。要了解动态信息,你可以直接上OKLink的信息获取版块里面了解。这个浏览器是专门致力于服务区块链的浏览器。可以查询各种区块链的数据信息,还可以查询各种主流数字货币的相关信息,还有区块链动态信息也是实时更新的。区块链智能合约的原理这样的信息对于想要了解区块链或者投资区块链的人来说是非常重要的。投资有风险,在进行投资之前一定要上OKLink多了解信息,了解掌握的信息多了以后,无论是投资还是聊天你都心中有底。

展开阅读全文

篇3:七个智能合约应用案例

全文共 1810 字

+ 加入清单

1.数字身份智能合约可以使人们使用数字身份管理来拥有和控制其个人信息,可以使人们选择他们希望向交易对手披露的个人信息。例如,在国外旅行时,人们可以借助智能合约选择并向机场当局显示必要的个人信息。除非经过所有者认证,否则其他任何一方都不能查看或复制数字数据。因此,智能合约可以有效地阻止身份盗用。不需要交易对手存储用于验证交易的机密数据,这样可以减少涉及数据传输和存储的数据安全责任。使用智能合约的数字身份管理还可以用来确保合规性和互操作性,因为关键数据可以轻松地与多方共享。

2.供应链供应链涉及几个基本流程,例如从各个供应商处购买产品,将其存储在仓库中,下订单,包装所需产品并将其运输到零售商或客户。许多组织使用免费和高级软件来管理其供应链,但是供应链管理软件可以是通用的,一刀切的所有解决方案可能并不适合所有企业。供应链管理是许多智能链用例之一,可以使供应链更加透明和高效。供应链程序中的每个动作都可以编码为智能合约。通过将物联网集成到智能合约中,可以实时跟踪从工厂到零售商店货架的每个阶段的产品,并且可以知道并认证已交付产品的来源。此外,智能合约可以减少对供应链流程进行人工干预的需求。

3.金融服务和银行金融服务可以使用智能合约精确记录财务数据,可以使用多个智能合约用例来管理抵押、资本表管理、付款和结算。对于抵押贷款,智能合约可以自动化付款处理并在支付贷款后释放留置权。此外,智能合约可以增强抵押记录的可视性并简化付款跟踪。智能合约可通过规避监管链中对中介机构的需求并自动支付股息来简化资本表管理。对于许多银行来说,银行挤兑可能是一个复杂的问题。如果存款人认为其银行可能无力偿还其存款,通常会发生挤兑。为了解决这个问题,银行可以利用智能合约允许储户和股东在指定参数内查看银行的贷款和准备金。此外,智能合约可以简化法规遵从,因为可以安全地存储必要的文档并轻松与相关方共享。

4.财产所有权智能合约可用于转移财产所有权,可以记录所有权并验证每个所有者的身份。这种方法对于跨境采购特别有用,因为可以避免耗时的谈判,繁琐的文档编制和复杂的官僚程序。智能合约也可用于证明知识产权,艺术家可以保留其作品的所有权证明,并保护其免受盗窃和非法使用。财产所有人和艺术家可以选择自己的条款和条件以公平使用他们的作品。此外,智能合约可以确保每当有人使用他们的作品时,艺术家都会获得版税。因此,借助智能合约,艺术家可以减少盗版的影响。

5.保险保险理赔流程可能是耗时且复杂的过程,可能需要数周甚至数月的时间。整个过程是手动的,增加了资源所需的成本并增加了人为错误的机会。在这种情况下,智能合约可以使索赔过程的某些部分自动化。保险机构可以将各种保险单写入智能合约,智能合约可以基于保险单的类型包含多个参数。当满足某些参数的要求时,保险索赔将被自动处理。例如,可以将诸如飓风的位置和风速之类的因素记录到智能合约中,如果超过了指定的阈值,则将启动索赔过程。在多个智能合约用例中的另一个用例可以是汽车保险,智能合约可以记录策略详细信息和驾驶员驾驶报告,通过将IOT传感器集成到汽车中,智能合约可以在发生事故时立即执行索赔处理。

6.预测市场预测市场使人们能够预测诸如体育、选举活动和拍卖之类的事件的结果。例如,足球比赛的结果或政客的未来竞选活动,预测市场提供有关公司或政治运动的公众意见的宝贵见解,企业还可以使用预测市场来了解是否应该发布新产品。智能合约可以透明地记录大量参与者的预测,以获得更准确的预测。可以激励参与者成为预测市场的一部分,并在做出准确的预测后获得奖励。在智能合约的帮助下,奖励的细节和奖励的支付可以变得精确和自动化。

7.医学试验在医学试验期间,几名患者必须前往多家医疗机构,并亲自携带文件以帮助医生了解其病史。智能合约可以通过跨机构查看患者数据来增强临床试验,患者可以选择要提供给机构的数据,以确保其隐私。此外,借助智能合约可以自动传输患者数据。通过这种方法,医疗机构可​​以了解各种临床试验的结果。此外,智能合约还可以激励患者参加临床试验。

通过将区块链和AI相结合,可以使智能合约更加先进。区块链和AI可以共同开发智能合约用例,以适应协议中的复杂参数。使用这种方法,智能合约可以变得动态和敏捷。此外,支持AI的智能合约可以分析过去的谈判,以提出更可能确保协议的不同类型的条款。由于这些好处,智能合约可能会在不久的将来成为业务规范。

展开阅读全文

篇4:以太坊上的智能合约运行速度怎么样?

全文共 1414 字

+ 加入清单

2021年2月3日,以太币的价格创下了1531美元的历史新高。大量运用智能合约的去中心化金融的应用是以太坊区块链增长的主要动力。公开信息披露,超过280亿美元的价值被锁定在基于以太坊的DEFI中,数据突破新高。以太坊的智能合约这个概念被推上了热门。那以太坊智能合约速度运行的快慢,将会影响市场对以太坊的认可。以太坊智能合约究竟是什么?未来以太坊智能合约速度的运行还可以更快吗?下面由笔者为各位网友简单对以上这些问题作出解答。

以太坊智能合约是指,一段部署存储在以太坊网络上的代码,运行在以太坊的虚拟机EVM中,提前设置了使用合约的条件,这段代码可以在按照满足事先设置的合约使用条件时,自动运作,执行合约的条款。以太坊智能合约速度运行得越快,能处理的交易越多。

熟悉区块链的网友应该都清楚,以太坊不同于比特币只做比特币一种数字货币的分布式账本。以太坊网络除了支持以太币交易外,也支持各种金融行业的产品在以太坊网络上交易,例如股票、债权、借款凭证等。既然以太坊的智能合约适用范围这么广,那么以太坊智能合约速度是怎么回事呢?

众所周知,数字货币交易需要缴纳交易费,比特币的交易费就是直接支付一定额度的比特币作为手续费。同样的,以太坊的交易费也是需要支付一定额度的以太币,而实际内部每个交易,都按智能合约的规定来执行命令,每执行一个命令都会产生一定的Gas的消耗,不同执行命令对应消耗不同数量的Gas。Gas具体需要多少,是通过以太坊中智能合约的执行计算量来决定的,我们可以通俗理解为算力消耗,例如:执行一次转账交易的命令会需要 21000 个 Gas。所以在以太坊中,只要是会消耗算力的命令,都会有一个对应的Gas标价。这个手续费最小单位是 wei;1000wei等于kwei;1000kwei等于mwei;1000mwei等于gwei;1000gwei等于szabo;1000szabo等于finney;1000finney等于ether。

而以太坊的矿工们,则有权利选择先打包哪一个智能合约,智能合约上支付的交易费越多,矿工们就越喜欢打包该智能合约,智能合约运行的速度就越快。如果我们想要实现最快的智能合约运行速度。我们可以按Gas limit一笔交易最高的交易费来支付,同时又给予矿工额外的附加Gas。这样我们就可以获得最快的速度。以用以太币交易为例,如果需要马上完成这笔以太币交易,我们额外支付了0.001ETH作为附加费用,这个费用就是附加Gas。

既然以太坊智能合约速度对每一笔交易影响这么大,那么以太坊智能合约速度还有办法提升吗?答案是:有的。

以太坊2.0未来会在第1阶段完成分片链的可扩展性技术机制,这可以极大提升以太坊区块链吞吐量。就运行速度来说,两者的差距就像在街道小路开车和上高速公路开车的对比这么明显。

我们可以通俗地理解为,通过分片链的交易方式,可以多进程地并行处理智能合约的交易,目前以太坊1.0遇到主网交易量剧增的情况,以太坊智能合约速度就会因为每一个节点需要排队处理和验证而变得低效。每增加一条分片链,就像工厂增加了一条自动化流水线一样,将以太坊由之前的手工点对点生产线升级为多条自动化流水生产线。而更多的自动化流水线和多进程并行同时处理这些功能增强了智能合约的能力,会为以太坊带来更高的业务吞吐量。按目前官方消息:分片链会在2021年以太坊 2.0第一阶段更新上线,届时以太坊智能合约速度将可以更高速地运行处理。

展开阅读全文

篇5:文章告诉你如何用Nexus Mutual为DeFi智能合约买保险

全文共 2357 字

+ 加入清单

DeFi正如日中天。但请不要忘记智能合约的安全风险。

以太坊创始人Vitalik Buterin最近也公开表示,DeFi还不错,但不是一个应该倡导很多普通人把毕生积蓄投入其中的地方。一个重要的问题是,很多人低估了智能合约的风险。它的利率比传统银行账户的利率要高很多,这意味着DeFi产品的风险也要大得多,“崩溃”的几率也要高得多。

但哪里有需求,企业家就会创造新产品满足市场需求。DeFi已经产生针对这一问题的解决方案。DeFi保险项目nexusMutual,专门针对智能合约漏洞风险,免除投资者参与DeFi的后顾之忧。

Nexus Mutual创始人Hugh Karp近日亲自发文,为你解读如何用Nexus Mutual购买DeFi保险。

如果你一直在积极参与Yield Farming热潮,或者只是使用任何一种DeFi协议,那么考虑保护自己免受潜在漏洞的侵扰可能是有意义的。

过去,智能合约发生过存在重大事故。尽管整个安全实践正在改善,但你永远无法确定智能合约是否将始终按预期运行。

本文我将向你展示如何在Nexus Mutual购买智能合约保险(Smart Contract Cover)来覆盖Solidity代码失败的风险,以及它有多么容易。

什么是Nexus Mutual?

Nexus Mutual是一种互助型(people-powered)保险,成员共同加入一个DAO,共同承担风险。它采用了非常古老的相互保险的概念,并使用代币激励以非托管的方式运行。

Nexus Mutual的第一款产品是Smart Contract Cover,它在“代码意外导致重大财务损失”的情况下提供索赔。

该产品的灵感来自2016/17年度的DAO hack或Parity多签钱包事件。成员们使用经过测试的staking程序对索赔进行投票。

2020年初的bZx遭到黑客入侵事件,Nexus Mutual完成了第一笔索赔赔付。

了解你的保险需求

第一步是了解你使用的是哪种智能合约系统,以及需要购买哪些保护。

Nexus Mutual提供系统基础上的保护,这意味着你可以购买Compound或MakerDAO或Uniswap或Curve等产品的保护。如果要与多个协议进行交互,或者使用的是互为基础的协议,则购买范围需要完全涵盖每个协议。

获取报价时,你需要选择以哪种货币(ETH或DAI)购买保险,以及多少天的保险期限。

因此,你需要知道:

你正在使用什么系统;

你在每个系统中投入了多少?和

你打算使用多长时间。

例如,如果你要在Compound借出5000 USDC,那么你可能想购买价值5000 DAI的Nexus Mutual保险。如果Compound出现问题,你将获得DAI赔付。

或者,如果你要向Balancer池提供cUSDC,则你可能希望购买Compound和Balancer的保险,以得到更全面的保险。

不提供哪些保险

Smart Contract Cover提供的是针对智能合约失败的技术风险(Solidity代码)的保险。

目前,它不提供诸如预言机失败,治理攻击,闪电贷操纵市场,经济/激励失败或智能合约之外的其他任何东西的保险。

Nexus Mutual团队正在努力扩大保险范围,因此请留意将来更全面的保险范围。

成为Nexus Mutual会员

如果你不是Nexus Mutual会员,则需要注册并成为会员才能获得保险。但是,任何人都可以随时查询并收到报价。

在Gas费很高时(现在几乎是所有时间都很高!),最好单独完成会员资格,然后再返回以获取报价。

会员资格涉及KYC流程和0.002 ETH的少量会员费。

KYC要求提供身份证件,例如驾照或护照,通常在几分钟内完成,但团队最多可能需要24小时才能人工审核完成。

在注册过程中,The Mutual会为你产生一个ETH地址作为你的Nexus Mutual会员地址。这是你与Nexus Mutual系统进行交互所必须使用的地址,并且每个人/实体只能使用一个地址。

你可以在之后切换你的ETH地址,但这仅在你没有任何有效的保险情况下才有效。

作为KYC的一部分,你可能需要移除屏蔽或者任何广告拦截器,以使我们的第三方KYC提供商系统正常工作,一旦KYC完成,可以将其恢复。

如何使用Nexus Mutual购买保险

一旦你成为会员并了解了承保范围,购买保险相对较为简单。

第一步是获取报保费报价:

1、转到app.nexusmutual.io。连接你的MetaMask,然后单击侧栏上的“购买保险”选项。

2、从想要购买的保险列表中选择需要保障的智能合约。

3、输入保额和币种。你可以选择ETH或DAI

4、输入你希望获得保障的时间。保险期限必须至少为30天,最长可以为1000天。

5、得到保费报价。得到一个保费报价不需要交易,因此你可以多次测试不同的选项。报价有效期为60分钟。如果你对报价满意,请单击继续。

上图为Nexus Mutual对Compound v2上10 ETH保额保险365天的保费

6、生成保费后,即可继续购买。你必须接受免责声明,如果你没有NXM代币还必须批准NXM代币转移。

7、签署Metamask交易。一旦确认,恭喜!Nexus Mutual正式为你提供该智能合约保险。

索赔

如果发生了被盗事故,那么你可以随时从Nexus Mutual应用程序的“Manage Cover”部分提交索赔。这将创建一个工作流程,以供Nexus Mutual的索赔评估人员进行表决。提交索赔要求存入少量NXM以防止垃圾索赔,但是在购买保险时,你已经拥有所需的NXM,因此你无需采取任何其他措施。

如果你的索赔得到批准,它将自动支付到你的地址。

总结

Yield Farming以及与DeFi进行交互当然可以带来一些丰厚的回报,但需要时刻考虑一些风险。Smart Contract Cover可以为你提供技术代码故障的保护,但也得确保你自己进行了研究并了解所承担的风险。

展开阅读全文

篇6:在智能合约、身份管理方面区块链可以带来什么?

全文共 879 字

+ 加入清单

智能合约

智能合约一般被视作区块链技术的一类强劲功能。这类合同事实上是计算机程序,能够监督协议从简化到执行的全部方面。当条件达到时,智能合约就可以彻底自我执行。针对智能合约的支持者,这类工具给予了比传统化合约法更安全,更自动化的替代方式,而且给予了比传统化方式更快,更便宜的应用程序。

智能合约技术的潜在应用本质上是无尽的,而且能够 扩展到一般 适用合同法的几乎全部业务领域。当然,尽管受到高度吹捧,但智能合约并不能替代老式的勤奋工作。事实上,分散式自治组织(DAO)的状况是一个警告,它警告投资者不要以为智能合约比用户放入的信息和组织更好。即便如此,智能合约依然是区块链技术早已超越加密货币领域并进到更宽阔的商业世界的最令人激动的方式之一。

身份管理

互联网时代最成问题的结果之一就是身份安全。与众多个人和组织竭尽所能保护其在线身份并保护私人信息似的,总是有邪恶的行为者试图窃取这类数字产品并从这当中盈利。区块链技术早已展示出改变在线身份管理方式的发展潜力。

鉴于在区块链网络上的成员计算机上开展的独立验证过程,区块链给予了极高的安全性。在数字货币的状况下,此验证用以批准将买卖交易块增加到链中之前。这一机制能够 轻松地应用于其他类型的验证过程,包含身份验证和众多其它应用程序。

区块链和身份管理的应用范围很广。例如,区块链有可能被用来帮助保护选民信息并保证选举过程的正常运行。区块链可用以在平台和系统之间安全有效地传输用户数据。该技术还可以用以保护和保护房地产所有权,所有权等记录。

供应链用途

针对各行各业的众多企业来讲,成功的关键是运作良好,高效的供应链。区块链技术早已在多个行业中采用,作为一类掌握供应链并保证其效率的方式 。这能够 消除人工工作及其复杂而关键的过程中潜在的错误。

在这一点上,区块链是一类具有广泛用途的技术。尽管区块链以其与蓬勃发展的加密货币世界的连接而出名,但早已探索了其它几种应用程序。只不过,或许更令人激动的是每日都在发生利用区块链的新方式 。因而,不管您能否参与数字货币领域,对区块链的理解及其怎样把其用以改变商业和投资世界都是至关重要的。

展开阅读全文

篇7:波卡上的智能合约平台对比:Acala、Patract、Moonbeam 和 Plasm

全文共 5365 字

+ 加入清单

以太坊作为目前最大的智能合约平台,其网络易拥堵、手续费高昂、交易速度慢等问题一直困扰着开发者和用户。在冉冉升起的波卡生态中,也有一些项目在开发新的智能合约平台,它们是否能解决以太坊现存的问题,将智能合约和 DApp 生态带向新的高度呢?

今天,我们就来对比波卡上的四个智能合约(DApp)平台:Acala、Patract、MoonbeamPlasm,它们都计划成为波卡上的平行链,并且都具有部署智能合约的功能。

目前 Substrate 生态中可用的合约技术分为 EVM 和 Wasm 两类,将来可能还会产生其他的合约技术,下文提到的 Wasm 代指 Substrate 的 Contracts Pallet (合约模块),将来也可能产生使用Wasm的其他合约模块。

波卡上的智能合约链的机遇与挑战

由于波卡本身的特性,建立在波卡上的智能合约平台拥有一些天然的后发优势,比如合约手续费更低、速度更快、可以和其他链之间进行交互、支持跨链资产等。

但每一个新的智能合约平台,都会面临一个非常棘手的挑战,那就是生态的建设。其核心问题是 “如何吸引更多的开发者使用你的平台” ,因为只有更多的开发者源源不断地开发出好项目,才能吸引更多用户来使用你的平台,反过来又会吸引更多的开发者,形成网络价值不断增长的良性循环。

目前以太坊的生态已经发展了好几年,合约开发环境成熟、工具齐全、开发者多,已经有了一些高质量的 DApp,这些都是以太坊的优势,也是波卡上的智能合约平台急需赶上的。

而对于波卡生态来说,由于波卡中继链本身是不具有智能合约功能的,所以波卡也非常需要有智能合约平行链来补齐合约这一环。因为并不是所有的业务场景都需要去做一条平行链,智能合约开发更便捷、成本更低,而且已经有了不少较为成熟的应用,显然智能合约早已是区块链生态中不可或缺的部分了。

Moonbeam:兼容以太坊的合约平台

Moonbeam 的定位是兼容以太坊的波卡智能合约平台。想让开发者能够以最少的更改,将现有的 Solidity 智能合约和 DApp 部署到 Moonbeam。主要为那些已经在以太坊上进行了开发,想要多链发展的智能合约提供一个入口,来便捷地部署到波卡生态中,还可以使用以太坊上的各种工具。

最大程度兼容以太坊

Moonbeam 链对以太坊的兼容主要通过使用Frontier 层来实现。Frontier 由 Parity开发,Moonbeam也有一定的参与,它是 Substrate 上的以太坊兼容层,能让基于 Substrate 的链运行未经修改的以太坊合约。Frontier 目前还在开发中,主要包括以下几个模块:

Web3 RPC 模块:现有的工具和应用程序就是通过 Web3 RPC 与以太坊交互的,Moonbeam 部署了 Web3 RPC,就可以让现有的工具和应用连接到 Moonbeam,而对于这些工具和应用来说,就像只是连接到了另一个以太坊网络一样。举个例子,只需要对 MetaMask 进行简单的配置,就可以让 MetaMask 指向一个基于 Moonbeam 的节点,然后用户就可以正常地像平时一样使用 MetaMask,而对于 MetaMask 来说它只是在和 Moonbeam 上的 Web3 RPC 或 API 对话。

Ethereum 模块:模拟了以太坊如何工作,包括区块、收据、日志、能够订阅日志事件等。

完整的 EVM 实现:EVM 是以太坊的合约虚拟机,Moonbeam 集成了 EVM 模块,从而兼容以太坊上的 EVM。

Moonbeam 上的地址使用 H160 账户地址、用于签署交易的密钥使用 EDCSA。虽然这意味着用户可以使用原有的以太坊账户和密钥来和 Moonbeam 交互,但也同时意味着在波卡中使用的公私钥无法在 Moonbeam 上使用。

总的来说,Moonbeam 在尽可能兼容以太坊 Layer 1。这些措施可以让现有的以太坊合约只需要很小的改变,就能很容易地部署到 Moonbeam 上。但同时,由于 Moonbeam 对以太坊选择了全盘继承,在一些 Substrate 本来已经做出优化的点上,Moonbeam 也只能继续沿用以太坊的旧方案,这可能会让其上面的智能合约继续被以太坊的思路限制,比如过大的节点和不合理的 gas 机制等。

开发者激励

Moonbeam 计划推出两个网络,分别是部署在 Kusama 上的 Moonriver 和部署在波卡上的 Moonbeam,两个网络都将拿出占总量 4.5% 的代币作为 “开发者培养计划” ,用以激励早期采用其网络的开发者。

支持 EVM + Wasm虚拟机

Plasm 同样也引入 Frontier 来兼容以太坊。与 Moonbeam 不同的是,Plasm 打算同时支持 EVM 和 Wasm虚拟机,让 Plasm 上既可以用 EVM 运行以太坊上已有的 Solidity 合约,也可以运行用 ink! 编写的Wasm合约。Plasm 还引入了 Solang,支持将 Solidity 编译为 Wasm 在 Wasm虚拟机上运行。

Layer 2 可扩展性

Plasm 还有一个特点就是在 Layer 1 和 Layer 2 上都支持智能合约功能,来进一步提升可扩展性。Plasm 引入了一种支持所有二层协议的虚拟机 OVM,支持了 Plasma、闪电网络等众多二层扩展方案,从而能在 Layer 2 进行代币的转账。再通过引入支持 Layer 2 智能合约的扩展方案 Rollups,来在 Layer 2 上也能使用智能合约。目前 Plasm 已经成功将 ZK Rollups 部署到了 Plasm 网络上。

创新点:DAppRewards机制

通过经济机制对开发者进行激励也是一个吸引开发者的办法。Plasm 设计了 DApprewards机制,将 Plasm 网络中的 50% 的 staking 奖励分配给 DApp(或智能合约)开发者。网络中的其他用户也可以通过提名来参与智能合约,DApp 提名人也可以获得和质押数量成正比奖励。

Bodhi:在兼容以太坊的同时保留 Substrate 的优势

Acala 的定位是做波卡上的 DeFi Hub,由于现有的很多 DeFi 合约都部署在以太坊上,所以 Acala 也考虑了以太坊的兼容性。

Moonbeam 和 Plasm 都集成了当前的 Substrate EVM 兼容性解决方案,即用 Frontier 模拟以太坊的节点。它旨在实施全套以太坊 RPC 并模拟以太坊区块生产过程,从而让现有的以太坊工具(例如 Metamask 和 Remix )可以与启用了 Frontier 的节点无缝协作。

但 Acala 认为,像 Frontier 这种模拟以太坊节点,全盘继承以太坊优缺点的方式,可能并不是那些选择波卡生态的智能合约真正想要的。Acala 将 EVM 视为 Acala/Substrate/Polkadot 的一部分,希望让 Acala 网络提供与以太坊截然不同的体验。

因此,Acala 将采用一套自行开发的以太坊兼容方案 -Bodhi。这套方案不兼容以太坊 RPC,而是做了一个 JavaScrpt SDK,模拟 Web3 provider,可以把 Polkadot Extension 包装成类似 MetaMask 的扩展。这样现成的以太坊 Dapp 也能用 Polkadot Extension 来和 Acala EVM 交互。

同时 Bodhi 避免了以太坊的一些遗留问题,在兼容以太坊的同时保留了 Substrate 的优势。比如让 Acala 拥有可定制的经济机制、允许用户使用任何支持的代币支付交易费、本地跨链功能、链上治理机制(不再有锁定的资金)、完全可升级(无需进行合约迁移)等。而这些创新是在以太坊上不可能实现的。

不过,这也意味着以太坊上的合约想要部署到 Acala 上,可能还需要对代码进行一些调整来兼容 Acala 的经济模型。

专注于 DeFi 场景

和通用的合约平台不同,Acala 更注重 DeFi 场景的优化。部署合约可能也会设置一点门槛,来避免类似 Uniswap 假币泛滥的情况。同时还会整合 Acala 的 DEX、稳定币、Idot 等。

完善的开发者工具和开发环境

之前说过,在波卡上建立智能合约平行链,要面临的一个问题就是缺少好用的开发环境和工具。对此,Moonbeam、Plasm 和 Acala 的方案都是:既然以太坊已经有了成熟的开发工具,那我们就提供一个方法,让开发者可以方便地去用以太坊的现成工具。

而 Patract 则认为Wasm 虚拟机才是未来,所以专注在 Wasm 合约上。他们的方案是在波卡生态里搭建一整套的开源开发工具套件和开发、测试、发布环境,让开发者可以愉快地开发 Wasm 合约。Wasm 是波卡智能合约模块采用的一项较新的技术,基于 Wasm 的智能合约已经被证明比基于 EVM 的具有更好的性能和可扩展性,也可以使用更高级的 AssemblyScript、Rust、C++ 等高级语言编写更复杂的合约应用。

Patract 做的东西,在开发者端包括:

Jupiter:独立的智能合约测试网,提供给合约开发者测试合约链的环境。

Ask!:AssemblyScript 版的 Ink!合约框架,吸引TS/JS的开发者,给不愿意使用rust的合约开发者另一个选择。

Redspot:Wasm合约开发工作流和脚手架:对标Ethereum生态中的Tuffle/Redhat,让合约开发项目化,自动化的工具。Redspot采用插件化设计,运行开发者添加自己设计的插件丰富Redspot的功能。

Europa:Runtime 和合约运行沙盒:对标Ethereum生态中的EthereumJS/Ganache,给合约开发者提供了丰富的调试信息,便于快速开发合约。

Elara:实时和可扩展的波卡 API:对标Ethereum中的Infura,给合约项目方提供节点的Endpoint,不用自行搭建节点获取数据。Elara采用了Substrate-archive导出状态数据,可以平行扩展接受千万级访问。

Megaclite:零知识证明的底层支持:在Jupiter/Patract链中提供零知识原语支持,可以允许项目方设计zkRollup或其他零知识相关合约。

Metis:Ink! 合约标准库:对标Ethereum中的openzeppelin-contracts,给合约开发者提供可复用的轮子,不必从零开始编写合约代码。

Himalia:多语言合约 SDK:对标Ethereum中的Web3J,Web3Py等SDK,给合约项目方提供不同语言的环境,丰富的接口与合约进行交互

Leda:合约监控台:对标Ethereum生态中各类合约监控设施,让合约项目方随时监控合约的存储情况,代币转移情况,合约调用情况等等。

Carpo:专注开发合约的智能WebIDE:对标Ethereum中的Remix,但其将会是对Patract以上合约开发工具的集大成者。Carpo将采用最新的WebIDE技术,使得云端开发无限贴近本地开发,同时完整的云端让开发者无需搭建任何开发环境即可进行开发,开箱即用的Patract工具链给合约开发者提供了一体化开发体验,让开发者的开发、调试、测试和部署的合约过程如丝般顺畅。

在用户端包括:

Patra Store:作为 Patract 平行链钱包和 DApp 生态的入口,在测试网阶段将集成一些示例应用和配套开发工具套件用法演示,帮助开发者快速开发 Wasm 合约和前端界面,帮助用户快速进入波卡新合约生态。

Patra Scan:专门为智能合约链优化的区块链浏览器,集成比统一的链浏览器更丰富的合约数据信息展示,增强统计和自定义的查询功能。

Patract Hub 工具一览

使用 DOT 和 KSM 作为本地代币

Patract 也将运行一系列的智能合约平行链 Patract Network。

比较特别的一点是,Patract Network 不准备发行代币,而是争取成为波卡和 Kusama 的系统平行链,直接使用 DOT/KSM 作为 Patract 合约平台的代币。系统平行链就是指对于一些对波卡网络很有用,有利于网络公共利益的链,不需要再参与平行链竞拍,而是可以直接作为系统级平行链接入波卡。

如果这一点真的实现了的话,那么对于用户来说,可以直接使用 DOT/KSM 支付合约手续费,操作比较方便。对于 Patract 来说,等于直接导入了拥有 DOT/KSM 的用户群。

总结

总的来说,这四条波卡生态的智能合约链各有千秋。

Moonbeam 注重对以太坊的全面兼容,让开发者能够以最少的更改,将现有的 Solidity 智能合约和 DApp 部署到 Moonbeam。

Plasm 在兼容以太坊的同时,通过 Layer 2 的方案提高可扩展性,并且在 Layer 2 上支持智能合约。同时 Plasm 还通过 DApp 奖励计划来吸引合约开发者。

而 Acala 专注于 DeFi 场景,在兼容以太坊的同时进行了一些优化,还设置了一定的准入门槛,更适合部署金融领域的智能合约。

Patract 则是为 Wasm 合约开发者提供良好的开发环境和完善的工具,并且直接使用 DOT/KSM 作为原生代币,让开发者的体验更加顺滑。

这些 “后浪” 能否发展壮大,带动新一轮的创新,将智能合约和 DApp 生态推向新的高度呢?让我们拭目以待吧。

展开阅读全文

篇8:法国巴黎银行通过DAML智能合约连接主要证券交易所

全文共 773 字

+ 加入清单

法国巴黎银行证券部已与数字资产合作开发使用基于DAML-一些实时交易和结算的应用智能的合同,该公司宣布 9月15日。

新的DAML驱动的应用程序将把法国巴黎证券服务与主要的全球证券交易所连接起来,例如澳大利亚证券交易所(ASX)和香港交易所(HKEX)。

这些应用程序将为亚太地区的市场参与者提供对ASX和香港交易所即将推出的基于区块链的交易和结算平台的实时访问。法国巴黎银行将特别连接到澳交所的以区块链为动力的股票交易平台,该平台称为票据交换所电子子登记系统或CHESS。

该公告指出,除了连接各种基于区块链的平台外,新的DAML应用还将面向尚未集成分布式账本技术的市场中的客户使用。

其中一个应用程序包含用于公司行动的智能选举服务。该应用程序将于2021年面世,旨在提供对所有公司行动链数据的即时访问,例如股息再投资或购买要约决策。有望减少处理时间并提高运营效率,并使投资者能够根据最相关的市场数据做出决策。

DAML 于2016年4月推出,代表数字资产建模语言,代表一种表达性语言,旨在供金融机构通过DLT和智能合约建模和执行协议。

澳大利亚证券交易所和香港交易所均已成为数字资产的合作伙伴。在2019年,澳大利亚证券交易所(ASX)和数字资产(Digital Asset)签署了一份谅解备忘录,指出该证券交易所将支持DAML作为其CHESS区块链注册表的一部分。据报道,ASX的CHESS系统将于2021年问世。

2018年10月,香港交易所与Digital Asset合作加快交易后流程并降低结算风险。

DAML智能合约语言正在全球主要的区块链计划中实现更多实施。9月14日,中国的国家区块链项目“区块链服务网络” 宣布了DAML支持,以在其平台上开发去中心化应用程序。9月初,新加坡主要的投资控股公司新加坡交易所发行了首只由DAML支持的数字债券。

展开阅读全文

篇9:区块链智能合约可以做什么?

全文共 646 字

+ 加入清单

智能合约做什么?

解释智能合约功能的最简单方法是借助示例。如果你曾经在经销商处购买过汽车,则最好知道有很多步骤使它令人沮丧。如果你无法立即支付购车费用,那么你将需要获得融资选择。这将需要进行信用检查,并且你将需要使用凭据填写许多表格以确认你的身份。有了这些,你将需要与众多不同的人进行交互,包括贷方,财务经纪人和销售员。为了补偿他们的工作,汽车的底价中包含了许多佣金和费用。

现在,区块链上的智能合约可以帮助你简化这个复杂的流程,由于交易参与者之间缺乏信任,因此涉及多个中介。通过将你的凭证存储在区块链上,贷方可以立即决定信用额度。之后,将在交易商,贷方和你的银行之间签定一份精明的合同,以便一旦将资金释放给交易商,贷方将获得汽车的所有权,然后根据商定的条件开始还款。但是,所有权的转移将是自动的,因为该交易记录在区块链上,在成员之间共享,并且可以在任何时间点进行检查。

智能合约如何工作?

智能合约通过遵循简单的“if/when…then…”语句来工作,该语句被写入区块链中的代码中。一台计算机的网络做动作时,预定的情况已经得到了验证。然后,当交易被视为成功时,更新区块链。让我们在供应链示例中看看这是如何实现的。

买方B希望从卖方A买东西,因此他将钱存入托管账户。卖方A将利用托运人C将产品运送到买方B。在买方B收到产品时,代管款项将汇给卖方A和托运人C。万一买方B没有收到产品在日期Z之前,将退还代管的款项。发生此交易时,将通知制造商G创建另一种已售出的产品以增加供应。一切都在区块链上自动完成。

展开阅读全文

篇10:投资以太坊智能合约安全吗,如何才能保证投资安全?

全文共 810 字

+ 加入清单

投资以太坊智能合约安全吗?传统计算机程序是在个人节点上运行,这种随时都可以运作,但很多人觉得智能合约有安全漏洞。有些人会疑惑,投资以太坊智能合约安全吗,目前的技术人员一直都在想方设法去寻找一些比较合适的方式,希望能够有效提高安全性,希望能够保障资金的安全,不过从目前来看还是有不少的漏洞。

1、投资以太坊智能合约安全吗

把以太坊作为例子,这是一个具有开源效果的区块链平台,区块链上所有的用户一般都是在区块链的智能合约上,但是这中间可能会存在许多想要意见的漏洞,如果智能合约开发者测试不充分,又或者是没有重视,这就可能会产生代码有漏洞。而这些漏洞的存在就容易被黑客利用,并且容易被黑客攻击。功能强大的智能合约逻辑会更加的复杂,很容易会出现漏洞。所以从目前的情况来看,已知的漏洞就已经有很多,比如说时间错的依赖,短地址漏洞等等,所以在我们投资的过程中,随时都有可能会被利用,还是应该引起重视。

2、如何才能够保证投资的安全

投资以太坊智能合约安全吗,从目前的情况来看并不是很安全,但是要想保证投资的安全,首先就应该保持版本的更新,一旦发现有新的必要,及时就马上应该检查新的智能合约,然后再选择最新的安全技术,当然需要了解当前区块链的功能,因为有很多的陷阱还是需要注意,比如对于外部智能合约最好是格外小心,随时都可能会引起恶意代码,又或者是恶意的更改流程,我们需要知道这些公共功能是对所有人开放的,所以很有可能就会被其他人所利用。在我们选择投资时,任何一个环节都不可以忽视,只有认真的投资才能够带来好的效果。

投资以太坊智能合约安全吗?从目前情况来看并不是很安全,因为在这背后会有着许多的漏洞,这些漏洞的存在随时都会导致投资者被利用,因此要想保证投资的安全,首先就应该随时保持版本的更新,另外必须要使用到最新的安全技术,可以有效减少投资过程中的风险,可以避免自己在投资时被其他人所利用。大家可以到OKLink浏览器上查看更多更多的信息。

展开阅读全文

篇11:什么是智能合约

全文共 1071 字

+ 加入清单

OK区块链60讲第18集:什么是智能合约文字版:

智能合约是区块链的核心技术之一,这个概念最开始是在1994年由知名计算机学家、密码学家尼克·萨博提出,他定义:智能合约就是一套以数字形式定义的承诺,旨在以信息化方式传播、验证或执行合同的计算机协议,包括合约的参与方都可以在上面执行。

简单来说,智能合约就是一种把我们生活中的合约数字化,当满足一定条件后,可以由程序自动执行的技术。就好比你跟我做了一个约定,我们定好奖惩措施,然后将约定通过代码的形式录入区块链中,一旦触发约定的条件,就会有程序来自动执行,这就是智能合约。

虽然,智能合约的概念,提出的时间很早,可由于技术以及其他的一些原因,一直没有大规模落地。哪怕到了今天,智能合约已经在互联网中有很多的应用,比如自动还款,无人售货等等,但也多是局限在用户和机构之间的智能合约,用户和用户之间的智能合约却几乎没有。

归根到底,阻碍智能合约发展的原因还是“信任”问题。我们会发现,尽管互联网、工业等各种技术都很发达,但这些技术本身是用来处理物物之间的关系,解决的还是效率问题。

而我们在生活中,只要谈起合约,大多数都是陌生人跟陌生人之间存在这种需求,而且多是跟钱有关系。如果我们相互不认识,在没有第三方机构做担保的情况下,我们做了个约定,我把钱打给你,结果你毁约、不承认怎么办?这就牵扯到里用户之间的信任问题。

这个问题是通过互联网、工业等技术本身没办法解决的,于是才引入了第三方机构进来,造成目前智能合约多是局限在机构与用户之间的状况。

直到区块链技术的出现,才使智能合约在用户与用户之间的大规模落地成为可能。为什么这么说?因为区块链有很多特点,比如去中心化、数据不可篡改等,这些特点与智能合约十分契合。假如我们之间通过区块链建立智能合约,你可以不信任我,但我们的合约数据,一切都会透明地记录在链上,数据可追踪、不可被篡改,这样就可以从技术的角度去解决陌生人间的信任问题。

也正是基于这一点,久而久之,智能合约就成了区块链的核心技术之一,作为区块链的一个应用重点。

智能合约有很多的优势,第一、它去掉了中介,可以完全依托技术让用户之间自主建立合约;第二、透明公平,智能合约会用代码将条件写得清清楚楚,并记录在区块链上,整个过程完全由程序执行,连包括编写这个代码的开发者都不能篡改;第三、灵活,让用户之间可以自由地建立合约,哪怕是与一个陌生的外国人,也可以通过智能合约建立联系。

总的来说,智能合约是区块链的核心技术之一,不仅在区块链中起到了执行的作用,它更是区块链的一个应用发展方向,拓宽了区块链的使用场景,正是因为它的存在,才使区块链有了一个更加广阔的舞台。

展开阅读全文

篇12:SEC寻求可发现安全漏洞的“智能合约”跟踪工具

全文共 304 字

+ 加入清单

美国证券交易委员会(SEC)希望购买可分析智能合约的区块链取证工具,最好能突出其安全性问题。

SEC在7月30日发布了“ DLT智能合约分析工具” 征求请求,表明其在分散金融(DeFi)的基础上主动监控基于代码的区块链合约的新兴趣。

根据CoinDesk审查的文件,SEC希望使用一种能够识别以下内容的工具:合同目的,代币类型,买卖限制,地址白名单和黑名单,修改和合同调用。

SEC在随附要求的文件中说,该工具最好还将“包括针对安全问题和漏洞分析智能合约的能力”。

SEC表示,不同智能合约之间的比较分析也将是一个优势。私营软件供应商必须在8月13日之前提出监管要求。

彭博社法律首次报道了SEC对智能合约工具的兴趣。

展开阅读全文

篇13:使用区块链智能合约有什么好处?

全文共 334 字

+ 加入清单

1、更好的客户服务。无需中介机构建立信任,企业可以直接与客户互动。

员工离职不会影响其功能,权力下放意味着无需担心数据丢失,区块链及其区块链智能合约将继续发挥作用。

2、降低成本。消除中间人意味着更少的费用。

3、保存记录。由于区块链智能合约是通过区块链实现的,因此意味着所有数据都按时间顺序存储,并且可以轻松访问,您的文档在网络中的每个节点中都会重复多次。

4、更快的速度。如果没有传统合同中的中间人,智能合同自动化的会完成得更快。

区块链技术已经影响到世界各地的企业,区块链智能合约在其中推波助澜。更重要的是,有希望的区块链智能合约用例正在为新的和令人兴奋的商业创意奠定基础。因此,尽量不要将区块链智能合约视为工作杀手。相反,区块链智能合约可能创造许多尚未想象出来的工作。

展开阅读全文

篇14:RSK智能合约是什么?对以太坊有威胁吗?

全文共 1029 字

+ 加入清单

虽然区块链仍然被视为一个不成熟的概念,但由于其不断发展,变化的快速变化和每日出现的新解决方案正在帮助抵消这种新型分散化方法的一些弊端。大多数焦点都集中在加密货币上,主要是由于它们的价值迅速升值导致了猖獗的投机行为。然而,当涉及到他们的抱负时,解决方案本身的实际价值还有很多不足之处。

那么,RSK智能合约是什么?

以比特币为例。在其早期阶段,比特币被设想用更好的速度和更低的成本来改善跨境交易,用一种新的,分散的货币形式取代过时的系统,从机构监督中解脱出来。自那以后发生的事情表明,比特币本身并不一定有可能以原先想象的方式改变世界。

虽然比特币可能永远无法实现其愿望,但SegWit的合并和采用意味着它有朝一日可能会看到它的潜力与随之而来的炒作相匹配。一个有价值的解决方案是RSK,一个开源平台,托管比特币网络的智能合约,类似于以太网首次实施的那些。智能合约是一种极其强大的工具,是迄今为止与区块链相关的最有价值的创新之一,这要归功于能够在双方之间创建交易而无需中间人。

为什么智能合约至关重要

基于触发条件自动执行电子合同。智能合约是各种业务环境中的下一代自动执行,有可能破坏现有业务模式,例如按需经济,例如为每个行程定制的保险合同,设置目标或被编程为终止。保险模型甚至可以插入P2P模型,使传统的保险公司无用武之地。这些简单示例都可以通过 RSK 智能合约平台实现。

RSK智能合约会威胁到以太坊吗?

由于内置的智能合约和标记化协议,以太坊不仅是一种加密货币,而且还是一个在同一链上构建和分发服务的平台。

像RSK这样的第二层解决方案的最大好处之一是它在侧链上运行,这意味着它不会像基于以太坊的应用程序那样削弱主链的处理能力。此外,矿工受激励通过合并挖掘功能参与,这使得比特币矿工能够同时开采两条链,吸引更多参与者参与。

RSK最突出的一个方面是关注安全性,利用货币奖励来吸引开发人员,黑客和安全专业人员来识别漏洞,以便系统可以提高其众多利益相关者的整体安全性。虽然它可能不一定会导致以太坊的灭绝时刻,但RSK确实解决了许多相关的漏洞,帮助推动它是一种可行的竞争形式。

虽然它们需要相当长的时间才能到达,但是由于旨在提高交易能力的一系列新服务,RSK等新的第二层解决方案最终将改善比特币生态系统。任何货币功能的核心是快速交换的能力。

通过RSK,将比特币引入智能合约方程意味着比特币网络的附加价值,以及其不断增长的用户群,因为他们寻求利用区块链分散架构和比特币安全性的可能性。

展开阅读全文

篇15:以太坊智能合约是如何运作?

全文共 728 字

+ 加入清单

就像区块链行业中的许多想法一样,普遍的困惑笼罩着所谓的“智能合约”。

由于公共区块链使这项新技术成为可能,智能合约很难被理解,因为该术语会部分混淆所描述的核心交互。

智能合约是完全按照创建者设置的程序执行的程序。

这个想法最初是在1993年由计算机科学家和密码学家Nick Szabo提出,他形容为一种数字自动售货机。在他的著名示例中,他描述了用户如何输入数据或值,以及如何从机器上接收有限的物品,在这种情况下,是真实世界的小吃或软饮料。

在一个简单的示例中,以太坊用户可以使用智能合约在特定日期向朋友发送10个以太币。在这种情况下,用户将创建合同,并将数据推送到该合同,以便它可以执行所需的命令。

以太坊是专门为创建智能合约而构建的平台。

但是,这些新工具并非要孤立使用。人们认为,它们也可以构成“去中心化应用程序”的构建块甚至可以构成整个去中心化自治公司。

智能合约是如何运作的?

值得注意的是,在网络可以将价值从一个人转移到另一个人的意义上,比特币是第一个支持基本智能合约的人。节点网络将仅在满足某些条件时验证交易。

但是,比特币仅限于货币用例。

相比之下,以太坊取代了比特币限制性更强的语言(一种约一百种脚本的脚本语言),并将其替换为允许开发人员编写自己的程序的语言。

以太坊允许开发人员对自己的智能合约或“自治代理”进行编程,就像以太坊白皮书所称的那样。该语言是“ Turing-complete”,意味着它支持更广泛的计算指令集。

智能合约可以:用作“多重签名”帐户,因此仅当需要一定比例的人同意时才使用资金管理用户之间的协议,例如,如果一个人从另一个人那里购买保险为其他合同提供实用程序(类似于软件库的工作方式)存储有关应用程序的信息,例如域注册信息或成员资格记录。

展开阅读全文

篇16:Curve+zkSyncL2:以太坊的ZKRollup智能合约

全文共 2864 字

+ 加入清单

Curve 和 Matter Labs 团队很高兴宣布以安全且去中心化的方式向以太坊扩展迈出了一大步:今天,我们和 Curve Finance 一起发布了第一个常驻 dapp 的 zkSync L2智能合约测试网。

为什么选择 ZK Rollup ?

扩展性是以太坊一个迫切的需求 - 隧道尽头有一个亮灯。Vitalik Buterin 刚刚宣布 Rollup 是现阶段扩展以太坊的“唯一选择”[6], 突出显示了其[独特的无需信任安全保证](/ matter-labs/evaluating-ethereum-l2-scaling-solutions-a-comparison-framework-b6b2f410f955 "独特的无需信任安全保证") 。

ZK Rollup (ZKR)是现有的两种 Rollup[7]版本之一,另一种是 Optimistic Rollup (简写:OR)[8]。两种方法都有其取舍(参见详细比较[9])。这是主要的实际差异:

安全- 即使使用单个验证者,ZK Rollup 也非常安全,因为它们依靠纯数学,而不是进行持续的经济激励活动来确保资金安全。除了密码学假设外,ZKR 与基础 L1 一样安全。这对于处理资产总值高的协议尤其重要。与 ZKR 相比, Optimistic Rollup 具有强大的反网络效应:其安全性与锁定价值成比例地降低。实际上,需要控制资本上限(数千万美元的范围内),才能安全地放如在单个 Optimistic Rollup 中,才能保持对对 L1 的高度合理攻击的抵抗[10]. 只要以太坊仍然是 PoW 链,就无法缓解。

最终确定性。ZK Rollup 的最终确定性时间(分钟)短,因此支持资本快速退回到 L1(L1:第一层,即以太坊自身网络)。相反, Optimistic Rollup 被迫在快速退出和资本效率退出之间进行选择[11],但不能两者兼有。大多数研究人员认为,OR 至少需要一个星期的争议延迟时间。这对于与 L1 上的合约(至少将在最初)继续在生态系统中发挥重要作用的合约的互操作性非常重要。

可编程性- 通过 Optimistic Rollup 支持完全的 EVM 兼容性更加容易。通常认为 OR 方法是将现有以太坊智能合约引入 L2 (L2 :二层网络)的唯一可行方法。但是,这种情况即将改变。

ZK Rollup 中的智能合约?

直到最近,在 ZK Rollup 中支持任意用户定义的智能合约还是一项极富挑战性的任务。但是这些天来,在零知识证明领域中事情发展很快。2020 年带来了几项突破,最终使之成为可能:Matter Labs 引入了 Zinc 编程语言和对 SNARK 友好的 Zinc VM,并实现了以太坊的递归 PLONK 证明验证[12]。这些技术的结合将推动 zkSync 上的实现智能合约。

Zinc VM 如何工作?

合约以 Zinc 编程语言编写并编译。编译器输出是双重的:

Zinc 虚拟机的字节码。

合约的 SNARK 验证密钥。

Zinc VM 字节码+验证密钥可以完全无许可的方式部署到 zkSync 网络。合约将在 L2 中被分配一个新地址。每当用户与该合约进行交互时,zkSync 的验证程序将执行 Zinc VM 操作码并产生对交易有效性的零知识证明 – 友好的 SNARK Zinc VM 的特殊设计使其成为可能。然后将由 Rollup 块电路针对已部署的验证密钥来递归验证该证明。然后,以太坊上的 zkSync 智能合约验证区块证明,以授权状态转换,所有交易状态转换可以在一个区块快速的验证。

因此,zkSync 上的 Zinc 智能合约继承了有效性证明的严格安全保证。

如何为 zkSync 编写智能合约?

目前,必须使用 Zinc 编程语言编写 Zinc VM 的智能合约。查看最新版本的Zinc Book[13],你将找到完整的入门指南和完整的开发人员参考。我们期待你在Zinc Gitter 聊天室[14]中提出的问题和反馈。

Zinc 目前处于封闭开发 Beta 版。如果你有兴趣为你的项目尝试,请与我们联系[15].

Zinc 与 Solidity/Vyper 有何不同?我可以移植现有的源代码吗?

Zinc 遵循简化的 Rust 语法,但它借鉴了 Solidity 的所有智能合约元素和结构体。任何有经验的 Solidity/Vyper 开发人员都可以在几天之内了解到它。

由于 Zinc 在结构体上与 Solidity 相同,因此可以轻松地将现有的 Solidity 代码转换为 Zinc。主要的挑战是 Zinc 目前尚未完全图灵完备。这意味着:禁止递归和无限循环(有限循环是 OK 的)。

第二受欢迎的 ETH 智能合约语言 Vyper 也不是图灵完备的。因此,今天任何 Vyper 程序都可以同构转换为 Zinc。这正是 zkSync 上 Curve 的工作方式:Matter Labs 帮助 Curve 团队将现有的 Curve 合约重写为 Zinc 版本。它几乎逐行与原始来源相同。

尽管 Zinc 本身不是图灵完备的,但实际上任何在 Solidity 可以完成的工作而只需进行很少的修改即可在 Zinc 中完成,部分是因为大多数 Defi 应用程序的代码很少需要循环或递归,部分是因为图灵完整组件可以通过利用交易级别的递归来重新实现,即合约通过外部调用来调用自己的公共方法(在 zkSync 中仍然可以实现)。

此外我们还有更多的好消息:Matter Labs 正在努力在不久的将来使 Zinc 图灵完备。在此之前,我们很乐意为你的团队提供支持,以使现有的 Solidity 代码可移植。请联系[16].

可组合性如何?

zkSync L2 网络中的所有合约都将能够以与以太坊主网上完全相同的方式原子地互相调用。

如何管理用户密钥?

在Gitcoin 赞助第 7 轮[17],zkSync 被直接集成到结帐流程中,这需要信任 Gitcoin 网站。在此 Demo 中,zkSync 私钥永远不会离开connect.zksync.dev[18]的范围。这种类型的集成类似于 Web2 世界中的单点登录身份验证方案,该方案广泛用于 Google/Apple/Facebook 登录。这实际上意味着 zkSync 现在可以与任何以太坊钱包和任何数量的完全不受信任的 dapp 结合使用。

即使 zkSync 网站被黑,我们的方法也需要通过以太坊钱包另外签名每条消息的方式进行 2 次验证。目前,该签名已由我们的服务器验证,尽管递归 PLONK 证明现在使我们可以将其直接集成到我们的 ZKP 电路中,而无需太多开销。

同时,我们正在与其他团队合作开发通用的以太坊 L2 签名标准,这将使围绕 L2 合约进行交互的用户体验更加令人愉悦。

Zinc Alef 的局限性是什么?

测试网功能齐全,你可以编写智能合约,将它们部署到测试网,在本地测试它们,并生成智能合约执行的零知识证明。每笔交易都将导致 zkSync 测试网上的进行真实通证转移,这将反映在区块浏览器和钱包中。

但是,在此阶段,Zinc VM 尚未集成到 zkSync 核心中。Zinc 编程语言中的一些重要功能也可能会丢失。我们将根据社区的要求优先开发功能。

展开阅读全文

篇17:基于以太坊智能合约详细介绍,在目前游戏领域的表现

全文共 834 字

+ 加入清单

基于以太坊智能合约的虚拟货币有很多,其实不管是智能合约的问题,又或者是软件出现漏洞,都可能会造成影响,所以许多人会关心基于以太坊智能合约,目前到底有哪一些主要的项目,要知道一些复杂的合约是没有办法做到完全没有任何的漏洞,黑客同样可以看到合约中存在漏洞,然后进行攻击,所以这些都是目前所需要解决的问题。

1、项目的详细解释

基于以太坊智能合约的项目有很多,首先这是一个具有着去中心化效果的游戏平台,同样是能够真正的作用在线上,可以解决大家在操作过程中的低信任问题,实际上智能合约技术目前主要垂直的领域有很多,比如游戏领域,互联网领域,金融领域或者智能领域等等,把区块链的技术放入到这些领域中,自然就有着双倍的效果。从官方IP所显示的地址就可以看到,主要就是美国微博上目前没有看到有官方的账户,所以建议大家在选择投资时尽量引起警惕,不要胡乱的选择投资。

2、基于以太坊智能合约游戏领域的主要表现

目前以太坊智能合约作用在游戏领域的几率比较高,其他的话,有拥有着众多的佼佼者的投资人,拥有着丰富的游戏行业经验,同样是非执行董事,在游戏领域早已从业20多年,目前在互联网项目管理以及战略等方面拥有着丰富的经验,总结来说,这是一个很是重要的区块链去中心化平台,在进入到区块链行业的这些年来,已经逐渐发扬光大,更是得到了大家的关注,虽然说整体的行情表现或许并不是很出色,可是最近的行情大概上涨了70%左右,就会进入到火爆的阶段,如果大家有这一方面的兴趣,可以选择加入到其中,必定可以从中获得一份收益,可以解决后期的问题。

基于以太坊智能合约会有着各种不同的项目,这是具有着去中心化效果的一种常见游戏平台,所以如果作用在线上必然拥有着解决低信任问题的效果,在目前的领域中很多人都可以看得到智能合约技术早已落地生根,不仅作用在游戏领域,另外在其他的领域同样可以看到,所以如果大家真的想要投资,那么这方面是比较适合的。了解更多,对于我们的投资更有优势,所以可以到OKLink浏览器上查看更多内容。

展开阅读全文

篇18:什么是智能合约审核?

全文共 617 字

+ 加入清单

什么是智能合约审核

智能合约审核是对智能合约进行技术审核,并报告智能合约体系结构开发中未正确执行的区域的报告过程。

智能合约是数字合约或写在区块链上的简单程序代码。主要而言,智能合约在众筹技术上效果很好。智能合约不需要第三方进行资金筹措。相反,投资者和产品负责人或业务专业人员已通过这些智能合约自动链接。虽然普通合同代表通常由法律可强制执行的关系的术语,但是在这里,智能合同强制与密码进行关系。

开发智能合约后,必须先将其引入审核流程,然后再将其投放市场供人们使用。通过各种测试来验证代码以防止其受到黑客攻击的过程称为智能合约审核。

进行智能合约审核是为了找到代码中的漏洞,并进行适当修复以防止其受到各种攻击。

为什么要审核智能合约?

即使区块链概念提供了高级别的安全性,但也存在许多黑客攻击,并且安全黑客经常发生,尤其是在智能合约上。如果未对区块链智能合约进行适当的审计,它们很容易受到安全黑客的攻击。这是某种智能合约攻击。

1.堆栈上溢和下溢。

2.再入攻击。

3.重新排序攻击。

4.重播攻击。

5.短地址攻击。

攻击有很多种,因此有必要在开发后对智能合约进行审核,以减少被黑客攻击的可能性。

为什么企业需要智能合约?

希望通过区块链技术升级运营的企业不能忽视智能合约的存在。通过在企业中实施智能合约,可以实现以下指标。

1.自治

2.自动化

3.准确性

4.安全性

5.具有成本效益。

6.可追溯性

因此,没有任何第三方和自动对等连接参与智能合约可以消除不安全情况。

展开阅读全文

篇19:区块链智能合约有什么优势?

全文共 302 字

+ 加入清单

区块智能合约有什么优势

准确无误的速度

智能合约是自动化的和数字化的,因此您不必浪费时间在那些费时的文书工作上,也不必纠正通常写在手动填写的文档上的错误。

信任

智能合约通过遵循预定规则以及成员之间共享的那些交易记录的加密数据来执行交易。这样,没有人需要质疑信息是否出于自利的目的而被取笑。

安全与保障

区块链交易记录已加密。这就是使它们几乎不可能被黑客入侵的原因。由于每条记录都与公共分类帐上的先前记录和后续记录相关联,因此必须更改整个链条才能对记录进行单个更改。

节省

智能合约消除了对中间商的需求,因为成员可以信任可见数据以及正确执行交易的技术。由于协议是内置在代码中的,因此不需要额外的个人来验证协议的条款。

展开阅读全文

篇20:什么是智能合约? 《区块链社会》节选

全文共 1290 字

+ 加入清单

本文节选自《区块链社会-解码区块链全球应用与投资案例》,本书由中信出版社出版。通过对区块链社会蓝图的勾勒和细致描绘,分析了最真实的区块链全球应用与投资案例,对区块链的投融资数据、法律监管及对未来产生的影响进行了深入阐释。目前在京东、当当、亚马逊和淘宝等电商平台均有出售,更多精彩知识敬请期待。

对于什么是合约,在历史上有过多种表述。合约常被定义为在法律上具有强制执行力的许诺或协议。1803—1804年公布的《法国民法典》说。“合约为一种合意,依此合意,一人或数人对于其他一人或数人负担给付、作为或不作为的债务。”“从本质上说,合约是双方当事人的合意。双方当事人以发生、变更、担保或消灭某种法律关系为目的的协议,就叫合约。”

可见,所谓合约,就是市场交易双方或多方之间,基于各自的利益要求所达成的一种协议。订立合约的各方是自主自愿的。订立合约的目的是为满足各自的需要,因为交易者每一方所拥有的全部商品,不可能都满足自己的各方面需要,但其中的一些商品可能满足对方的需要。于是,通过合约,双方各自让渡了自己的部分产品或所有权,同时又从对方得到了自己所需要的东西。因此,合约是双方之间的一种合意。这种合意从根本目的来说,是受功利目的驱使的。通过合约,双方都扩大了自己的需要。因此,没有任何功利目的的合约是不存在的。

合约作为一种商业手段,不仅被广泛地应用于社会生活中,还以法律的形式出现在法典中。《罗马法》对合约的定义、合约的分类和合约的执行均做了明确的规定。13世纪至15世纪的法国,在商业领域已经极为广泛地使用合约了。15世纪中叶,法国最著名的银行麦第奇银行已经有了使用合约的高超的专门技术。麦第奇银行签订过许多设置分行的合约,它们是在某个时期内以合伙经营的方式达成的协议。这些协议中详细载明了合伙人的资本股份、分行经理的报酬、业务范围的限制,以及有资格处理所有有关纠纷的法庭。麦第奇银行的贷款合约,以及为了对付一些人的旨在逃避对高利贷查禁而伪装贷款的许多合约,也都表现出了其拟定合约的技术能力已达到相当高的水准。

智能合约的理念可以追溯到1994年,几乎与互联网同时出现。曾经为比特币打下基础,从而备受广泛赞誉的密码学家Nick Szabo首次提出了“智能合约(smart contract)”这一术语。他对于智能合约的定义是,“一个智能合约是一套以数字形式定义的承诺(promises) ,包括合约参与方可以在上面执行这些承诺的协议。”

从本质上讲,这些自动合约的工作原理类似于其他计算机程序的if-then语句。智能合约只是以这种方式与真实世界的资产进行交互。当一个预先编好的条件被触发时,智能合约执行相应的合同条款。

这里的“智能”,在英语中对应的单词是“smart”,而不等同于“人工智能(AI,Artificial Intelligence)”。Smart代表的意思是聪明的,能够灵活多变的,但还没有能够达到“人工智能”这样的级别。所以有些人仅仅从中文字面上理解,认为必须要达到“人工智能”才能算是智能合约,其实就和“智能手机”一样,这里的“智能”仅仅是是指可以灵活定义和操作的。

展开阅读全文