当前位置: 首页 > 后端技术 > PHP

智能合约实施指南

时间:2023-03-29 16:21:44 PHP

与区块链技术一样,智能合约在商业世界中也非常有价值。我们准备本指南是为了让我们的读者全面了解智能合约是什么以及它们如何影响现代业务的交易方式。中心化商业模式正在让位于去中心化模式传统的商业关系模式是中心化的,总是有第三方介于双方之间进行交易并确认合同中的条款和条件。该第三方可能是银行机构、执法机构、政府机构或其他中介机构。在集中式模型中建立关系时,企业依赖中介机构,这会使客户面临风险。此外,中央系统无法保证合同的支付和执行。区块链技术的发展使企业建立了去中心化的模式,为企业进行交易和签订协议开辟了新的天地。提出替代传统模型的技术之一是智能合约。智能合约概念虽然围绕智能合约的炒作随着区块链技术的炒作而增长,但智能合约一词实际上出现在二十多年前。计算机科学家和密码学家NickSzabo在1995年写了一篇关于智能合约的文章。Szabo提供的概念与目前智能合约提供的概念完全一致,包括在分布式账本中实施和存储智能合约的想法。那么智能合约到底是什么?什么是智能合约?智能合约类似于物理世界中的合约,但它是数字化的,由存储在区块链上的微型计算机程序表示。更具体地说,智能合约是一种软件,它存储用于协商协议条款的规则,自动验证履行情况,然后执行商定的条款。智能合约的主要思想是什么?由于智能合约在建立业务关系时不依赖第三方,因此协议各方可以直接相互交易。以众筹平台为例,产品团队分享他们的项目并从支持者那里筹集资金,直到达到目标。如果这样的平台是中心化的——比如Kickstarter——那么它就是产品团队和捐赠者支持者之间的第三方。这意味着双方都需要信任Kickstarter,并且实际上作为中间人向Kickstarter支付额外费用。智能合约也可以执行相同的众筹活动——共享项目、设定目标和收集捐款,但无需第三方。简而言之,我们可以编写智能合约来执行所有这些操作。更准确地说,我们可以编写一个智能合约来接收资金,直到达到目标。如果项目在截止日期前获得全额资助,自动筹集的资金将转给产品团队。如果项目失败,资金将自动退还给支持者。由于智能合约存储在区块链中,所有数据都以分布式方式存储,因此没有人控制资金。在去中心化的商业模式中,智能合约取代了任何其他受信任的第三方。这就引出了一个非常重要的问题:为什么要信任智能合约?智能合约是在区块链中设计和实现的,因此它继承了区块链的一些属性:它们是不可变的,这意味着智能合约永远无法更改,任何人都不能篡改或违反合约。它们是分布式的,这意味着合约的结果需要被网络中的每个人验证,就像区块链上的任何交易一样。分布式使得攻击者无法强制控制资金的释放,因为所有其他参与者都会检测到此类尝试并将其标记为无效。智能合约如何工作智能合约是一个程序,或者更简单的代码。智能合约背后的代码包含由特定约定事件触发时执行的特定条款。让我们看一个智能合约如何运作的例子,如果爱丽丝在洛杉矶租了房子,而纽约的鲍勃想租房子去那里旅行。一种逻辑行为算法通常,爱丽丝和鲍勃使用连接主人和客人的平台来同意租房。这样的平台将充当第三方,当然会负责遵守约定的条款。但是,Alice和Bob都会被平台收取费用。此外,如果任何一方未能履行其承诺,争议解决可能会耗费时间并需要审查。如果Alice和Bob使用智能合约达成协议,智能合约将根据其算法执行逻辑运算,并保证满足所有约定的条款和条件。智能合约具有不变性,这是智能合约的DNA,它不会允许Alice或Bob作弊。因此,Alice和Bob之间的智能合约中可以列出以下条款和事件:1.创建一个独立的存储区域,Alice和Bob都可以分配,但不能更改。2.Bob在存储区存钱。3.爱丽丝将她的公寓地址和代码放入存储区。4.Alice收到付款确认,Bob收到地址和公寓代码。5.如果Bob来到洛杉矶并且Alice提供的地址和代码正确,那么Alice将收到付款。6.如果Alice提供的地址或代码出现错误,Bob将取回他的钱。7.如果Bob不来洛杉矶,Alice得到违约金,Bob得到剩余的款项。8.在协议结束时,智能合约被视为已履行并仍存储在区块链网络中。这组条件和事件代表了最基本的一次性智能合约。在智能合约代码中设置条款可确保令人满意的执行。区块链技术本身保证了整体合约的性能,并且由于区块链的完整副本由所有网络参与者公开存储,因此智能合约保持不变。多合一——完整智能合约的逻辑一旦Alice生成了一个智能合约,将她的公寓出租给Bob并自动透明地为她工作,她可能会考虑为所有其他租户创建一个通用协议,这样她就不需要为每个新客人创建一个新的智能合约。根据这个通用协议,区块链网络上的任何人都可以根据上述算法租用爱丽丝的公寓:潜在客人转移租金,获得地址和公寓代码,然后如果一切正常,则按照双方之间的合同条款进行。二、爱丽丝将收到付款。直到付款。此外,智能合约可以更加普遍。我们可以编写一个智能合约,它不仅可以供爱丽丝使用,也可以供任何想出租公寓的人使用。当然,智能合约可以包含更具体的条件,例如自动调整的价格、折扣、部分付款以及任何其他可以想象的选项。使用智能合约的区块链网络关于区块链技术的智能合约已经谈了很多。虽然在不同的区块链网络和项目中有很多智能合约的例子,但最著名的仍然是比特币和以太坊。比特币虽然比特币主要以交易比特币加密货币而闻名,但其协议也可用于创建智能合约。比特币提供了一种编程语言,允许自定义智能合约,例如多重签名账户、支付渠道、托管和时间锁。特别是,一个名为RootStock的独立智能合约平台已经建立在比特币区块链上。以太坊以太坊是最著名的智能合约框架,专门为支持智能合约而创建和设计。该框架以Solidity语言编程,是一个去中心化平台,可以在没有停机、审查、欺诈或第三方干预的情况下运行智能合约。以太坊区块链数据库存储人与人之间的交易、涉及智能合约的交易及其源代码。智能合约的好处显式编程算法的核心和区块链属性(例如去中心化、透明度、防欺诈等)使智能合约成为建立业务关系和执行交易的可靠替代方案。作为具有中心化业务模型的传统合同的替代方案,以下是智能合同为企业提供的好处:直接??与客户打交道。智能合约消除了对中间商的需求,并允许与客户建立透明、直接的关系。抵抗失败了。由于企业不依赖第三方,因此没有任何个人或实体可以控制数据或金钱。去中心化意味着即使任何人离开区块链网络,网络也将继续运行而不会丢失数据或完整性。更多的信任。业务协议是自动执行的。此外,这些协议是不可更改的,因此是牢不可破的。减少欺诈。由于智能合约存储在分布式区块链网络中,因此其结果将由该网络中的每个人进行验证。因此,没有人可以强制控制他人资金或数据的发布,因为所有其他区块链参与者都会发现这一点并将此类尝试标记为无效。成本效益。消除中间商可以消除额外费用,使企业及其客户不仅可以直接互动和交易,而且可以在交易中收取更少或不收取额外费用。保留记录。所有合同交易都按时间顺序存储在区块链上,并且可以连同完整的审计跟踪一起访问。智能合约用例智能合约越来越受欢迎,并已在各种区块链项目中实施。以下是一些在不同行业中最有前途的智能合约实施示例。银行业银行业可能是智能合约似乎是传统交易模式最重要替代品的主要行业。几乎所有其他金融业务都可以通过智能合约支付和贷款实现自动化。KYC-Chain为个人、企业和金融机构实施智能合约。其核心是允许客户遵守监管规范的机制,例如自动智能检查,以及公证人和机构共享相关文件和数字验证。医疗保健智能合约还可以改善医疗保健。他们可以简化保险试用流程,增加跨机构对数据的访问,并提高患者对保护隐私的信心。对于在区块链网络上执行的智能合约,身份验证、授权和身份确认仍然是未解决的问题。Dentacoin是医疗行业智能合约的一个例子。它旨在将患者和牙医聚集在一起,以改善牙科护理并使全球负担得起牙科护理。供应链智能合约可以提供实时可见性的另一个领域是供应链。智能合约确保精细的库存跟踪,促进供应链融资,并降低盗窃和欺诈的风险。无论市场类型或所售商品的类型如何,都可以有效地使用智能合约。例如,NameBazaar正在点对点市场中实施智能合约技术,用户可以在其中以域的形式在区块链上交换加密资产。法律问题解决法律问题和支持文件的传统模式也正在让位于智能合约。智能合约消除了公证的需要,不仅提供了一种自动化、公正且具有成本效益的解决方案。Nottar.io说明了使用以太坊区块链公证文件的概念。房地产您已经在“智能合约如何运作”部分了解了智能合约如何为房地产运作的最简单概念。当然,现实生活中的项目更加复杂和全面,需要涵盖更广泛的问题和机会。例如,FOAM是一个房地产股票市场,利用技术让用户进行房地产交易、获得融资和资金、管理租赁。政府调查去中心化技术对垄断领域(尤其是政府系统)的潜在影响可能是最有趣的。澳大利亚公司Horizo??nState正在努力提供投票和其他工具来帮助民主进程。特别是,它打算提供一个基于区块链的投票生态系统,支持针对一系列选举类型和投票参数的安全、具有成本效益的广告操作。其主要目标是在世界各国实现透明、公正的投票。物联网(IoT)是物联网网络智能合约与其他技术交叉的领域之一。智能合约和物联网的结合足以实现跨行业的重大转型,为新的去中心化应用程序铺平道路。Oaken项目证明了这一点。它提供自主的物联网硬件和软件以及区块链技术。综合起来,这些组件让Oaknen几乎可以与任何设备一起构建物联网网络,使其能够应用于各种现实生活场景。最后的想法与传统的中心化商业模式不同,智能合约促进了建立在信任基础上的新型商业关系。通过继承区块链属性,智能合约提供不可变的分布式存储,这使它们有别于传统协议。不变性和分布式存储使智能合约成为制定业务协议和执行交易的可靠方式。区块链技术已经在影响企业。当然,即使不是不可能,也很难完全改变一个行业的运作方式。大的改变需要时间。然而,区块链和智能合约技术的成功和有前途的用例正在为未来的商业奠定基础。如果你想开始学习区块链开发,请看看我们精心打造的教程:Java以太坊开发教程,主要面向java和android程序员开发web3j进行区块链以太坊开发。以太坊入门教程,主要介绍智能合约和dapp应用开发,适合入门。以太坊开发进阶教程,主要介绍使用node.js、mongodb、blockchain、ipfs实现去中心化电商DApp实战,适合进阶。PythonEthereum,主要供python工程师使用web3.py详细开发区块链以太坊。php以太坊主要介绍使用php进行智能合约开发交互、账户创建、交易、转账、代币开发、过滤器和事件等。C#以太坊主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态和交易、智能合约开发和交互、过滤器和事件等。Php比特币开发教程,本课程面向初学者,内容涵盖比特币的核心概念,如区块链存储、去中心化共识机制、密钥和脚本,交易和UTXO等,还详细讲解了如何使用Php在代码中集成比特币支持功能,如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习教程。EOS入门教程,本课程帮助您快速上手开发EOS区块链去中心化应用,涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后利用所有知识点完成一个便签DApp的开发。转载请注明出处。这里是原文