简单的量子抗性签名和清晰的升级路径

作者:Matt Corallo

来源:https://groups.google.com/g/bitcoindev/c/8O857bRSVV8/m/4cM-7pf4AgAJ

原帖发表于 2024 年 12 月 16 日。

关于在比特币交易的签名方案中实现量子计算抗性,过去几年已经出现了一些粗略的想法,但其中不少想法都有几个重大缺陷。

首先,我们确定几个基础假设:

(a)能够打破椭圆曲线的量子计算机,还要很长时间才能开发出来(可能需要十年甚至二十年,而不是仅仅几年)。这跟 NSA(美国国家安全局)以及其他机构的建议是一致的。我们是有时间来升级的,但我们可以考虑一个选项:在今天就为钱包软件设计一个应对量子计算的安全层。

(b)这是完全有可能的:出现根本性的扩容约束,使得能够打破椭圆曲线的量子计算机永远不会出现。我们也许不想赌这种可能性,但这是有可能的。

(c)在攻破椭圆曲线的量子计算就绪之前,我们会发现一些显著的警告 —— 量子计算机的开发需要大量资源,多到世界上只有少数几个组织能够负担得起人才和实验室的开销。这种类型的开发工作,已经并且很可能会随着进展出现而发布公告,所以即使量子计算机越来越接近现实,我们也会提前几年获得警告。

(d)目前的后量子密码学的安全性假设(比如格密码学以及 “Supersingular Elliptic Curve Isogeny”)都不足以保护今天的钱币,而且对于比特币的共识来说是糟糕的候选者(鉴于未来的密码学研究的可能性)。这就意味着,在当下,比特币后量子签名安全性的唯一候选就是基于哈希函数的签名(基本上就是 SPHINCS/SPHINCS+)。

(e)不值得为此而等待加入 OP_CAT 或其它更加通用的脚本操作码,因为这些项目似乎都深陷泥潭,就不用提围绕 MEVil(恶意的矿工可抽取价值)和比特币未来的种种疑问了。此外,使用专门的操作码,可以简化钱包软件的采用步骤 —— 钱包软件开发者们是在为一种不会立即推向用户的特性付出额外的工作,这已经够麻烦的了。

给定这些假设,让钱包软件从 今天 开始就将资金锁定到特殊的地址、支付额外的手续费并留下区块链足迹来获得后量子安全性,似乎是没道理的。但与此同时,考虑到比特币的升级周期耗时,不为钱包软件提供一些 “紧急通道” 选项,似乎也是不明智的。

幸运的是,taproot 提供了一种开发这样的方案的好办法!因为 taproot 的脚本路径花费(script-path spend)是严格受到约束的(taproot 脚本路径的哈希值 t 中承诺了该 taproot 地址的内部公钥),未来的量子计算机可以计算出(内部公钥的)私钥,也能知道脚本路径的默克尔根值,却无法伪造出脚本路径的另一个默克尔根。

这为抗量子安全性提供了一个切入点:在直接加入一种 OP_SPHINCS 操作码来验证 SPHINCS(或者等价的抗量子非一次性签名,Lamport/Winternitz 签名就不行)(就像今天的 OP_CHECKSIG)之后,钱包只需要总是包含一个替代性的脚本路径花费条件来构造 taproot 输出,就能获得紧急通道了。当量子计算机问世时,taproot 的密钥路径花费可以通过软分叉来禁用,迫使钱币使用量子安全的脚本路径来花费。

这个方案显然存在一个大缺点:未升级的地址中的资金在量子计算机问世时会被 “没收”,但是:

(a)我们可以要求显式选择这个方案。这样做有个缺点就是会留下另一种链上踪迹,而且需要一种新的脚本公钥格式(可以保留现有的 bech32m 地址编码格式,估计绝大部分钱包都已经支持了,不需要变更任何代码)。当然,如果我们作出这样的要求,许多本来不太可能被花费的比特币也会转移,可能导致流通量冲击,以另一种方式伤害比特币的效用;

(b)或者,我们可以允许密钥路径花费,前提是钱包证明其脚本路径是一个 NUMS 点(无人知晓私钥的公钥)(通过一些新的 密钥路径 + 证据 的花费操作变种)。我怀疑今天的许多钱包都不会费心为它们的 taproot 输出公钥承诺一个 NUMS 点,所以这可能会打破现有的钱包软件,但这可以作为一种自选退出(opt-out)的方案。

这种方案有一个非常好的属性:几乎完全不会影响现有的用法(只需要加入一个额外的 taproot 脚本花费分支,但这总的来说不是什么很难的事)。

这里还有一些问题需要讨论:首先,是要求用户自选进入呢,还是提供自选退出的选项呢?其次,是否也要让所有触发 ECDSA 签名验证的脚本路径花费失败?(真的有可能哦。)

我猜这个想法在别的地方已经有人说过了,但我没找到。这其中绝大部分想法都来自 not_nothingmuch,我只是把它写下来,冒领荣誉而已。

这个想法没有解决 PoW 在一个量子计算机出现后的世界中如何存在的问题,但在我们看到量子计算机的更多实际的局限性(比如,一个量子计算机门电路的最小延迟是多少)之前,这个问题可能是无法回答的。如果这个延迟非常低,我们能否增加比特币的 PoW 哈希函数的复杂性、从而推迟量子计算机算出结果的时间、让传统的硬件还能挖出区块?

Luke Dashjr 回复:

只补充一个点:这种抗量子脚本路径不需要软分叉来添加,只要它有完整的定义。也就是说,只要其规范敲定了,钱包软件可以立即开始实现这种后备路径,无需等待 任何 软分叉激活。这将需要保护这个后量子脚本,就像它自身是一个私钥一样,所以对硬件签名器来说可能是个问题,但我怀疑也有办法能够解决 ……

Matt Corallo 2026-03-19
https://www.btcstudy.org/2026/03/19/trivial-qc-signatures-with-clean-upgrade-path/

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇