Web3钱包

Doge留言 | 贡献2024年12月4日 (三) 03:46的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

加密货币钱包是一种设备、物理介质、程序或在线服务,用于存储加密货币交易的公钥和/或私钥。除了存储密钥的基本功能外,加密货币钱包更常提供加密和/或签名信息的功能。例如,签名可以用于执行智能合约、加密货币交易(参见“比特币交易”图像)、身份识别或合法签署“文档”。

发展历程

2008年,比特币作为第一种加密货币被引入,遵循了中本聪在论文“Bitcoin: A Peer-to-Peer Electronic Cash System.”中概述的原则。该项目被描述为一种使用密码学证明而不是信任的电子支付系统。它还提到使用密码学证明来验证和记录区块链上的交易。

软件钱包

第一个钱包程序简单地命名为比特币,有时也被称为中本聪客户端,于2009年1月由中本聪作为开源软件发布。在0.5版本中,客户端从wxWidgets用户界面工具包迁移到Qt,整个捆绑包被称为比特币-Qt。在0.9版本发布后,软件包被重命名为比特币核心,以区别于底层网络。比特币核心可能是最著名的实现或客户端。比特币核心的分支存在,如比特币XT、比特币无限和Parity比特币。

钱包可以有多种操作模式。它们在信任度和计算要求方面存在反比关系。

  • 完整客户端通过下载区块链的完整副本(截至2018年1月超过150 GB)来直接验证交易。他们不需要信任任何外部方。完整客户端检查挖矿块的有效性,防止它们在破坏或改变网络规则的链上进行交易。由于其大小和复杂性,下载和验证整个区块链不适用于所有计算设备。
  • 轻量级客户端咨询完整节点以发送和接收交易,而不需要本地副本的整个区块链(参见简化支付验证 - SPV)。这使得轻量级客户端设置起来更快,并允许它们在低功耗、低带宽的设备上使用,如智能手机。但是,使用轻量级钱包时,用户必须信任完整节点,因为它可以向用户报告错误的值。轻量级客户端遵循最长的区块链,并不确保其有效性,需要信任完整节点。

被称为在线钱包或网络钱包的第三方互联网服务提供类似的功能,但可能更容易使用。在这种情况下,访问资金的凭据存储在在线钱包提供商而不是用户的硬件上。因此,用户必须完全信任在线钱包提供商。恶意提供商或服务器安全漏洞可能会导致委托的比特币被盗。2011年Mt. Gox就是一个这样的安全漏洞的例子。

冷存储

钱包软件是黑客的目标,因为窃取比特币的潜在利润丰厚。“冷存储”简单来说就是通过将私钥存储或生成在未连接互联网的设备上,将其置于黑客无法触及的范围之外。用于花费比特币的凭据可以以多种不同的方式离线存储,从简单的私钥纸质打印输出到专门的硬件钱包。

纸钱包

纸钱包是在没有互联网连接的计算机上生成密钥对后创建的;私钥被写入或打印到纸上,然后从计算机上删除。然后,纸钱包可以存储在安全的地方,以便以后检索。

物理钱包也可以是金属代币的形式,私钥可通过背面凹槽中的安全全息图访问。安全全息图在从代币上移除时会自毁,表明私钥已被访问。最初,这些代币是用黄铜和其他贱金属铸造的,但后来随着比特币的价值和受欢迎程度的增长,使用了贵金属。面值为高达 ₿1,000 的硬币是用黄金铸造的。大英博物馆的硬币收藏包括早期系列资助的比特币代币的四个样本;其中一个目前正在博物馆的货币画廊展出。2013年,犹他州一家制造这些代币的制造商被金融犯罪执法网络(FinCEN)命令在生产更多资助的比特币代币之前注册为货币服务业务。

硬件钱包

硬件钱包是一种小型便携式计算机外设,根据用户的请求对交易进行签名。这些设备存储私钥并内部执行签名和加密,并且不与主机计算机共享任何敏感信息,除了已经签署(因此不可更改)的交易。因为硬件钱包永远不会暴露其私钥,所以即使可能被恶意软件破坏的计算机也没有访问或窃取它们的途径。用户在设置硬件钱包时设置密码。由于硬件钱包具有防篡改功能,因此没有密码就无法访问资产。

技术细节

私钥和公钥生成

加密货币钱包的工作原理是生成一个理论上的或随机的数字,其长度取决于加密货币技术要求的算法大小。该数字使用加密货币加密算法要求的特定要求转换为私钥。然后使用所需的加密算法从私钥生成公钥。私钥由所有者用来访问和发送加密货币,对所有者是私有的,而公钥则共享给任何第三方以接收加密货币。

到目前为止,不需要计算机或电子设备,所有密钥对都可以通过数学推导手工写下。私钥和公钥对(称为地址)不被区块链或其他人知道。当加密货币被发送到公钥时,区块链只会记录公钥的交易,从而在区块链账本中记录公钥的交易。

重复的私钥

理论上可能出现碰撞(两个或多个钱包具有相同的私钥),因为密钥可以在不进行交易的情况下生成,因此在记录到区块链账本之前处于脱机状态。然而,这种可能性实际上被否定了,因为两个或多个私钥相同的理论概率极低。可能的钱包数量以及私钥数量极其庞大,因此复制或黑客攻击某个密钥是不可想象的。

种子短语

在现代惯例中,现在使用种子短语,它是一个随机的 12 到 24(甚至更多)个字典单词的列表,是私钥的未加密形式。(单词比数字更容易记忆)。在线时,交易所和硬件钱包使用随机数生成,用户被要求提供种子短语。如果钱包丢失、损坏或被盗,可以使用种子短语重新访问钱包和相关的密钥和加密货币。

钱包

有许多被称为钱包的技术,它们存储被称为钱包的私钥和公钥的键值对。钱包承载着密钥对的详细信息,使加密货币交易成为可能。有多种方法可以在钱包中存储密钥或种子。

脑钱包是一种钱包类型,其中一个人记忆密码(私钥或种子短语)。脑钱包可能具有吸引力,因为其具有合理的可否认性或免于政府扣押的保护,但易于密码猜测(尤其是大规模离线猜测)。比特币区块链上存在数百个脑钱包,但其中大多数已被耗尽,有时甚至重复耗尽。

加密钱包与 DApp 浏览器的对比

DApp 浏览器是支持去中心化应用程序的专用软件。DApp 浏览器被认为是 Web3 的浏览器,是访问基于区块链技术的去中心化应用程序的门户。这意味着所有 DApp 浏览器都必须具有独特的代码系统来统一所有 DApp 的不同代码。

虽然加密钱包专注于数字资产的交换、购买、出售,并支持针对特定目标的应用程序,但浏览器支持各种格式的不同类型的应用程序,包括交易所、游戏、NFT 市场等。

特性

除了存储密钥的基本功能外,加密货币钱包还可能具有以下一个或多个特征。

简单加密钱包

一个简单的加密货币钱包包含一对公钥和私钥。这些密钥可用于跟踪所有权、接收或花费加密货币。公钥允许其他人向从中导出的地址付款,而私钥则允许从该地址花费加密货币。

加密货币本身不在钱包中。对于比特币及其衍生加密货币,加密货币是去中心化存储和维护在公开可用的分布式账本中,称为区块链。

多链加密货币钱包

多链钱包旨在支持多个区块链网络,使用户能够从单个界面存储、管理和交易不同类型的加密货币。与仅限于特定区块链的单链钱包不同,多链钱包为处理各种资产提供统一的体验。这些钱包通过减少对多个钱包应用程序的需求并提供多个数字资产的集成功能,提高了便利性和安全性。

多链钱包的功能:

  • 支持多个区块链:用户可以在一个钱包中持有和管理各种区块链,如比特币、以太坊、Klever区块链、币安智能链等。
  • 增强的安全性:通常包含高级安全措施,包括双因素身份验证和种子短语备份。
  • 互操作性:促进跨不同区块链网络的无缝交易。
  • 用户友好的界面:设计为易于访问和直观,使用户更轻松地导航和管理他们的资产。

流行的多链钱包包括 Trust Wallet、Klever Wallet 和 Exodus,每个钱包都提供独特的功能和对多个区块链的支持,因此支持数百种加密货币。

eID 钱包

一些钱包是专门为与框架兼容而设计的。欧盟正在创建与 eIDAS 兼容的欧洲自我主权身份框架(ESSIF),该框架运行在欧洲区块链服务基础设施(EBSI)上。EBSI 钱包旨在(安全地)提供信息、eID 和签署“交易”。

多重签名钱包

与只需要一方签署交易的简单加密货币钱包相比,多重签名钱包需要多方签署交易。多重签名钱包旨在提高安全性。通常,多重签名算法产生一个联合签名,比所有用户的不同签名的集合更紧凑。

智能合约

在加密货币领域,智能合约的签名方式与加密货币交易的签名方式相同。签名密钥保存在加密货币钱包中。

密钥派生

顺序确定性钱包

顺序确定性钱包利用一种简单的方法,从已知的起始字符串或“种子”生成地址。这将利用密码散列函数,例如 SHA-256(种子+n),其中 n 是一个 ASCII 编码的数字,从 1 开始,随着需要更多密钥而递增。

分层确定性钱包

等级确定性(HD)钱包在 BIP32 中公开描述。作为确定性钱包,它也从单个主根种子派生密钥,但不是具有单个“链”的密钥对,HD 钱包支持多个密钥对链。这允许使用单个密钥字符串生成具有分层结构的整个密钥对树。

BIP39 提议使用一组人类可读的单词来推导钱包的主私钥。由于钱包的所有密钥都可以从单个纯文本字符串派生,因此助记词允许更轻松地备份和恢复钱包。

非确定性钱包

在非确定性钱包中,每个密钥都是独立随机生成的,它们不是从一个共同的密钥中生成的。因此,钱包的任何备份都必须存储用作地址的每个私钥,以及大约 100 个可能已经作为地址发放但尚未收到付款的未来密钥的缓冲区。

钱包种类

由于加密货币的蓬勃发展,也发展出了不同类型的钱包,以因应各种的使用情境。下列各种钱包分类,为各常见加密货币所采用,如比特币、以太坊等。

按照去中心化程度

按照去中心化程度,可以把钱包分为全节点钱包、轻钱包,以及中心化钱包。

  • 全节点钱包
    • 此种钱包需要先进行软件安装,安装后会与整个区块链进行同步,存储整个区块链,所以全新钱包开始同步时,必须从第一笔资料开始下载,会花上数小时~数十日的时间,并且占用为数不小的存储空间与网络流量。这样的钱包又称为完整节点。由于此种钱包能提供所对应的加密货币网络完整区块链与服务,所以可以提升该加密货币网络的完整性与可靠性,因此某些加密货币,会对持有这种钱包的用户进行奖励(参见:权益证明)。
  • SPV钱包(simplified payment verification wallet,简单支付验证钱包,又名轻钱包)
    • 与前者比,此种钱包仅存储私钥与结算,不存储整个区块链,所以占用资源很少,较适用于移动设备。
    • 在线钱包(不保管私钥):一般设计为网页形式,在网站产生私钥后,由个人保管,日后要访问钱包时必须输入私钥,网站不负责替用户保存。使用概念上类似于SPV钱包的网页版。使用此类网站,应挑选有信誉的品牌,以及注意是否为仿冒的钓鱼网站。
  • 中心化钱包
    • 在线钱包(保管私钥):一般设计为网页形式,同时保管你的私钥。此类网站风险较高,因为掌握你的私钥,也就等于掌握你该私钥下的加密货币资产。
    • 交易所钱包:各交易所为了能够出入币,也都会提供对应该币的钱包地址。此种钱包不会提供私钥给用户,所以一旦存入,就只能依靠交易所的机制来提领。这同时也算是一种在线钱包。

按照私钥存储方式

按照私钥存储方式,可以钱包分为冷钱包、热钱包。

  • 冷钱包
    • 冷钱包(Cold Wallet),与热钱包相对应,也称离线钱包或者断网钱包,区块链钱包种类之一,意指网络不能访问到用户私钥的钱包。冷钱包通常依靠“冷”设备(不联网的电脑、手机等)确保比特币私钥的安全,运用二维码通信让私钥不触网,避免了被黑客盗取私钥的风险,但是也可能面临物理安全风险(比如电脑丢失,损坏等)。
    • 将私钥存储至不会与网络连线的设备上,包括打印、手抄(纸钱包),甚至自行背诵(脑钱包),以确保存储期间的绝对安全。不过上述钱包在进行交易时,仍必须将私钥输入到一般软件钱包,而最高标准的冷钱包,还必须能进行离线签署,只将签署过的交易发出来。
    • 将私钥存储在额外的特制硬件设备,使用时交易需在硬件内部进行交易签署才提交,只要硬件没有被破解,就绝对安全。如果此硬件设备完全离线、只提交签署过的交易消息,那同时也是最高标准的冷钱包。
  • 热钱包
    • 热钱包(Hot Wallet),与冷钱包相对应,也称在线钱包或者联网钱包(Online Wallet),区块链钱包种类之一,也就是网络能够访问到用户私钥的钱包。热钱包因其联网特性,外人可能通过互联网访问用户的私钥,因此安全性比冷钱包低,但比冷钱包更便利。另外,无论是使用冷钱包还是热钱包,私钥都是关键所在。

主要类型

  1. 热钱包(Hot Wallet)
    • 特点:联网运行,便捷性强,但更容易受网络攻击威胁。
    • 形式:
      • 浏览器扩展钱包:如 MetaMask,便于直接与 DApps 交互。
      • 移动钱包:如 Trust Wallet,适合移动设备使用。
      • 桌面钱包:如 Exodus,功能全面且用户友好。
    • 优点:即开即用,易于操作。
    • 缺点:安全性较低,容易受到黑客攻击。
  2. 冷钱包(Cold Wallet)
    • 特点:离线运行,主要用于资产的长期存储,安全性高。
    • 形式:
      • 硬件钱包:如 Ledger、Trezor,通过 USB 或蓝牙连接设备。
      • 纸钱包:将私钥或助记词打印在纸上,完全隔离网络。
    • 优点:不受网络攻击影响。
    • 缺点:不便于频繁交易。
  3. 多签钱包(Multisig Wallet)
    • 特点:需要多个密钥持有者共同签名才能完成交易,适合团队或机构使用。
    • 应用:用于 DAO、项目资金管理等场景。
    • 优点:提高安全性,减少单点失败风险。
  4. 智能合约钱包
    • 特点:由智能合约管理,支持复杂的逻辑和自动化功能。
    • 应用:如 Gnosis Safe,支持多签和自动交易操作。
    • 优点:功能灵活,扩展性强。

主要功能

  • 资产管理:存储、接收和发送各种加密货币及代币。
  • 交易签名:用户通过私钥对交易进行签名并广播至区块链网络。
  • DApp 交互:通过集成 DApp 浏览器或插件,用户可直接访问 DeFi、NFT 市场、游戏和其他去中心化服务。
  • NFT 管理:显示和管理用户收藏的 NFT 资产,包括图像、元数据和市场链接。
  • 多链支持:同时管理多个区块链网络的资产,例如以太坊、BSC、Polygon、Solana 等。
  • 质押与收益:提供质押功能,用户可锁定代币参与 PoS 网络共识或获取收益。
  • 治理投票:支持用户使用治理代币参与去中心化自治组织(DAO)的治理提案和投票。

安全

钱包也可能存在已知或未知的漏洞。供应链攻击或侧通道攻击是引入漏洞的方式。在极端情况下,即使是未连接到任何网络的计算机也可能被黑客入侵。

为了减轻加密钱包被黑客入侵的风险,可以选择冷钱包,该钱包保持脱机状态并与互联网断开连接。冷钱包是指物理设备,例如U盘,用作从热钱包转移资金的安全存储介质。

当使用接受服务器端数字钱包的商家网站时,客户输入姓名、付款和送货信息。购买后,系统会要求客户使用用户名和密码注册钱包,以便将来购买。

数字钱包可以专用于单一加密货币(例如:比特币、以太坊、瑞波币、莱特币),也可以是多币种钱包(Coinomi、CoinSpot、CoinVault、Cryptonator 多币种钱包、Exodus、Gatehub、Holy Transaction、Jaxx Wallet、UberPay Wallet、AnCrypto Wallet、Klever Wallet)。

钱包对消费者免费,但对零售商有成本。钱包卖家可能会收到通过其钱包进行的商家购买的一部分收入。在其他情况下,数字钱包供应商会以固定费用进行持卡人-商家交易。

丢失私钥与误发送

如果一旦丢失了私钥、或是误将钱币发送到错误的地址,以现今的技术,几乎不可能再把货币取回来,而这一批货币也相当于被消灭了。不过有一种状况是例外,就是在使用共同加密机制的前提下,误将A种货币,发送到了使用中的B种币的地址。由于A种币与B种币使用同样的加密签名方式,所以只要持有B种币地址的私钥,就能取回同位置的A种币。例如将以太币发送到一个以太坊经典的位置,那就持后者的私钥去以太坊钱包取回即可[1]。由此可知,如果你在一种货币发生硬分岔、形成两种货币后,曝露自己任一种货币的私钥,都可能会导致同地址上另一种货币的不安全。

黑客攻击事件

2018年

  • 01月7日,Reddit Tippr 用户遭黑客攻击,遭盗走了数千个BCH(比特币现金)。Tippr 是Reddit机器人,以 BCH 支付小费给其用户[2]
  • 01月13日,XLM(Stellar Lumen)钱包遭黑客攻击,约40万美元XLM被盗。根据多个消息来源报导,黑客控制了BlackEalet.co的DNS服务器,更改设置以容许代码运行,自动将超过20XLM的客户账户余额发送到黑客地址。
  • 01月22日,IOTA 钱包遭黑客攻击, 价值约400万美元的IOTA被盗。
  • 04月16日,数字货币投资者和YouTube红人 Ian Banlina 在直播评论ICO项目是发现受黑客攻击, 超过200万美元的数字货币从他的Etherscan 钱包中被转移。其后被质疑事件为自编自导自演。
  • 04月24日,MyEtherWallet(MEW),最流行的以太钱包之一在谷歌公共 DNS 上遭黑客攻击。根据报导称约36万美元被盗, 但实质损失金额未名。
  • 04月,Coinsecure 损失约438比特币,价值约330万美元。 根据报导指出,私密密钥(指由公司保存并离线存储的密码)在网上被泄露, 导致黑客攻击, 而当中负责保存私密密钥的博士 Dr. Amitabh Saxena被指涉严制造虚假故事被捕。Coinsecure其后通知用户将以印度卢币作补偿,条件为必须于2018年6月30日之前提交索赔。
  • 09月25日, EOS持仓大户账户被盗(gm3dcnqgenes),一共损失约209万个EOS,约1080万美元。
  • 10月22日,Trade.io 的冷钱包有5000万TIO, 约750万美元被盗,其中130万TIO被转移到Kucoin 和Bancor交易所。Kucoin 暂停了TIO交易,Bancor则永久删除了TIO。
  • 12月19日,多个在EOS.IO平台的分散应用程序遭受回滚攻击(Roll Back Attack),其中BetDice损失20万EOS,EOS Max损失超5万 EOS,ToBet损失22000EOS,及Big.game损失8000EOS。

2019年

  • 02月15日,在EOS.IO平台上的竞猜类游戏Gameboy遭受来自黑客(111alpha1111)的连串攻击,损失达数千EOS。

参考链接