跳至主要内容

助記詞

BitTool Signer 錢包是標準的 BIP39 錢包。在 BitTool Signer 中建立的助記詞,可在任何使用相同衍生路徑的 BIP39 錢包中還原;其他錢包的助記詞也可以匯入。

建立錢包​

建立錢包有四個步驟:

  1. 產生。 使用者為錢包命名,選擇 24 個單字(預設)或 12 個單字,並可加入 BIP39 passphrase(密碼短語)。助記詞是在裝置上由系統 CSPRNG 產生的(詳細說明)。
  2. 備份。 以下方其中一種備份形式顯示助記詞。
  3. 確認。 所有單字都會被遮蔽,其中四個位置(18 個單字以上則為五個)留空。使用者需依正確順序點選打亂後的單字來填入空格。一旦出錯,該次嘗試就會清除。
  4. 設定錢包密碼。 錢包密碼會在這支手機上加密助記詞(詳細說明)。

公開索引(地址與 xpub)會在錢包出現在清單之前就衍生並儲存完成,因此可以立即進行配對。

備份形式​

每種形式一開始都是隱藏的,點一下即可顯示。截圖、螢幕錄影或離開 App 都會使它再次隱藏;截圖時還會顯示一則警告,提醒使用者刪除該影像。

單字​

以編號網格顯示的 12 或 24 個單字:大多數人應該抄寫下來的備份。

QR Code​

以單一空格分隔各單字的純文字 QR Code,用於將錢包移到自己的另一台裝置。任何能從 QR Code 匯入助記詞的錢包都能讀取它,而 BitTool Signer 讀回時會保留完全相同的拼寫。它永遠不包含 BIP39 passphrase。App 從不提供儲存、列印或分享此 QR Code 的選項。

復原卡(3 取 2)​

這些單字會分散到三張卡片上,任兩張卡片即可還原完整的助記詞,但單獨一張則不行。各位置以每列三個排列,每張卡片在每一列省略一個單字,且每往下一列就位移一格:

card index (0, 1, 2) that leaves out word position p (0-based) = (⌊p / 3⌋ + p mod 3) mod 3

以 12 個單字為例:

位置123456789101112
卡片 1—✓✓✓✓—✓—✓—✓✓
卡片 2✓—✓—✓✓✓✓—✓—✓
卡片 3✓✓—✓—✓—✓✓✓✓—

排列方式只取決於單字數量,因此在不同時間或在另一台裝置上製作的卡片,一定都能互相搭配。每張卡片都會列出它所省略的位置。

單一卡片仍會洩漏三分之二的助記詞。剩下需要猜測的部分,是每個缺少的單字 11 位元,再扣除校驗碼位元:

單字數每張卡片缺少剩餘需猜測
12440 位元:對有決心的攻擊者而言可行
15550 位元
24880 位元

對於 12 與 15 個單字的助記詞,App 會警告使用者要像保護完整助記詞一樣保護每張卡片,或改用 24 個單字。復原卡永遠不包含 passphrase。

儲存的內容​

保險庫會以 canonical 單字(Unicode NFC)保存助記詞,並完全依照輸入內容保存 BIP39 passphrase。助記詞與 passphrase 絕不會寫入明文檔案、絕不會離開手機;除了上述明確的助記詞 QR Code 之外,也不會出現在任何 QR Code 中。