服务热线:
产品中心

区块链基础名词普及--智能合约

发布时间: 2023-10-11 22:21:49 来源:产品中心

详细信息

  当下区块链成为热门,公有链、私有链、联盟链、DAPP、token通证等等都是我们学习的对象。智能合约就是要求我们深度了解的有一个名词。

  传统合约是目前我们最常用的,可以是口头合约,也可以是纸质合约。无论大型公司还是小企业,所有的合约都是要依赖于诚信和发了财的约束。若发生合同违约,就需要付出大量的财力和物力解决问题。

  智能合约就是比传统的简单很多,他是通过代码执行的。只要是某种条件出发了智能合约的条款,代码自动执行,这个执行的过程是不会因为当事人不愿意就不执行。

  就拿我们现在的赌球为例,如果A对和B赌哪一队能赢。两个人达成了智能合约,赢的就要付给输的100块!如果两队中的甲方赢了比赛,在触发了智能合约中的某一个条件,智能合约就会收到指令。自动判断输赢,将钱打到获胜者的账户。

  “一个智能合约是一套以数字形式定义的承诺(promises) ,包括合约参与方可以在上面执行这些承诺的协议。”

  关键词一:数字形式——合约是以计算机中可读代码的形式存在的,即根据参与方达成的协定,智能合约通过编写代码建立权利和义务,交给计算机网络执行。

  关键词二:承诺——承诺是合约参与方之间达成的共识,这中间还包括双方的权利和义务,这些承诺是制定合约的目的,就像上面打赌球赛的例子,输的给赢的100元就是一个承诺。

  关键词三:协议——即技术实现,能够理解为记录和履行承诺的工具。协议的选择主要根据合约履行中被交易资产的本质,比如,协议中射击比特币支付,就要采用比特币协议。

  主要过程:事物和事件传入智能合约,其中事件描述信息中包含了触发条件,智能合约会进行状态机判断。如果触发条件满足(可能是一个或者几个),智能合约就会自动发出设定好的数据及包含触发条件的事件。简单的理解,就是事件和事物A进去,经过智能合约处理,产出事件和事物B,触发条件不同,B中包含的事物和事件也就不同,智能合约扮演的角色是裁判,负责判断并执行。通过智能合约,承诺可以以数字化形式按照参与者的意志被正确、高效的执行。

  首先,用户要在区块链上注册,获得一对公匙和私匙(公匙是账户地址,私匙是账户钥匙)。参与方根据彼此的需求达成一份承诺协议,其中包含数个权利和义务,这一步和传统合约是相同的。接下来,就要把这个承诺通过编程语言转换成数字形式,参与方分别用各自的私匙在这份数字协议上签名。这样,智能合约就生效了。

  签名生效后的智能合约将会被传到区块链网络,被全网节点接收并存储。这样的一个过程就是建立新区块的过程,首先要进行哈希计算获得区块的创建权,然后全网广播,所有的验证节点做验证。同时,验证节点还会对每条合约做验证,主要验证参与方的私匙签名与账户是否匹配。验证通过之后,合约就被区块链中各节点接收储存了。

  首先,智能合约会定期逐条检查自动机、事务以及触发条件,然后处理信息,将其分为两类,一类是满足触发条件的事务,被推送到待验证行列,另一类是未满足触发条件的事务,将其继续返回到区块链上。

  当满足触发点的事务被全网节点验证通过后,就会被成功执行。接下来需要判断这份合约是不是已经全部完成,如果全部完成,就会将其标记为完成状态,从最新的区块中移除;若还有未完成事务,仍需继续,就将其在区块中更新,继续等待下一次触发条件。

  “智能合约的工作理论迟迟没有实现,一个重要原因是因为缺乏能够支持可编程合约的数字系统和技术。区块链技术的出现解决了该问题,不但可以支持可编程合约,而且具有去中心化、不可篡改、过程透明可追踪等优点,天然适合于智能合约。因此,也能说,智能合约是区块链技术的特性之一”

  区块链具有数据不可篡改、去中心化的特性,将智能合约运行在区块链上,能够保证整一个完整的过程公开透明、不可篡改,同时避免了中心化因素的影响,使智能合约高效运转。返回搜狐,查看更加多