Address

WIF(Wallet Import Format)的作用是什麼?

  • October 18, 2020

我正在閱讀 Andreas 撰寫的“Mastering Bitcoin”,我發現了關於“WIF(Wallet Import Format)”的解釋

密鑰格式

私鑰和公鑰都可以用多種不同的格式表示。這些表示都編碼相同的數字,即使它們看起來不同。這些格式主要用於使人們更容易閱讀和轉錄密鑰而不會引入錯誤。

<http://chimera.labs.oreilly.com/books/1234000001802/ch04.html#base58>

我有兩個問題:

  1. 我同意作為十進制數字的私鑰對人們來說不容易使用。但是,十六進制格式和 WIF 非常相似。我認為與十六進制相比,WIF 有兩個優點。一個從 5 開始,下一個是校驗和。WIF有什麼好的地方嗎?
  2. 我可以在沒有私鑰的情況下使用 WIF 簽署交易嗎?

我很想知道比特幣的內部。任何資訊都會對我有所幫助。

謝謝,

WIF有什麼優點嗎

它比十進制/十六進製表示短。而且,是的,有校驗和。

我可以在沒有私鑰的情況下使用 WIF 簽署交易嗎?

WIF私鑰的表示。

除校驗和外,WIF 密鑰採用 base58 編碼,省略了大寫“O”和“I”、小寫“l”和數字“0”等外觀相似的字母。

WIF 不隱藏私鑰,它只是以另一種格式表示它。WIF 密鑰可以通過返回用於創建它的公式轉換回私鑰:base58 解碼 WIF 密鑰,從生成的編碼字元串中刪除主網標頭字節和校驗和尾隨字節,然後您就擁有了您的私有密鑰鑰匙。

原始比特幣客戶端原始碼解釋了 base58 編碼背後的原因:

base58.h:

// Why base-58 instead of standard base-64 encoding?
// - Don't want 0OIl characters that look the same in some fonts and
//      could be used to create visually identical looking account numbers.
// - A string with non-alphanumeric characters is not as easily accepted as an account number.
// - E-mail usually won't line-break if there's no punctuation to break at.
// - Doubleclicking selects the whole number as one word if it's all alphanumeric.

引用自:https://bitcoin.stackexchange.com/questions/35723