写点什么

比特币安全实测:暴力破解私钥到底有多难?

你大概需要 1024 年。

  • 2019-10-30
  • 本文字数:1814 字

    阅读完需:约 6 分钟

比特币安全实测:暴力破解私钥到底有多难?


暴力破解私钥有点像数数:数得越快,就会越早得出不可能数尽的结论。然而,目前仍有不少人对利用暴力方式破解比特币私钥抱有浓厚的兴趣。成不成另说,梦想是要有的。


对于很多数学极客而言,破解私钥的关键在于弄清统计概率。但对于纯粹的梦想家来说,这单纯只是个野心大小的问题。一旦把英勇与数学结合起来,诞生出的就是愿意向比特币私钥发起冲击的新时代堂吉诃德。


在 Bitcointalk 论坛上,这类话题从 2018 年 6 月 11 号以来一直相当活跃。不过在《BitCrack——一款私钥暴力破解工具(BitCrack – A tool for brute-forcing private keys)》当中,用户们利用专门为此设计的软件对暴力破解方法进行了分析,并清醒地意识到这一目标根本没有可行性。


用户 Coin-1 最初以非常礼貌的方式劝阻那些打算尝试的人们:“让我们计算一下破解计算机上一枚比特币地址所需要的时间。你提到自己的算力水平为每秒 900 万个比特币地址,即每秒约 2^23 个比特币地址。因此,暴力破解需要花掉的时间就是 2^(160-23) = 2^137 秒!换算之后超过 1024 年!”


可以看出,我们不可能在一台普通计算机上尝试从没钱的比特币钱包里提取资金。但是,如果计算机更快、更强大,每秒能够尝试更多密钥,那么比特币的安全体系是否有可能土崩瓦解?


问题的规模

克服挑战的第一步,在于对挑战进行量化。为此,我们必须确切计算出总共存在多少个潜在密钥。钱包私钥一般就是 1 到 2256 之间的某个数字,也就是说要想强行破解,我们要做的就是不断猜测,直到找出这个在 1 到 2256 之间的正确数字为止。


对于人类大脑而言,这确实是个大到难以理解的数字。事实上,这甚至大于宇宙中所有原子数的估计值。在这种规模下,即使是世界上最快的超级计算机(IBM 的 Summit),对单一数字钱包进行暴力破解所需要的时间仍然非常惊人。


钱包恢复

另外,这种纯粹的暴力破解只会影响到那些想不起密码或者提醒问题的比特币用户。只要二者解决其一,资产并不会真正丢失。例如,只要我们记得一部分密码,就可以申请使用钱包恢复服务。在大多数加密货币中,我们需要完全信任项目公司接管自己的钱包。但就比特币以及 BitCoin Cash 来说,无需完全交出钱包也能享受到这一恢复服务。


假设能够成功,那么暴力破解能够为攻击者带来相当于钱包内总资产 20%的收益;但这是那种打不赢不给钱的比赛,如果未能破解成功,投入的所有资源都将彻底消失。因此,攻击者自然会认真考虑这样的赌局到底有没有必要参与。


量子危机

一段时间以来,量子计算一直被视为比特币持续安全性与保真度的最大威胁。批评者们认为,私钥破解已经指日可待。最近,谷歌公司公布其达成“量子霸权”目标,相关担忧又进一步激化。在短短 3 分钟之内,谷歌的量子计算机就完成了传统计算机号称需要 1 万年的复杂计算任务。


此事足以引起加密货币社区的广泛讨论,但好在量子计算社区向来以严格要求自己、及时摒弃谣传而闻名。IBM 公司很快现身,对谷歌的说明批判了一番。不同于谷歌做出的、传统计算机需要计算 1 万年的主张,蓝色巨人在博文中提到“我们认为,通过对同一任务的理想模拟方法,整个过程在 2.5 天内即可通过经典计算机得到解决,且保真度更高。”


如果要问我对量子霸权的意见,那么我觉得到目前为止,其与真正量子计算间的距离,就像氢弹与可控核聚变之间的距离——我们确实证明了一种现象的存在,以及从中汲取能量的美好可能性,但与真正的实用性仍然相去甚远。



量子计算机构 NEO 全球发展负责人 John Devadoss 在接受采访时表示,“目前在量子计算领域存在一种「为尊者讳」的倾向,这一点在 AI 方面也有存在。首先,即使是在学术领域,卖「大力丸」的人士也很多,他们希望借此为自己的实验室拉拢资金。其次,虽然确实取得了进展也确实存在一定的小众应用空间,但高到离谱的错误率加上实验室条件的严格约束,都反复证明量子计算的实际应用仍然遥遥无期。”


至少就目前来看,量子计算似乎还没有迎来真正的飞跃,至少不可能破解比特币的加密机制。加密货币持有者确实应该时刻关注一切安全威胁,但还不需要为暴力破解问题太过担忧。成功完成劫持需要的时间长到难以想象,也不会有人傻到真的拿出自己的资源与精力进行尝试。


大家认为比特币最终会溃败在量子计算的强大威力之下吗?请在评论中分享您的观点。


原文链接:


How Hard Is It to Brute Force a Bitcoin Private Key?


2019-10-30 14:5911552

评论

发布
暂无评论
发现更多内容

《鸟哥的Linux私房菜 基础学习篇 第四版》PDF

程序员李木子

以守为攻,零信任安全防护能力的新范式

权说安全

零信任

二本渣渣生,两次冲锋,十面阿里(Java岗)感谢HR终于让我过了

阿里、莫言

Java 面试 java

第42期 | GPTSecurity周报

云起无垠

就业寒冬,最终拿到5个offer的一些经验分享

霍格沃兹测试开发学社

立即注册 | 线上讲座:借助 NGINX Plus 优化物联网数据传输和应用安全

NGINX开源社区

TLS 物联网 IoT mqtt NGINX PLUS

20个Python random模块的代码示例

华为云开发者联盟

Python 开发 华为云 华为云开发者联盟

如何定期清理数据库中的无效数据?

NineData

数据清理 数据归档 NineData 无效数据 优化数据库

Region Migration 技术原理 — 共享存储架构下的高效数据迁移策略

Greptime 格睿科技

数据库 架构 分布式 存储 时序数据库

Java 包装类:原始数据类型与迭代器

小万哥

Java 程序人生 编程语言 软件工程 后端开发

你的隐私堪忧!彻底清空磁盘,只需要1行Python代码

程序员晚枫

Python 磁盘 隐私 Python自动化办公 自动化办公

小红书笔记详情API:让内容创造更高效含代码

技术冰糖葫芦

API Explorer API 接口 API 策略

ai做ppt的软件有哪些?这5款AI工具值得推荐!

彭宏豪95

PPT 办公软件 AIGC 效率软件 AI生成PPT

职场小白如何书写保姆级简历?附优质模板

职场工具箱

简历优化 简历模板 简历 简历规划

高效自我介绍与面试回答技巧大揭秘!建议收藏!

职场工具箱

一定要看!10个产品经理必备的核心技能

职场工具箱

产品经理 产品经理洞察指南

都2024年了,你还不知道这些产品经理的必备工具?

职场工具箱

产品经理 产品经理洞察指南

Python笔记六之多进程

Hunter熊

Python 多进程

解读 Amazon Q | 用 AI 聊天机器人连接你与未来的无限可能

亚马逊云科技 (Amazon Web Services)

一分钟了解JAVA语言

小齐写代码

1688API接口推荐:1688商品列表数据接口

tbapi

1688 1688API 1688商品列表数据接口 关键词搜索1688API

编程两年半了,还要坚持写博客吗?

何书悦

程序员 写作 自媒体 代码人生 阅读

2024Java大厂高频面试题,揭秘今年Java春招面试必问问题有哪些

阿里、莫言

Java java面试 金三银四

高优异步任务解决双重异步集合点阻塞问题

FunTester

利用阿里巴巴1688商品详情API:实现电商数据的快速整合

技术冰糖葫芦

API 接口 API 策略

人工智能(AI)+、+了什么?互联网+又是什么?

天津汇柏科技有限公司

互联网+ #人工智能

软件测试岗位我是如何拿到5个offer的一些经验分享(附面试题)

测试人

软件测试 面试题

比特币安全实测:暴力破解私钥到底有多难?_区块链_Kai Sedgwick_InfoQ精选文章