0

0

Vitalik 新文:假如量子攻击明天就来,以太坊如何解题?

DDD

DDD

发布时间:2024-03-10 16:04:15

|

1043人浏览过

|

来源于ChainCatcher

转载

原文作者:vitalik buterin

译者:Azuma,Odaily星球日报

3月9日,以太坊的联合创始人Vitalik Buterin在以太坊研究论坛上发表了一篇短文,题为《应对突如其来的量子攻击:通过硬分叉保护用户资金》。

在文中,Vitalik回顾了以太坊在可能面临量子攻击的情况下如何尽量减少用户资金损失,并探讨了应对紧急情况时的程序转变以应对量子威胁,从而确保系统可以恢复正常运行。

Vitalik 新文:假如量子攻击明天就来,以太坊如何解题?

以下为Vitalik 全文内容,由 Odaily 星球日报编译。

假设量子计算机明天就能实现,且不法分子已通过某种方式获取了它的访问权限,并想要利用它来窃取用户资金,我们该怎么办?

诸如 Winternitz 签名、STARKs 等抗量子(quantum-resistant)技术的开发正是为了防止这种情况的发生,一旦帐户抽象准备就绪,任何用户都可以随机切换至具备量子抗性的签名方案。但如果我们没有那么多时间,如果量子攻击的到来比所有人设想的都更加突然,我们该怎么办?

我认为,实际上我们目前已具备了通过一个相对简单的恢复性分叉(recovery fork)来解决该问题的充足条件。通过该解决方案,以太坊网络将不得不进行硬分叉,用户也将不得不下载新的钱包软件,但只有少数用户可能会丢失他们的资金。

量子攻击的主要威胁如下。以太坊地址是通过运算 keccak(priv_to_pub(k))[12:] 而函数得出的,其中 k 对应的是私钥,priv_to_pub 对应的是一个椭圆曲线乘法,用于将私钥转换为公钥。

当量子计算实现后,上述椭圆曲线乘法将变得可逆(因为这其实就是离散对数问题的求解),不过哈希运算依旧是安全的。如果用户没有过进行任何交易,那么被公开的只有地址信息,这种情况下他们依旧会是安全的;但是只要用户曾进行过哪怕一次交易,交易签名就会暴露出公钥,这在量子计算机的面前就存在暴露私钥的可能性。所以在这种情况下,大多数用户将会面临风险。

但我们其实有办法缓解这一威胁,这其中的关键点在于,实践中大多数用户的私钥都是通过一系列哈希运算产生的。比如许多私钥是使用BIP-32规范而生成的,它是根据一组助记词,通过一连串哈希运算而生成;很多非BIP-32的私钥生成方法也差不多类似,比如如果用户使用的是脑钱包,它通常也是由某个密码经过了一系列哈希运算(或者是中等难度的密钥派生函数)而生成。

这意味着,通过恢复性分叉来应对突发量子攻击的解决方案将采取以下步骤:

  • 第一,将大规模攻击发生之后的所有区块回滚;
  • 第二,禁用基于 EOA 地址的传统交易模式;
  • 第三,(如果那时还没有落地的话)添加一种新的交易类型来允许通过智能合约钱包(比如RIP-7560中的部分内容)进行交易;
  • 第四,添加新的交易类型或操作码,通过它用户可提供 STARK 证明,如果证明通过,用户地址的代码将切切换至全新的已验证代码,之后用户可以将新代码地址作为智能合约钱包使用。
  • 第五,出于节省 Gas 考虑,由于 STARK 证明的数据量较大,我们将支持批量 STARK 证明,以同时进行多笔上述类型的 STARK 证明。

原则上,明天我们就可以开始对实现此恢复性分叉所需的基础设施进行开发,从而使以太坊生态系统能够在突发的量子攻击中做好准备。

相关专题

更多
C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

10

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

27

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

19

2026.01.22

php会话教程合集
php会话教程合集

本专题整合了php会话教程相关合集,阅读专题下面的文章了解更多详细内容。

19

2026.01.22

宝塔PHP8.4相关教程汇总
宝塔PHP8.4相关教程汇总

本专题整合了宝塔PHP8.4相关教程,阅读专题下面的文章了解更多详细内容。

10

2026.01.22

PHP特殊符号教程合集
PHP特殊符号教程合集

本专题整合了PHP特殊符号相关处理方法,阅读专题下面的文章了解更多详细内容。

11

2026.01.22

PHP探针相关教程合集
PHP探针相关教程合集

本专题整合了PHP探针相关教程,阅读专题下面的文章了解更多详细内容。

7

2026.01.22

菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

52

2026.01.22

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
微信小程序开发之API篇
微信小程序开发之API篇

共15课时 | 1.2万人学习

进程与SOCKET
进程与SOCKET

共6课时 | 0.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号