什麼是HD錢包(HD Wallets)?

買賣虛擬貨幣
第一次看到 hd 這個詞被用在比特幣錢包中時,很容易就把它理解成硬體(hardware)錢包,其實它是分層確定性(hierarchical deterministic)錢包的縮寫 hd wallets。

“分層確定性”這個詞乍看起來很“高大上”,各類文件也把它描述的“雲裡霧裡”的,其實原理本身很簡單,兩句話就能說清楚:

首先,要用一個隨機數來生成主(根)私鑰,這和任何一個比特幣錢包生成任何一個私鑰沒任何區別;

然後,再用一個確定的、不可逆的演算法,基於主私鑰生成任意數量的子私鑰;

看到了沒?很簡單吧?

那為什麼要用“確定、不可逆”的演算法呢?因為“確定”才能保證從一個主私鑰可以生成出全部的子私鑰,而“不可逆”則是為了確保不能透過子私鑰反推出主私鑰。

例如,sha256 就可以看成是“確定、不可逆”的演算法,我們可以很容易的使用 sha256 設計出一個 hd 模型:sha256(seed + n)

在這個模型裡,seed 為主私鑰,n=(1,2,3......)計算出來的結果對應於第(1,2,3......)個子私鑰。

這其實就是型別1確定性錢包(type1 hd wallets),當然,我們還可以基於更多“確定、不可逆”的演算法來設計其它 hd 模型,比如 bip32,再比如類性2確定性錢包(type2 hd wallets)。演算法可以複雜,但原理都一樣,很簡單,而且,只要 sha256 是安全的,hd 模型就是安全的。

hd 模型在數學上有一個非常“好”的特性:只需要主公鑰,就可以生成出任意數量的子公鑰。也就是說,無需私鑰介入(主私鑰和子私鑰),就能基於主公鑰生成新(公鑰)地址,而這些地址其實都能被主私鑰所控制。

這個特性使得 hd 模型在過去一年裡被越來越多的應用於企業和個人比特幣錢包解決方案,可惜,優點往往伴隨著代價,某些情況下,代價甚至是“致命的”。

下一篇文章中,小太將和您說說 hd 模型的潛在風險。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;