什么是加密货币钱包?

加密货币钱包是用来储存、发送、接收加密货币的数位钱包,是加密金融设施中最基础的部分,用户凭此参与 区块链 技术的各种应用,例如参与 DeFi、NFT、GameFi⋯⋯交易。

时间回朔到 2008 年中本聪(Satoshi Nakamoto)发明 比特币 时,他在论文里就告诉大家,比特币协议是一种「点对点」(Peer-to-Peer)的去中心化电子现金系统,你可以把「点对点」理解为「人对人」不假第三方之手。换言之,中本聪勾勒的愿景,是人人自己持有自己的资产,而不是把资产放在第三方中心化机构里被托管。

为了更清楚地了解什么是「自己持有自己的资产」,我们必须先厘清加密货币钱包的运作方式,认识加密货币钱包的构成元件。

 

加密货币钱包运作原理

私钥、公钥、地址

在加密货币的世界里,私钥(Private Key)、公钥(Public Key)和地址(Address)是不可或缺的元素,它们是一切的开端,共同奠定了加密货币钱包的安全性和功能性基石。

三者之间的关系是「私钥 →公钥 → 地址」单向不可逆。
私钥和公钥,无论是何者,皆具备加密和解密的双重用途(稍后解释)。
地址就是转帐时,用来接收加密货币的目的地,类似银行帐号。

密码学小教室:

私钥经过椭圆曲线密码学(Elliptic Curve Cryptography)加密之后,会产生公钥,公钥再经过杂凑函式(Hash Function)的打乱重组,产生了加密货币的地址(有时也会以 QR 码呈现)。

最重要的是,这个过程是不可逆的,所以拥有地址的人无法推导出私钥和公钥,这也是加密货币成立的重要原因。

什么是加密货币钱包?

私钥和公钥之间的关系

请想像脑哥有一种「装有特殊锁」的保险箱,钥匙可以在三个位置上转动。其中,转到位置 A 和位置 C 会将保险箱锁上,转至位置 B 时则能将锁打开;这种保险箱有「两把」不同的钥匙。第一把私钥只能顺时针转动(从 A → B → C),第二把公钥只能逆时针转动(从 C → B → A)。

什么是加密货币钱包?

在上述比喻中共提到了一个保险箱、两把不同的钥匙,这三个物品的对应概念如下:

  • 保险箱:保险箱代表使用「非对称式密码学」加密技术(Asymmetric cryptography),在下方的实际应用案例解释中,将机密文件放入保险箱,就好比使用加密技术针对该文件进行加密。
  • 只能顺时针转动的钥匙:脑哥的「私钥」,只有脑哥本人拥有它,不对外公开。
  • 只能逆时钟转动的钥匙:脑哥的「公钥」,任何人都可以取得脑哥的「公钥」,可对外公开。

也就是说「脑哥私钥」可以从 A 转到 B 再转到 C ,而「脑哥公钥」可以从 C 转到 B 再转到 A。现在,我们可以看到一些有趣的用途。

【用途一:资讯加密】

确保资料传输过程安全无虞

假设小明想向脑哥发送一份机密文件,小明将文件放入特殊保险箱中,并使用脑哥公开的「公钥」把保险箱(从 C 转到 B 再转到 A)锁住。

此时,全世界只有脑哥一人有办法打开保险箱,使用他一人独自拥有的「私钥」(从 A 转到 B)才能解锁,确保了资料传输过程中的安全性。

这就是所谓的「公钥密码学」技术,透过「公钥加密,私钥解密」保护被传送的资讯本身,只有私钥拥有者才可以阅读。

什么是加密货币钱包?

【用途二:数位签章】

佐证这份文件是由小明本人寄出的

另外一个我们好奇的点,脑哥如何确认机密文件真的是由小明寄出的?

要证明机密文件确实由小明寄出很简单!只要将用脑哥公钥上锁的保险箱,放入另一个保险箱中(箱中箱),并用小明自己拥有的「私钥」(从 A 转到 B 再转到 C)锁住外层保险箱。

由于用小明的「私钥」上锁的保险箱,只有小明的公钥才能打开,因此当脑哥收到保险箱时,只需要先用小明可公开的「公钥」,将钥匙向左转(从 C → B ),如果外层保险箱能打开,就可以确认这一份文件是由小明本人所寄出的,因为外层保险箱只有小明本人能上锁(私钥)。

这样的举动被称作「数位签章」(Digital Signature)。这是「公钥密码学」技术的另一种用例,透过「私钥加密,公钥解密」证明讯息发布者的正当性,验证数位签章的签署者,就是签署者本人。

什么是加密货币钱包?

回顾以上概念,在区块链世界里,使用公钥加密有如把资金投入保险箱,如果要打开保险箱,这个动作就是私钥解密,谁持有私钥谁就是保险箱的主人,谁就有资格动用这笔钱;另一方面,使用私钥加密则是在资金传递之前,发送人先进行签名,以确保交易发起者的身份。

  • 私钥(不可公开)
    私钥加密 = 交易发起者数位签章
    私钥解密 = 加密货币钱包控制权
    妥善保管,不得公开
  • 公钥(可以公开)
    公钥解密 = 确认是由付款方本人发起交易
    公钥加密 = 确保资金只有收款方能使用
  • 地址(Address)
    犹如银行帐号,用来接收别人转帐
    可以公开

加密货币钱包转帐实例:一笔转帐,两次加密

我们以「小明发送 1 个稳定币给脑哥」来说明加密货币钱包转帐。

  • 首先,小明必须填写脑哥的钱包地址,钱包地址是由脑哥公钥所产生,所以将资金发送到脑哥钱包地址等于使用了「脑哥公钥」加密这笔交易,确保资金送达后,因为只有脑哥有「脑哥私钥」,确保了只有脑哥才有权动用这笔钱。
  • 与此同时,小明也用了「小明私钥」进行数位签章(加密)确认,传达了这笔转帐是小明由发出。接下来,区块链上面的矿工们将验证这笔交易,会利用「小明公钥」来检查,检查到底是不是小明发起的交易、是不是小明利用数位签章签的名,以此来得知交易的真实性与正当性。如果验证正确,这笔交易将成立并且被写入区块内。

也就是说,小明先把要传递的资金,先用小明私钥加密一次(数位签章),然后再使用脑哥公钥加密一次(资讯加密),经过这两次加密,才把资金传送给脑哥。

什么是加密货币钱包?

加密货币钱包种子与助记词

如果你有过使用像是 MetaMask 小狐狸钱包 的经验,此刻你可能会产生一些困惑:「怎么还没有介绍到助记词」、「助记词是什么,跟私钥是一样的东西吗」、「为什么 MetaMask 一个钱包就可以产生一大堆钱包地址」⋯⋯以下依序说分明。

接下来,让我们从「私钥」做进一步延伸讨论,完善加密货币钱包的发展回顾。

种子是什么?

种子(Seed)是一段随机生成的字串序列,用来生成加密货币钱包的公私钥对(Keypairs)。一颗种子就能产生许多私钥。

什么是加密货币钱包?

在使用加密货币的过程中,你可能因为专款专用、安全考量等原因,希望在不同情况下使用不同的钱包地址。然而,如果每个地址都需要对应不同的私钥,这会导致管理私钥的麻烦。

于是比特币社区 32 号提案 出现了,它定义了现今主流采用的「阶层式确定性钱包」(Hierachical Deterministic Wallets, HD Wallet)架构,让单一种子产生树状结构储存一系列的公私钥对,再进一步生成一系列的钱包地址。

阶层式确定性钱包 由比特币社区 32 号提案 提出,旨在建立一套分层钱包标准。透过一颗共同的种子,就可以导出任意组私钥,私钥推导采用不可逆算法,只能由高层级推导低层级。
什么是加密货币钱包?什么是加密货币钱包?

这么做的好处是,用户只需备份一组助记词种子,就可以轻松恢复整个钱包,而无需单独备份每个私钥。

助记词是什么?

助记词是私钥的另一种表现形式。

刚刚提到的私钥,最原始的样貌是 256 位元(256 个 0 或 1),相当占据空间,如果以 16 进位制来表达,可缩短为 64 个字串,其中每一个字串都是由组字 0-9 和大小写英文字母 A-F 随机生成。

想要记住这一长串不规则的私钥是非常困难的。因此,有人开始探索以更便利的方式来备份和记住私钥。后来有人提出使用「协议定义过的单词表」来推导私钥,这样子我们只需要记下几组简单的英文单词,就等于记下一串不规则的私钥,这就是助记词(mnemonic phrase、recovery phrase、seed phrase)的由来。

协议定义过的单词表
加密货币的起源——比特币——2009 年诞生之初是没有助记词一说的。 直到 2013 年,比特币社区 39 号提案 提出使用随机演算法生成的 2048 个单词,采用 PBKDF2(Password-Based Key Derivation Function)方法转换成种子(Seed),种子再依据 32 号提案 定义的方式建构钱包和推导私钥。 这些单词一般由 12 或 24 个英文单字组成,这就是助记词的由来。
什么是加密货币钱包?

加密货币钱包都会提供备用份的助记词,通常是 12 或 24 个单词,请照顺序手写在纸上(建议不要截图、拍照或存在云端,以避免外泄)并妥善保管。在装置遗失或故障时,助记词可以帮你找回钱包和数位资产。

什么是加密货币钱包?

回顾以上讨论,我们可以厘清一个重要观念:助记词、种子和私钥之间虽然是类似的表现方式,但严格来说,它们彼此之间不能划上等号,意即:

助记词 ≠ 种子 ≠ 私钥
助记词 → 种子 → 私钥 →公钥 → 地址

什么是加密货币钱包?

总的来说,基于比特币社区 39 号提案,我们可以用「助记词」来生成「种子」,再透过 32 号提案,就可以推导出大量「公私钥对」与「钱包地址」。

注:除了以上提及以外,还有一个 44 号提案,让同一个种子推导出来的地址,支援「多币种、多帐户」等功能,进一步优化了加密货币钱包的发展。本文仅简单带过,有兴趣的读者可以自行深究。

有了以上背景知识,我们就可以在「Mnemonic Code Converter」助记词生成网站来体验一下这流程,可清楚观察到,助记词不只是帮「助记」私钥,事实上它们是推导出私钥的「源头」。

加密货币钱包分类

理解完加密货币钱包的背景知识——私钥(助记词生成种子,种子生成私钥)、公钥、地址——后,我们循著「私钥控制权」的脉络为加密货币钱包做了以下分类:

交易所钱包

交易所钱包的私钥(助记词)是被中心化机构所掌控。

一般新手加入币圈时,通常会在币安、OKX 这种「中心化」加密货币交易所注册一个帐户。在这种情况下,虽然交易所会为你生成一个加密货币钱包并提供钱包地址,但你并不持有该钱包的私钥,因为这个私钥由交易所代为保管。

因此,你的资产实际上是被托管在交易所内,你只拥有「登入并查看」钱包馀额的权限,并未真正取得钱包的所有权。这与在传统金融圈买卖股票时,资金被托管在证券交割户的概念相似。

把资产放在第三方「中心化」机构里被托管,平时操作管理方便,和网路下单买卖股票的体验差不多;却也将资产曝露在「平台方出事」的风险里,轻则资金暂时性冻结,重则交易所永久倒闭,例如不久前 2022 年底的 FTX 交易所暴雷风波,以及更早期 2014 年的 Mt. Gox 交易所遭骇事件⋯⋯切记,Not Your Keys, Not Your Coins。

热钱包(Hot Wallet)

热钱包允许你自行保管你的私钥(助记词),私钥被储存在线上软体内,使用时需连接网路。

当你在币圈中积累了一些经验,脱离了新手阶段,你可能会听说过像 Metamask 小狐狸之类的热钱包。热钱包是一种运行在「电脑、手机等连网设备」上的加密货币钱包,可以是电脑浏览器的外挂插件,也可以是手机上的 App 应用程式。

热钱包安装完成后,我们可以透过它进行转帐、收款以及与各种去中心化应用程式(dApps)进行连接和互动。当前的情况是,私钥储存在你的软体内,你可以随时查看并把它抄写下来备份,这样私钥就由你自行保管;这样一来,我们完全掌控自己的钱包,自己保管了自己的资产。

不过需要注意的是,由于热钱包的私钥生成、储存和使用都与网路相连,因此遭到网路骇客攻击的风险较高,并不是绝对安全的解决方案。

例如 MetaMask、Phantom Wallet、OKX Web3 Wallet、Trust Wallet、Coinbase Wallet 都是加密货币领域中,常见且受欢迎的热钱包。

冷钱包(Cold Wallets)

冷钱包允许你自行保管你的私钥(助记词),私钥被储存在实体硬体内,使用时不会连接网路。

更进阶的用户开始慎重考虑入手一款冷钱包,它的外型长得像随身碟、信用卡或甚至是一张纸。冷钱包与热钱包最大差别,在于私钥的生成、储存与使用都不会连接网路,而是在一个由你保管的「与网路隔绝」实体硬体内,自然不会有私钥被骇走的可能。

实际使用冷钱包,执行任何交易需要授权时,都需要我们「掏出」实体冷钱包才能进行操作,这种感觉就像把私钥转变成一把真正的实体钥匙,操作起来有实在的「手感」。

另外需要澄清的观念是,冷钱包里不储存代币,而是保管著你的私钥,你的加密货币资产始终都记录在区块链上;当你要使用这些资金时,进行数位签章(Digital Signature)的动作是在「与网路隔离」的冷钱包上进行。你的授权许可透过 USB 或蓝牙传输——不连网——发送到到区块链上,完成该笔交易。

币圈常见的冷钱包品牌包括了 CoolWallet、Ledger、SafePal S1、Trezor 和 ELLIPAL 等,链习生有一篇专门的文章,从 CP 值、国际知名度、价格实惠等角度来分析与推荐这些冷钱包。

© 版权声明

相关文章

暂无评论

none
暂无评论...