01什么是Taproot?
Taproot 可通过输出密钥的签名花费 P2TR,或证明并满足一个脚本分支。BIP 340 定义 Schnorr,BIP 341 定义 Taproot,BIP 342 定义 Tapscript。
02Key path 与 script path
Key path 通常提供一个 Schnorr 签名,不透露是否存在其他脚本选项。Script path 公开执行的脚本、输入数据及证明其属于承诺树的 control block。无需公开其他脚本,但已展示分支和证明结构仍携带信息。 [BIP 341: Taproot]
03聚合不是自动的
多方可通过合适的签名协议协作生成一个密钥和签名。Taproot 自身不会合并所有交易输入,也不会将任意 multisig 自动变成一个签名。协调、nonce 管理和正确实现签名协议仍至关重要。 [BIP 340: Schnorr signatures]
04输出透露什么
P2TR 是带 32 字节程序的原生 witness 版本 1,主网通常编码为 bc1p Bech32m 地址。金额和所花费输出之间的联系仍公开。节省取决于路径和证明大小;地址本身不保证匿名或最低手续费。 [BIP 350: Bech32m]
↗结合上下文阅读
要获得更完整的理解,请将本词条与以下词条结合阅读: SegWit, 私钥, 交易, Lightning Network. 反向关联还来自: SegWit, Lightning Network, 密码学哈希, SHA-256.