Skip to main content

小科普:地址,私钥,助记词

最近的情况,部分中心化交易所的溃退,让一些刚入门的小白,甚至是一些进场多年的老白,忽然之间有点儿慌。主要原因就是一点,他们只会用中心化交易所托管自己的数字资产,从来没有考虑要花点儿时间和心思去学习一下区块链的基本技术概念和操作使用。只有中心化系统崩塌之时,人们才会发现去中心化的真义。真正的区块链资产,与其他金融资产的最大区别,就是前者可以提取到链上,完全由自己持有和掌握。风吹不走,雨冲不走,国王也抢不走。此所谓“抗没收性”。

在此,我们就简单了解一下这是怎么做到的。

首先,要建立一个基本概念。区块链不是一条链,而是不同的币种可能有不同的链。一个链就是一套账本,分布式的、去中心化的账本。所以所谓的区块链行业其实有很多很多个不同的链。这对于喜欢持有十几甚至几十种山寨币的玩家可能是个噩耗,因为你要学习的工作量可能是遵从不分散投资原则(参考阅读刘教链公众号4/8文章《不要分散投资》)的数倍。每一种链都有自己独特的技术特性,然后可能互不兼容,每一个都有自己的钱包软件,你要逐一下载安装,小心保管。

我们接下来只拿三个资产来举例。它们就是比特币(BTC)、以太坊(ETH)和Uniswap(UNI)。因为大家还会接触所谓稳定币,所以我们会再说一下USDT(泰达币)和USDC。这样一共就是五个资产。至于其他的品种,请读者朋友举一反三,自行研究学习,我没有,也不准备去了解,所以很抱歉也无法回答你的任何问题。

首先,这五个资产涉及几条区块链呢?两条。一条是比特币链,另一条是以太坊链。比特币链上可以保存比特币和USDT(这种USDT被称为omni USDT)。以太坊链上可以保存以太坊、UNI、USDT(这种USDT被称为ERC-20 USDT)和USDC。

其次,我们把资产提到链上,如何表示资产放在哪里呢?这就要用到地址(address)。地址其实就是一个数字,只是不同的链上的地址表示方法和形式不太一样罢了。

比如比特币链上的一个比特币地址就是类似这样的:1Ea37udvEy3nWZct5c7EDLbE4PFcNWh4LY。这里的1开头显示这是一个普通地址。

而以太坊链上的一个以太坊地址则是类似这样的:0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266。这里的0x开头显示这是一个原始的十六进制数字。以太坊赶工,在设计之初没有对地址进行更好的编码,此处就留下了一个难以弥补的缺憾。

当我们从中心化交易所进行所谓提币时,所需要输入的提币地址就是根据提到哪一条链上而分别输入比特币地址或者以太坊地址。对于BTC和omni USDT,需要输入比特币地址,也就是提取到比特币链上。对于ETH、UNI、ERC-20 USDT以及USDC,需要输入以太坊地址,也就是提取到以太坊链上。

不妨把地址想象成你收快递的地址,而提币就是交易所给你发一个快递,快递里面就是你的资产。只不过,你收报纸和书信的地址写的是信箱,而收牛奶的地址写的是牛奶箱,两个并不相同。

那么我们就明白了,这个地址是可以放心的告知寄件方的,这样对方才能给我们发送资产。不过,最好不要以实名的方式公之于众,这相当于是昭告天下,这是你的地址,让别人来围观你有多少资产。区块链账本是完全公开透明的,任何人都可以查看。使用所谓的区块链浏览器,比如可以查看比特币链的blockchain.info,可以查看以太坊链的etherscan.io,就可以查看上文地址的全部交易记录和余额。

第三,资产一旦提到链上,放到了一个地址里面,它就脱离了交易所的控制,也没有任何第三方可以操纵你的资产了。

那么你如何作为资产的真正主人,可以控制和动用这个资产呢?答案就是私钥(private key)。

私钥其实也是一个数字。一个秘密的数字。只有你一个人知道的秘密数字。谁知道了这个秘密,谁就可以动用这份资产。

所以,与其说资产属于你,不如说资产属于这个私钥。

私钥更像是阿里巴巴和四十大盗里面的“芝麻开门”的咒语。任何人只要能够念出这个咒语,就可以打开地址的洞门,进入山洞,任意取用里面的金银财宝。

上文的比特币地址对应的私钥(咒语)是这样的:L1w4XZwVpNqPijkDcYcH4d3tZaft4dbfF9KUEXtwC8HrbKkvtQbT。从L开头我们可以知道这是一个所谓“压缩格式私钥”,所以我们的地址也会被相应地称之为“压缩格式地址”(Bitcoin Address Compressed)。这一点在稍后使用地址生成器的时候要留意一下。

而上文的以太坊地址对应的私钥(咒语)是这样的:ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80。此处省略了打头的0x,其实这仍然是一个原始的十六进制数字。

私钥的安全保管就是离线。不要以任何形式存放在电子设备里。找出签字笔,把私钥手写抄到记事本上,然后锁在保险柜里,最安全。

其实对于比特币而言,学到这里就可以结束了。把地址记在电脑里,把私钥抄在本子上锁在保险柜里,提币,完。

更详细的操作介绍,刘教链公众号在2020年10月20号文章《如何使用私钥保管比特币》一文中就有详细描述。值得补充一点的是,私钥千万千万不能抄错,抄错一个字符,导致无法恢复的话,你地址里的币就永远永远没有人可以拿出来了。所以,防错误的方法,第一是,找两个本本,抄两遍;第二是,抄完后,进入生成器页面上最后一个叫做“Wallet Details”的面板,在“Enter Private Key”的地方,照着本本上刚抄写完的私钥逐个字母敲进去,点击右侧的“View Details”,看看下方它恢复出来的地址,右侧那个“Bitcoin Address Compressed”(压缩格式地址)二维码下方的比特币地址是不是和你刚才记在电脑里的地址完全一样。一样的话证明你本本上的私钥没有抄错,可以放心无虞。

至于文章里后半段讲的什么脑钱包之类的,小白用户可以先忽略。

另外就是有很多人看了一些教你各种制作什么冷钱包、热钱包、软件钱包、硬件钱包之类的教程,这些东西,概念纷繁复杂,软件硬件规格不一,小白搞不好的话还可能把资产搞丢了。我也不准备在这里展开说。此前刘教链公众号在2020年10月21号写过一篇《当持币人身处险境时》,其中介绍过这些不同的所谓钱包及其优劣势,可供参考一看。

其实所谓钱包(wallet)这个概念,是一个虚构出来的概念。真实存在的,是地址和私钥。钱包,你可以把它理解为保存私钥的一个东西。这样说起来,我们抄写私钥的本本,其实也是一种钱包了。它非软件、非硬件,免维护,不会倒闭破产,离线不触网(所以也是所谓“冷”的),不担心黑客通过网络盗窃。

最后我们就来说一说助记词(mnemonic words)。因为比特币在上一节已经完结,那么这一节就仅针对以太坊链了。

对于以太坊链,我们通常不直接记录其地址和私钥,而是使用一个更高层的技术,称之为助记词。其实这个技术的技术标准是比特币开发组制定的,涉及BIP-32/BIP-39/BIP-44等若干个标准。现在已经是行业标准。

注意,更高层不代表更好。因为更复杂,有更多环节,反而容易出现更多问题。这也是我坚持使用纯粹的私钥来保管最重要的资产——比特币的原因所在。

至于以太坊链,则使用助记词。一个助记词,可以通过一套算法推出无数个地址和私钥。这些地址和私钥是有层次的,因此这项技术又被称为“HD钱包”(分层确定性钱包)技术。

对小白而言,不要搞那么复杂,只需要先用助记词推出的第一个地址即可。此时,我们把地址记录在电脑上,而把助记词抄写在本本上,锁在保险柜里。

典型的一个以太坊链HD钱包的助记词是类似于这个样子的:face business large tissue print box fix maple arena help critic border。这里有12个单词,也有24个单词版本的。通常,12个词的就足够安全了。注意它们的顺序非常重要。顺序不能乱,乱了就无法恢复了。

如何生成助记词,得到地址,以及使用HD钱包呢?答案是使用全球最流行、久经考验的以太坊钱包Metamask(又被称为“小狐狸”,因为它的logo就是一只小狐狸)。Metamask现在已经有浏览器插件版(适用电脑)以及手机版(可在各大应用商店下载)。关于Metamask的使用,刘教链公众号在2019年2月14号就写过文章《零基础快速上手MetaMask》。文章后半部分切换测试网的内容可以忽略,我们只用所谓主网(Mainnet)就可以了。

好了,以上就是所有内容。

勤学,苦练,多用搜索引擎,善于寻找帖子和经验,往往你遇到的问题,前人都遇到过。不要等、靠、要,不要张口就问,先自己研究研究。掌握学习的能力,学会学习的方法,比学到一个具体的知识点更重要、更有用。

(公众号:刘教链。知识星球:公众号回复“星球”) (免责声明:本文内容均不构成任何投资建议。加密货币为极高风险品种,有随时归零的风险,请谨慎参与,自我负责。)