比特币交易中的“隔离见证”地址
一、隔离见证的背景须知:
中本聪在设计比特币的时候,规定了每个区块的容量大小不能超过1M,而1M的空间容量所能记录的交易笔数极为有限。在最早期,每个区块1M的容量尚足以应付小众市场的交易量,但当后期比特币玩家激增后,就变得尤为拥堵。
比如,数据统计,比特币网络每十分钟更新一次新区块,受制于1M的容量,每个区块中包含的交易数最多不超过几十笔。目前,比特币平均每秒能处理7次交易。因此,特殊情况下,比特币区块链上最高时有上万笔交易积压,比特币转账交易费高达几十美元。网络拥堵时,比特币交易甚至需要花费好几天才能被打包。
因此,加密圈用户迫切地需要一种高效的技术方案,来解决比特币交易处理速度慢的问题。更直白来说,就是让大家的比特币到账速度更快,以及交易手续费(支付矿工的费用)更低。当然,这一切也直指比特币网络扩容问题。
二、隔离见证的大致思路:
隔离见证技术,是由比特币开发者Pieter Wuille和其他比特币核心贡献者于2015年提出的,旨在解决交易处理速度问题的解决方案。在随后的2017年,隔离见证被正式用于比特币网络上的软分叉中,比特币单个区块的信息处理能力也由此提高至以前的1.7倍。目前,比特币、莱特币和比特币现金这三大主流币种,都已经开始采用了隔离见证。采用隔离见证带来的利好主要有拓展区块容量、提升交易速度,以及优化交易的延展性。下面,先大致介绍下隔离见证的技术原理和实现思路。
专业玩家都知道,在比特币的每笔交易信息分为两个部分:基础交易数据+见证数据,前者记录账户资金结余,后者是验证用户身份。对于用户而言,最关心的是账户资金结余等事关资产的核心信息,验证用户身份环节无需在交易中占据过多成本。简单来说,转账接收方只需要确认资产可用,无需明了发起方详细信息。但是,在比特币交易结构中,见证数据,也就是签名信息占用了大量的存储空间,进而耽误了转账效率、增加了打包成本。隔离见证技术,就是将见证数据从交易信息中提出来单独存储,为交易“腾出空间、拓宽通道”。
三、隔离见证的主要优势:
1.增加区块容量:
数据统计,签名信息在比特币交易区块中最多可以占用65%的空间。可想而知,采用隔离见证之后,原有的区块存储空间将得以释放,进而可以处理更多的交易信息。
2.加快交易速率:
与以太坊Layer2的思路相通,将数据分层处理,以达到提高交易速率的目的。采用隔离见证后,比特币交易系统会将更多的算力、更大的存储,集中于交易信息的处理上,相较于之前的负担大大减轻,TPS从理论上来看只增不减。数据显示,采用隔离见证之后,平均每笔交易的成本降至1美元。
3.利好闪电网络:
闪电网络是讨论度最高的比特币二层协议扩容解决方案,设计主旨是链下解决比特币的可扩展性问题。闪电网络试图在比特币区块链上新建一层网络,同时架设一条支付通道,使得在任何极端情况下,大额的转账交易均能快速通畅地完成,这就可以理解为链下数据处理。而隔离见证在链上将优先级最高的数据快速处理,
为闪电网络的执行纾解了大量的压力,其实也间接地为闪电网络创造了条件。
值得一提的是,隔离见证的技术架构下,交易数据和签名数据完全剥离,整个交易处理系统中,用户的签名数据也是被排除在外的,因此就不存在交易信息被篡改的可能性,进而一键消除错误信息被永远记录在链上的可能性。对于交易信息修复程序的拓展和应用,也有积极的助益。
此外,隔离见证也被视为 Ordinals BTC NFT的第一个先兆,扩大了可以在交易中放置多少任意数据的限制,从而为在比特币每个聪上篆刻铭文提供了前提条件。2021年,Taproot创建了更容易存储任意见证数据的系统,并继续对一个比特币交易中放置数据限制进行了拓展,从而让今天存在的 BTC Ordinals NFT 诞生实现。
四、隔离见证的具体应用:
对于普通用户来说,隔离见证技术带来的利好主要有三点:
1)更安全,较普通地址而言,具有更高的安全性;2)更快速,可扩容区块容量,检查交易速度更快;3)更便宜,交易手续费比普通钱包地址更低廉。
那么,这一技术如何运用到普通用户身上呢?请打开你的钱包,如果采用隔离钱包地址完成接受比特币转账,上述利好是可以切切实实享受到的。2020年8月底的一组数据显示,比特币的隔离见证使用率已达67%,目前的数据必然上了一个更高的台阶。
目前来看,比特币的地址格式主要分为4个类型:
1.Legacy(P2PKH)格式(以1开头的地址)— 传统地址
范例:1Fh7ajXabJBpZPZw8bjD3QU4CuQ3pRty9u
比特币最初的地址格式,至今仍在使用。P2PKH 指 Pay To PubKey Hash(付款至公钥哈希)。
2.Nested(P2SH)格式(部分以3开头的地址)— 多签地址
范例:3EktnHQD7RiAE6uzMj2ZifT9YgRrkSgzQX
P2SH (Pay-to-Script-Hash),支付脚本哈希,即比特币交易输入输出脚本,采用赎回脚本及赎回脚本哈希。其地址结构类似于 P2PKH,但它支持比传统地址更复杂的功能。P2SH 脚本函数最常用于 multisig 地址,这些地址可以指定多重数字签名来授权事务。举个例子:某个3开头的地址由三人控制,其中,任意两人同意,便可发起转账。
上述两种地址,都是传统的交易转账地址,并未采用隔离见证技术。下面介绍两种主流的隔离见证地址。
3.Nested SegWit (P2SH)格式(部分以3开头的地址)— 隔离见证兼容地址
范例:3KF9nXowQ4asSGxRRzeiTpDjMuwM2nypAN
3开头的地址:因为使用 P2SH 方式打包,所以隔离见证兼容地址,也以3开头,旧节点能识别。
大家不需要知道以3开头的比特币地址,到底是多签地址,还是隔离见证兼容地址,只需要知道以3 开头的地址,被广泛支持,可以向 1开头 和 bc1 开头的地址发送比特币即可。
4.Native SegWit (Bech32)格式(地址bc1开头)— 原生隔离见证地址
范例:bc1qf3uwcxaz779nxedw0wry89v9cjh9w2xylnmqc3
Bech32编码的地址,是专为SegWit开发的地址格式。Bech32在2017年底在BIP173被定义,该格式的主要特点之一是它不区分大小写(地址中只包含0-9,az),因此在输入时可有效避免混淆且更加易读。
由于地址中需要的字符更少,地址使用Base32编码而不是传统的Base58,计算更方便、高效。数据可以更紧密地存储在二维码中。Bech32提供更高的安全性,更好地优化校验和错误检测代码,将出现无效地址的机会降到最低。
Bech32地址本身与SegWit兼容。不需要额外的空间来将SegWit地址放入P2SH地址,因此使用Bech32格式地址,手续费会更低。
Bech32地址比旧的Base58(Base58Check编码用于将比特币中的字节数组编码为人类可编码的字符串)地址有几个优点:
QR码更小、更好地防错、更加安全、不区分大小写, 只由小写字母组成,所以在阅读输入和理解时更容易。
5. Native P2WPKH / Native P2WSH(Bech32)格式(地址 bc1q开头)— 原生隔离见证地址
Native P2WPKH 范例:bc1qmgjswfb6eXcmuJgLxvMxAo1tth2QCyyPYt8shz
Native P2WSH 范例:bc1q09zjqeetautmyzrxn9d2pu5c5glv6zcmj3qx5axrltslu90p88pqykxdv4wj
对于版本 0 的隔离见证地址,它们总是以 bc1q 开头
Pay-to-Witness-Public-Key-Hash(P2WPKH)地址的生成, P2WPKH 地址长度固定为 42 字符
Pay-to-Witness-Script-Hash(P2WSH)地址, P2WSH 地址长度固定为 62 字符
P2WPKH 通常用在普通的地址上,P2WSH 通常用在多签地址中。
2019 年,人们发现如果一个 bech32 地址的最后一个字符是 P,如果意外在后面多输入了一个或几个 Q,依然能通过校验和验证,也不会收到输入错误的提示。钱包软件会认为地址输入正确,任由将比特币发送至错误地址,导致这笔比特币无法被花费,就像我们在上文解释的那样。
好消息是bech32 只用于 SegWit,而 SegWit 地址有长度限制 —— 只能是 20 个字节或 32 个字节。幸运的是,如果在长度为 20 或 32 字节的地址后面多输了一个 Q,输入的地址就会因为超出长度限制而无效。钱包会发现这个问题,并拒绝发送比特币。人们原本考虑针对 Taproot 引入类似的地址长度限制,但是下文提到的解决方案免去了这一需求。灵活的地址长度更有助于我们未来改进 Taproot。
6.P2TR(Bech32m)格式(地址bc1p开头)——Taproot地址
范例:bc1pqs7w62shf5ee3qz5jaywle85jmg8suehwhOawnqxevre9k7zvqdz2mOn
为了修复 bech32 的漏洞,有人提议了一个叫作 bech32m 的新标准(9)。bech32m 实际上是非常简单的改变:在 bech32 校验和公式中额外添加了一个数字,以确保任何新增字符都会生成无效校验和。 这个新标准只应用于 Taproot 地址和未来地址。对于 SegWit 地址来说,一切都没有改变,因为它们已经有了 20 或 32 字节长度限制的保护。
为了缓解 Bech32 的上述缺点,在 BIP0350 中提出了 Bech32m 地址:
对于版本为 0 的原生隔离见证地址,使用以前的 Bech32;
对于版本为 1(或者更高)的原生隔离见证地址,则使用新的 Bech32m。
对于 Bech32m 地址,当版本为 1 时,它们总是以 bc1p 开头(即 Taproot 地址)。
最后,不同地址间更细微的差别,还体现在以下方面:
1)隔离见证兼容地址(部分3开头)比传统地址(1开头)节省24%转账手续费;
2)原生隔离见证地址(bc1开头)比传统地址(1开头)节省35%转账手续费;
3)隔离见证地址(bc1开头和部分3开头)比多签地址(部分3开头),最多可以节省 70% 转账手续费。
4)Taproot地址,支持BTC NFT持有和Ordinals NFT打新,转账手续费类似3开头
目前,欧易平台重磅推出的欧易web3钱包已支持用户在转账和充值时,使用隔离见证地址,以优化使用体验、降低使用费率、提高转账速度。同时,欧易web3钱包也已全面支持了Ordinals BRC-20和 BTC NFT所依赖的Taproot 地址,您可在欧易web3钱包尽享 BTC 生态。
© 2024 OKX. This article may be reproduced or distributed in its entirety, or excerpts of 100 words or less of this article may be used, provided such use is non-commercial. Any reproduction or distribution of the entire article must also prominently state: “This article is © 2024 OKX and is used with permission.” Permitted excerpts must cite to the name of the article and include attribution, for example “Article Name, [author name if applicable], © 2024 OKX.” No derivative works or other uses of this article are permitted.
Information about: digital currency exchange services is prepared by OKX Australia Pty Ltd (ABN 22 636 269 040); derivatives and margin by OKX Australia Financial Pty Ltd (ABN 14 145 724 509, AFSL 379035) and is only intended for wholesale clients (within the meaning of the Corporations Act 2001 (Cth)); and other products and services by the relevant OKX entities which offer them (see Terms of Service). Information is general in nature and should not be taken as investment advice, personal recommendation or an offer of (or solicitation to) buy any crypto or related products. You should do your own research and obtain professional advice, including to ensure you understand the risks associated with these products, before you make a decision about them. Past performance is not indicative of future performance - never risk more than you are prepared to lose. Read our Terms of ServiceTerms of Serviceand Risk Disclosure Statement for more information.