主页 > 安卓版imtoken钱包打 > 科学|比特币有多安全?

科学|比特币有多安全?

安卓版imtoken钱包打 2023-01-17 10:29:26

这是白话区块链第1552期原创

作者 |白话区块链

制作 |比特币从2009年诞生至今已经12年了,从一文不值到一块近4万美元,总市值超过7500亿美元。已经彻底成长为庞然大物,那么比特币目前的安全性如何,比特币会不会被别人偷走?

01

私钥、公钥、地址

就像银行取款和网银转账需要密码一样,在钱包中使用比特币也需要密码,这个密码称为“私钥”。

与“私钥”对应的是“公钥”,它就像你的银行账户。每个银行账户都有一个唯一的帐号,即银行卡号。在比特币网络中,这个银行卡号就是“地址”。只要别人知道你的“银行卡号”(即地址),就可以给你转账。

在银行,开户流程基本上是“开银行账户-给银行卡号-设置银行卡密码-开户成功”。但是在区块链世界里,先设置“密码”(私钥),然后开一个“银行账户”(公钥),最后给出“银行卡号”(地址)。

如果你在路上捡到一张纸条,上面只写着银行卡密码,而不是银行卡号,即使银行卡密码是真实的,你也无法从关联账户中取款。

但是在区块链世界里,只要知道别人的“银行卡密码”(私钥),就可以知道别人的“银行账户”(公钥)和“银行卡号”(地址)。 )比特币交易安全性,你可以把里面的硬币拿走。

为什么会这样?

这是因为在区块链中,私钥被加密生成公钥,公钥被转换成格式生成地址。即私钥可以推导出公钥,公钥可以推导出地址。

02

逆向推导?没办法!

既然“私钥可以推演公钥,公钥可以推演地址”,并且必须输入“密码(私钥)”才能使用账户中的比特币,那么黑客就会窃取你的钱包。比特币,你必须而且只需要得到“私钥”。

理论上,黑客有两种方式窃取你的私钥:

1、通过地址/公钥,反向推导出私钥。

2、私钥一一尝试,即暴力破解。

第一种方法是行不通的,因为比特币使用的加密算法是“缺一丁点,差一千里!”。如果输入内容稍有变化,加密后的输出结果与之前的输出结果相差很大,这些结果没有规律可循。

所以,这种加密算法是“单向”和“不可逆”的,黑客无法从输出(地址/公钥)中推断出输入(私钥)。

03

暴力破解比特币私钥有多难?

既然第一种方法行不通,那第二种方法呢?在回答这个问题之前,我们先来看看私钥是如何生成的。

假设你抛硬币,正面为 1,反面为 0,连续抛 256 次,记录每次抛的结果,然后转换成十六进制数,即比特币私钥。

什么?很简单?这么任性?

是的,比特币的私钥是通过“抛硬币256次”程序随机生成的。因此,比特币私钥的本质是一个256位的二进制数。

每次抛硬币,有两条边,所以256次,一共是“2 x 2 x2 x 2...2 x 2x2”,也就是256个2s的乘积,就是结果“2 的 256 次方”。因此,比特币的私钥总数理论上是“2的256次方”。

注意:私钥总数的实际值略低于上述理论值,因为有一小部分私钥不可用,但对总数的影响最小。

“2 的 256 次方”有多大?它大约等于“10 的 77 次方”。 “10的77次方”有多大?

如果我们生活的地球,海底的海洋、岩石和岩浆都充满了沙子,那么整个地球上的沙子量大约是“10次方的30次方”。也就是说,一个像地球那么大,完全由沙子组成的行星,需要使用“10到30次方”的沙粒。

“10 的 77 次方”是“10 的 37 次方”乘以“10 的 30 次方”,正好有 37 个零。在比地球沙子多“10 次方37 次方”的比特币私钥集合中,试图逐个破译某个地址对应的私钥,简直比在里面找一根针还要难。干草堆。

因此,即使黑客拥有一台超级计算机,他们也无法暴力破解比特币私钥。

所以很多人说,“比特币第一次通过技术手段,保证了个人私有财产的神圣性”。

04

如果它比超级计算机更强大?

虽然没有人能准确预测未来技术会如何发展,但如果有一天人类发明出比超级计算机和量子计算机更强大的计算机,比特币私钥会不会不安全?

确实,很多人都想知道量子计算机是否对比特币的安全构成威胁,如果存在威胁,比特币可以采取什么措施来应对。

由于这个问题不能用三言两语解释清楚比特币交易安全性,我们稍后会另开文章讨论这个问题,敬请期待。

05

结论

当然,安全问题不仅涉及技术问题,还涉及私钥存储、钱包授权等问题。如果由于私钥存储不当,或者电脑中病毒,或者使用的钱包软件存在漏洞或后门等原因,被黑客窃取,钱包中比特币的安全性将无从谈起。 .

不过,由于我自己的失误导致私钥被盗,这锅不能让比特币带走吧?

那么,如果有人用比特币盗窃来质疑比特币的安全性,你会如何回答他?