《表3 比特币脚本常用指令》

《表3 比特币脚本常用指令》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《比特币系统综述》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

比特币系统合约层是一段比特币脚本代码,是智能合约的雏形,采用一种类Forth、基于栈模型、无状态的、非图灵完备的脚本语言实现。比特币脚本中不存在流控制和循环,极大降低了复杂性和不确定性,并且避免了陷入死循环等逻辑炸弹而造成拒绝服务等安全问题,但同时也降低了灵活性。比特币脚本本质上是一组指令的集合,常用指令如表3所示[19]。比特币交易中包含两类脚本,即锁定脚本(scriptPubKey)和解锁脚本(scriptSig),锁定脚本也称为输出脚本,一般包含在一笔交易的输出中,规定了这笔交易输出的花费条件,解锁脚本也成为输入脚本,是满足花费条件的脚本,分别执行交易的输入脚本和上一笔交易的输出脚本,若执行正确,则表示解锁脚本满足锁定脚本规定的花费条件,将允许该输出被消费。比特币系统通过这两种脚本的组合,可以实现灵活的交易控制。