从零开始学习区块链——智能合约(二)
本文由币车HIT(biche.yaofache.com)大V养成计划支持
我读书,讲(写)给你听,跟键盘姐从零开始共同学习,每次学透一点点,形成清晰的知识脉络了。让我们一起深耕币圈,玩转区块链!
壹
除了公链、DAPP、通证经济,智能合约也是当下的搜索热词。关于智能合约,我们可以不去学习具体代码编程,但是需要了解它的优点、运作方法等实用的知识,《从零开始学习区块链》系列,今天将继续探讨“智能合约”。
贰
智能合约具体执行流程
构建
首先,用户需要在区块链上注册,获得一对公匙和私匙(公匙是账户地址,私匙是账户钥匙)。参与方根据彼此的需求达成一份承诺协议,其中包含数个权利和义务,这一步和传统合约是相同的。接下来,就要把这个承诺通过编程语言转换成数字形式,参与方分别用各自的私匙在这份数字协议上签名。这样,智能合约就生效了。
存储
签名生效后的智能合约将会被传到区块链网络,被全网节点接收并存储。这个过程就是建立新区块的过程,首先要进行哈希计算获得区块的创建权,然后全网广播,所有的验证节点进行验证。同时,验证节点还会对每条合约进行验证,主要验证参与方的私匙签名与账户是否匹配。验证通过之后,合约就被区块链中各节点接收储存了。
执行
首先,智能合约会定期逐条检查自动机、事务以及触发条件,然后处理信息,将其分为两类,一类是满足触发条件的事务,被推送到待验证行列,另一类是未满足触发条件的事务,将其继续返回到区块链上。
当满足触发点的事务被全网节点验证通过后,就会被成功执行。接下来需要判断这份合约是否已经全部完成,如果全部完成,就会将其标记为完成状态,从最新的区块中移除;如果还有未完成事务,仍需继续,就将其在区块中更新,继续等待下一次触发条件。
智能合约VS传统合约
1、传统合约是建立在合同法的基础之上的,根据法律判定,主要是依赖于主观的看法和类比,就是说同一件事物,不同的裁判可能会出现不同的判定结果,具有不确定性。而智能合约的依托是密码学和数字化,是固定、客观的,不存在主观判断的影响;
2、成熟度上传统合约是很有优势的,因为传统合约已经有着很长的实践历史,相关法律已经很完善,但是,智能合约则是一个新鲜事物,需要不断调节改进。
总的来讲,传统合约关键词:人为判断、区域性、不确定性;智能合约:客观、固定、全球性。
智能合约与区块链
首先引用 “区块链:从数字货币到信用社会”中的一段话 :
“
“智能合约的工作理论迟迟没有实现,一个重要原因是因为缺乏能够支持可编程合约的数字系统和技术。区块链技术的出现解决了该问题,不仅可以支持可编程合约,而且具有去中心化、不可篡改、过程透明可追踪等优点,天然适合于智能合约。因此,也可以说,智能合约是区块链技术的特性之一”
”
区块链具有数据不可篡改、去中心化的特性,将智能合约运行在区块链上,可以保证整个过程公开透明、不可篡改,同时避免了中心化因素的影响,使智能合约高效运转。
这就是键盘姐今天给大家准备的区块链知识,一起学习的朋友们要认真阅读、及时回顾哦!
叁
《从零开始学习区块链系列》往期内容