最近接触加密货币,操作备份和导入钱包的时候,产生了一些对完全依赖私钥保密作为核心安全策略的疑问。
我本身没有在技术角度深入了解过 安全 和 加密货币 两个话题。只是在网上大致进行检索后,找到篇比较切题的文章:关于以太坊私钥碰撞,并且提供了实验代码。
简单来讲就是,加密货币的私钥是可以遍历生成的,每一个都是有效的钱包,并且可能是别人正在使用的,存在碰撞的可能(当然,这个行为及其耗时,以至于收益极低)。有极低但非零的概率碰到有余额的地址(当然就算碰到,也大概率是没什么价值的钱包)。
从账户安全的角度来讲,通常我们的互联网账户/银行账户的碰撞难度比私钥碰撞的难度低。但服务端基本都是会增加重复验证的代价的(比如失败三次就锁账户),从而提高了碰撞操作的代价,并且有追偿的可能。
但加密货币私钥钱包查询余额并没有这个安全策略(从我理解和尝试的几次来看,似乎是没有这种策略的,也没办法做这种策略。不知是否是我的误解?)。那么做私钥的碰撞,碰到有余额的账户,似乎是一种看运气的“买彩票”?(考虑到不少人是持有 彩票阴谋论的,那这种碰撞似乎比买彩票更有盼头些...)当然概率是很低的。
不知道这个理解是否正确,是否有大佬可以解答下?(我也不是要真的去这么操作,但觉得作为一个货币系统来讲,这种“钱包”的特性,有悖于我的“常识”)
1
zooo 2023-10-15 19:26:00 +08:00
理论可行,实际不行,私钥足够随机生成的话,碰撞概率小于太阳系爆炸
|
2
0o0O0o0O0o 2023-10-15 19:28:22 +08:00
理论可行,实际上人类的寿命太过短暂。
不过讲技巧的时候你的“运气”会变好到理论和实际都可行,举点已知的例子: 0. https://www.ise.io/casestudies/ethercombing 1. 一年前的 Profanity https://mp.weixin.qq.com/s/jMNWv2YsU9Y1oU1NWXVlMQ 2. 有人做女巫攻击生成地址时,同样没有遵循安全的实践,用普通的 rand 搭配 UNIX timestamp 当 seed 来随机生成私钥 https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator > 但觉得作为一个货币系统来讲,这种“钱包”的特性,有悖于我的“常识” 你“常识”中的货币系统是怎么保证你的钱是你的钱的呢?不也是尽可能让伪造你的身份变成一件代价很高的事情吗?我觉得这里的“代价”一词就算是共同点了 |
3
thinkm 2023-10-15 19:33:16 +08:00
不可能事件
|
4
Inn0Vat10n 2023-10-15 19:52:30 +08:00
如果你有能在有生之年撞出一个有效地址的算力资源,那这可比地址里的余额值钱多了
|
5
skyfree 2023-10-15 19:54:51 +08:00
这。。。 估计 100 万年能碰撞出一个。。。 这个比买彩票的概率还低无数倍。
|
6
leonshaw 2023-10-15 20:09:32 +08:00 via Android
这个跟已知公钥破解私钥是相同的难度,因为现存钱包在公钥空间里是稀疏的。
|
7
Terry166 2023-10-15 21:53:38 +08:00
Ethereum 和 BitCoin 的私钥都是 256 位的随机值,要遍历所有的可能的值,需要 2^256 次,如果把 1 个原子当作一个单位,那么 2^256 个原子比目前可观测宇宙中包含的原子还要多,而且是指数级的多,用靓仔计算机(量子计算机)也没办法在合理有限的时间内枚举完。
This number is bigger than the number of atoms in the perceivable universe. And not by just a little bit either. Exponentially bigger. This number is so big that the human mind can’t comprehend how big it is. It’s just really big. Huge. I can not overstate this enough. This is a very big number. Your financial and cryptographic transactions are secure because of how big this is. Only a fool would attempt to brute force this many possible combinations. |
8
Kirscheis 2023-10-15 23:04:40 +08:00
私钥碰撞难度和直接破解非对称加密相当,如果恰巧有人生成随机数不够严谨的话,那还是可以碰撞一下的。但是现在应该没有这么蠢的程序了,资产比较多的大佬大部分都很重视安全,不少人都是硬件真随机数
|
9
weazord 2023-10-16 06:28:16 +08:00
当然可以呀,不过买彩票要花钱的,你做碰撞也得投入运算资源,碰到一个有余额的地址余额能覆盖你的成本么。。。
想了一下收益率计算上有点复杂(还要考虑时间这个因素),但肯定是不值得的,建议直接买彩票更现实一点 |
10
lisxour 2023-10-16 09:22:03 +08:00
理论可实现,但实际你的付出与收益可能完全不对等
就算假设你真的碰撞出了,可能是 0 资产的空钱包,或者根本不值多少钱,但是你用同等的算力去挖矿等等,你获得的收益反而是很稳定的。 |
11
davidqw 2023-11-08 15:22:24 +08:00
@0o0O0o0O0o Profantiy 受害者路过,前面 12 个零的地址都被攻破了,毕竟显卡比不过 ASIC
|
12
ecloud 353 天前
为什么不去试试到处挖挖可能挖到传国玉玺呢
|
13
ytmapp 310 天前 via Android
有许多网站提供这样的服务,已经破解一半了,可以助力试试
|