Schnorr 签名初探:比特币效率革命与新世代多重签名

·

隔离见证(SegWit)之后,比特币社区眼巴巴等来了下一个重头戏:Schnorr 签名。它能把多重签名体积缩小、验证提速、隐私提升,是比特币迈向更高可扩展性的关键一步。下文将带你用最通俗的语言快速认识它。

Schnorr 签名到底是什么?

一句话:一种既省空间又省时间的数字签名算法。
它的名字源自 1991 年 Claus Schnorr 申请、2008 年到期的同名专利。到期后即可免费使用,比特币开发者因此开始动手将其实装到链上。

为什么非得换 ECDSA?

👉 揭秘曲线 secp256k1 的神秘力量

Schnorr 签名摘要流程

  1. 私钥 xG 得公钥 P = x·G
  2. 每次签名随机选一个临时数 k,计算 R = k·G
  3. 对消息 m 计算 e = H(R ‖ P ‖ m),得到哈希挑战值。
  4. 计算 s = k + e·x
  5. 签名即 (R, s),64 字节装得下全部内容。

验证见人给 (R, s, P) 时,节点只需要检查 s·G = R + H(R ‖ P ‖ m)·P 就能把签名真伪一次性打回原型。

Schnorr 的四大亮点

  1. 线性
    同一条消息下,可把两支私钥、两个随机数“一加”,变成一个统一签名。这样一次验证,代替原先逐个 ECDSA 校验,手续费立刻暴跌。
  2. 体积更小
    比特币原 DER 编码签名动辄 70–72 字节;Schnorr 固定 64 字节。千元级转账时挨个输入都能少几个字节,落到全网便少了数 MB。
  3. 防随机数重用
    相同随机数的安全事故在 ECDSA 史上已屡见不鲜;Schnorr 协议层面就明确了一签一数,自然堵死相关攻击面。
  4. 抗相关密钥差分攻击(related-key attacks)
    引入 P 参与哈希,防止黑客凭公钥微小改动就反求私钥。

多签新范式:MuSig 与 MuSig2

多重签名地址动辄 2-3 起步的公钥脚本,占到比特链上大量字节。Schnorr 给出的思路——密钥聚合(Key Aggregation)

原版 MuSig(三轮协议)

  1. 各参与者先广播对随机数的承诺。
  2. 各自揭露随机数,验证承诺。
  3. 统一计算聚合公钥,生成单行签名。

缺点是交互轮次多,在手机钱包环境略显笨重。

MuSig2(两轮协议)

Blockstream 团队 2020 年发布论文:把交互从三轮砍到两轮,速度、易用度同标升维。核心在引入一个不公开的预处理随机因子,让你我不必关心对手做了手脚,仍能安全聚合。升级版钱包已着手对接 MuSig2,未来普通用户即可一键生成 20-of-30 的“隐身”多重签。

👉 看看 MuSig2 的代码实验,亲手玩玩区块签名

最担心:Rogue Key Attack

简单说,黑客假装送你合法公钥,实际上藏着“造假”私钥,想在聚合后抽身而去。MuSig 系列早在协议里插入承诺/揭露流程,攻击者便没法在最后一刻修改自己的密钥,从根本上堵死此漏洞。

BCH 的先行示范

2019 年 5 月,BCH 率先在主网启用 Schnorr;同年 11 月直接把 OP_CHECKMULTISIG 打通,实现原生多签。至今官方已推送大量 demo。

FAQ:Schnorr 签名你最关心的问题

Q1:Schnorr 激活对现有钱包有何影响?
A:只会新增地址格式。老钱包继续收币发币,安全性不受影响;升级钱包才能享受到多签省字节的优势。

Q2:Schnorr 能否彻底杜绝链上分析?
A:能隐匿“这是几个人一起签的”细节,但输入金额、输出分布仍有迹可循,链条分析模型仍可行,只是更难。

Q3:个人用户需不需要手动切换签名算法?
A:坐等钱包更新即可,协议层自动调用 Schnorr;若你自建节点,也需升级至支持软分叉的新版本。

Q4:是不是 2025 就能看到所有交易所发币都用 Schnorr?
A:保守估计需 1–2 年,即便主链激活后,交易所、机构的钱包还需充分测试,观察无误才会全量应用。

Q5:MuSig 和 SMS(Simple Schnorr Multi-Signature)一样吗?
A:SMS 是论文名,核心思路即 MuSig 落地的雏形;MuSig2 则把交互轮次、计算量再做精简,更贴合实战。

Q6:使用 MuSig2 会不会失去“任意门限”灵活性?
A:不会。依然支持 m-of-n,只要公钥集合在共识层批齐备即可,并无限制。

写在最后

从 ECDSA 到 Schnorr,看似仅是算法替换,实则牵动整个比特币 UX、隐私、扩容三大维度——多签同时手续费暴跌,散户也能用 10 把钥匙看门;开发门槛更低,创新闪电网络、批量交易层出不穷。大幕刚拉开,下一轮提案就可能把 MuSig3FROST 带入舞台中央。至于Schnorr 签名何时登陆比特币主网,核心开发者正按照 BIP-9 推进软分叉投票,预计很快就有时间表。让我们拭目以待。