🤖
🤖
核心导读
Zcash生态团队Zakura计划为每笔经NEAR Intents的ZEC兑换生成独立查看密钥,避免未来量子计算机从公开退款地址反推共享查看密钥、串联用户支付历史。方案还以私有信息检索解决多密钥钱包恢复难题,并有望在Zcash一月抗量子支付目标前落地。
运行Zcash网络软件的一个较新版本Zakura,其背后的团队希望让每一笔通过NEAR Intents进行的ZEC兑换都拥有独立私钥。
根据该团队新发布的工程文章,这一改动将弥补一个缺口:未来量子计算机可能利用该缺口拼凑出用户的支付历史。
NEAR Intents是一项让用户跨不同区块链兑换代币的服务。当用户通过它将隐私ZEC兑换为USDC时,该服务会把用户的一个Zcash地址发布到NEAR公链上,以便知道应将未使用的ZEC退回到哪里。该地址在存款到账时即被公开,并会一直保留,即使兑换完成且无需退款也是如此。
这类地址在当今计算机上不会泄露信息。每个Zcash地址都带有一个由钱包查看密钥生成的公钥;查看密钥是钱包用来识别发给自己的付款的秘密,其生成采用单向椭圆曲线数学,类似保护比特币和以太坊钱包的机制。
普通计算机无法逆向运行这种数学运算,但足够大的量子计算机运行Shor算法——1994年发表、正是为此目的设计的方法——理论上可以从地址反推出密钥。
这正是悬在Satoshi时代比特币上的真实威胁,其公钥已经上链,任何人都可复制。上周,Google表示其Willow量子芯片已制造出此类攻击所需组件之一接近完美的版本,这是迈向足以尝试此类攻击的机器的一步。
能实现这一点的量子计算机可能仍需数年,且无人能确定其建造时间表,但全行业开发者正竞相解决这一问题。
Zcash的架构也带来了自身问题。一个Zcash钱包可以生成许多看似互不相关的地址,但它们通常共享一个查看密钥。
攻击者若从单个公开地址破解该密钥,就能关联账户曾收到的每一笔付款,并读取金额以及附带的私密备注或memo。支出使用单独密钥,因此资金本身仍会安全。Zakura的修复方案为每笔兑换提供独立查看密钥,并将支出密钥留在用户主账户中。未来若有人破解NEAR上的某个退款地址,也只能看到与那一笔兑换相关的付款。
该设计还处理了一个实际障碍。
做过数百次兑换的钱包最终会有数百个密钥,而从备份恢复意味着要用每一个密钥扫描整条Zcash链。
Zakura的答案是使用一个数据库,钱包可通过名为私有信息检索的技术私下查询。钱包询问其退款落在何处,数据库在不获知钱包查询了哪些地址的情况下作出回答。
截至目前,尚无量子计算机被证明能够恢复这些密钥。Zakura表示,基于其开源库构建的钱包(包括Vizor)可能在未来几周添加该功能,硬件钱包则将在固件支持后跟进。
这将使用户在本月早些时候Zcash开发者设定的1月抗量子支付目标之前获得修复。
延伸阅读:Zcash开发者在“掩体模式”风波后为抗量子支付设定1月目标
分享这篇文章: