撰文:李画、安比实验室创始人郭宇
校正:郭宇
来源:链闻
每次有量子计算的新闻出现时,人们都要担心一次比特币。原因很简单,比特币是基于密码学的,而密码学之所以能够成立,是基于某种计算上的不可能性。如果量子计算把原本不可能或难以实现的计算变成可以计算,那么这种密码学的方法就会失效。
但这种担心是多余的。原因同样简单:我们只要有量子计算也无法完成的计算,不就可以吗?以这种计算为基础构建的密码学方法,量子计算也就无法破解,然后把比特币升级到该密码学方法之下即可。
「格困难问题」就是典型的代表,即便对于量子计算,它也保持着计算上的不可能性。基于人类的「无知」,我们很大程度上总可以找到方法生活在密码学的保护之下。
比特币中的密码算法
我们知道比特币钱包地址对应一个公钥和一个私钥,只有拥有私钥才能动用该钱包中的比特币,但私钥是安全的,它无法通过钱包地址或公钥被计算出来。
这是如何实现的?让我们从台球厅开始。
你去台球厅打台球,把一个球放在台球桌底边的一个位置上,就叫它A点,然后你把这个球打出去,假设你击球的力气超级大,那么球从A点出发,总会撞到台球桌某条边上的一个点,然后又会从该点弹到台球桌另一条边上的另一个点……它可能这样弹了B次,最后停在了台球桌某条边的一个点上,就叫它C点。
IMF:如果设计良好,CBDC可以增强金融包容性:金色财经报道,国际货币基金组织(IMF)总裁已经认识到中央银行数字货币(CBDC)在提高金融包容性以及使跨境支付和汇款更便宜、更快捷方面可以发挥的作用。这些言论是国际货币基金组织总裁Kristalina Georgieva表示,尽管CBDC可以提高跨境支付的效率、促进竞争并提高透明度,但如果设计不当,它们可能会导致金融稳定风险、数据隐私和法律挑战。[2023/7/2 22:12:37]
这时候你的朋友来了,他能看见台球在C点的位置,你告诉他这个球最初的位置A点和击球的角度,问他这个球中间弹了多少次,也就是B是多少?你的朋友应该一时回答不上来。
这就是一个简单的公、私钥生成算法,C是公钥,B是私钥。在我们知道A点和B次弹跳的情况下,是能得到C点的;但如果我们只知道A点和C点,是很难算出弹跳次数B的。
在真正的密码学中,台球桌的边被换成了椭圆曲线,A是椭圆曲线上一个固定的点,它击打自己,球在椭圆群里撞来撞去撞了B次,最后落在了椭圆群的一个点上,还要对该点再做一次映射,有了椭圆群上的一个点C。C是公钥,B是私钥。
这就是著名的椭圆曲线算法,被用于生成公钥、私钥,是比特币系统中的第一个密码学方法。
椭圆曲线算法难以被破解,但并非不能被破解,足够强大的量子计算可以找到多项式算法,通过A和C计算出B,也就是可以通过公钥算出私钥。所以,如果真的进入到量子计算时代,椭圆曲线算法是需要被新的抗量子计算的算法替换的。
CryptoQuant CEO:如果购买力持续来源于稳定币,将对牛市不利:CryptoQuant首席执行官Ki Young Ju发推称,如果购买力持续来源于稳定币,将对牛市不利。如果是这样,那么一旦该交易所的稳定币储备耗尽,一切就结束了。[2021/3/15 18:44:13]
量子计算与椭圆曲线算法
比特币采用的椭圆曲线数字签名算法的安全性是2^128。这是个天文数字。
在量子计算的情况下,使用PeterShor提出的Shor算法,它攻击椭圆曲线的复杂度大概是O(log(N)^3),对于比特币而言,理论上的计算量级是128^3次。
相关论文研究显示,构造一个攻击secp256-k1曲线的量子计算机,假设该计算机能把比特错误率降低到10^-4,那么有希望在使用170万个量子比特的情况下,在7天之内完成计算。
在比特币系统中,还有另一个密码学方法,哈希函数SHA-256,它被用于生成与公钥对应的钱包地址。该算法很好理解,就是把一个输入以一种不可逆的方式转换成一个输出,它有非常强的单向性,想通过输出来计算输入是不可能的。
因此,哈希函数只能通过暴力的方式破解,也就是变换输入值一次次去试,直到可以用某个输入值算出目标输出值。
黄金支持者:人们如果不再投机比特币 它会一文不值:黄金支持者Peter Schiff发推称,香烟在监狱里是钱,因为大部分犯人都吸烟,而且香烟很难买到。它们珍贵而稀有。但如果监狱里的每个人都戒烟,香烟尽管很稀少,但毫无价值。如果人们不再投机比特币,它也会一文不值。[2020/4/14]
相较于经典计算机,量子计算机在暴力搜索上具有可观的优势,不过仍然是一种多项式级别的性能优化,我们可以通过加倍安全位数,比如采用SHA-512来维持安全性。
比特币钱包地址是公钥经过两次哈希计算得到的,一次是?SHA-256,一次是RIPEMD-160,量子计算很难攻破两道哈希关口,通过钱包地址「撞」出公钥。量子计算与SHA-256目前在量子算法里可以加速计算SHA-256的是LovGrover在1996年提出来的Grover算法,它可以将暴力搜索的性能提高到平方倍。假设我们要在一个N×N的巨大方格里寻找一根针,经典计算机需要逐一搜索每一个方格,最坏情况下需要搜索N×N次;但Grover算法即使是在最坏的情况下也只需要搜索N次。总结一下:比特币中有两种基础密码算法,一是椭圆曲线算法,一是哈希函数SHA-256。目前能够找到前者的高效量子计算方法,实现破解;但并没有找到后者的高效量子计算方法。当然,破解的前提是量子计算真的发展到足够强大,要知道,谷歌最新的量子芯片只有54个量子比特。
声音 | SEC主席:如果想用数字资产为项目筹资并且获益,则很像是证券:金色财经直播报道,美众议院金融服务委员会与SEC主席及委员小组听证会正在进行中。美国国会议员Partick McHenry提问称,根据SEC目前对Libra项目的分析,Libra只是一个概念,只是一个白皮书,你们觉得Libra是证券吗?对此,SEC主席Jay Clayton表示,我不会现在这里就Libra是否是证券做决定,得根据资产如何运作而决定。如果你想用数字资产为一个项目筹集资金并且获得收益,那么这听上去很像是证券。[2019/9/25]
我们的比特币安全吗?
如果进入到量子计算时代,我们只需要用抗量子计算的密码学算法生成公钥、私钥、钱包地址即可。但假如用户未能升级公钥私钥,他们钱包中的比特币是否就一定会被窃取?答案是否定的。
大致有如下几种情况:
1.如果钱包地址中的比特币从未被使用过,那么该地址的公钥是不被人知晓的,其他人所知道的只有钱包地址。如前文所述,SHA-256是难以被量子计算破解的,这意味着其他人是无法通过钱包地址算出公钥的。所以,即使可以通过公钥算出私钥,那些没有暴露过公钥的钱包地址也是安全的。
2.如果有好的比特币使用习惯,一个钱包地址只使用一次,那么同理,新地址的公钥也是不被人知晓的,新地址中的比特币是安全的。
声音 | 美国税务律师:如果将比特币转移到生前信托,通常不需要单独缴税:据CoinDesk消息,税务律师Robert W. Wood称,美国国税局将比特币和其他加密货币视为财产。这意味着每笔财产转让都可能引发税收,对接受者和转让者都造成税收冲击。关键问题是转让时的市场价值。一些加密投资者将加密放在公司、有限责任公司或合伙企业等法律实体。另一途径是持有加密资产的信托。 在北卡罗来纳州税收部诉Kimberley Rice Kaestner 1992年家庭信托案中,美国最高法院一致表示,若没有最低限度接触,一个州不能对州外居民的信托收入征税。 我们应该注意到信托可根据其类型以不同方式征税。人们常使用生前信托进行房地产规划,但生前信托不单独征税。如果你将比特币转移到生前信托,通常不需要为此缴税。因为生前信托并非独立纳税人,你仍然在个人纳税申报表上报告以后出售的收益或损失。也有非授予人信托,转让人不会因其被征税。这些是单独征税的,且必须提交单独的信托纳税申报表。信托税规则可能很复杂,这意味着信托本身要缴税。对受益人分配可征收另一种税。信托公司在哪纳税需要看情况。有些信托是外国的,这些规则很复杂,但是如果你是美国人,不应该假设你可以通过外国信托来逃避美国税收。[2019/7/6]
3.如果用户重复使用一个钱包地址,那么该地址对应的公钥就处于暴露状态;如果量子计算破解了椭圆曲线算法,那么该地址中的比特币就面临被窃取的危险。
据统计截止到当前,有将近500万个比特币是存放于公钥暴露的地址中的,此外还有将近177万个比特币使用的是P2PK地址,这是最早期的比特币账户格式,公钥是公开的,其中就包括被认为是中本聪的账户。如果这些比特币不更换地址,它们是在量子计算攻击范围内的。
除了钱包地址,在比特币系统中还有一个重要的地方使用到了SHA-256,那就是挖矿。挖矿就是暴力破解哈希函数的过程,通过调整输入值「撞」出落在目标区间的输出值。
如前文所述,从理论上讲,量子计算机芯片在暴力搜索时是可以「碾压」经典计算机芯片的,但我们同样需要考虑到它的技术发展水平和芯片制作工艺。此外,芯片本就是随着技术的发展不断升级的,量子计算对挖矿的影响更多的是芯片升级的经济问题,而不是安全问题。
量子计算下的安全:格密码
在量子计算发展的同时,量子安全密码学也在飞速发展,这其中最具代表性的是「格密码」,它是基于格的密码体制。
「格」是一个系数为整数的向量空间,可以把它理解成一个高维度空间,它有两个基本的「格困难问题」,一是最短向量问题,一是最近向量问题,求解这类问题需要指数时间的复杂度,那么如果因子为多项式,这类问题就不存在多项式时间算法,对于量子计算也是一种计算上的不可能性。
这听起来有些抽象,也许可以这么去理解:用笔在一张A4纸上画出很多黑色的点,然后换支笔在纸上画下一个红色的点,我们需要做的是找到距离红点最近的黑点,这很容易;现在从A4纸这个二维空间到一个三维空间,想象一下空间里漂浮着很多黑色的点,这时放一个红色的点进去,同样是去找距离红点最近的黑点,这并不算很难,但相对于二维空间,其困难度已经不在一个级别了。
现在,我们把三维空间变成一个三百维的空间,给定一个红点去找距离它最近的黑点,这个黑点一定存在,但想想看,找出它是不是几乎不可能?这就是格困难问题。
格空间与椭圆曲线是相似的。在椭圆曲线上,可以有数学公式把公钥和私钥放在一个等式的两头,在格空间里,也有数学公式可以把类似黑点和红点的东西放在一个等式的两头,那么我们就可以利用这类公式来生成公钥和私钥。
在椭圆曲线算法中,因为「离散对数困难问题」,传统计算机无法通过公钥计算出私钥;在格密码的算法中,因为「格困难问题」,量子计算机也无法通过公钥算出私钥。
格密码发展很快,基于格我们不仅有抗量子计算的公钥和私钥,还有抗量子计算的对应于经典密码概念的一系列密码学算法或协议,它们可以被用于数字签名、密钥交换、零知识证明等等应用领域。
宇宙相信加密。加密容易,解密难。」
在可以预见的未来,依然如此。所以,不用担心,对于比特币是这样,对于区块链也是。参考资料
Arute,Frank,KunalArya,RyanBabbush,DaveBacon,JosephC.Bardin,RamiBarends,RupakBiswasetal."Quantumsupremacyusingaprogrammablesuperconductingprocessor."?Nature?574,no.7779(2019):505-510.
AndreasM.Antonopoulos答疑量子计算问题:www.youtube.com/watch?v=eo7mwcsUbdo;www.youtube.com/watch?v=wlzJyp3Qm7s
Gentry,Craig."Fullyhomomorphicencryptionusingideallattices."In?Stoc,vol.9,no.2009,pp.169-178.2009.
Aggarwal,Divesh,GavinK.Brennen,TroyLee,MiklosSantha,andMarcoTomamichel."QuantumattacksonBitcoin,andhowtoprotectagainstthem."?arXivpreprintarXiv:1710.10377?(2017).
Stewart,I.,D.Ilie,AlexeiZamyatin,SamWerner,M.F.Torshizi,andWilliamJ.Knottenbelt."Committingtoquantumresistance:aslowdefenceforBitcoinagainstafastquantumcomputingattack."?RoyalSocietyopenscience?5,no.6(2018):180410.
Regev,Oded."Lattice-basedcryptography."InAnnualInternationalCryptologyConference,pp.131-141.Springer,Berlin,Heidelberg,2006.
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。