一分钟读书俱乐部(四十五):《区块链技术驱动金融》比特币脚本的应用(2)

高效小额支付(efficient micro-payments)


原文精选:我们再举一个比特币脚本应用的例子。假设爱丽丝是鲍勃的客户,需要持续向鲍勃支付小额费用,例如,鲍勃是爱丽丝的手机流量提供商,根据爱丽丝每分钟使用的流量计费。但是,每分钟支付一次是不现实的:即使技术上做得到,交易手续费也让人吃不消。


我们希望可以把每分钟的费用累积起来,最后一次性支付。为了实现这种想法,爱丽丝先发起一个MULTISIG交易,把可能花费的最大金额转到MULTISIG地址,但这个交易需要爱丽丝与鲍勃两个人的签名才能生效。爱丽丝在使用流量的时候,每隔一分钟就签名一次,向鲍勃支付这分钟所产生的流量费用,然后把剩余的钱转给自己,每分钟重复一次,直到挂机为止。请注意,这些交易只有爱丽丝的签名,还没有鲍勃的签名,因此,交易还没被放进区块链里。爱丽丝挂机之后,会告诉鲍勃“我用好了,你可以切断我的服务了”,此时,爱丽丝将不再支付费用,鲍勃也将切断服务,然后在爱丽丝发送的最后一个交易里签名,把它放入区块链里。



随着每个交易付给鲍勃的币越来越多,爱丽丝的币就会越来越少。最后一个交易会一次性向鲍勃支付所有的流量费,然后把剩余的币还给爱丽丝。整个过程中,爱丽丝单独签名的交易不会进入区块链(上面没有鲍勃的签名),最后它们都会被丢弃掉。


读书笔记:

1,比特币脚本可以把小额支付累积起来,最后一次性支付。

2,一系列的小额交易可以等到最后一个交易签名之后,再放到区块链里。


原文精选:从技术上讲,所有这些交易都是双重支付。在介绍绿色地址时,我们特别提到防止双重支付的重要性,但在本例中,我们却主动创造了大量的双重支付。实际上,如果双方都是正常运作的话,鲍勃只会在最后一个交易上签名,所以我们在区块链上看不到中间产生的那些双重支付交易。


还有一个微妙的细节:如果鲍勃没有在最后一个交易上签名呢? 他可能会说,“就让那些币待在第三方托管地址里吧。”这样一来,爱丽丝就会失去她一开始转到MULTISIG地址的所有比特币。但我们有一个聪明的办法来解决这个问题,那就是我们前面看到的一个代码——锁定时间。


读书笔记:

1,高效的小额支付有很多交易都是双重支付,只不过正常运作过程中,第二个签名只在最后一笔交易上签名,所以在区块链上看不到中间产生的那些双重支付交易。

2,锁定时间可以解决最后一个交易没有共同签名的问题。


一叶之秋带你一分钟速读经典书籍,每天一分钟(只需阅读读书笔记部分),天天获新知。


一叶之秋——非著名股票分析师

CCTV证券资讯频道特邀分析师

币乎,币问内测作者;区分认证分析师

陀螺财经,币快报专栏作家

《区块链编年史》 《区块链重塑未来》系列作者

量价时空战法体系,一分钟读书俱乐部创始人

公众号:区块链项目评测

007er

你可能感兴趣的:(一分钟读书俱乐部(四十五):《区块链技术驱动金融》比特币脚本的应用(2))