什么是智能合约?
智能合约是一种自动运行的计算机程序,在满足特定条件时会自动执行。
借助智能合约,您可以以无冲突透明的方式在陌生人之间分享任何有价值的东西。
区块链上的智能合约是把前述计算机代码部署到公链上,使其在公链上自动运行。智能合约的签署和执行过程中的每一步都形成一个区块,并根据分布式记账原理被记录于链上每个节点。
1.区块链上的多个用户可以共同参与制定智能合约,合约的协议中明确了双方的权利和义务,当双方同意合约的内容和目标后,通过开发人员将这些协议转换为代码,代码中包含会触发合约自动执行的条件。
2.当编码完成后,智能合约就会被上传到区块链上,即全网验证节点都会接收这份合约信息。
在此阶段,合约双方都必须满足合约的所有要求,支付费用或发送资产以进一步执行。此外,还要冻结在智能合约中定义的钱包地址的转账,直到满足所有约定好的前提条件为止。
3.当智能合约执行时,会定期检查是否存在相关事件和触发条件,满足条件的事件将会推送到待验证的队列中。然后,这些交易事件将通过共识协议进行验证。
4.取消冻结资产并确认所有交易后,智能合约即被视为最终确定。成功执行的合约将移出区块。而未执行的合约则继续等待下一轮处理,直至成功执行。
智能合约具有以下特征:
可自动执行,由于协议条款存储在代码中,因此,智能合约在相关各方的行动触发后会自动强制执行规则。
可验证和安全,代码透明,可以验证,并且密码安全;
节省成本,消除中介机构可以节省成本和费用;
速度,智能合约可用于自动化业务任务,从而节省了工作时间;
自治,无需第三方或第三方代理;
不可篡改,由于智能合约是存储于区块链中的,也就意味着所有的这些信息是不可篡改的和去中心化的。
与常规合约一样,智能合约旨在执行协议条款——无论是加密货币交换、代币化权利、身份证明还是其他任何东西。
当满足预定义的条件时,智能合约将自动执行。智能合约的操作可以用三个主要术语来简要描述:
互联性:每个智能合约通常都有一组受限的功能。可以设置多个智能合约以相互连接,并且可以形成更复杂的安排,称为去中心化应用程序(dapps)。
对象:这些是与智能合约及其主体交互的签署者,它们由智能合约根据预定义或新提交的条款进行修改。
环境:智能合约依赖于底层加密环境。这确保了它们可以安全地运行,并且它们所作用的数据是不可变的并且通常是透明的。
智能合约的特点
-可信性
智能合约的承诺包含两方面,一是自动,无需信任和公正地执行合约;二是直接,在合约执行的各个环节中取消中间人这一角色。智能合约的所有条款和执行过程是提前制定好的,并由计算机绝对执行。因此所有执行的结果都是准确无误的,不会出现不可预料的结果。
-无需第三方
智能合约不需要中心化的权威来仲裁合约是否按规定执行,合约的监督和仲裁都由计算机来完成。在一个区块链网络中一般不存在一个绝对的权威来监督合约的执行,而是由共识机制来判断合约是否按规定执行,监督方式通常由PoW或PoS技术实现。由于智能合约的数字化特点,数据被存储在区块链中,使用代码强制执行协议,保证成交记录可追踪和不可逆转。
-高效的实时更新
由于智能合约的执行不需要人为的第三方权威或中心化代理服务的参与,其能够在任何时候响应用户的请求,大大促进成交的效率。用户只需通过网络对业务进行办理,节省了人力、物力。
-更低成本
智能合约具有去人为干预的特点,其能够大大减少合约履行、裁决和强制执行所产生的人力成本,要求合约制定人能够将合约的各个细节在合约建立之初就确定下来。