当前位置:首页 > 资讯 >

保护信息安全:预防量子计算威胁的实用指南

  • 2024-12-21 11:20:05
  • 665

来源:刘教链

隔夜BTC大幅回撤,破位30日均线98.7k,暂至96k附近。宏观态势方面的原因,关注教链近期文章和内参的朋友应该心如明镜。一是前段时间借谷歌Willow量子计算机所渲染的恐慌。二是昨日凌晨美联储给出未来降息的负面预期。

关于量子计算威胁,教链在过去几年都反复讲过。最近谷歌Willow出来,教链也是第一时间就进行了拆解。

总而言之一句话:不必恐慌。现在量子计算机的进展距离实用还相当远,即便实用也不会首先和立即威胁到BTC,我们会有充足的时间应对。

不过,教链上述的结论是一个科学论断,而不是一种精神信仰。因此,在拒绝盲目恐慌、杞人忧天的同时,也要拒绝盲目乐观、亡羊补牢。

就像人类应对自然灾害,比如洪水。既不能像古代人那般恐惧于洪水,做出童男童女祭祀河神那般的荒唐事,也不能心存侥幸,大搞豆腐渣工程。

量子计算之于BTC,星际采矿之于黄金,就如洪水猛兽之于居民。不要怕,也不要躲,而是要科学面对,积极预防。

每次量子恐慌的时候就有一些人会跳出来鼓吹黄金。其实未来科技进步给黄金带来对潜在威胁,要比量子恐慌之于BTC大得多。毕竟,黄金是死的,而BTC是活的——BTC可以升级代码。

什么技术会摧毁黄金的价值?星际采矿。就在咱们太阳系内,距离地球约3.4-5.4亿公里左右的位于火星和木星的小行星带中,有一颗直径约226公里的小行星,它的名字叫做灵神星(16 Psyche)。这个灵神星上有大量贵金属。其中仅黄金储量据保守估计就有数千亿吨。

人类过去几千年总共从地球上开采了多少黄金呢?截至2024年,目前全球黄金存量大概也才20.8万吨。

今天,我们已经可以把祝融号送上火星了。你觉得距离我们能够去火木之间的小行星上开采黄金还需要多少年?

想象一下,数千亿吨的黄金被源源不断地运回地球,对现在少的可怜的20多万吨存量的稀缺性,是不是毁灭性的打击?

科技进步是非线性的。它会加速前进。

虽然我们估计,即便量子计算的水平能够以指数级进步,可能也需要10-20年才能具有实用性,从而对现存加密算法产生实质性威胁,但是,我们也不可以装作它不存在,晒太阳睡大觉白白浪费20年。

生于忧患,死于安乐。

听说Bitcoin core的一些开发者们已经在讨论量子威胁的现实性,以及可能的演进路线和技术应对了。

那么今天教链就抽点时间,和大家谈谈,作为个人BTC持有者,可以做那些具体的事情,来提前防范未来可能到来的量子计算威胁。以下内容可能有一点点技术,如果有看不懂的名词术语啥的,请自行上网搜索、学习。

防量子要点一:囤BTC只用P2PKH地址或P2WPKH地址,不用P2PK地址或P2TR地址。

形式上,P2PKH地址是1开头的BTC地址,P2WPKH地址是bc1q开头的BTC地址。而P2PK地址是04开头的地址,P2TR地址是bc1p开头的地址。

概念上,P2PKH地址是正宗中本聪命名的标准地址,P2WPKH地址是原生隔离见证地址(native segwit地址)。而P2PK是支付到公钥,P2TR则是taproot地址。

时间上,p2pk地址在2009年中本聪刚刚启动BTC网络的时候用过一段时间。后来大概到了2009年下半年,中本聪写好了p2pkh的代码,才全面切换到标准地址上去。而p2wpkh则是2017年8月24号BTC网络完成segwit即隔离见证升级后上线的。p2tr地址则在2021年11月份taproot升级之后引入。

技术上,p2pkh地址是ECDSA公钥外面套两层哈希,一层SHA256,一层ripemd160;p2wpkH地址是ECDSA公钥套SHA256套ripemd160后封装为隔离见证脚本然后用bech32编码生成。而p2pk地址是裸ECDSA公钥,p2tr地址则是Schnorr公钥的衍生公钥封装为taproot脚本然后用bech32m编码生成。

原理上,教链讲过,当未来量子计算实用后,有两个办法去攻击BTC持有人的所有权:第一个办法是攻击电子签名算法,如ECDSA公钥或Schnorr公钥,反推出你的私钥,从而偷走你的BTC;第二个办法是攻击哈希算法,如SHA256或ripemd160,反推出原像,从而偷走你的BTC。

攻击电子签名的量子算法叫做Shor算法。而攻击哈希的量子算法叫做Grover算法。

如果Shor算法达到实用水平,那么就可能秒破ECDSA或Schnorr签名。

而如果Grover算法达到实用水平,它却只能把原本攻击哈希的算力提升一个平方量级,也就是说,把攻击难度减少为平方根难度。比如,攻击一个足够好的SHA256哈希,难度是2^256,使用Grover算法可以降低到2^128,虽然小了不少,但是仍然很大。

也就是说,密码学哈希算法具有一定的量子抗性。

这就是教链防量子要点一的技术原因,确保自己只用不暴露公钥的p2pkh或p2wpkh地址,不用暴露公钥的p2pk或p2tr地址。

比特币史话》第四章“量子霸权”第13话“比特币地址”写道,「在 2010 年 7 月 25 日,有人在比特币社区论坛上讨论如果比特币所用的加密算法被攻破的问题,中本聪回复,“为了让比特币地址更短,它们采用公钥的哈希,而不是公钥”,这样一来,“支付到比特币地址的交易的安全性就只和哈希的安全性一样了”,“攻击者只需要攻破哈希函数,而不是椭圆曲线数字签名算法”。」

防量子要点二:避免地址重用,确保每个地址最多只使用(花费)一次。

请注意,BTC地址和银行账户不同,和很多主流公链(包括以太坊)的账户地址不同。以账户为中心的设计是围绕一个账户(体现为银行卡号或账户地址等),记录进账和出账。而BTC是以“币”为中心的设计,记录的是“币”在地址之间的流转。

具体什么UTXO之类的概念一说开篇幅太长,就不在这里展开了。

在BTC的这种设计下,“收款”,也就是用自己的地址接收别人转入的BTC,这不叫“使用”该地址。这种情况,你是被动的,什么都不用做。如果使用的是p2pkh或p2wpkh地址,那么无论你收款多少次,都是不会导致公钥暴露的。

而如果你要使用这个地址向外“付款”,也就是把地址里的BTC转给别人,这时候你就要拿出私钥、签署交易、广播上链,此时,你就是在“花费”该地址里的BTC,也就是真正“使用”了该地址。此时,你要主动行为,动用私钥。

而一旦你花费过一个地址里的BTC,公钥就对全世界暴露了,原本套在公钥外的哈希外壳的保护效果,也就失去了。

根据教链防量子要点一介绍过的知识,面对未来可能实用化的量子计算,公钥的脆弱性远大于哈希。因此,公钥一旦暴露,就意味着你在该地址里的BTC资产的量子风险暴露大大提高了。

这就是教链防量子要点二所要说的,一个囤饼地址,要么永远不动,要动就一次性转走所有的BTC,彻底清空地址,永不再用。

如此便可以极大降低你的BTC面对未来量子计算威胁时的风险,提高生存概率。

有个幽默的话说得是,当熊追来时,你不用跑得比熊快,只要跑得比同伴快就够了。

当未来某一天,量子计算真的已经威胁到那些比较脆弱的地址时,你还有充足的时间去把你的BTC资产安全地迁移到量子安全的新地址里。相信到那一天,BTC应该已经开发出新版本的抗量子地址了吧!

「为了获得更好的隐私性,一个比特币地址最好只用一次。」——中本聪,2009年11月25日。《比特币史话》第十九章第95话。

防量子要点三:不要等到最后一天再行动。

虽然量子计算还远,但是我们可以从今天就开始行动,按照教链防量子要点一、二,检查我们的囤饼地址,如果有不安全的地址类型,或者重用问题,那么就抓紧动手,把BTC迁移出来,把已经有风险的地址废弃掉吧。

有人根据目前的地址规模估计,如果每个人都把自己的BTC迁移到安全的地址,以目前BTC区块吞吐量,可能至少需要6个月的时间什么其他交易都不干全力处理这些迁移需求,才能够处理完成。

相信你不会想等到所有人都挤破头去迁移BTC的那么一天才开始动手吧。

千军万马过独木桥。链上手续费一定涨上天,令你酸爽得不要不要的。

趁着链上不拥堵的时候,未雨绸缪,防患未然,才是明智之举。

防量子要点四:关注BTC抗量子进展,并在适当时候将资产迁移至更安全的地址。

这一点就是面向未来的行动了。

讲完了。

至于别的链、别的资产,也没什么好讲的,地址重用、账户复用那都是日常基操,公钥暴露漫天飞舞,合约漏洞层出不穷,...... 还是算了。在长期价值存储(SoV)赛道,它们和BTC没有任何可以相提并论的地方。对于它们,与其担心10年、20年后的量子威胁,还不如担心一下眼前的rug pull或者钓鱼之类的更为现实一些呢。

微信二维码

微信