mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-02-28 01:01:09 +08:00
Merge remote-tracking branch 'LCTT/master'
This commit is contained in:
commit
c3ecc7ee56
@ -0,0 +1,163 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (wxy)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-10956-1.html)
|
||||
[#]: subject: (Blockchain 2.0 – Explaining Smart Contracts And Its Types [Part 5])
|
||||
[#]: via: (https://www.ostechnix.com/blockchain-2-0-explaining-smart-contracts-and-its-types/)
|
||||
[#]: author: (editor https://www.ostechnix.com/author/editor/)
|
||||
|
||||
区块链 2.0:智能合约及其类型(五)
|
||||
======
|
||||
|
||||
![Explaining Smart Contracts And Its Types][1]
|
||||
|
||||
这是 区块链 2.0 系列的第 5 篇文章。本系列的前一篇文章探讨了我们如何[在房地产行业实现区块链][2]。本文简要探讨了区块链及相关技术领域内的<ruby>智能合约<rt>Smart Contract</rt></ruby>主题。智能合约是在区块链上验证和创建新“数据块”的基本协议,它被吹捧为该系统未来发展和应用的焦点。 然而,像所有“万灵药”一样,它不是一切的答案。我们将从基础知识中探索这个概念,以了解“智能合约”是什么以及它们不是什么。
|
||||
|
||||
### 不断发展的合同
|
||||
|
||||
这个世界建立在合同(合约)之上。在当前社会,没有合约的使用和再利用,地球上任何个人或公司都无法运作。订立、维护和执行合同的任务变得如此复杂,以至于整个司法和法律系统都必须以“合同法”的名义建立起来以支持它。事实上,大多数合同都是由一个“可信的”第三方监督,以确保最终的利益攸关者按照达成的条件得到妥善处理。有些合同甚至涉及到了第三方受益人。此类合同旨在对不是合同的活跃(或参与)方的第三方产生影响。解决和争论合同义务占据了民事诉讼所涉及的大部分法律纠纷。当然,更好的处理合同的方式来对于个人和企业来说都是天赐之物。更不用说它将以核查和证明的名义节省政府的巨大的[文书工作][7] [^1]。
|
||||
|
||||
本系列中的大多数文章都研究了如何利用现有的区块链技术。相比之下,这篇文章将更多地讲述对未来几年的预期。关于“智能合约”的讨论源于前一篇文章中提出的财产讨论。当前这篇文章旨在概述区块链自动执行“智能”可执行程序的能力。务实地处理这个问题意味着我们首先必须定义和探索这些“智能合约”是什么,以及它们如何适应现有的合同系统。我们将在下一篇题为“区块链 2.0:正在进行的项目”的文章中查看当前该领域正在进行的主要应用和项目。
|
||||
|
||||
### 定义智能合约
|
||||
|
||||
[本系列的第一篇文章][3]从基本的角度来看待区块链,将其看作由数据块组成的“分布式分类账本”,这些数据块是:
|
||||
|
||||
* 防篡改
|
||||
* 不可否认(意味着每个数据块都是由某人显式创建的,并且该人不能否认相同的责任)
|
||||
* 安全,且能抵御传统的网络攻击方法
|
||||
* 几乎是永久性的(当然这取决于区块链协议层)
|
||||
* 高度冗余,通过存在于多个网络节点或参与者系统上,其中一个节点的故障不会以任何方式影响系统的功能,并且,
|
||||
* 根据应用的不同可以提供更快的处理速度。
|
||||
|
||||
由于每个数据实例都是安全存储和通过适当的凭证访问的,因此区块链网络可以为精确验证事实和信息提供简便的基础,而无需第三方监督。区块链 2.0 开发也允许“分布式应用程序(DApp)”(我们将在接下来的文章中详细介绍这个术语)。这些分布式应用程序要求存在网络上并在其上运行。当用户需要它们时就会调用它们,并通过使用已经过审核并存储在区块链上的信息来执行它们。
|
||||
|
||||
上面的最后一段为智能合约的定义提供了基础。<ruby>数字商会<rt>The Chamber for Digital Commerce</rt></ruby>提供了一个许多专家都同意的智能合约定义。
|
||||
|
||||
> “(智能合约是一种)计算机代码,在发生指定条件时,能够根据预先指定的功能自动运行。该代码可以在分布式分类帐本上存储和处理,并将产生的任何更改写入分布式分类帐本” [^2]。
|
||||
|
||||
智能合约如上所述是一种简单的计算机程序,就像 “if-then” 或 “if-else if” 语句一样工作。关于其“智能”的方面来自这样一个事实,即该程序的预定义输入来自区块链分类账本,如上所述,它是一个记录信息的安全可靠的来源。如有必要,程序可以调用外部服务或来源以获取信息,以验证操作条款,并且仅在满足所有预定义条件后才执行。
|
||||
|
||||
必须记住,与其名称所暗示的不同,智能合约通常不是自治实体,严格来说,也不是合同。1996 年,Nick Szabo 很早就提到了智能合约,他将其与接受付款并交付用户选择的产品的自动售货机进行了比较。可以在[这里][4]查看全文。此外,人们正在制定允许智能合约进入主流合同使用的法律框架,因此目前该技术的使用仅限于法律监督不那么明确和严格的领域 [^4]。
|
||||
|
||||
### 智能合约的主要类型
|
||||
|
||||
假设读者对合同和计算机编程有基本的了解,并且基于我们对智能合约的定义,我们可以将智能合约和协议粗略地分类为以下主要类别。
|
||||
|
||||
#### 1、智能法律合约
|
||||
|
||||
这大概是最明显的一种。大多数(如果不是全部)合同都具有法律效力。在不涉及太多技术问题的情况下,智能法律合约是涉及到严格的法律追索权的合同,以防参与合同的当事人不履行其交易的目的。如前所述,不同国家和地区的现行法律框架对区块链上的智能和自动化合约缺乏足够的支持,其法律地位也不明确。但是,一旦制定了法律,就可以订立智能合约,以简化目前涉及严格监管的流程,如金融和房地产市场交易、政府补贴、国际贸易等。
|
||||
|
||||
#### 2、DAO
|
||||
|
||||
<ruby>去中心化自治组织<rt>Decentralized Autonomous Organization</rt></ruby>,即DAO,可以粗略地定义为区块链上存在的社区。该社区可以通过一组规则来定义,这些规则通过智能合约来体现并放入代码中。然后,每个参与者的每一个行动都将受到这些规则的约束,其任务是在程序中断的情况下执行并获得追索权。许多智能合约构成了这些规则,它们协同监管和监督参与者。
|
||||
|
||||
名为“创世纪 DAO” 的 DAO 是由以太坊参与者于 2016 年 5 月创建。该社区旨在成为众筹和风险投资平台。在极短的时间内,他们设法筹集了惊人的 1.5 亿美元。然而,由于黑客在系统中发现了漏洞,并设法从众筹投资者手中窃取价值约 5000 万美元的以太币。这次黑客破坏的后果导致以太坊区块链[分裂为两个][8],以太坊和以太坊经典。
|
||||
|
||||
#### 3、应用逻辑合约(ALC)
|
||||
|
||||
如果你已经听说过与区块链相结合的物联网,那么很可能它涉及到了<ruby>应用逻辑合约<rt>Application logic contract</rt></ruby>,即 ALC。此类智能合约包含特定于应用的代码,这些代码可以与区块链上的其他智能合约和程序一起工作。它们有助于与设备进行通信并验证设备之间的通信(在物联网领域)。ALC 是每个多功能智能合约的关键部分,并且大多数都是在一个管理程序下工作。在这里引用的大多数例子中,它们到处都能找到[应用][9] [^6]。
|
||||
|
||||
*由于该领域还在开发中,因此目前所说的任何定义或标准最多只能说是变化而模糊的。*
|
||||
|
||||
### 智能合约是如何工作的?
|
||||
|
||||
为简化起见,让我们用个例子来说明。
|
||||
|
||||
约翰和彼得是两个争论足球比赛得分的人。他们对比赛结果持有相互矛盾的看法,他们都支持不同的球队(这是背景情况)。由于他们两个都需要去其他地方并且无法看完比赛,所以约翰认为如果 A 队在比赛中击败 B 队,他就*支付*给彼得 100 美元。彼得*考虑*之后*接受*了该赌注,同时明确表示他们必须接受这些条款。但是,他们没有兑现该赌注的相互信任,也没有时间和钱来指定第三方监督赌注。
|
||||
|
||||
假设约翰和彼得都使用像 [Etherparty][5] 这样的智能合约平台,它可以在合约谈判时自动结算赌注,他们都会将基于区块链的身份链接到该合约,并设置条款,明确表示一旦比赛结束,该程序将找出获胜方是谁,并自动将该金额从输家中归入获胜者银行账户。一旦比赛结束并且媒体报道同样的结果,该程序将在互联网上搜索规定的来源,确定哪支球队获胜,将其与合约条款联系起来,在这种情况下,如果 A 队赢了彼得将从约翰哪里得到钱,也就是说将约翰的 100 美元转移到彼得的账户。执行完毕后,除非另有说明,否则智能合约将终止并在未来所有的时间内处于非活动状态。
|
||||
|
||||
抛开例子的简单不说,这种情况涉及到一个经典的合同,而参与者选择使用智能合约实现了相同目的。所有的智能合约基本上都遵循类似的原则,对程序进行编码,以便在预定义的参数上执行,并且只抛出预期的输出。智能合同咨询的外部来源可以是有时被称为 IT 世界中的<ruby>神谕<rt>Oracle</rt></ruby>。神谕是当今全球许多智能合约系统的常见部分。
|
||||
|
||||
在这种情况下使用智能合约使参与者可以获得以下好处:
|
||||
|
||||
* 它比在一起并手动结算更快。
|
||||
* 从其中删除了信任问题。
|
||||
* 消除了受信任的第三方代表有关各方处理和解的必要性。
|
||||
* 执行时无需任何费用。
|
||||
* 在如何处理参数和敏感数据方面是安全的。
|
||||
* 相关数据将永久保留在他们运行的区块链平台中,未来可以通过调用相同的函数并为其提供更多输入来设置投注。
|
||||
* 随着时间的推移,假设约翰和彼得变得赌博成瘾,该程序可以帮助他们开发可靠的统计数据来衡量他们的连胜纪录。
|
||||
|
||||
现在我们知道**什么是智能合约**和**它们如何工作**,我们还没有解决**为什么我们需要它们**。
|
||||
|
||||
### 智能合约的需要
|
||||
|
||||
正如之前的例子我们重点提到过的,出于各种原因,我们需要智能合约。
|
||||
|
||||
#### 透明度
|
||||
|
||||
交易对手非常清楚所涉及的条款和条件。此外,由于程序或智能合约的执行涉及某些明确的输入,因此用户可以非常直接地核实会影响他们和合约受益人的因素。
|
||||
|
||||
#### 时间效率
|
||||
|
||||
如上所述,智能合约一旦被控制变量或用户调用所触发,就立即开始工作。由于数据是通过区块链和网络中的其它来源即时提供给系统,因此执行不需要任何时间来验证和处理信息并解决交易。例如,转移土地所有权契约,这是一个涉及手工核实大量文书工作并且需要数周时间的过程,可以在几分钟甚至几秒钟内通过智能合约程序来处理文件和相关各方。
|
||||
|
||||
#### 精度
|
||||
|
||||
由于平台基本上只是计算机代码和预定义的内容,因此不存在主观错误,所有结果都是精确的,完全没有人为错误。
|
||||
|
||||
#### 安全
|
||||
|
||||
区块链的一个固有特征是每个数据块都是安全加密的。这意味着为了实现冗余,即使数据存储在网络上的多个节点上,**也只有数据所有者才能访问以查看和使用数据**。类似地,利用区块链在过程中存储重要变量和结果,所有过程都将是完全安全和防篡改的。同样也通过按时间顺序为审计人员提供原始的、未经更改的和不可否认的数据版本,简化了审计和法规事务。
|
||||
|
||||
#### 信任
|
||||
|
||||
这个文章系列开篇说到区块链为互联网及其上运行的服务增加了急需的信任层。智能合约在任何情况下都不会在执行协议时表现出偏见或主观性,这意味着所涉及的各方对结果完全有约束力,并且可以不附带任何条件地信任该系统。这也意味着,在具有重要价值的传统合同中所需的“可信第三方”,在此处不需要。当事人之间的犯规和监督将成为过去的问题。
|
||||
|
||||
#### 成本效益
|
||||
|
||||
如示例中所强调的,使用智能合约需要最低的成本。企业通常有专门从事使其交易合法并遵守法规的行政人员。如果交易涉及多方,则重复工作是不可避免的。智能合约基本上使前者无关紧要,并且消除了重复,因为双方可以同时完成尽职调查。
|
||||
|
||||
### 智能合约的应用
|
||||
|
||||
基本上,如果两个或多个参与方使用共同的区块链平台,并就一组原则或业务逻辑达成一致,他们可以一起在区块链上创建一个智能合约,并且在没有人为干预的情况下执行。没有人可以篡改所设置的条件,如果原始代码允许,任何更改都会加上时间戳并带有编辑者的指纹,从而增加了问责制。想象一下,在更大的企业级规模上出现类似的情况,你就会明白智能合约的能力是什么,实际上从 2016 年开始的 **Capgemini 研究** 发现智能合约实际上可能是**“未来几年的”** [^8] 商业主流。商业的应用涉及保险、金融市场、物联网、贷款、身份管理系统、托管账户、雇佣合同以及专利和版税合同等用途。像以太坊这样的区块链平台,是一个设计时就考虑了智能合约的系统,它允许个人私人用户免费使用智能合约。
|
||||
|
||||
通过对处理智能合约的公司的探讨,本系列的下一篇文章中将更全面地概述智能合约在当前技术问题上的应用。
|
||||
|
||||
### 那么,它有什么缺点呢?
|
||||
|
||||
这并不是说对智能合约的使用没有任何顾虑。这种担忧实际上也减缓了这方面的发展。所有区块链的防篡改性质实质上使得,如果所涉及的各方需要在没有重大改革或法律追索的情况下,几乎不可能修改或添加现有条款的新条款。
|
||||
|
||||
其次,即使公有链上的活动是开放的,所有人都可以看到和观察。交易中涉及的各方的个人身份并不总是已知的。这种匿名性造成在任何一方违约的情况下法律有罪不罚的问题,特别是因为现行法律和立法者并不完全适应现代技术。
|
||||
|
||||
第三,区块链和智能合约在很多方面仍然存在安全缺陷,因为对其所以涉及的技术仍处于发展的初期阶段。 对代码和平台的这种缺乏经验最终导致了 2016 年的 DAO 事件。
|
||||
|
||||
所有这些都可能导致企业或公司在需要调整区块链以供其使用时需要大量的初始投资。然而,这些是最初的一次性投资,并且随之而来的是潜在的节约,这才是人们感兴趣的。
|
||||
|
||||
### 结论
|
||||
|
||||
目前的法律框架并没有真正支持一个全面的智能合约的社会,并且由于显然的原因,在不久的将来也不会支持。一个解决方案是选择**“混合”合约**,它将传统的法律文本和文件与在为此目的设计的区块链上运行的智能合约代码相结合。然而,即使是混合合约仍然很大程度上尚未得到探索,因为需要创新的立法机构才能实现这些合约。这里简要提到的应用以及更多内容将在[本系列的下一篇文章][6]中详细探讨。
|
||||
|
||||
[^1]: S. C. A. Chamber of Digital Commerce, “Smart contracts – Is the law ready,” no. September, 2018.
|
||||
[^2]: S. C. A. Chamber of Digital Commerce, “Smart contracts – Is the law ready,” no. September, 2018.
|
||||
[^4]: Cardozo Blockchain Project, “‘Smart Contracts’ & Legal Enforceability,” vol. 2, p. 28, 2018.
|
||||
[^6]: F. Idelberger, G. Governatori, R. Riveret, and G. Sartor, “Evaluation of Logic-Based Smart Contracts for Blockchain Systems,” 2016, pp. 167–183.
|
||||
[^8]: B. Cant et al., “Smart Contracts in Financial Services : Getting from Hype to Reality,” Capgemini Consult., pp. 1–24, 2016.
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.ostechnix.com/blockchain-2-0-explaining-smart-contracts-and-its-types/
|
||||
|
||||
作者:[ostechnix][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.ostechnix.com/author/editor/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.ostechnix.com/wp-content/uploads/2019/03/smart-contracts-720x340.png
|
||||
[2]: https://linux.cn/article-10914-1.html
|
||||
[3]: https://linux.cn/article-10650-1.html
|
||||
[4]: http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html
|
||||
[5]: https://etherparty.com/
|
||||
[6]: https://www.ostechnix.com/blockchain-2-0-ongoing-projects-the-state-of-smart-contracts-now/
|
||||
[7]: http://www.legal-glossary.org/
|
||||
[8]: https://futurism.com/the-dao-heist-undone-97-of-eth-holders-vote-for-the-hard-fork/
|
||||
[9]: https://www.everestgrp.com/2016-10-types-smart-contracts-based-applications-market-insights-36573.html/
|
@ -1,98 +0,0 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (geekpi)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (Unity Editor is Now Officially Available for Linux)
|
||||
[#]: via: (https://itsfoss.com/unity-editor-linux/)
|
||||
[#]: author: (Ankush Das https://itsfoss.com/author/ankush/)
|
||||
|
||||
Unity Editor is Now Officially Available for Linux
|
||||
======
|
||||
|
||||
If you are a designer, developer or an artist, you might have been using the experimental [Unity Editor][1] that was made available for Linux. However, the experimental version wasn’t going to cut it forever – developers need a full stable experience to work.
|
||||
|
||||
So, they recently announced that you can access the full-fledged Unity Editor on Linux.
|
||||
|
||||
While this is an exciting news, what Linux distro does it officially support? Let us talk about a few more details…
|
||||
|
||||
Non-FOSS Alert
|
||||
|
||||
Unity Editor on Linux (or any other platform for that matter) is not an open source software. We have covered it here because
|
||||
|
||||
### Official Support for Ubuntu and CentOS 7
|
||||
|
||||
![][2]
|
||||
|
||||
No matter whether you have a personal or a professional license, you can access the editor if you have Unity 2019.1 installed or later.
|
||||
|
||||
In addition, they are prioritizing the support for Ubuntu 16.04, Ubuntu 18.04, and CentOS 7.
|
||||
|
||||
In their [announcement post][3], they also mentioned the configurations supported:
|
||||
|
||||
* x86-64 architecture
|
||||
* Gnome desktop environment running on top of X11 windowing system
|
||||
* Nvidia official proprietary graphics driver and AMD Mesa graphics driver
|
||||
* Desktop form factors, running on device/hardware without emulation or compatibility layer
|
||||
|
||||
|
||||
|
||||
You can always try on anything else – but it’s better to stick with the official requirements for the best experience.
|
||||
|
||||
A Note on 3rd Party Tools
|
||||
|
||||
If you happen to utilize any 3rd party tool on any of your projects, you will have to separately check whether they support it or not.
|
||||
|
||||
### How to install Unity Editor on Linux
|
||||
|
||||
Now that you know about it – how do you install it?
|
||||
|
||||
To install Unity, you will have to download and install the [Unity Hub][4].
|
||||
|
||||
![Unity Hub][5]
|
||||
|
||||
Let’s walk you through the steps:
|
||||
|
||||
* Download Unity Hub for Linux from the [official forum page][4].
|
||||
* It will download an AppImage file. Simply, make it executable and run it. In case you are not aware of it, you should check out our guide on [how to use AppImage on Linux][6].
|
||||
* Once you launch the Unity Hub, it will ask you to sign in (or sign up) using your Unity ID to activate the licenses. For more info on how the licenses work, do refer to their [FAQ page][7].
|
||||
* After you sign in using your Unity ID, go to the “ **Installs** ” option (as shown in the image above) and add the version/components you want.
|
||||
|
||||
|
||||
|
||||
[][8]
|
||||
|
||||
Suggested read A Modular and Open Source Router is Being Crowdfunded
|
||||
|
||||
That’s it! This is the best way to get all the latest builds and get it installed in a jiffy.
|
||||
|
||||
**Wrapping Up**
|
||||
|
||||
Even though it is an exciting news, the official configuration support does not seem to be an extensive list. If you use it on Linux, do share your feedback and opinion on [their Linux forum thread][9].
|
||||
|
||||
What do you think about that? Also, do you use Unity Hub to install it or did we miss a better method to get it installed?
|
||||
|
||||
Let us know your thoughts in the comments below.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/unity-editor-linux/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://unity3d.com/unity/editor
|
||||
[2]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/05/Unity-Editor-on-Linux.png?resize=800%2C450&ssl=1
|
||||
[3]: https://blogs.unity3d.com/2019/05/30/announcing-the-unity-editor-for-linux/
|
||||
[4]: https://forum.unity.com/threads/unity-hub-v-1-6-0-is-now-available.640792/
|
||||
[5]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/05/unity-hub.jpg?fit=800%2C532&ssl=1
|
||||
[6]: https://itsfoss.com/use-appimage-linux/
|
||||
[7]: https://support.unity3d.com/hc/en-us/categories/201268913-Licenses
|
||||
[8]: https://itsfoss.com/turris-mox-router/
|
||||
[9]: https://forum.unity.com/forums/linux-editor.93/
|
@ -1,5 +1,5 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: translator: (geekpi)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
@ -1,165 +0,0 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (wxy)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (Blockchain 2.0 – Explaining Smart Contracts And Its Types [Part 5])
|
||||
[#]: via: (https://www.ostechnix.com/blockchain-2-0-explaining-smart-contracts-and-its-types/)
|
||||
[#]: author: (editor https://www.ostechnix.com/author/editor/)
|
||||
|
||||
区块链 2.0:智能合约及其类型(五)
|
||||
======
|
||||
|
||||
![Explaining Smart Contracts And Its Types][1]
|
||||
|
||||
这是 区块链 2.0 系列的第 5 篇文章。本系列的前一篇文章探讨了我们如何[在房地产行业实现区块链][2]。本文简要探讨了区块链及相关技术领域内的<ruby>智能合约<rt>Smart Contract</rt></ruby>主题。智能合约是在区块链上验证和创建新“数据块”的基本协议,它被吹捧为该系统未来发展和应用的焦点。 然而,像所有“万灵药”一样,它不是一切的答案。我们将从基础知识中探索这个概念,以了解“智能合约”是什么以及它们不是什么。
|
||||
|
||||
### 不断发展的合同
|
||||
|
||||
这个世界建立在合同(合约)之上。没有合约的使用和再利用,地球上任何个人或公司都不能在当前社会中发挥作用。创建、维护和执行合同的任务变得如此复杂,以至于必须以“合同法”的名义建立整个司法和法律系统以支持它。事实上,大多数合同都是由“受信任的”第三方监督,以确保最终的利益相关者按照达成的条件得到妥善处理。有些合同甚至涉及到了第三方受益人。此类合同旨在对不是合同的活跃(或参与)方的第三方产生影响。解决和争论合同义务占据了民事诉讼所涉及的大部分法律纠纷。当然,更好的处理合同的方式来对于个人和企业来说都是天赐之物。更不用说它将以验证和证明的名义拯救政府的巨大[文书工作][7] [^1]。
|
||||
|
||||
本系列中的大多数文章都研究了如何利用现有的区块链技术。相比之下,这篇文章将更多地讲述对未来几年的预期。关于“智能合约”的讨论是从前一篇文章中提出的财产讨论自然而然的演变而来的。当前这篇文章旨在概述区块链自动执行“智能”可执行程序的能力。务实地处理这个问题意味着我们首先必须定义和探索这些“智能合约”是什么,以及它们如何适应现有的合同系统。我们将在下一篇题为“区块链 2.0:正在进行的项目”的文章中查看当前正在进行的主要应用程序和项目。
|
||||
|
||||
### 定义智能合约
|
||||
|
||||
[本系列的第一篇文章][3]从基本的角度把区块链看作由以下数据块组成的“分布式分类账本”:
|
||||
|
||||
* 防篡改
|
||||
* 不可否认(意味着每个数据块都是由某人明确创建的,并且该人不能否认相同的责任)
|
||||
* 安全,且对传统的网络攻击方法具有抗性
|
||||
* 几乎是永久性的(当然这取决于区块链协议层)
|
||||
* 高度冗余,通过存在于多个网络节点或参与者系统上,其中一个节点的故障不会以任何方式影响系统的功能,并且,
|
||||
* 根据应用可以提供更快的处理速度。
|
||||
|
||||
由于每个数据实例都是通过适当的凭证安全存储和访问的,因此区块链网络可以为精确验证事实和信息提供简便的基础,而无需第三方监督。区块链 2.0 开发也允许“分布式应用程序(DApp)”(我们将在即将发布的文章中详细介绍这个术语)。这些分布式应用程序根据要求存在并在网络上运行。当用户需要它们并通过使用已经过审查并存储在区块链中的信息来执行它们时,它们被调用。
|
||||
|
||||
上面的最后一段为定义智能合约提供了基础。<ruby>数字商务商会<rt>The Chamber for Digital Commerce</rt></ruby>提供了一个许多专家都同意的智能合约定义。
|
||||
|
||||
> “(智能合约是一种)计算机代码,在发生特定条件或条件时,能够根据预先指定的功能自动运行。该代码可以在分布式分类帐上存储和处理,并将任何结果更改写入分布式分类帐” [^2]。
|
||||
|
||||
智能合约如上所述是一种简单的计算机程序,就像 “if-then” 或 “if-else if” 语句一样工作。关于其“智能”的方面来自这样一个事实,即该程序的预定义输入来自区块链分类账本,如上所述,它是一个安全可靠的记录信息源。如果需要,程序可以调用外部服务或来源以获取信息从而验证操作条款,并且只有在满足所有预定义条件后才执行。
|
||||
|
||||
必须记住,与其名称所暗示的不同,智能合约通常不是自治实体,严格来说也不是合同。1996 年,Nick Szabo 于 很早就提到了智能合约,他将其与接受付款并交付用户选择产品的自动售货机进行了比较。可以在[这里][4]查看全文。此外,人们正在制定允许智能合约进入主流合同使用的法律框架,因此目前该技术的使用仅限于法律监督不那么明确和严格的领域 [^4]。
|
||||
|
||||
### 智能合约的主要类型
|
||||
|
||||
假设读者对合同和计算机编程有基本的了解,并且基于我们对智能合约的定义,我们可以将智能合约和协议粗略地分类为以下主要类别。
|
||||
|
||||
##### 1、智能分类账本合约
|
||||
|
||||
这些可能是最明显的类型。大多数(如果不是全部)合同都具有法律效力。在不涉及太多技术细节的情况下,智能的合法合约是涉及严格的法律追索权的合同,以防参与合同的当事人不履行其交易的目的。如前所述,不同国家和地区的现行法律框架缺乏对区块链智能和自动化合约的足够支持,其法律地位也不明确。但是,一旦制定了法律,就可以订立智能合约,以简化目前涉及严格监管的流程,如金融和房地产市场交易、政府补贴、国际贸易等。
|
||||
|
||||
##### 2、DAO
|
||||
|
||||
<ruby>去中心化的自治组织<rt>Decentralized Autonomous Organization</rt></ruby>,即DAO,可以松散地定义为区块链上存在的社区。社区可以通过一组规则来定义,这些规则通过智能合约来体现并放入代码中。然后,每个参与者的每一个行动都将受到这些规则的约束,其任务是在程序中断的情况下执行并获得追索权。许多智能合约构成了这些规则,它们协同监管和观察参与者。
|
||||
|
||||
名为 Genesis DAO 的 DAO 由以太坊参与者于 2016 年 5 月创建。该社区旨在成为众筹和风险投资平台。在极短的时间内,他们设法筹集了惊人的 1.5 亿美元。然而,黑客在系统中发现了漏洞,并设法从众筹投资者手中窃取价值约 5000 万美元的以太币。这次黑客破坏的后果导致以太坊区块链[分裂为两个][8],以太坊和以太坊经典。
|
||||
|
||||
##### 3、应用程序逻辑合约(ALC)
|
||||
|
||||
如果你已经听说过与区块链相关的物联网,那么很可能这个问题谈到了<ruby>应用程序逻辑合约<rt>Application logic contract</rt></ruby>,即 ALC。此类智能合约包含特定于应用程序的代码,这些代码可以与区块链上的其他智能合约和程序一起使用。它们有助于与设备之间的通信并进行通信验证(在物联网领域)。ALC 是每个多功能智能合约的关键部分,并且大多数都是在管理程序下工作。它们在这里引用的大多数例子中找到[应用][9] [^6]。
|
||||
|
||||
*由于该领域还在开发中,因此目前所说的任何定义或标准最多只能说是流畅而模糊的。*
|
||||
|
||||
### 智能合约是如何工作的?
|
||||
|
||||
为简化起见,让我们用个例子来说明。
|
||||
|
||||
约翰和彼得是两个争论足球比赛得分的人。他们对比赛结果持有相互矛盾的看法,他们都支持不同的团队(这是背景)。由于他们两个都需要去其他地方并且无法看完比赛,所以约翰认为如果 A 队在比赛中击败 B 队,他就*支付*给彼得 100 美元。彼得*考虑*之后*接受*了该赌注,同时明确表示他们必须接受这些条款。但是,他们都没有兑现该赌注的相互信任,也没有时间和钱来指定任命第三方来监督赌注。
|
||||
|
||||
假设约翰和彼得都使用智能合约平台,例如 [Etherparty][5],它可以在合同谈判时自动结算赌注,他们都会将基于区块链的身份链接到合约,并设置条款,明确表示一旦比赛结束,程序将找出获胜方是谁,并自动将该金额从输家中归入获胜者银行账户。一旦比赛结束并且媒体报道同样的结果,该程序将在互联网上搜索规定的来源,确定哪支球队获胜,将其与合约条款联系起来,在这种情况下,如果 A 队赢了彼得将从约翰获得钱,也就是说将约翰的 100 美元转移到彼得的账户。执行完毕后,除非另有说明,否则智能合约将终止并在所有时间内处于非活动状态。
|
||||
|
||||
除了示例的简单性,情况涉及到一个经典合同,参与者选择使用智能合约实现了相同目的。所有的智能合约基本上都遵循类似的原则,程序被编码为在预定义的参数上执行,并且只抛出预期的输出。智能合同咨询的外部来源可能有时被称为 IT 世界中的<ruby>神谕<rt>Oracle</rt></ruby>。神谕是当今全球许多智能合约系统的常见部分。
|
||||
|
||||
在这种情况下使用智能合约使参与者可以获得以下好处:
|
||||
|
||||
* 它比在一起手动结算更快。
|
||||
* 从等式中删除了信任问题。
|
||||
* 消除了受信任的第三方代表有关各方处理和解的需要。
|
||||
* 执行时无需任何费用。
|
||||
* 处理参数和敏感数据的方式是安全的。
|
||||
* 相关数据将永久保留在他们运行的区块链平台中,未来的投注可以通过调用相同的函数并为其添加输入来进行。
|
||||
* 随着时间的推移,假设约翰和彼得赌博成瘾,该程序将帮助他们开发可靠的统计数据来衡量他们的连胜纪录。
|
||||
|
||||
现在我们知道**什么是智能合约**和**它们如何工作**,我们还没有解决**为什么我们需要它们**。
|
||||
|
||||
### 智能合约的需要
|
||||
|
||||
正如之前的例子我们重点提到过的,出于各种原因,我们需要智能合约。
|
||||
|
||||
|
||||
#### 透明度
|
||||
|
||||
所涉及的条款和条件对交易对手来说非常清楚。此外,由于程序或智能合约的执行涉及某些明确的输入,因此用户可以非常直接地验证会影响他们和合约受益人的因素。
|
||||
|
||||
#### 时间效率高
|
||||
|
||||
如上所述,智能合约一旦被控制变量或用户调用触发就立即开始工作。由于数据通过区块链和网络中的其它来源即时提供给系统,因此执行不需要任何时间来验证和处理信息并解决交易。例如,转移土地所有权契约,这是一个涉及手工核实大量文书工作并且需要数周时间的过程,可以在几分钟甚至几秒钟内通过智能合约程序来处理文件和相关各方。
|
||||
|
||||
#### 精确
|
||||
|
||||
由于平台基本上只是计算机代码和预定义的内容,因此不存在主观错误,所有结果都是精确的,完全没有人为错误。
|
||||
|
||||
#### 安全
|
||||
|
||||
区块链的一个固有特征是每个数据块都是安全加密的。这意味着为了实现冗余,即使数据存储在网络上的多个节点上,**也只有数据所有者才能访问以查看和使用数据**。类似地,所有过程都将是完全安全和防篡改的,利用区块链在过程中存储重要变量和结果。同样也通过按时间顺序为审计人员提供原始的、未经更改的和不可否认的数据版本,简化了审计和法规事务。
|
||||
|
||||
#### 信任
|
||||
|
||||
这个文章系列开篇说到区块链为互联网及其上运行的服务增加了急需的信任层。智能合约在任何情况下都不会在执行协议时表现出偏见或主观性,这意味着所涉及的各方对结果完全有约束力,并且可以不附带任何条件地信任该系统。这也意味着此处不需要具有重要价值的传统合同中所需的“可信第三方”。当事人之间的犯规和监督将成为过去的问题。
|
||||
|
||||
#### 成本效益
|
||||
|
||||
如示例中所强调的,使用智能合约涉及最低成本。企业通常有专门从事使其交易是合法的并遵守法规的行政人员。如果交易涉及多方,则重复工作是不可避免的。智能合约基本上使前者无关紧要,并且消除了重复,因为双方可以同时完成尽职调查。
|
||||
|
||||
### 智能合约的应用程序
|
||||
|
||||
基本上,如果两个或多个参与方使用共同的区块链平台,并就一组原则或业务逻辑达成一致,他们可以一起在区块链上创建一个智能合约,并且在没有人为干预的情况下执行。没有人可以篡改所设置的条件,如果原始代码允许,任何更改都会加上时间戳并带有编辑者的指纹,从而增加了问责制。想象一下,在更大的企业级规模上出现类似的情况,你就会明白智能合约的能力是什么,实际上从 2016 年开始的 **Capgemini 研究** 发现智能合约实际上可能是商业主流**“的下一阶段的早期“** [^8]。商业应用程序涉及保险、金融市场、物联网、贷款、身份管理系统、托管账户、雇佣合同以及专利和版税合同等用途。像以太坊这样的区块链平台,是一个设计时就考虑了智能合约的系统,它也允许个人私人用户免费使用智能合约。
|
||||
|
||||
通过对处理智能合约的公司的探讨,本系列的下一篇文章中将更全面地概述智能合约在当前技术问题上的应用。
|
||||
|
||||
### 那么,它有什么缺点呢?
|
||||
|
||||
这并不是说对智能合约的使用没有任何顾虑。这种担忧实际上也减缓了这方面的发展。所有区块链的防篡改性质基本上使得,如果所涉及的各方需要在没有重大改革或法律追索的情况下,几乎不可能修改或添加现有条款的新条款。
|
||||
|
||||
其次,即使公有链上的活动是开放的,所有人都可以看到和观察。交易中涉及的各方的个人身份并不总是已知的。这种匿名性造成在任何一方违约的情况下法律有罪不罚的问题,特别是因为现行法律和立法者并不完全适应现代技术。
|
||||
|
||||
第三,区块链和智能合约在很多方面仍然存在安全缺陷,因为对其所以涉及的技术仍处于发展的初期阶段。 对代码和平台的这种缺乏经验最终导致了 2016 年的 DAO 事件。
|
||||
|
||||
所有这些都是在企业或公司需要调整区块链以供其使用时可能需要的大量的初始投资。事实上,这些是最初的一次性投资,并且随之而来的是潜在的节省,这是人们感兴趣的。
|
||||
|
||||
|
||||
### 结论
|
||||
|
||||
目前的法律框架并不真正支持一个全面的智能合约的社会,并且由于显然的原因也不会在不久的将来支持。一个解决方案是选择**“混合”合约**,它将传统的法律文本和文件与在为此目的设计的区块链上运行的智能合约代码相结合。然而,即使是混合合约仍然很大程度上尚未得到探索,因为需要创新的立法机构才能实现这些合约。这里简要提到的应用程序以及更多内容将在[本系列的下一篇文章][6]中详细探讨。
|
||||
|
||||
[^1]: S. C. A. Chamber of Digital Commerce, “Smart contracts – Is the law ready,” no. September, 2018.
|
||||
[^2]: S. C. A. Chamber of Digital Commerce, “Smart contracts – Is the law ready,” no. September, 2018.
|
||||
[^4]: Cardozo Blockchain Project, “‘Smart Contracts’ & Legal Enforceability,” vol. 2, p. 28, 2018.
|
||||
[^6]: F. Idelberger, G. Governatori, R. Riveret, and G. Sartor, “Evaluation of Logic-Based Smart Contracts for Blockchain Systems,” 2016, pp. 167–183.
|
||||
[^8]: B. Cant et al., “Smart Contracts in Financial Services : Getting from Hype to Reality,” Capgemini Consult., pp. 1–24, 2016.
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.ostechnix.com/blockchain-2-0-explaining-smart-contracts-and-its-types/
|
||||
|
||||
作者:[editor][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.ostechnix.com/author/editor/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.ostechnix.com/wp-content/uploads/2019/03/smart-contracts-720x340.png
|
||||
[2]: https://linux.cn/article-10914-1.html
|
||||
[3]: https://linux.cn/article-10650-1.html
|
||||
[4]: http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart_contracts_2.html
|
||||
[5]: https://etherparty.com/
|
||||
[6]: https://www.ostechnix.com/blockchain-2-0-ongoing-projects-the-state-of-smart-contracts-now/
|
||||
[7]: http://www.legal-glossary.org/
|
||||
[8]: https://futurism.com/the-dao-heist-undone-97-of-eth-holders-vote-for-the-hard-fork/
|
||||
[9]: https://www.everestgrp.com/2016-10-types-smart-contracts-based-applications-market-insights-36573.html/
|
@ -0,0 +1,93 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (geekpi)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (Unity Editor is Now Officially Available for Linux)
|
||||
[#]: via: (https://itsfoss.com/unity-editor-linux/)
|
||||
[#]: author: (Ankush Das https://itsfoss.com/author/ankush/)
|
||||
|
||||
Unity 编辑器现已正式面向 Linux 推出
|
||||
======
|
||||
|
||||
如果你是设计师、开发者或艺术家,你可能一直在使用 Linux 上的实验性 [Unity 编辑器][1]。然而,实验性版本无法永远满足 - 开发者需要一个完整稳定的工作经验。
|
||||
|
||||
因此,他们最近宣布你可以在 Linux 上使用完整功能的 Unity 编辑器了。
|
||||
|
||||
虽然这是一个令人兴奋的消息,但它正式支持哪些 Linux 发行版?我们来谈谈更多细节......
|
||||
|
||||
非 FOSS 警告
|
||||
|
||||
Linux 上的 Unity 编辑器(或任何其他平台)不是开源软件。我们在这里介绍它是因为
|
||||
|
||||
### 官方支持 Ubuntu 和 CentOS 7
|
||||
|
||||
![][2]
|
||||
|
||||
无论你拥有个人许可还是专业许可,如果你安装了 Unity 2019.1 或更高版本,都可以使用编辑器。
|
||||
|
||||
此外,他们优先支持 Ubuntu 16.04、Ubuntu 18.04 和 CentOS 7。
|
||||
|
||||
在[公告][3]中,他们还提到了支持的配置:
|
||||
|
||||
* x86-64 架构
|
||||
* 运行在 X11 窗口系统之上的 Gnome 桌面环境
|
||||
* Nvidia 官方专有显卡驱动和 AMD Mesa 显卡驱动
|
||||
* 桌面计算机,在没有仿真或兼容层的设备/硬件上运行
|
||||
|
||||
|
||||
|
||||
你可以尝试其他的 - 但最好坚持官方要求以获得最佳体验。
|
||||
|
||||
关于第三方工具的说明
|
||||
|
||||
如果你碰巧在任何项目中使用了任何第三方工具,那么必须单独检查它们是否支持。
|
||||
|
||||
### 如何在 Linux 上安装Unity 编辑器
|
||||
|
||||
现在你已经了解了它,那么该如何安装?
|
||||
|
||||
To install Unity, you will have to download and install the [Unity Hub][4].
|
||||
要安装 Unity,你需要下载并安装 [Unity Hub][4]。
|
||||
|
||||
![Unity Hub][5]
|
||||
|
||||
我们将引导你完成以下步骤:
|
||||
|
||||
* 从[官方论坛页面][4]下载适用于 Linux 的 Unity Hub。
|
||||
* 它将下载一个 AppImage 文件。简单地说,让它可执行并运行它。如果你不了解它,你应该查看关于[如何在 Linux 上使用 AppImage][6] 的指南。
|
||||
* 启动 Unity Hub 后,它会要求你使用 Unity ID 登录(或注册)以激活许可证。有关许可证生效的更多信息,请参阅他们的 [FAQ 页面][7]。
|
||||
* 使用 Unity ID 登录后,进入“**安装**”选项(如上图所示)并添加所需的版本/组件。
|
||||
|
||||
|
||||
就是这些了。这就是获取并快速安装的最佳方法。
|
||||
|
||||
**总结**
|
||||
|
||||
即使这是一个令人兴奋的消息,但官方配置支持似乎并不广泛。如果你在 Linux 上使用它,请在[他们的 Linux 论坛帖子][9]上分享你的反馈和意见。
|
||||
|
||||
你觉得怎么样?此外,你是使用 Unity Hub 安装它,还是有更好的方法来安装?
|
||||
|
||||
请在下面的评论中告诉我们你的想法。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/unity-editor-linux/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://unity3d.com/unity/editor
|
||||
[2]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/05/Unity-Editor-on-Linux.png?resize=800%2C450&ssl=1
|
||||
[3]: https://blogs.unity3d.com/2019/05/30/announcing-the-unity-editor-for-linux/
|
||||
[4]: https://forum.unity.com/threads/unity-hub-v-1-6-0-is-now-available.640792/
|
||||
[5]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/05/unity-hub.jpg?fit=800%2C532&ssl=1
|
||||
[6]: https://itsfoss.com/use-appimage-linux/
|
||||
[7]: https://support.unity3d.com/hc/en-us/categories/201268913-Licenses
|
||||
[9]: https://forum.unity.com/forums/linux-editor.93/
|
Loading…
Reference in New Issue
Block a user