跳转到主要内容

助记词生成器教程:创建安全的 BIP-39 助记词

助记词是你的加密货币配置中最重要的一条信息。它是主密钥,所有私钥、公钥和地址都由它派生而来。丢失它,就会失去资金访问权限;泄露它,任何人都可能盗走全部资产。本教程将带你使用 SafeSeed 的助记词生成器,以最高安全性创建符合 BIP-39 标准的助记词短语。

立即试用

safeseed.app/tools/seed-generator/ 生成 BIP-39 助记词——完全客户端侧处理,不会发送到任何服务器。

什么是 BIP-39 助记词?

BIP-39(Bitcoin Improvement Proposal 39)定义了一种标准:将加密熵编码为一串常见英文单词。与其备份一个 256 位二进制数字,不如备份 12 或 24 个易读单词,例如 "abandon"、"ability" 或 "zoo"。

工作原理

  1. 熵生成:加密安全随机数生成器生成 128 位(对应 12 个单词)或 256 位(对应 24 个单词)随机数。
  2. 校验和:对熵进行 SHA-256 哈希得到校验和。128 位熵会附加 4 位校验位;256 位熵会附加 8 位校验位。
  3. 单词映射:将“熵 + 校验和”拆分为 11 位一组。每个 11 位值映射到 BIP-39 词表中的 2,048 个单词之一。
  4. 种子派生:使用 PBKDF2-HMAC-SHA512 迭代 2,048 次,将助记词短语转换为 512 位种子。此步骤可选择加入口令(passphrase)。

结果是一组单词:在任何实现 BIP-39 的钱包中,它都能确定性地产生同一组密钥。

12 词 vs. 24 词

功能12 词(128 位)24 词(256 位)
128 位256 位
安全级别2^128 种可能组合2^256 种可能组合
抗暴力破解能力实际上不可破解实际上不可破解
备份易用性更容易书写和存放需要管理更多单词
行业采用情况移动钱包常见硬件钱包标准
推荐场景中等持仓大额持仓、长期存储

无论 12 词还是 24 词,其安全性都远超现有或可预见技术可暴力破解的范围。二者选择更多是惯例和个人偏好问题。多数硬件钱包默认 24 词,而许多移动钱包使用 12 词。

分步操作:生成你的助记词

前置准备

开始前,请先评估你的安全需求:

  • 用于学习和测试:可在联网状态下直接在浏览器中使用 SafeSeed。
  • 用于真实资金(中等金额):关闭不必要的浏览器标签页和应用,确保设备无恶意软件。
  • 用于大额持仓:请在隔离网络设备上,按 离线使用指南 操作。

第 1 步:打开助记词生成器

在浏览器访问 safeseed.app/tools/seed-generator/。该工具完全在浏览器中加载并运行。你可以在页面加载后断网进行验证——工具仍可继续使用。

第 2 步:选择词数

选择生成 12 词24 词 助记词短语。对大多数需要保护真实加密资产的用户,通常建议 24 词,这与 Ledger 和 Trezor 等主流硬件钱包的默认设置一致。

第 3 步:生成短语

点击 Generate 按钮。工具会使用浏览器的 Web Crypto API(crypto.getRandomValues())生成加密安全随机熵,并将其转换为 BIP-39 助记词短语。

每点击一次 Generate,都会基于全新熵创建一条全新短语。连续生成的短语之间没有任何关联。

第 4 步:记录短语

这是最关键的一步。你必须将助记词记录在可长期保存的实体介质上。可选方式如下:

纸质(最低推荐)

  • 使用笔(不要用铅笔,可能褪色)写在无酸纸或档案纸上
  • 字迹清晰可辨
  • 给每个单词编号(1 到 12 或 24)
  • 逐词与屏幕内容二次核对
  • 不要把短语输入到任何数字设备

金属(大额持仓推荐)

  • 将每个单词冲压或雕刻在不锈钢或钛板上
  • 金属备份可抵御火灾、水灾和物理老化
  • Cryptosteel、Billfodl、Blockplate 等产品专为此用途设计
  • DIY 方案中,使用字母冲头在不锈钢垫圈上打字同样有效

不要这样做

  • 不要对短语截图或拍照
  • 不要复制到剪贴板
  • 不要存到文本文件、笔记应用或云服务
  • 不要发邮件给自己
  • 不要存入密码管理器(助记词应保持离线)

第 5 步:验证短语

记录后,请逐词对照屏幕回读验证。特别注意形近词:

  • "abandon" vs. "about"
  • "letter" vs. "level"
  • "right" vs. "riot"

BIP-39 词表的设计已尽量降低歧义——每个单词前四个字母唯一。但人工抄写错误仍是助记词丢失的最常见原因。

第 6 步:(可选)添加口令

BIP-39 口令(常称“第 25 个词”)可增加额外安全层。由助记词派生种子时,口令会参与 PBKDF2 派生:

seed = PBKDF2(mnemonic, "mnemonic" + passphrase, 2048, 512)

如果你设置了口令

  • 相同助记词配不同口令会产生完全不同的钱包
  • 没有口令时,仅助记词会生成另一套不同(但有效)的密钥
  • 这可提供“可否认性”:可将“空钱包”(无口令)作为诱饵
  • 你必须记住口令,或将其与助记词分开安全存储

口令注意事项

  • 忘记口令会导致永久失去访问权限——没有恢复机制
  • 口令区分大小写,可包含空格和特殊字符
  • 为安全起见,口令应与助记词分开存储,但两者都必须可找回
  • 强口令建议至少 12 个字符,并混合大小写与数字

第 7 步:清理屏幕

在你已安全记录并验证助记词后:

  1. 关闭浏览器标签页
  2. 清除浏览器最近历史记录(可选但推荐)
  3. 为最高安全性,重启浏览器或计算机

SafeSeed 不会在 localStorage、cookie 或浏览器存储中保存数据,但清理会话可确保浏览器内存中不留残余数据。

理解输出内容

助记词生成器会显示以下信息:

助记词单词

构成助记词的 12 或 24 个单词。它们来自官方 BIP-39 英文 2,048 词表。词表中每个词前四个字符都唯一,这也是你在金属板刻录时可使用缩写的原因。

熵(Hex)

生成的原始随机数据,以十六进制显示。这是助记词编码的底层随机性。通常不需要单独记录它——助记词已完整编码熵和校验和。

校验和

最后一个单词的末尾部分编码了由熵的 SHA-256 哈希得到的校验位。这意味着并非任意 12 或 24 个 BIP-39 单词组合都有效——只有校验匹配的组合才有效。它在将助记词输入钱包时提供基础错误检测。

种子(Hex)

通过 PBKDF2 由助记词派生得到的 512 位种子。该种子作为 BIP-32 密钥派生的输入。若添加了口令,此种子会不同于无口令版本。你无需单独记录它——始终可由助记词和口令重新派生。

进阶主题

熵质量

助记词安全性完全取决于生成时所用熵的质量。SafeSeed 使用 crypto.getRandomValues(),其底层由操作系统 CSPRNG 支持:

  • Linux:来自 /dev/urandom,由硬件中断、CPU 抖动,以及可用时的 RDRAND/RDSEED 提供种子
  • macOS:使用 Security 框架中基于 Fortuna 的 CSPRNG
  • Windows:使用由内核熵池支持的 BCryptGenRandom

现代浏览器都以这些操作系统级 CSPRNG 实现 crypto.getRandomValues(),因此其熵适用于加密密钥生成。

为什么不使用骰子或抛硬币?

一些安全敏感用户倾向于用骰子或抛硬币等物理来源生成熵。该方法虽然减少对软件 RNG 的信任,但也会引入新的风险:

  • 偏差:实体骰子和硬币可能并非完全公平
  • 混合不足:原始物理熵在使用前需要正确哈希
  • 人为错误:记录或转换掷骰结果出错
  • 耗时:生成 256 位熵需要 100 次抛硬币或大量掷骰

如果你选择物理熵,可在工具高级选项(可用时)中输入并派生助记词,但请充分理解偏差和流程错误风险。

多签配置

多签钱包通常需要生成多条相互独立的助记词。多签中的每个签名方都应独立生成自己的助记词。请为每个签名方分别使用 SafeSeed 助记词生成器,最好在不同设备上完成,并确保每条助记词都被独立备份。

Shamir's Secret Sharing 与助记词

SLIP-39(Shamir's Secret Sharing)是 BIP-39 的替代方案:它将种子拆分为多个份额,需达到阈值份额才能重建。SafeSeed 当前聚焦于采用更广泛的 BIP-39 标准。如需 Shamir's Secret Sharing,可考虑原生支持 SLIP-39 的 Trezor 等硬件钱包。

常见错误及避免方法

错误 1:在已受感染设备上生成助记词

风险:设备中的恶意软件可能通过剪贴板监控、截屏或键盘记录窃取生成的助记词。

缓解措施:对于大额持仓,请使用 离线使用指南。至少应在生成前进行恶意软件扫描并关闭其他应用。

错误 2:以数字形式存储助记词

风险:任何数字副本(照片、文本文件、邮件、云笔记)都可能因黑客攻击、设备失窃或云服务泄露而被泄露。

缓解措施:始终使用实体介质。纸质便捷,金属耐久。不要创建数字副本。

错误 3:只保留一份副本

风险:火灾、水灾、盗窃或单纯遗失都可能毁掉你唯一的备份。

缓解措施:创建 2-3 份副本,分别存放在地理位置分离且安全的地点。可考虑银行保险箱、家用保险柜和可信家庭成员的安全地点。

错误 4:不测试助记词

风险:抄写错误会导致你在需要时发现备份不可用。

缓解措施:记录后,使用 Address Generator(离线)从助记词派生地址,并核对是否与钱包显示一致。先发送一小笔测试金额,并验证你能恢复。

错误 5:分享助记词

风险:任何拿到助记词的人都可完全控制你的资金。

缓解措施:绝不要向任何人分享助记词,包括客服人员。任何正规服务都不会索要你的助记词。SafeSeed 永远不会要求你提供已有助记词——生成器只会创建新的助记词。

助记词强度的现实意义

为了理解正确生成的 BIP-39 助记词有多安全,请看这些数字:

  • 12 词短语:2^128 = 340,282,366,920,938,463,463,374,607,431,768,211,456 种可能组合
  • 24 词短语:2^256 = 约 1.16 x 10^77 种可能组合
  • 可观测宇宙中的原子数:约 10^80

即使地球上所有算力运行数十亿年,暴力破解 128 位密钥空间在物理上也不可能。256 位密钥空间之大,已接近热力学描述的计算物理极限(Landauer 极限)。

你助记词面临的真实威胁并非暴力破解,而是:

  1. 在生成或输入短语的设备上存在恶意软件
  2. 备份被实物盗窃
  3. 社会工程攻击(钓鱼、伪造客服)
  4. 你自己未正确备份或记录短语

SafeSeed 通过客户端侧运行和离线能力应对第 1 类威胁。第 2-4 类威胁由你自行负责。

生成后:下一步

当你已安全生成并备份助记词后:

  1. 派生并验证地址:使用 Address Generator 派生地址,并与钱包软件或硬件钱包比对。
  2. 创建纸钱包备份:使用 Paper Wallet Creator 为特定地址创建额外实体备份。
  3. 探索派生路径:使用 Key Derivation Tool 了解你的种子如何映射到不同区块链的密钥。
  4. 设置你的钱包:按钱包官方说明将助记词导入硬件钱包或软件钱包。
  5. 小额测试:向某个派生地址发送小额加密货币,然后演练通过助记词备份恢复资金。

FAQ

两个人会不会生成同一条助记词?

理论上可能,但实际几乎不可能。12 词有 2^128 种组合,24 词有 2^256 种组合,发生碰撞的概率极低,远低于“终生每天中彩票”的概率。随机碰撞发生前,宇宙都可能先走向热寂。

如果我忘了助记词中的一个词会怎样?

如果你知道缺失词的位置,只需尝试 2,048 个候选词。已有工具可对单个缺失词进行暴力尝试,通常可较快完成。但缺失两个或更多词会指数级变难(两个词为 2,048^2 = 约 400 万组合)。这就是为什么认真抄写和验证至关重要。

我可以把 SafeSeed 生成的助记词用于 Ledger/Trezor 吗?

可以。BIP-39 是所有主流硬件钱包实现的开放标准。SafeSeed 生成的助记词可用于 Ledger、Trezor、Keystone、BitBox02、Coldcard,以及任何兼容 BIP-39 的钱包。助记词不绑定任何特定设备或厂商。

12 词短语是否足够安全?

是的。12 词提供 128 位熵,与保护政府机密通信的 AES-128 加密处于同一安全级别。其暴力破解在计算上不可行。许多硬件钱包默认 24 词,更多是出于惯例和额外谨慎,而非 12 词不够。

我应该添加口令(第 25 个词)吗?

口令能带来真实安全收益:即使助记词被盗,没有口令攻击者也无法访问资金。但口令也增加风险:一旦丢失或遗忘,资金将永久不可访问。只有当你有可靠的记忆或安全存储方案,并理解其重要性与助记词同级时,才应使用口令。

我应该多久生成一次新的助记词?

从密码学角度,没有定期轮换助记词的必要。与密码不同,助记词不会随时间变弱。仅在有明确原因时生成新助记词:例如创建新钱包、怀疑当前短语泄露,或重构你的安全方案。

我可以修改或重排助记词的单词吗?

不可以。单词顺序至关重要——每个位置都编码了特定位熵,最后一个词还包含校验和。重排会导致短语无效(校验失败)或变成完全不同的钱包。务必按生成时的原始顺序记录和输入。

什么是 BIP-39 词表,为什么是这些词?

BIP-39 英文词表严格包含 2,048 个词,选择标准是:(1) 前四个字符唯一;(2) 避免形近词;(3) 选择易拼写、易记忆的常见英文词。也有日语、韩语、西班牙语、中文、法语、意大利语、捷克语和葡萄牙语词表,但英文词表仍是使用最广泛的版本。

相关指南