我们要讨论的是如何长期安全可靠地存储比特币。
你需要的是:
联网的机器,物理隔离的旧电脑,最好没有任何无线功能,带条形码扫描仪的智能手机。简介如果想长期投资比特币,需要解决的一个棘手问题就是如何存储它们。既然这个世界上人们最喜欢偷比特币,那么所有的存储系统首先必须具备以下特征:(1)防止别人偷你的货币最简单的方尚力财经小编2022法
就是销毁你的私钥。与第一点中的“阳”相比,第二点中的“阴”是:(2)避免意外损失
比特币存储不应失去其最佳性能。因此,一个好的比特币存储系统还需要:(3)低成本
如果你急着出境,或者你被无缘无故地裸体冲上了外国的沙滩,你的货币应该能够(4)具有全球访问
。第四点很荒谬,但想想很有趣。同时实现这四个目标是一个挑战,我们看到的大多数存储系统都无法满足其中至少一个目标。我们简单讨论一下这个问题。首先推荐一个存储比特币的方案:大脑钱包大脑钱包是一个开源算法,与状态无关,可以将密字转换成公钥和私钥对。总的来说,大脑钱包的算法很简单:通过SHA-256算法将密码哈希成一个256字节的字符串,对于不知道密码的人来说,看起来就是一个随机的字符串。将输出解释为一个键。采用标准的EC加密算法将密钥映射到公钥。
大脑钱包在第二至第四点上得分很高,但却以缺乏安全感而“出名”。大脑钱包常见的攻击有:生成庞大的密语词典,取自文学作品、常用密码数据库、电影台词、歌词等。对于语料库中的每个短语,使用上述算法生成大脑钱包的密钥对。监控比特币是否被转移到数据库中事先准备好的地址。在攻击中,使用相应的私钥来转移比特币。
这种攻击应该看着眼熟;和破解泄露密码数据库的攻击方式几乎一样。其实大脑钱包不安全也是这个道理。没有salt和hash的密码数据库是不安全的。因此,大脑钱包应该采取与密码数据库相同的安全措施。在coinbase或者你选择的交易平台购买比特币。访问WarpWalle,记录跳转后URL中SHA-256的总和,并将HTML保存为文件。启动您的物理隔离器(AGM ),最好从Linux实时磁盘启动。(更多关于AGM的信息,请看Bruce Schneier的文章)用u盘把HTML文件复制到你的AGM上。在AGM上运行sha 256 sum warp.html,验证总数是否与您在步骤2中看到的相符。用Google或Firefox打开HTML作为本地文件。(1)用几个临时密码和小额转账测试配置(详见下文)。(2)选择好的密语。例如,牧师正式吕贝尔斯勘误表。我们以后再讨论。(3)用真正的密语运行“生产”中的配置。将您的电子邮件地址设为“salt ”,您将获得一个公钥和一个私钥对。用您的手机扫描公钥,并将其传输到您的联网设备(例如通过电子邮件)。扫描时,仔细调整窗口,确保只扫描公钥二维码。关闭物理隔离器。 在您的联网设备上,将coinbase上的硬币转移到WarpWallet生成的地址。如果你害怕忘记你的密码,在你的房子和办公室周围放一些秘密纸条来提醒你你的密码是什么。
为了赎回你的钱,你必须重复这个过程,但你只能在私钥上转账。一旦有了WarpWallet,就不要再用了。(或者,可以使用比特币类库记录物理隔离器上的交易,传输到网络设备,然后插入区块链;我们还不能做到这一点。)安全分析攻击者窃取你的硬币主要有四种方式:(1)潜入你的机器;(2)破解WarpWallet的密码;(3)暴力破解你的密码;或者(4)从你的“提示”笔记中猜出你的密码。我们来看看这四种方式:对于第一种攻击,假设最坏的情况,即三台机器都被攻击者入侵过。攻击者在入侵你的物理隔离器后知道了你的私钥,但是他发不出去(你要确保AGM从来没有连接过网络)。攻击者可以通过入侵你的手机或网络设备获得公钥,但只要比特币协议存在,你的货币就无法被盗。当然,当攻击者控制了你的联网机器,他可以把你的钱从比特币基地转移到他选择的账户。但如果你能在他之前把钱转给WarpWallet,就没问题了。同样,如果攻击者控制了你所有机器上的密码,你可能无法启动真实版本的WarpWallet,而是启动一个只能输出攻击者知道的密码的木马版本。对于这样的攻击,我们除了让你检查你的WarpWallet版本之外,没有其他好的答案。检查密码哈希或已知的输入/输出密码对。第二次攻击是破解WarpWallet的加密技术。WarpWallet操作如下:1。S1 s crypt (key=passphrase ||0x1,salt=salt ||0x1,n=218,r=8,p=1,dklen=32) 2。S2 pbkdf2(。C=216,dklen=32) 3。私人密钥 S1 s24。使用标准比特币EC crypto 5从私钥生成公钥。output (private _ key,尚力财经小编2022public _ key)
虽然没有正式证明,但是我们认为这个算法和scrypt,PBKDF2算法是一样的。只要其中一种算法是安全的,就有必要对从候选密码中选择密钥对进行暴力攻击。scrypt算法是完备的,一定是蛮力攻击;PBKDF2算法免费;攻击者可以利用资源破解WarpWallet或挖掘Litecoin。所以攻击者破解WarpWallet的机会成本就是挖莱特币的收益。这种假设考虑了硬件和能源的成本,并允许攻击者访问最新改进的软件。
注意WarpWallet使用的安全参数是218,Litecoin系统的安全参数是210。我们用以下常数进行分析,你也可以随着市场情况的变化进行编辑:每枚莱特币兑换成美元是多少?8.58莱特区块奖?50莱特币的计算难度有多大?22,149WarpWallet密语的信息熵中的字节数58基于这些假设,破解一个warp wallet的成本是$166,374,360.47。实际安全性到目前为止,这对我们来说是相当安全的。如果有新闻报道说scrypt算法被破解了,或者硬件成本大大降低了,当你想改变方案的时候,你还有PBKDF2算法作为缓冲。说实话,重大的公共挑战考验着WarpWallet的安全性。当网站发布时,我们宣布了四个可以快速解决的挑战,以证明人们会认真对待这些挑战。他们做到了。剩下的挑战是仅通过48位熵来猜测地址,自2013年11月以来从未被破解过。最后,还有一个风险,就是和你直接接触的人会发现你的某个提示,然后获取你的密码,窃取你的钱。 对于这种攻击,最好的防御就是把提示做得足够隐秘,这样就没有人会知道它是什么;第二,不要和那些会偷你钱的混蛋混在一起。什么样的密语好?生成密码的时候,用量子化熵生成密码的算法就好。比如这个页面从字典中随机选取n个单词,如果n的值更高,就会提供更多的密码熵。人们可以记住常见的密语,但由于WarpWallets每十年才使用几次,因此您可能会忘记它们。我们讨论了比较容易记住的密码系统,比如著名诗词中的交织句,你小时候编的词等等。现在,你已经进入了无名安全的领域。无论你选择什么系统,对于不知道你的秘密算法的攻击者来说,它应该看起来像一个随机的单词串。比如从一首晦涩难懂的诗中选一句作为密语,并不是一个好主意,因为3到10个词包含的信息熵太少。而如果从你最喜欢的八首诗中选13个词连在一起,看起来会更随意。为什么这个系统还有其他三个性质上面提到的WarpWallet协议应该是安全的。当然是免费的,世界上几乎任何一个有麻烦的地方都可以接入这个协议。最大的问题是你会不会搞砸。我们能想到的错误是:你忘记了密语,你误释放了你的密钥或密语。WarpWallet的代码消失或变得无法执行。您的浏览器出错,得到了错误的响应。
上面我们讨论过密语的遗忘和提醒。你必须小心操作,以避免货币传输协议中的粗心错误。只要GitHub继续运行,你可以在我们的GitHub库中查看,会有一个独立的、开放的、自我验证的WarpWallet版本可用。我们将使用PGP密钥(ID: 4748 4E50 656D 16C7)记录所有后续版本。考虑软件错误很有意思。当我们设置WarpWallet时,我们使用了两种不同的软件栈来实现算法两次,并检查出了相同的答案。要运行测试,请检查存储库并运行NPM install-d;进行测试。但是,您应该采取进一步的预防措施。在步骤4中,在将HTML传输到物理隔离器之后,您必须做一些测试。选择一些废弃的密码,在你的联网设备和物理隔离器上散列。如果结账成功,结果匹配,可以生成临时密码,将少量硬币转入WarpWallet,第二天再转回。你可以参加很多测试,直到你感到轻松为止。来源(翻译):信息(www.8btc.com)
标签: 呈