解读比特币的可扩展性方案:隔离见证( 四 )
可用的区块空间扩大 , 降低交易手续费
SegWit类型的交易比以往的交易类型更便宜 , 因为它减少了需要存储的witness数据 。 准确来说 , “Size”(数据量大小)的概念在SegWit类型的交易上略有不同 。 它引入了一个“虚拟大小(virtualsize)”的概念:所有放在witness部分的数据都会乘以0.25来计算数据量大小 , 从而一个区块中可以塞进更多的交易 。 来看一个例子 。
假设我们有一笔传统类型的交易 , 数据量大小为200字节 。 那么1MB的区块里面可以放进5000笔这样的交易 。 而一笔等效的SigWit交易有120字节是放在witness区域的 , 因此其虚拟大小为80+0.25*120=110字节 , 所以区块可以放入9090笔这样的交易 。 如果上链的手续费是每字节40聪 , 则交易费会从8000聪减低到4400聪 , 几乎打了个对折 。 (译者注:“聪”为比特币的数量单位 , 是btc的亿分之一 。 )
脚本版本
你可能已经注意到了 , 每个锁定脚本都会有1个字节来表示脚本的版本 。 使用不同的版本号就能以软分叉的形式增加或变更功能(语法改变、新的操作符 , 等等) 。
签名验证的效率优化
隔离见证也优化了签名算法的效率(如CHECKSIG、CHECKMULTISIG , 等等) 。 在SegWit之前 , 哈希计算的次数与签名数量的平方成正比 , 但有了隔离见证后 , 算法的计算复杂度就减低到了O(n)(与签名的数量成正比) 。 
那还有啥问题呢?
如果百利而无一害 , 怎么还有人会觉得有问题呢?比特币社区有许多人反对这一升级 , 因为 , 即使它有这么多长处 , 它也有一些缺点 。 我们来看看反对方提出的一些意见 。
因为SegWit是一个软分叉 , 许多客户端可能不会升级 , 因此两种类型的UTXO会在网络中同时存在;诸如消除交易ID熔融性以及哈希计算次数线性上升这样的重大变更对非SegWit输出无效 , 因此网络仍会暴露在交易ID熔融性和哈希时间平方级上升的风险中 。 SegWit会降低网络的安全性 , 执行完全验证的节点会大幅减少 , 因为只有那些适配了SegWit的节点才有能力验证交易的witness部分 。 SegWit不能被废除 。 如果废除了它 , 所有变更都撤销 , 那么所有的SegWit输出就会变成大街上任人捡拾的钱 。 SegWit希望一次解决所有问题 , 也正因此 , 它导致了大量的代码改动 。 它会让未来的工作更加负载 , 而且提高了出现驱之不去的软件bug的机会 。结论
虽然由SW解决的问题很有可能有更优雅的解决方案 , 我们仍然相信 , 在当前 , 这是提高网络的可扩展性并开启闪电网络等技术实现的最佳办法 。 更详细的分析我们放在下一篇文章 。 
参考文献
Lightningnetworkindepth,part1:paymentchannels“Masteringbitcoin”—AndreasM.AntonopoulosBitcoinCoreblogManysegwitresourcesGoodarticleabouttxnmalleability
- 比特币|买小众低端品牌笔记本,还不如二手一线品牌高配置,有道理吗?
- 鲸鱼|以太坊鲸鱼注资小型山寨币
- 腾讯|以太坊鲸鱼注资小型山寨币
- 电子商务|天天查|价值1亿美元的加密货币被黑客盗取
- 以太坊|币圈小将:以太坊合并之后,矿工们将何去何从?
- 扫地机器人|加密货币崩溃迫使矿工在直播拍卖期间出售数百张显卡,千万别买
- “ 人在币圈混,三天饿九顿。?”
- 联想Yoga|馔玉返扑、溢彩存真——联想YOGA Pro 14s 2022全解读
- 虚拟货币7个月蒸发2万亿美元,“马斯克们”终结15万人暴富梦
- 蜗牛是动物界中的“爱神”,其在交配过程中会释放“丘比特之箭”
