主页 > 怎样下载imtoken > 如何编写智能合约

如何编写智能合约

怎样下载imtoken 2023-04-14 06:54:45

它是一种计算机代码,可以简化某些协议的执行并消除对中间人的需要。 以送货服务为例:智能合约可以在包裹到达后自动将钱转给快递员......

比特币合约爆仓家破人亡_比特币合约交易教程_比特币支持智能合约吗

智能合约经常和区块链一起被提及。 随着区块链 2.0 的出现(这是区块链在 2014 年获得其在比特币之外的第一个用例),智能合约已成为该技术的重要补充。 虽然本质上是高度技术性的,但它们并不一定难以理解。

在本指南中,我们将带您了解智能合约的基础知识。 您将了解它们是什么、它们如何工作、适用于何处,甚至了解编写它们的基础知识。

什么是智能合约

从最简单的意义上讲,智能合约只是您常用合约的程序化版本。 其目的是在满足所有先决条件时自动触发先前结算的合约。 由于每个条件都必须手动编程才能执行比特币支持智能合约吗,这可以显着减少旨在使一方受益的细则数量,即使是以牺牲另一方为代价。

比特币合约爆仓家破人亡_比特币支持智能合约吗_比特币合约交易教程

尽管我们现在所说的智能合约随着可编程区块链的实施而声名鹊起,但它们的历史要悠久得多。 计算机科学家、律师和密码学家 Nick Szabo 在 90 年代首次提出智能合约作为概念。 他将它们描述为“一组以数字形式指定的承诺,包括各方履行这些承诺的协议。” 除了当前的实施之外,智能合约还存在于其他地方:自动售货机被认为是该技术的第一步。 版本,因为它们遵循一般原则,即通过正确的输入,可以保证一定的输出。

比特币合约爆仓家破人亡_比特币合约交易教程_比特币支持智能合约吗

尽管名称如此,但在法律看来,智能合约不一定是有效的、具有约束力的协议,而传统合约往往是这样。 然而,在区块链实施中,他们没有。 美国国家标准与技术研究所的解释将它们定义为“使用加密签名交易部署在区块链网络上的代码和数据(有时称为功能和状态)的集合”。 这也是以太坊和类似区块链的工作方式。

对于了解什么是区块链的人来说,智能合约如何融入区块链架构似乎显而易见。 在一个完全去中心化的空间里,没有人拥有很大的权力,也没有中介和第三方来处理合规性和共识。 正如我们之前提到的指南中所解释的那样比特币支持智能合约吗,共识是通过不依赖于人为干预的预设机制达成的。 程序化合规性和执行也是如此:智能合约是这些概念的程序化实现,消除了人们拥有这种权力的需要。

智能合约如何运作

然而,了解什么是智能合约并不一定能解释它是如何工作的。

简单来说,智能合约由定义在其上的不同功能组成。 用户通过触发特定功能的交易与它们进行交互。 这些功能中的每一个都被详细定义,因此用户确切地知道他们将要做什么。

比特币合约爆仓家破人亡_比特币支持智能合约吗_比特币合约交易教程

比特币合约交易教程_比特币合约爆仓家破人亡_比特币支持智能合约吗

网络用户定义智能合约。 任何可以用智能合约语言编写代码的人都可以编写自己的代码,只要他们有足够的原生代币来部署。 成本本身取决于您部署的网络及其规定。

一个真实的例子是贸易协定。 一旦双方讨论了细节(各自的回报、法规、任何可能导致他们重新谈判交易的事情),他们通常会找到一个中立的第三方来确保一切都按照信件进行。 然而,中立的第三方要花钱——而且他们不能总是保持中立,或者根本不试图从这种情况中获得自己的优势。 最简单的解决方案是完全删除第三方。 但到时候谁来充当调解人呢?

这就是为什么人们一直青睐只有机器才能实现的中立性。 目前的技术进步仍然不允许机器人拥有自己的喜好和兴趣,因此它们往往被认为是解决这些问题的最佳方案。 换句话说,编写智能合约通过允许所有相关方透明地散列交易细节来防止潜在的渎职行为(因为智能合约不能做没有明确编码的事情)。 这也降低了总体成本,因为与律师成本相比,部署和稍后触发智能合约的成本相对较低。

智能合约保证一切都将在代码中完成。 由于它们不是非常复杂的程序,因此通常可以通过一些基本的编程知识来阅读和理解这些代码。 这对于保持一切都在实地并与网络中的其他参与者建立良好的工作关系非常重要。

智能合约可以用来做什么

智能合约的最大优势之一是它们几乎可以用于任何事情,只要它们可以被编程。 当然,有些用例比其他用例更常见。 一些最好的例子包括:

比特币支持智能合约吗_比特币合约交易教程_比特币合约爆仓家破人亡

智能合约用例列表远非详尽无遗。 然而,它只是用来展示广泛的应用范围,超出了很多人听到该技术时的想法。 有了正确的基础设施,智能合约可以远远超出此处概述的用例。

智能合约的好处

智能合约为您开展业务的方式提供的许多好处都可以从我们现在展示的内容中推断出来。 另一方面,有些超出了最初可能显而易见的范围。 让我们仔细看看它们。

比特币支持智能合约吗_比特币合约爆仓家破人亡_比特币合约交易教程

使用智能合约的其他好处将取决于您的个人用例。 最重要的是,它们都有一个共同点:它们让一切变得更简单。

潜在劣势

比特币合约交易教程_比特币支持智能合约吗_比特币合约爆仓家破人亡

当然,任何技术都不是万能的。 对于区块链和智能合约来说尤其如此。 由于它们仍然相对较新,并且解决了许多行业中长期存在的问题,因此人们通常期望它们做的事情比实际做的要多得多。 以下是智能合约可能面临的一些问题:

这些缺点中的每一个的重要性,就像我们列出的好处一样,取决于您实际使用智能合约的目的。 尽管如此,如果您正在考虑使用智能合约,了解利弊可以帮助您做出明智的决定。

什么是神谕?

在谈到区块链和智能合约时,我们已经多次说过,两者的目标之一就是消除对第三方的依赖。 然而,在某些情况下,这是无法避免的。 其中一种情况是您需要将真实世界的信息输入智能合约,而无需经常手动查找。

比特币合约爆仓家破人亡_比特币支持智能合约吗_比特币合约交易教程

区块链预言机就是这样的第三方。 它们充当链上数据(即区块链)和链下数据(即我们所说的现实世界)之间的链接。 这有助于扩大智能合约的范围。 如果没有预言机,智能合约将只能使用从区块链本身获得的信息进行操作,而这些信息并不多。

比特币支持智能合约吗_比特币合约爆仓家破人亡_比特币合约交易教程

为了防止数据操纵,预言机通常也是去中心化的。 这意味着它们都在发送相同的数据,并且发送的大部分数据被认为是正确的。 如果发现一个预言机经常与其他预言机不一致,则可以认为它是恶意的并受到惩罚。 有许多不同类型的预言机,实现的类型将取决于网络及其用户的需求。

如何编写智能合约

要编写智能合约,您需要熟悉至少一种用于此目的的编程语言。 在以太坊区块链上,您可以选择两种对开发人员友好的语言:Solidity 和 Vyper。 您还需要 gas:智能合约中的交易越复杂,所需的 gas 就越多。 每笔交易都指定了它愿意为运行某些代码支付的 gas 数量,因此支付的总费用等于使用的 gas 总量乘以 gas 价格。

你如何编写智能合约主要取决于你想要它做什么。 它越简单,您就能越快地完成它,即使您的编程知识非常基础。 网上有无数的教程可以帮助您入门。

合同必须在部署到区块链之前进行编译。 编译还有助于确定您是否正确编写了所有内容以及它是否按应有的方式工作。

要了解更多信息,您可以参考以太坊网站,其中包含许多关于其智能合约如何工作的分步说明!

综上所述

正如本指南所示,智能合约是一种将原本必须手动完成的事情自动化的方法,区块链技术始终提供所有安全性、透明度和不变性。 虽然它们有一些缺点,但智能合约仍然可以解决实际问题,这意味着知道如何使用(甚至自己编写一个!)可能是一项非常宝贵的技能。 然而,对于初学者来说,简单地了解它们是如何工作的是其余部分的一个很好的起点。