专栏名称: 申龙斌的程序人生
分享可繁殖的知识与技能:GTD时间管理、读书心得、个人成长、财富自由之路
目录
相关文章推荐
程序员鱼皮  ·  程序员如何找 logo 图标和插画?(建议收藏) ·  昨天  
程序员鱼皮  ·  程序员如何找 logo 图标和插画?(建议收藏) ·  昨天  
OSC开源社区  ·  OSC源创会·上海站「AI Agent构建与应用」 ·  3 天前  
Java知音  ·  真的建议赶紧搞个软考证书!(红利期) ·  5 天前  
码农翻身  ·  国产数据库,开始核心平替了! ·  5 天前  
51好读  ›  专栏  ›  申龙斌的程序人生

比特币的私钥【区块链生存训练】

申龙斌的程序人生  · 公众号  · 程序员  · 2017-06-06 12:46

正文

投资比特币,钱包私钥是非常重要的两个概念,在这上面多花一些时间琢磨透是绝对值得的。千万别忙忙活活几个月,只因犯了一个低级错误,把买来的BTC拱手送人了。


我推荐新手一定要试试Bitcoin Core钱包,虽然这款钱包非常笨重,但非常适合理解比特币和区块链中的各种概念和基本原理。该软件是一款全节点客户端,当你同步完成了最新的交易数据后,断网也可以运行。



加密钱包


安装完Bitcoin Core钱包客户端后,在接收第一笔BTC之前,一定要加密钱包,从“设置”菜单中,找到“加密钱包...”,输入密码即可完成钱包加密的过程。务必牢记密码、牢记密码、牢记密码,重要的事情说三遍,因为没有取回密码的选项。


背后原理:上述操作实际上是把你的wallet.dat钱包文件用AES算法(高级加密标准,Advanced Encryption Standard)进行了加密处理,这样即使别人拿走了你的Wallet.dat文件,没有密码也无法找到你的私钥。



私钥


比特币里的私钥实际上是256位(32个字节)的随机数字,如果你认为机器产生的数还不够随机,可以自己扔上256次硬币,正面为0,反面为1,生成的私钥记为 k 。


私钥经过非对称加密处理,产生公钥 K,因为是非对称加密,所以无法从K反算出k。因为K还是太长、不容易辩认、可能还不够安全,就又经过一次处理,变成了我们公布给别人的比特币地址A了。同样,根据A,也不能反算出公钥K,就更不能算出你的私钥k了。


整个比特币的安全体系就是建立这套加密算法的基础上的。

插图摘自《精通比特币》


进阶操作


私钥隐藏在钱包软件中,你在支付比特币时,需要输入密码,钱包软件会自动把私钥取出,进行数字签名等操作,你根本看不见私钥。如果很想看看私钥长什么样子,可以这样操作。


从“帮助”菜单里,打开调试窗口。


在控制台窗口的底部的文本框中输入这两条命令,回车:

walletpassphrase "请换成你的钱包密码" 60
dumpwallet wallet-priv.txt

这条命令中的60,表示密码的过期时间,在60秒之内不用重复输入密码。




记住:在进行这些命令行操作时,千万不要让外人看到你的钱包密码。如果操作正确,每个命令之后会返回null。再到Bitcoin Core的安装文件夹下,可以找到wallet-priv.txt文件,打开后,内容是这样的:


从第8行开始,左侧的那一长串字符是私钥,在addr=后面的是公开的比特币地址。


看完这个wallet-priv.txt文件之后,请把该文件彻底删除,以免落入外人之手。


小结:

  • wallet.dat钱包一定要加密

  • 牢记密码

  • 私钥k产生公钥K,再生成比特币地址A

  • dumpwallet可以导出私钥为文本文件,如果你不知道正在干什么,就不要操作这条命令了


送福利:


明天是6月7日,孩子就要参加她人生中的一次重要考试了,祝愿她取得好成绩。再送出价值9.99元的"区块链生存训练"1个月饭团名额10个,手快有,手慢无。


↓点击阅读原文,也可直达饭团。