制作“铜墙铁壁”一样的比特币冷钱包的完整流程详解!!
制作一个冷钱包的初衷:
一直想制作一个安全系数高的比特币冷钱包,市面上的钱包大多数都不安全:
1、比如第三方硬件钱包,长得类似一个U盘,里面有加密芯片存储你的私钥,使用时将它连上电脑,然后钱包方会提供区块数据,虽然省去了下载区块数据方便使用,但是作为一个Hodler,把自己的财产假手于人,还是感觉不自在。如果钱包项目方监守自盗呢?
2、软件APP钱包,这种钱包有很多,虽然也是号称你自己管理你的财产,你自己保管私钥,但是这种在手机联网环境下使用的钱包,也是不安全的,而且依然有项目方监守自盗的问题。
3、纸钱包和钢铁钱包,是将你的私钥明文记录在上面,这种基本上是安全的,需要防的是被偷窃风险,同时,也有使用不便利的问题,如果需要交易,还是需要联网获得钱包。
总的来说,既要兼顾较高的安全性,又要兼顾使用的便利性,看来看去,只有核心团队开发的core客户端是安全可靠的,网上学习多篇文章,并且通过自己的实践以后,将具体步骤流程归纳如下,供大家参考:
一、总的原理:
让钱包wallet.dat文件从生成到钱包操作整个过程都不接触网络,钱包文件永远不离开这个冷钱包电脑,
需要的区块数据可以从别的电脑下载以后提供冷钱包电脑使用。
二、原材料:
1、电脑A:即冷钱包。使用离线签名方式发送比特币。永远离线状态!
2、电脑B:可以是虚拟机,用来更新区块数据,不安装其他软件,仅安装核心钱包。
3、1T移动硬盘1块:用来拷贝区块数据,电脑A和电脑B共用此硬盘(安装核心客户端时将数据目录指向移动硬盘的同一个目录)。
4、U盘3个:用来存储备份钱包文件wallet.dat,分开收藏,并告知家人使用方法。
三、钱包安装流程:
1、在电脑B中,安装虚拟机,然后安装win10专业版,不要安装任何其他软件,然后安装核心钱包客户端:
a、安装虚拟机版本:VMware Workstation Pro 15 ,因为商业版权,这里就不放地址了,大家可以自行百度。安装比较简单,下一步下一步就可以了。
b、安装WIN10专业版:安装视频教程地址,PS:使用该教程中提到的微软安装器安装,系统文件也是从微软上下载的,这样可以保证你安装的是最纯洁的系统。
c、核心钱包要去比特币官网下载最新的,下载地址 。
2,将移动硬盘全盘格式化(注意备份原数据),打开虚拟机上的核心钱包客户端,在移动硬盘新建一个新的目录,然后将核心钱包数据目录指向此新目录,注意:将数据文件裁剪成2G这个勾选要去掉。
然后开始下载区块数据,这个过程很漫长,需要至少三四天的时间(截至2020-3-30已经有290G的大小),期间多次报错,不过只要重新打开软件就可以重新下载了。
3、数据下载完毕,删除移动硬盘中的wallet.dat文件。这个wallet.dat文件不能作为冷钱包使用,因为是在触网状态下生成的,所以删除了。
4、电脑A安装win10专业版(win10版本和核心钱包版本都与电脑B一样),不要安装任何软件。注意:安装系统后一定要断开网络(拔网线和断开WIFA无线,最好是卸载网卡驱动)。
a、这里一定要保证在安装核心钱包之前处于完全断开网络的状态,这样黑客就无法得到你的钱包文件。
5、 电脑A安装核心钱包,打开核心钱包,注意:将数据文件裁剪成2G这个勾选要去掉。将数据目录指向电脑B在移动硬盘中的那个目录,相当于两台电脑公用一个数据目录。然后移动硬盘上会生成一个wallet.dat文件,这就是你的冷钱包文件。注意:在打开客户端后一定要加密钱包,这样在打币的时候需要输入密码才能打,可以防止你钱包文件被人偷了以后被人盗币,如下图:
四、收币流程:
1、打开电脑A的核心钱包,新建一个收款地址,注意:要将“创建隔离见证地址”勾选去掉,不然会生产隔离见证地址,很多交易所不支持此地址。如下图:
2、从交易所打0.02个比特币到此地址,测试此地址是否可用,可以在btc.com上查询是否到账。
a、这时候因为是电脑A是断网状态,所以有没有到账并不知道,所以要在外网查询到账情况。
b、使用交易所的手机APP件扫码核心钱包生成的地址二维码,得到的地址字符串要去掉"bitcoin:"开头。
3、备份钱包文件,电脑A桌面备份一份(改名“wallet请删除中文再操作.bat”,方便以后操作),三个U盘各备份一份,存放在不同的地点。
a、取名“wallet请删除中文再操作.bat”是为了防止如果移动硬盘中有一个一样的钱包文件,怕搞混淆,所以桌面这个就改名成这个,每次使用要复制粘贴到移动硬盘然后修改名字为“wallet.bat”
4、删除移动硬盘中的wallet.bat文件,(注意:在连接B电脑前一定要删除,不然钱包文件就触网了)。然后将移动硬盘插入电脑B
5、电脑B更新数据,将最新的区块交易数据下载下来。
a、查看交易所交易信息,获得确认区块的编号,然后查看电脑B的核心钱包右下角有一个“小勾”,可以查看目前下载到哪个区块的数据了,只有当这个数值大于交易所在的区块编号时才算交易数据下载成功。如图:
6、更新数据完毕,删除移动硬盘里面的wallet.bat文件,将移动硬盘插到电脑A上面。
7、将电脑A桌面上的“wallet请删除中文再操作.bat”复制粘贴到移动硬盘数据文件根目录上,改名为“wallet.bat”。
8、打开电脑A上的核心钱包客户端,查看比特币是否到账。到账则代表打币操作成功(一般不会有问题)。
五、发币流程:
1、将交易所的收币地址复制到移动硬盘的文本文件中,方便打币。
2、电脑A插上移动硬盘,打开核心钱包,点发送,将第一步的地址复制到地址栏。
3、设置-选项-启用手动选币功能确定-关闭后重启核心钱包客户端。
4、然后打开发送-勾选自定义找零地址(设置为自己冷钱包的接收地址,尽量使用唯一地址 然后正常发送即可,勾选找零地址非常重要,如果不启用,可能会造成丢币,切记切记),如下图:
5、手续费设置选择“推荐”,然后勾选“启用手续费追加”,如上图
6、点发送后得到下面结果,如下图:
7:然后会得到一笔交易记录,双击交易记录,复制交易ID,如下图:
8、打开“窗口-控制台”,输入“getrawtransaction 交易ID”,会得到用来广播的“交易信息”,如图:就是下面红框里这一串
9、将交易信息复制到移动硬盘上,关闭电脑A的核心钱包,删除移动硬盘上的wallet.bat文件(一定要删除,每次移动硬盘离开电脑A冷钱包,都要删除该文件,切记!)
10、在联网的电脑B上插入移动硬盘,打开核心钱包,打开“窗口-控制台”,输入命令“sendrawtransaction 交易信息”进行全网广播,将得到一串广播交易ID
11、将广播交易ID复制粘贴到btc.com上查询交易进度。
12、后续如果要在冷钱包中查看钱包余额,需要在电脑B上连接移动硬盘更新区块数据,然后给电脑A用,这个过程与上面“发币流程”一样,就不赘述了。
六、后续问题的思考:
一、这整个流程是否有漏洞,钱包是否安全,问自己以下几个问题:
1、万一电脑A无法开机了,是否会有损失?
答:没问题,有钱包文件在U盘中,只要重新在一台机器上安装核心钱包客户端和使用移动硬盘中的区块数据,利用该文件就可以恢复钱包。其实就跟电脑A和电脑B切换使用的场景一样。
2、万一电脑B无法开机了,是否会有损失?
答:没问题,电脑B本身就是下载区块数据用的,每次下载完毕也是要删除wallet.bat文件再连接电脑A离线使用的,所以电脑B如果损坏了并没有任何关系,换一台电脑即可。
3、万一移动硬盘坏了无法打开,是否会有损失?
答:没问题,第一次从电脑B下载完毕区块数据后,对于电脑A来说移动硬盘中的目录结构也是全新的,只需要将电脑A中的核心钱包数据路径和电脑B的路径设置一样(指向移动硬盘同个目录)就不影响使用。
4、万一上面三者都损坏了,是否有损失?
答:没问题,只要有钱包文件就可以恢复钱包,所以为了规避风险,存有私钥U盘是需要多个安全的地点存放的。
二、U盘要怎么收藏才能保证安全?
1、U盘分散地方存储,不要都放在一个家里。
2、里面的wallet.bat文件要加密。
三、平时使用过程要注意什么?
1、一定要注意冷钱包电脑A的wallet.bat文件不要触网,不要触网,不要触网!
2、严格按流程操作打币、发币,才能保证不触网!
3、需要防范的是存有钱包文件的U盘被偷,切记!