众所周知,比特币现金在5月15日硬分叉升级时激活了一些OP_Codes,并将OP_Return升级至220字节。这些新功能也吸引了很多开发人员来比特币现金网络建立一些应用。前段时间在杭州举行的BCH极客大赛就有上百名开发人员参与其中。
由于OP_Return相对比较简单,所以比特币现金硬分叉升级将OP_Return的容量扩大之后,就有开发人员就开始利用OP_Return开发了很多去中心化的应用。例如去中心化的博客Matter、去中心化的加密信息应用KeyPort等。
OP_Codes虽然复杂一些,但是它的功能也相对强大很多。开发人员可以使用这些激活的OP_Codes解决一些BCE无法解决的问题。
前天Electron Cash的创始人Jonald Fyookball推出了一个建立在比特币现金网络上的在线投注协议Chainbet。该协议由两部分组成:一个是承诺计划以实现无信任的投注,另外一个是链上消息系统以促进沟通。目的是通过这一协议来提高一些活动的公平性、透明度和安全性,也希望比特币现金生态系统通过提供无信任的游戏机制可以获得更多的用户和更多的交易量。
在这个协议中为了进行无信任的掷币投注,投注双方Alice和Bob应该分别创建秘密值。如果这些值的和为偶数,则Alice赢得下注。如果这些值的总和是奇数,那么鲍勃赢得赌注。Alice和Bob将使用加密方案,双方可以锁定投注并公平地公开他们的秘密。但是有个缺陷就是如果一方不公开秘密,就会造成游戏无法顺利进行。
为了提高游戏的安全性,OpenBazaar的开发者Chris Pacia 则提出整个过程原子化。由于比特币算术运算只接受带符号的32位整数,而这一点BCE是做不到。为了解决这个问题,他提出使用比特币现金新添加的OP_SPLIT和OP_BIN2NUM将数字转换为带符号的32位整数。而重新启用的OP_MOD则用于确定偶数或奇数。于是他创建了下图中这些代码。
图片3.png
这个方法最终得到了验证,使用这些OP_Codes是可行,是能够提高该协议的安全性,并能顺利的将游戏进行下去。其实在比特币现金硬分叉升级之后,这些操作码就受到了开发人员的欢迎。OpenBazaar开发者Chris Pacia曾经就使用新添加的OP_CAT代码做了一个树签名。对于拥有大量密钥的地址,树签名可以使用更少的数据。而且与普通的OP_CHECKMULTISIG不同,对于具有大量密钥的地址,它不要求公开未在签名中使用的密钥。一位匿名用户还使用OP_Codes来解决“任意数据垃圾邮件”的争论。
比特币现金硬分叉升级总共激活了9个OP_Codes,每一个操作码都有自己的功能。目前被使用的还只是一部分操作码,还有很多操作码的功能正等待被开发。相信随着越来越多的操作码功能被使用出来将会给BCH带来更多更好的解决方案,丰富其生态。