位元幣位址

2021-08-21 01:35:58 字數 1526 閱讀 5854

位元幣位址就是用來接收別人付款的。你也許知道,錢包軟體是使用私鑰來付款。

乙個位元幣位址由兩個部分組成,一部分是公鑰雜湊值經過bases58check編碼的組合,另一部分是關於這個網路位址的資訊。bases58check編碼有一些很精巧的特性,比如用於避免拼寫錯誤的驗證碼,避免模糊的字元,比如「0「,」o"

拾遺:testnet是用於開發的位元幣的網路,在這個網上位元幣沒有任何價值。mainnet才是人人知道的位元幣網路。

你也許不知道,就區塊鏈而言,還談不上位元幣位址,內部來說,位元幣協議使用scriptpubkey驗證位元幣的接受動作。scriptpubkey是一段簡短的指令碼,用於解釋在什麼情況下才能宣告位元幣的所有權。隨著本書深入分析,我們將考察scriptpubkey指令的型別。scriptpubkey也許包含雜湊計算過的公鑰,這個公鑰允許支付位元幣。

拾遺:在mainnet上進行位元幣程式設計時犯得錯誤印象更加深刻。

下圖說明公鑰,下圖說明了公鑰、私鑰、位元幣位址和scriptpubkey的關係。

現在我們可以用**向你演示它們的關係了。開啟chapter1.cs,在頂部新增「using nbitcoin;」然後編寫下面的方法

public void lesson1()

", pubkey);

keyid hash = pubkey.hash; //gets a hash of the public key.

console.writeline("hashed public key: ", hash);

bitcoinaddress address = pubkey.getaddress(network.main); //retrieves the

bitcoin address.

console.writeline("address: ", address);

script scriptpubkeyfromaddress = address.scriptpubkey;

console.writeline("scriptpubkey from address: ", scriptpubkeyfromaddress);

script scriptpubkeyfromhash = hash.scriptpubkey;

console.writeline("scriptpubkey from hash: ", scriptpubkeyfromhash);

}

你剛剛學會了如何建立乙個私鑰,對應的公鑰,私鑰雜湊,位元幣位址和scriptpubkey。

我們還沒有深入細節,注意scriptpubkey看上去跟位元幣沒有任何關係,但是他的確顯示了公鑰的雜湊值。注意我們為何能從位元幣產生scriptpubkey?這一步就是所有位元幣客戶端做的事情,他把人機互動友好的位元幣翻譯成區塊鏈可讀的位址。

位元幣位址由乙個網路識別碼何乙個公鑰雜湊值組成。學習到這些,就可以由scriptpubkey何網路識別碼產生位元幣位址,如下面**所示。

位元幣位址 錢包

私鑰必須保密。私鑰的機密性需求事實情況是,在實踐中相當難以實現,因為該需求與同樣重要的安全物件可用性相互矛盾。當你需要為了避免私鑰丟失而儲存備份時,會發現維護私鑰私密性是一件相當困難的事情。通過密碼加密內有私鑰的錢包可能要安全一點,但那個錢包也需要備份。有時,例如使用者因為要公升級或重灌錢包軟體,而...

位元幣的金鑰 位址 錢包

特幣的所有權是通過數字金鑰 特幣位址和數字簽名來確 的。數字金鑰實際上並不是儲存在 絡中,是由 成 並儲存在 個 件或簡單的資料庫中,稱為錢包。儲存在 錢包中的數字金鑰完全獨 於 特幣協議,可由 的錢包軟 件 成並管理,需區塊鏈或 絡連線。金鑰實現了 特幣的許多有趣特性,包括去中 化信任和控制 所有...

位元幣位址生成方法

獲得私鑰,私鑰為錢包密碼,不對外可見,事關財產安全 利用私鑰去生成公鑰,利用橢圓曲線乘法,定義乙個私鑰為k,g為橢圓曲線上的一點,公鑰為 k g k。橢圓曲線乘法由橢圓曲線加法累加而來,橢圓曲線加法可簡述為 乙個點與其自身相加等同於在這個點上畫一條切線,找到切斜與曲線相交的點,相交點相對x軸對稱的點...