你有没有想过为什么别人的 BTC 钱包无法生成与你相同的地址? 或者为什么有人无法生成与你相同的种子短语?毕竟,这只是几个词而已! 在这个讨论中,我们将进行数字分析,调查比特币是如何保护你的财富的。 🧵⬇️
比特币协议使用三种主要工具来保护您的财富,值得了解: 熵、哈希函数和非对称加密。 这些工具在数字安全领域被广泛使用,甚至在比特币之外。让我们简要解释一下每一个。
首先:熵。这是一个华丽而简洁的名称,意为“不可预测的随机性”。 如果你以不可预测的方式随机选择一个非常大的数字,那么没有任何计算机能够希望猜到它(只要这个数字足够大!)。 这样你就拥有了一个安全的秘密。
多大的数字才算足够大? NIST建议使用2^112(即112位)或更高的数字以确保有效的安全性。 作为参考,整个比特币挖矿网络目前每10分钟大约进行2^79次猜测。 但2^112的大小比这大超过80亿倍!
此外,12个单词的种子短语代表了更大的熵:2^128。(每个单词代表11位。11*12 = 132,减去4位用于校验和。) 2^128的强度约为NIST推荐的65,000倍!
要让某人猜出一个特定的种子短语,就像他们需要借用全球所有的比特币挖矿机器,并猜测大约107亿年。 理论上这是可能的,但如果遵循最佳实践,认为这会发生是不合理的。
第二:哈希函数。 哈希函数非常棒,因为你可以输入任何数据(称为前像),它将输出一个介于 0 和函数上限之间的唯一数字(SHA-256 特别著名,范围高达 2^256)。 你可以输入一个单词、一页、一整本书。
这些函数是单向的。你可以很容易地从输入中找到输出。然而,如果你只有输出,就无法在不猜测的情况下找到输入。 即使是来自相似输入的输出,稍微的变化(比如一个大写字母)看起来也完全不同且随机:
因此,哈希输出具有与熵相似的属性。 寻找导致特定哈希输出的前像的人将不得不一次又一次地尝试猜测。只要需要 2^112 次尝试或更多,这就是不可行的,前像是安全的。
比特币使用SHA-256来帮助使交易不可逆转,并使用SHA-256或RIPEMD-160来保护大多数地址类型。 因此,要使一个钱包生成与其他人相同的地址,至少需要2^160次尝试,这足以提供安全性。
最后:非对称加密。 也称为公钥加密,或在许多上下文中称为椭圆曲线加密(ECC)。 在比特币中,ECC 被用来使私钥能够生成公钥,以及签名以批准交易。
如果公钥是一个足够大的数字,那么再次找到关联的私钥将需要疯狂的猜测次数。 比特币密钥是在2^256的空间内的数字。数学计算表明,安全性实际上是位数的一半,因此是2^128,这样是安全的。
最终,在比特币经济中进行正常操作的每个人都受到远超NIST建议和典型在线银行密码的安全标准的保护。 下面的图表有助于可视化情况。
583