查看原文
其他

春哥&老牛 2018-05-30

手把手教你零基础入门区块链投资


今天我们继续回到老牛和老马的故事里,来介绍一下数字资产的存储安全问题。


话说老牛和带着老马去到了新开的澡堂,老牛习惯性的把手机带进了浴室。

两人正闲聊着说,上一次一块出来泡澡,还在好几年之前呢。正聊着老牛的手机响了,是币圈的一个APP推送的消息,老牛仔细一看,吃惊的喊道:卧槽,有人因为钱包私钥泄露,导致被骗了400多万!

老马一听都惊住了,说到:我看看,我看看!

接过老牛的手机看到下面的信息:


老马看完后,说到:我只看懂了有人被骗走了400多万数字资产,这个过程是里发生了什么,我没看懂;这样看来,我都有点不敢投资数字货币了,这也太吓人了,这么多钱一下子就被人转走了,太可怕了!


老牛看把老马吓的不轻,赶紧解释说:哎,不是你想的那样!数字资产如果放到钱包里保管,其安全性其实是非常可靠的,但是如果是管理不当,一样会出现问题。刚才新闻讲的那位朋友之所以会被盗走数字货币,是因为他把自己的私钥给骗子了,骗子拿到私钥后就像拿到房子的钥匙,当然就可以入室把房子里的资产拿走了。


听到这里,老马似乎听懂了一点,说到:我是不是可以理解,数字资产的钱包就像是一把坚固的锁,上面的这个案例汇总,锁并没有被破坏,只是受害者自己把钥匙给了骗子,导致自己的钱被取走了。


老牛一听,满意的点点头,并说到:你的理解非常到位,你今天的状态不错呀,我乘热打铁,给你系统的讲讲,数字资产保管的安全问题。


通过上面的事情,老马越发意识到,资金安全问题是所有投资的首要问题,老马欣然答道:好,今天就要让自己建立起系统的数字资产安全观念。


老牛温汤里挪了一下身子,说到:数字资产的保管,一般就是放在两个地方,一个是钱包里,一个就是交易所里。老马你觉得是放在钱包里安全还是交易所安全呢?


老马没想到老牛会来考自己,挠挠头笑着说:应该是放在交易所里更安全吧,毕竟人家是专业的大机构。老马说完,对自己的回答还比较满意。


老牛接过话,说:很多小白都是这么认为的,觉得交易平台是专业的大机构,把自己的资产放在交易平台是最安全的,但是如果你了解一点数字货币交易所被盗的历史事件的话,你就不会这么想了:

  • 2014年2月,当时最大的比特币交易所MT.Gox(国人戏称门头沟)约75万比特币被盗,随后申请破产,用户的损失无法挽回;

  • 2016年8约,香港的比特币交易所Bitfinex被盗走了12万枚比特币;

  • 2017年12月韩国比特币交易所Youbit被到了约25%的资产,宣布破产;

  • ……

通过上面的时间,你应该了解到,把币放在交易所并不安全。交易所的安全性风险点除了体现在黑客攻击导致被盗,还可能是交易所管理者监守自盗或者交易平台跑路等。所以如果有大额的数字资产最好有自己保管,那就是放在钱包里。


老马结果话,说道:让我来理解一下,意思是说,交易所这样的平台,由于资金量比较大,容易被网络黑客盯上;而且交易所作为一个庞大的系统,中间有很多环节,环节越多,就越容易出问题,某一个环节出了问题就可能被黑客利用,导致交易所被攻击,用户资金被盗。另外如果交易所的运营者人品不行,把用户存在平台上资产取走甚至直接跑路,这些都是风险点。


老牛说到:哎呀,老马你可不得了了呀,你的理解太到位了,比我讲的要好。


老马笑着说:名师出高徒嘛,哈哈;交易所我理解了,前面说到的钱包和私钥这些东西我没概念,老牛你的好好讲讲。


老牛说:这个其实一点也不难,很多新手就被这些新名词给吓住了。钱包就是管理数字资产的一个软件。这么说吧,这里讲的数字钱包就跟现实中的钱包很功能很类似,都是用来管理我们的“银行卡”的。


老马听了更加懵了,说到:难道数字货币也有想银行卡一样的卡片来存储吗?


老牛笑呵呵的说到:这是一个类比,我们的人民币存在银行卡里,银行卡的卡号是不是像一个地址。数字货币也是存在某个地址上的,它的地址要比银行卡号更复杂,是一串包含了数字和字母的字符串,长度也比我们的银行卡号更长。我们要花银行卡里的钱,就需要输入银行卡密码,同样的,我们要花数字货币地址里的数字货币,也需要输入私钥,只要有了私钥,就能把地址里的数字资产转走。


老马听到这里有点疑问了,说到:这个和银行卡有点不一样吧,我只知道银行卡的密码是没有办法吧银行卡里的钱转走的,你说只要有数字资产的私钥就能把数字资产转走,那也太不安全了吧?


老牛说说到:说到这一点就必须的得夸赞一下数字货币私钥的安全性。就拿比特币的私钥来说,它是由256为二进制字符通过特殊的算法获得,也就是说私钥一共有2的256次方种可能性,这个数量已经超越了全宇宙的种原子的数量了。这样说吧,就相当于你知道某个箱子里有宝石,但是这个箱子的密码的可能性是为2的256次方中,只有箱子的主人知道确切的密码,而且还是通过特殊算法生成的密码,理论上即便耗尽了全宇宙的能源,黑客也是不可能找出箱子密码的。


老马再一次被颠覆了,认识比特币的密码不像银行卡的6位数密码那样,通过有限的次数总能试出来。认识到这点后,老马开始感叹到道:中本聪这是真的牛呀,之前总听你说中本聪牛,也不清楚他牛在什么地方,今天你这么一讲,第一次发自内心的觉得他牛了。


老牛笑笑说:你了解了更多比特币的知识后,感慨的机会多着呢。我们今天继续来讲解钱包的知识。钱包的安全性你了解了,但是如果使用钱包的过程中,行为不好,比如上面例子中暴露私钥的行为,同样会导致自己资产被盗的。我们在使用钱包的过程中,尽量不能暴露自己私钥,另外长长的私钥在使用的过程中不管是备份还作为直接的支付确认签名都挺不方便的。所以钱包软件的开发者,出于易用性的考虑,在不影响安全的前提下,设计了如助记词,密码和keystore等,便于我们做私钥的备份和支付转账时的确认。


下面以最受国人欢迎的以太系钱包imtoken为例,来解释一下地址、密码、密钥、助记词和keystore这些名词的含义。这一点呢,公众号「白话区块链」在一篇「地址、密码、私钥、助记词、Keystore 」那些事的文章里写的特币清楚。

说着老牛找到了该文,把手机递给老马看:

……

这几个名词地址、密码、私钥、助记词、keystore。

若以银行账户为类比,这 5 个词分别对应内容如下:

地址=银行卡号

密码=银行卡密码

私钥=银行卡号+银行卡密码

助记词=银行卡号+银行卡密码

Keystore+密码=银行卡号+银行卡密码

Keystore ≠ 银行卡号


一、地址

地址=银行卡号


1.生成

创建钱包后会生成一个以 0x 开头的 42 位字符串,这个字符串就是钱包地址,一个钱包对应一个钱包地址,地址唯一且不能修改,也就是说一个钱包中所有代币的转账收款地址都是一样的。例如,一个钱包中 ETH 的转账收款地址和 EOS 的转账收款地址是一样。这一点和交易平台上的不一样,平台上不同代币的转账收款地址一般都不同,因此,转币到交易平台前一定要确认好地址。


2.用途

钱包地址可以用于接收别人转币,也可以作为转币的凭证。


二、密码

密码=银行卡密码


1.设定

在创建钱包时,需要设定一个密码,这个密码要求不少于 8 个字符,为了安全,密码最好设置复杂一点。密码可以进行修改或重置,修改密码有两种方法,一是直接修改密码,这需要输入原密码。如果原密码忘记了,用助记词或私钥导入钱包,同时设置新密码。


2.用途

密码的用途有两个,一是转账时候的支付密码,二是用 keystore 导入钱包时的登录密码。


3.特征

在现实世界中,一个银行卡只对应一个密码,对密码修改后,原密码就失去作用。但是在 imToken 钱包中,就不一样了,一个钱包在不同手机上可以用不同的密码,彼此相互独立,互不影响。例如,在 A 手机钱包中设置了一个密码,在 B 手机导入这个钱包并设置一个新密码,并不影响 A 手机钱包的密码使用。


三、私钥

私钥=银行卡号+银行卡密码


1.导出

创建钱包后,输入密码可以导出私钥,这个私钥属于明文私钥,由 64 位字符串组成,一个钱包只有一个私钥且不能修改。


2.用途

在导入钱包中,输入私钥并设置一个密码(不用输入原密码),就能进入钱包并拥有这个钱包的掌控权,就可以把钱包中的代币转移走。


四、助记词

助记词=银行卡号+银行卡密码

助记词=私钥


1.备份

创建钱包后,会出现一个备份助记词功能,选择备份助记词,输入密码,会出现 12 个单词,每个单词之间有一个空格,这个就是助记词,一个钱包只有一个助记词且不能修改。


2.用途

助记词是私钥的另一种表现形式,具有和私钥同样的功能,在导入钱包中,输入助记词并设置一个密码(不用输入原密码),就能进入钱包并拥有这个钱包的掌控权,就可以把钱包中的代币转移走。


3.特征

助记词只能备份一次,备份后,在钱包中再也不会显示,因此在备份时一定要抄写下来。


五、keystore

keystore+密码=银行卡号+银行卡密码

Keystore ≠ 银行卡号

keystore=加密私钥

keystore+密码=私钥


1.备份

钱包里有一个备份 keystore 功能,选择备份 keystore,输入密码,会出现一大段字符,这个就是 keystore。


2.用途

在导入钱包中,选择官方钱包,输入 keystore 和密码,就能进入钱包了。需要说明的是,这个密码是本手机原来设置的本钱包密码, 这一点和用私钥或助记词导入钱包不一样,用私钥或助记词导入钱包,不需要知道原密码,直接重置密码。


3.特征

keystore 属于加密私钥,和钱包密码有很大关联,钱包密码修改后,keystore 也就相应变化,在用 keystore 导入钱包时,需要输入密码,这个密码是备份 keystore 时的钱包密码,与后来密码的修改无关。


六、结语

在现实世界中,如果你的银行卡丢了,密码忘了,可以去银行帮你找回,你的钱还是你的钱,丢不了,这是中心化的优势。

但是在区块链世界中,除了你自己,没有人存储你的钱包信息,钱包信息要是丢了,没人能够帮你找回,钱包公司也不能。因此,只要你保护好钱包信息,钱包里面的财产只属于你自己,谁也抢不走,这是去中心化的优势。


1.忘记

你若把钱包信息忘了,会有什么后果呢?分这么几种情况:

(1)地址忘了,可以用私钥、助记词、keystore+密码,导入钱包找回。

(2)密码忘了,可以用私钥、助记词,导入钱包重置密码。

(3)密码忘了,私钥、助记词又没有备份,就无法重置密码,就不能对代币进行转账,等于失去了对钱包的控制权。

(4)密码忘了,keystore 就失去了作用。

(5)私钥忘了,只要你钱包没有删除,并且密码没忘,可以导出私钥。

(6)私钥忘了,还可以用助记词、keystore+密码,导入钱包找回。

(7)助记词忘了,可以通过私钥、keystore+密码,导入钱包重新备份助记词。

(8)keystore 忘了,只要你钱包没有删除,密码没忘,可以重新备份keystore。

(9)keystore 忘了,可以通过私钥、助记词,导入钱包重新备份 keystore。

从上可以看出,只要「私钥、助记词、Keystore+密码」有一个信息在,钱包就在。因此,备份好「私钥、助记词、Keystore+密码」最关键。


2.泄露

自己备份好钱包信息很重要,同时防止钱包信息泄漏,也很重要。若把钱包信息泄漏出去了,会有什么后果呢?分这么几种情况:

(1)地址泄漏了,没有关系。

(2)密码泄漏了,没有关系。

(3)地址+密码泄漏了,只要手机不丢,也没有关系。

(4)keystore 泄漏了,密码没有泄漏,没有关系。

(5)keystore+密码泄漏了,别人就能进入钱包,把币转走。

(6)私钥泄漏了,别人就能进入钱包,把币转走。

(7)助记词泄漏了,别人就能进入钱包,把币转走。

从上可以看出,只要「私钥、助记词、Keystore+密码」有一个信息泄漏出去,别人就拥有了你钱包的控制权,你钱包中的币就会被别人转移走。因此,「私钥、助记词、Keystore+密码」绝不能泄漏出去,一旦发现有泄漏的可能,就要立刻把里面的币转移走。


3.备份

既然私钥、助记词、Keystore+密码」如此重要,那么如何进行保存呢,最安全的方法就是:

手抄纸上


于 Keystore 内容较多,手抄不方便,保存在电脑上也不安全,因此可以不对 Keystore 进行备份,只手抄私钥、助记词就足够了,手抄备份要注意以下几点:

(1)多抄几份,分别放在不同的安全区域,并告诉家人。

(2)对手抄内容进行验证,导入钱包看能不能成功,防止抄写错误。

(3)备份信息不要在联网设备上进行传播,包括邮箱、QQ、微信等。

(4)教会家人操作钱包。



老马看完后说到:文章中银行卡的这个类比非常好,我一看就理解了。感觉今天自己学到的东西还不少呢,我来总结一下,老牛你看我说的对不对:

1、数字资产放在自己保管私钥的钱包比放在交易所更安全,如果有大量的数字资产一定要放在足够安全的钱包里,如果有交易的需求,嫌从钱包转币麻烦,也应该是把少量的数字资产放在交易所,而且这家交易所最好是靠谱的,没有发生过丢币事件的交易所;


2、数字货币的私钥非常安全,钱包里资产丢失的情况,都是由于行为不当,泄露私钥等关键信息造成的。助记词是私钥的另一种形式,和私钥一样重要,keystore+密码也相当于是私钥。所以私钥或者等价私钥的信息一定不要告诉他人,除非你不介意把资产给对方。


3、钱包要做好备份,如果下载钱包的设备坏了、丢了,只要有私钥、助记词或者是keystore+key三种的任一种备份就能恢复钱包。


4、钱包最好教会家人使用,并把私钥也告诉家人,万一自己发生了意外,家人通过私钥也能得到这笔资产。


老牛听了点头说道:总结的很到位,有了这个认知,数字货币保管的安全意识就非常到位了。明天找个时间来教教你imtoken这个钱包的使用。我们都泡这么久了,差不多了,我们到楼上的休闲区去喝喝茶……



今天的故事讲完了,数字资产安全保管的技能你get到了吗?


——End——

『声明:本文由团队小伙伴春哥&老牛撰稿,文章为作者独立观点,不代表本公号立场,亦不构成投资意见或建议。』

查看更多内容请扫码关注比特之心❤️


点击“阅读原文”查看历史

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存