将多个参与者的签聚合成一个签,这使得多签交易看起来像是常规的P2PKH交易,保护了多重签参与者的隐私。对比之下,ECDSA 本身是不支持多重签,比特币现在是通过 P2SH 脚本来处理,但是 P2SH 类的脚本会向络暴露多签交易的存在并披露所有的签者。因此,使用 S 签,增强交易的隐私性,并节省解锁脚本内因多签带来的空间占用,节约宝贵的链上空间,现变相扩容。
0 MAST对交易脚本的隐私保护?
MAST(M A S T)由抽象语法树和 M 树发展而来,MAST 背后的技术允许我们将一个脚本分割成互斥的子集,而 M 树允许我们在不披露整个脚本的情况下验证单独的脚本子集属于一个完整的脚本。?
MAST 使用 M 树对脚本的互斥分支进行编码,这使复杂脚本条件可以通过隐藏未执行的分支脚本来提高隐私。具体表现为,用户支出时,只需披露相关脚本以及从该脚本通向默克树根的路径,用一个默克尔证明就能为执行的脚本提供证明。
以上面 A 的财产处理脚本为例子,上面指定的脚本不仅包括 A 的公钥(需要验证私钥的签),还包括 B 和 C 的公钥和一些条件逻辑,如超时。在当前的 BTC 络中,上述的所有数据和脚本被花费都都会记录在链上,因此每个人都可以跟踪到这笔 UTXO 的所有信息,这对于 A、B、C 的隐私来说是不好的消息。
引入 MAST 后,可以看到 MAST 树对该脚本的表示如下:
将其分解为两个子脚本,一个脚本是 A 能够随时花费这笔比特币,另一个脚本是个月后 A 的比特币还没有使用完,B 和 C 就可以考虑如何处理这笔比特币了。在际情况中,只会选择一个分支进行执行,而通过披露的单个分支,法确定 A 其他的子脚本有做什么动作,从而保护了 A 的隐私。
04 T升级下的用户的隐私?
T 本身是一次软分叉升级,在比特币客户端升级后还会兼容老的客户端,这对于比特币本身的发展和社区的凝聚都是强有力的。T 通过隐藏交易的全部脚本,同时使复杂交易与其他交易难以区分,增强了比特币络参与者的隐私性。对不使用复杂交易脚本的普通用户来说,这次 T 升级是接近感知的;但对开发者来说,钱包和服务必须升级对应的功能。随着越来越多的用户利用 T 的功能,其对效率和隐私的积极影响被放大。