比特幣私鑰、公鑰、錢包地址之間的關係

買賣虛擬貨幣

比特幣交易涉及到很多密碼學知識:公鑰、私鑰、雜湊、對稱加密、非對稱加密、簽名等等。那麼哪些是需要使用者認真保管不能對外洩露的,那些是需要使用者公開的呢?先從錢包地址的生成說起。

錢包地址生成

『私鑰』『公鑰』『錢包地址』間的關係

在上述的五個步驟裡只有“base58編碼”有相應的可逆演算法(“base58解碼”),其他演算法都是不可逆的,所以這些資料之間的關係可以表示為:
可以看到:
  • 透過『私鑰』可以得到上述計算過程中所有的值。
  • 『公鑰雜湊』和『錢包地址』可以透過互逆運算進行轉換,所以它們是等價的。

使用『私鑰』對交易進行簽名

比特幣錢包間的轉賬是透過交易(transaction)實現的。交易資料是由轉出錢包『私鑰』的所有者生成,也就是說有了『私鑰』就可以花費該錢包的比特幣餘額。生成交易的過程如下:

使用『公鑰』對簽名進行驗證

小結

  1. 如果一個『錢包地址』從未曾傳送餘額到其他『錢包地址』,那麼它的『公鑰』是不會暴露在比特幣網路上的。而公鑰生成演算法(secp256k1)是不可逆的,即使『公鑰』暴露,也很難對『私鑰』的安全性造成影響(難易取決於『私鑰』的生成演算法)。
  2. 『私鑰』用來生成『公鑰』和『錢包地址』,也用來對交易進行簽名。擁有了『私鑰』就是擁有了對這個錢包餘額的一切操作權力。所以,保護『私鑰』是所有比特幣錢包應用最基本也是最重要的功能。

  • 本文僅討論標準p2pkh交易方式,p2sh不在討論範圍內。
  • 歷史上發生過校驗錯誤的交易被打入到blockchain中的事情,這種交易中的比特幣永遠地消失在cyberspace中了。

免責聲明:

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

推荐阅读

;