当前位置: 首页 > 科技观察

比特币有多安全?_1

时间:2023-03-22 00:16:24 科技观察

1。私钥、公钥和地址就像银行提款和网银转账需要密码一样,在钱包中使用比特币也需要密码。该密码称为“私钥”。“私钥”对应的是“公钥”,“公钥”就像你的银行账户。每个银行账户都有一个唯一的账号,也就是银行卡号。在比特币网络中,这个银行卡号就是“地址”。别人只要知道你的“银行卡号”(也就是地址),就可以给你转比特币。在银行,开户流程基本就是“开立银行账户——给银行卡号——设置银行卡密码——开户成功”。但在区块链世界里,先设置“密码”(私钥),再开“银行账户”(公钥),最后给出“银行卡号”(地址)。如果你在路上捡到一张纸条,上面只写了银行卡密码,而没有写银行卡号,即使银行卡密码是真实的,你也无法提取相关账户中的钱。但在区块链世界,只要知道别人的“银行卡密码”(私钥),就可以知道别人的“银行账户”(公钥)和“银行卡号”(地址),就可以拿带走里面的货币。为什么会这样?这是因为在区块链中,私钥被加密生成公钥,公钥经过格式转换生成地址。也就是说私钥可以推导出公钥,公钥可以推导出地址。2.反推导?决不!既然“私钥可以推导出公钥,公钥可以推导出地址”,而你必须输入“密码(私钥)”才能使用账户中的比特币,那么黑客就会窃取你的钱包。比特币,你必须而且只需要得到“私钥”。理论上,黑客窃取你的私钥有两种方式:通过地址/公钥,反向推导出私钥。私钥一个一个试,也就是暴力破解。第一种方法不可行,因为比特币使用的加密算法,“漏一丁点,相差一千里!”。即使输入的内容稍有变化,加密后的输出结果也与之前的输出结果有很大的不同,而且这些结果没有规律可循。因此,这种加密算法是“单向”和“不可逆”的,黑客无法从输出(地址/公钥)中推导出输入(私钥)。3、暴力破解比特币私钥有多难?既然第一种方法不可行,那么第二种方法呢?在回答这个问题之前,我们先看看私钥是如何生成的。假设你抛一枚硬币,正面为1,反面为0,连续抛256次,记录每次抛的结果,然后转换成16进制数,就是比特币私钥。什么?很简单?这么任性?没错,比特币的私钥是通过程序“抛硬币256次”随机生成的。因此,比特币私钥的本质是一个256位的二进制数。每次抛硬币都有两个面,所以抛256次,一共可以出现“2x2x2x2...2x2x2”,即256次2的乘法,即“2的256次方”之类的结果。因此,比特币的私钥总数理论上有“2的256次方”。注:私钥总数的实际值略低于上述理论值,因为有少量私钥不可用,但对总数的影响可以忽略不计。“2的256次方”有多大?约等于“10的77次方”。“10的77次方”有多大?如果我们生活的地球,海洋、岩石、地下岩浆都充满了沙子,那么整个地球的沙子量大约是“10的30次方”。也就是说,一颗和地球一样大、完全由沙子组成的行星,需要用到“10的30次方”的沙粒。“10的77次方”比“10的30次方”大“10的37次方”,共37个零。在比地球上的沙子多“10的37次方”倍的比特币私钥集合中,一个一个破解某个地址对应的私钥简直比大海捞针还难.因此,即使黑客拥有超级计算机,也无法暴力破解比特币私钥。这也是为什么很多人说,“比特币是第一次通过技术手段确保个人私有财产神圣不可侵犯”。4.如果它比超级计算机更强大呢?虽然没有人能够准确预测未来科技会如何发展,但如果有一天,人类发明了一台比超级计算机或量子计算机更强大的计算机,比特币私钥不会不安全吧?确实,很多人想知道量子计算机是否对比特币的安全构成威胁,如果存在威胁,比特币有什么措施应对。由于这个问题不是三言两语能说清楚的,后面我们会单独开一篇文章来讨论这个问题,敬请期待。5.结语当然,安全问题不仅涉及技术问题,还涉及私钥的保存、钱包授权等问题。如果私钥存储不当导致私钥被黑客窃取,或者电脑中了病毒,或者使用的钱包软件存在漏洞或后门,那么钱包中比特币的安全性就无从谈起。.但是,由于自己的失误,导致私钥被盗,这不能怪比特币吧?那么,如果有人借比特币被盗事件质疑比特币的安全性,你会如何回答他?