区块链的可扩展性(scalability),一直是区块链技术的痛点,大部分ICO的区块链项目承诺的服务在现今的技术条件下,根本不可能实现。

可扩展性指的是区块链单位时间处理交易数量的能力问题。在现在的技术下,比特币每秒平均能处理7笔左右的交易,以太坊能处理大概15笔左右,而VISA平均一秒处理的交易数量高达一万笔,差异之大可想而知。

可扩展性的核心在于两个问题。一个是如果比特币区块扩容,每次允许记录的交易记录大量增加,不用很久账本就会变得异常巨大,以至于个人再也无法下载整个账本,也无法亲自验证账户中比特币的数量。二是,工作量证明本身使得记账者的计算力基本都放在争夺记账权上,而没有专心在记账上,所以记账的效率必然很低。

以太坊的POS以及EOS的DPOS,在适当牺牲区块链的安全性的前提下,提出了两套方案应对这两个问题,而比特币社区则提出了两外一套完全不同的链下解决方案。由于篇幅问题,只讲比特币社区的链下解决方案——lightning network

思路很简单,如果把账本寄到链上成本这么高,不如把一次次的小帐记到链下,在链上只记录总账。实现起来却没这么简单,核心问题是如何在不上链的情况下取得各方的信任

一个最简单的模型是双方交易模型。比如说小B常常要去星巴克买咖啡,小B希望用比特币支付,但是每次上链要等半个小时,咖啡都凉了,怎么办?

这时候,小B需要和星巴克开一个共同账户,这个账户上的钱只有星巴克和小B共同签署的支票,才能取现。星巴克和小B先签一张一个月之后全部钱归小B的支票,这时小B就可以放心把比特币放进共同账户了,因为如果不做任何操作,比特币在一个月之后总能拿回来。

第一天,小B去星巴克买咖啡,怎么给钱?这时候小B签一张支票,上面写着一杯咖啡的比特币归星巴克,剩余的归小B。星巴克收到支票就放心了,因为它随时都可以取一杯咖啡的钱,小B不到一个月后,不可能动账户上的钱。

第二天,小B又去买咖啡,怎么办?小B这时候签一张支票,写着两杯咖啡的比特币归星巴克,其余归小B。这时候,第一张支票就自然作废了。为什么?因为星巴克没在第一张支票上签名,小B用不了第一张支票。而星巴克也不可能在第一张支票上签名,否则上到链上,星巴克只能获得一杯咖啡的钱。

到了月底,小B已经消费了25杯咖啡。星巴克手头有25张支票,但只有最后一张才是有效的。星巴克在最后一张支票上签上名,放到链上,小B和星巴克这个月的交易就算结束了。通过这种方式,就可以把25次交易缩减为1次交易。

在保证了双方信任的前提下,缓解了可扩展性的问题。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注