智能合约的工作原理是什么?

智能合约的工作原理是什么?

《智能合约的工作原理是什么?》

智能合约

智能合约(smart contract)由尼克•萨博在1994年提出。由于缺少可信的执行环境,智能合约当时并未产生实际应用。比特币底层技术区块链天生可以为智能合约提供可信的执行环境,以太坊进而首次成就了基于区块链的智能合约平台,以太坊的白皮书《以太坊:下一代智能合约和去中心化应用平台》。

智能合约的本质

智能保证执行安全,并减少交易成本。智能合约允许在没有第三方的情况下进行可信交易,且交易可追踪、不可逆转。智能合约是以信息化方式传播、验证或执行合同的计算机协议。智能合约程序不是单纯自动执行的程序。它本身就是系统的有效参与者。它是运行在可复制、共享的账本上的计算机程序,可以处理信息,接收、储存和发送价值。

智能合约漏洞

去中心化执行的智能合约由于代码开源,会导致安全漏洞更容易被利用却可能无法迅速修复。2016年6月The DAO的智能合约漏洞造成损失5000万美元的损失,开发者未能就漏洞及时做出回应。最终通过回滚数据块、以太坊硬分叉挽回损失,却严重损害区块链的去中心化属性。

以太坊智能合约中的问题包括合约编程Solidity、编译器错误、以太坊虚拟机错误、对区块链网络的攻击、程序错误的不变性以及其他尚无文档记录的攻击。

智能合约的用途

区块链技术的去中心化账本功能可以被用来创建、确认、转移各种不同类型的资产及合约。几乎所有类型的金融交易都可以被改造成在区块链上使用,包括股票、私募股权、众筹、债券和其他类型的金融衍生品如期货、期权等。

智能合约工作原理

用户承诺双方的权利和义务编写为电子化的机器语言,参与者分别用各自的私钥签名。签名后的智能合约传入区块链网络中。合约通过P2P的方式在区块链全网中扩散,验证节点会将收到的合约先保存到内存中,等待触发对该份合约的共识和处理。共识时间到了,验证节点会把最近一段时间内保存的所有合约打包成一个合约集合,并算出这个合约集合的哈希值,组装成区块结构,扩散到全网;其他验证节点收到后,与自己保存的合约集合对比教验,同时发送一份自己认可的合约集合给其他验证节点;通过多轮的发送和比较,所有验证节点最终在规定的时间内对最新的合约集合达成一致。

每个区块包含以下信息:当前区块的Hash值、前一区块的Hash值、达成共识时的时间戳、以及其他描述信息;已经达成共识的合约集。

智能合约执行过程

智能合约定期检查自动机状态,逐条遍历每个合约内包含的状态机、事务以及触发条件;将条件满足的事务推送到待验证的队列中,进行签名验证,确保事务的有效性,等待多数验证节点达成共识,成功执行并通知用户;未满足触发条件的事务将继续存放在区块链上。

事务执行成功后,智能合约自带的状态机会判断所属合约的状态,当合约包括的所有事务都顺序执行完后,状态机会将合约的状态标记为完成,并从最新的区块中移除该合约;反之将标记为进行中,继续保存在最新的区块中等待下一轮处理,直到处理完毕。

 

以上就是小编分享关于”智能合约的工作原理是什么? ”的相关文章,感谢读者的耐心阅读,觉得不错动动小手收藏转发吧!想了解更多相关新闻敬请关注小柚财经!

小柚财经QQ专线:334026(带你加入更多行业交流群)
小柚财经微信公众号:搜索【今日币有约】关注即可

文章标题:智能合约的工作原理是什么?
文章链接:http://www.qgakbjs.com.cn/index.php/2020/09/12/10609/
小编申明:本站所提供文章资讯,均由互联网整理。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注