作者jl2012,是来自香港的比特币技术爱好者,亦是三份有关隔离见证的比特币改善方案 (BIP) 的草拟者。 每一个比特币交易,其实可以分为两部份。第一部份是说明结馀的进出,第二部份是用来证明这个交易的合法性 (主要是签署)。第一部份可称为「交易状态」,第二部份就是所谓的「见证」(witness)。如果你只关心每个账户的结馀,其实交易状态资料就已经足够。只有部份人(主要是矿工)才有必要取得交易见证。 中本聪设计比特币系统时,并没有把两部份资料分开处理,导致交易ID的计算混合了交易状态和见证。因为见证本身包括签署,而签署不可能对其自身进行签署,因此见证是可以由任何人在没有交易双方同意下可以改变的,造成所谓交易可变性 (malleability)。在交易发出後,确认前的交易ID可以被任意更改,因此基於未确认交易的交易是绝对不安全的。在2014年就曾有人利用这漏洞大规模攻击比特币网络,然而这问题一直至今没有解决。 比特币核心开发员Pieter Wuille 在2015年12月於香港提出的隔离见证 (Segregated Witness,以下简称SW) 软分叉非常巧妙地彻底解决了这个问题。SW用户在交易时,会把比特币传送到有别於传统的地址。当要使用这些比特币的时候,其签署 (即见证)并不会记录为交易ID的一部份,而是另外处理。也就是说,交易ID完全是由交易状态 (即结馀的进出) 决定,不受见证部份影响。这做法有几个重要的结果: 1. 可以用软分叉增加最大区块容量: 因为旧有节点根本看不到这些被隔离的见证,即使真实的区块已超过1MB,它们仍会以为没有超过限制而会接受区块。在整场有关区块容量的辩论中,最大的难点就是硬分叉。SW可以提供约2MB的有效区块空间而没有任何硬分叉风险。 2. 从此以後,只有发出交易的人才可以改变交易ID,没有任何第三方可以做到。如果是多重签名交易,就只有多名签署人同意才能改变交易ID。这可以保证一连串的未确认交易的有效性,是双向支付通道或闪电网络所必须的功能。有了双向支付通道或闪电网络,二人或多人之间就可以实际上进行无限次交易,而无需把大量零碎交易放在区块链,大为减低区块空间压力。 3. 轻量钱包可以变得更轻量,因为它们无需再接收见证数据。 4. 可以大幅改善签署结构。在区块链上,曾经有一个超过5000个输入的交易,因为签署设计缺憾,需要半分钟才能完成检查。在建议中的SW软分叉会把这个问题解决掉。 而在该次软分叉完成後,核心开发者们已有计划进一步完善整个系统的可用性和安全性: 1. 全节点可以为轻量钱包提供很简洁的证明,以检查交易是否合法。以後的节点就不再局限於完全验证和完全不验证,而是可以按个人的资源作部份验证,也就是说一台手机也可以参与保障系统安全。这可以大为降低系统对全节点的依赖,即使以後区块容量提升了,我们仍能保持安全。 2. 将会推出全新的交易脚本语言,例如可以把数以千计的不同脚本通过MAST技术压缩至只有32字节;亦可以把不同签署合并检查,令检查交易的速度再以倍数上升。 事後孔明地说,其实比特币一开始就应该是要隔离见证。以上的计划,是核心开发者们在过去数年对系统的了解日增而得到的成果。SW的测试网已在2015年12月开始运作,本人也有参与第一手测试,对2016年4月推出的目标感到乐观。实行SW将是比特币技术的一大飞跃,希望中国币圈的各位能多加关注和支持。 在另一篇文章,本人会再解释硬分叉和软分叉的利弊。 参考: 四份有关隔离见证的比特币改善方案: 1. 隔离见证软分叉 https://github.com/CodeShark/bips/blob/segwit/bip-codeshark-jl2012-segwit.mediawiki 2. 隔离见证通信层 https://github.com/CodeShark/bips/blob/segwit_peer_services/bip-codeshark-segwit-peer-services.mediawiki 3. 隔离见证交易地址 https://github.com/jl2012/bips/blob/segwit-address/bip-segwitaddress.mediawiki 4. 隔离见证签署检查 https://github.com/jl2012/bips/blob/segwit-checksig/bip-segwit-checksig.mediawiki 系统扩展常见问题解答: https://bitcoin.org/zh_CN/bitcoin-core/capacity-increases-faq 需要30秒检查的交易: https://blockchain.info/tx/bb41a757f405890fb0f5856228e23b715702d714d59bf2b1feb70d8b2b4e3e08 —- 文章来源:http://www.8btc.com/segregated-witness 编译者/作者:Johnson Lau 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
隔离见证是什麽? 为什麽我们必须尽快实行?
2016-01-07 Johnson Lau 来源:巴比特
- 上一篇:比特币在结算领域受到关注
- 下一篇:比特币的价值:教你的孩子懂得经济责任
LOADING...
相关阅读:
- #twitterhacked:Andreas和Crypto Twitter在最近的Twitter Hack中捍卫比特币2020-07-16
- BitPay增加了对SegWit的支持2020-07-03
- 经过多年的抵抗,BitPay采用SegWit进行更便宜的比特币交易2020-07-02
- 小乔和你聊聊区块链的事儿(680)2020-06-13
- 区块链传播技术2020-06-09