摘要:公鑰哈希和錢包地址可以通過互逆運算進行轉換,所以它們是等價的。使用私鑰對交易進行簽名比特幣錢包間的轉賬是通過交易實現的。使用公鑰對簽名進行驗證交易數據被廣播到比特幣網絡后,節點會對這個交易數據進行檢驗,其中就包括對簽名的校驗。
一句話解釋公鑰、私鑰、地址
私鑰:實際上是一組隨機數,關于區塊鏈中的隨機數我們已經介紹過了
公鑰:對私鑰進行橢圓曲線加密算法生成,但是無法通過公鑰倒推得到私鑰。公鑰的作用是在和對方交易時,使用自己的私鑰加密信息,然后對方使用自己的公鑰解密獲得原始信息,這個過程俗稱簽名。
地址:由于公鑰太長,在交易中不方便使用,就對公鑰哈希進行SHA256、RIPEMD160、Base58算法加密生成地址
具體過程:
首先使用隨機數發生器生成一個『私鑰』。后續的公鑰、地址都會由私鑰生成,所以一句話概括私鑰的重要性:"誰掌握了私鑰, 誰就掌握了該錢包的使用權!"
『私鑰』經過橢圓曲線算法(SECP256K1)算法加密生成了"公鑰"。這是一種非對稱單向加密算法,知道私鑰可以算出公鑰,但知道公鑰卻無法反向算出私鑰
『公鑰』經過單向Hash算法(SHA256、RIPEMD160)生成『公鑰Hash』
將一個字節的地址版本號連接到『公鑰哈希』頭部(對于比特幣網絡的pubkey地址,這一字節為“0”),然后對其進行兩次SHA256運算,將結果的前4字節作為『公鑰哈希』的校驗值,連接在其尾部。
將上一步結果使用BASE58進行編碼(比特幣定制版本),就得到了『錢包地址』。
『私鑰』『公鑰』『錢包地址』間的關系
??在上述的五個步驟里只有“BASE58編碼”有相應的可逆算法(“BASE58解碼”),其他算法都是不可逆的,所以這些數據之間的關系可以表示為:
可以看出:通過『私鑰』可以得到上述計算過程中所有的值。『公鑰哈希』和『錢包地址』可以通過互逆運算進行轉換,所以它們是等價的。
使用『私鑰』對交易進行簽名
比特幣錢包間的轉賬是通過交易(Transaction)實現的。交易數據是由轉出錢包『私鑰』的所有者生成,也就是說有了『私鑰』就可以花費該錢包的比特幣余額。生成交易的過程如下:
交易的原始數據包括“轉賬數額”和“轉入錢包地址”,但是僅有這些是不夠的,因為無法證明交易的生成者對“轉出錢包地址”余額有動用的權利。所以需要用『私鑰』對原始數據進行簽名。
生成“轉出錢包公鑰”,這一過程與生成『錢包地址』的第2步是一樣的。
將“轉出簽名”和“轉出公鑰”添加到原始交易數據中,生成了正式的交易數據,這樣它就可以被廣播到比特幣網絡進行轉賬了。
使用『公鑰』對簽名進行驗證
交易數據被廣播到比特幣網絡后,節點會對這個交易數據進行檢驗,其中就包括對簽名的校驗。如果校驗正確,那么這筆余額就成功地從“轉出錢包”轉移到“轉入錢包”了。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/24275.html
摘要:二如何理解公鑰和私鑰非對稱加密算法需要兩個密鑰公開密鑰和私有密鑰。因為加密和解密使用的是兩個不同的密鑰,所以這種算法叫作非對稱加密算法。三非對稱加密解密原理非對稱加密算法中,常用的就是算法了,以下就以算法為例來講解非對稱加密算法的實現原理。 非對稱加密,在現在網絡應用中,有這非常廣泛的場景,更是加密貨幣的基礎。本文主要介紹非對稱加密、解密的原理和過程,以及在區塊鏈中的使用。 一、非對稱...
摘要:本文首發于深入淺出區塊鏈社區原文鏈接理解開發錢包涉及的原文已更新,請讀者前往原文閱讀如果你還在被錢包搞的一頭霧水,來看看這邊文章吧。所以我們要開發以太坊錢包同樣需要對比特幣的錢包提案有所了解。 本文首發于深入淺出區塊鏈社區原文鏈接:理解開發HD錢包涉及的BIP32、BIP44、BIP39原文已更新,請讀者前往原文閱讀 如果你還在被HD錢包、BIP32、BIP44、BIP39搞的一頭霧水...
摘要:本文首發于深入淺出區塊鏈社區原文鏈接理解開發錢包涉及的原文已更新,請讀者前往原文閱讀如果你還在被錢包搞的一頭霧水,來看看這邊文章吧。所以我們要開發以太坊錢包同樣需要對比特幣的錢包提案有所了解。 本文首發于深入淺出區塊鏈社區原文鏈接:理解開發HD錢包涉及的BIP32、BIP44、BIP39原文已更新,請讀者前往原文閱讀 如果你還在被HD錢包、BIP32、BIP44、BIP39搞的一頭霧水...
摘要:通過入門區塊鏈本文翻譯自的文章原文地址區塊鏈可能是繼互聯網之后最重大和最具突破性的技術。先不管對比特幣和其他加密貨幣價格的瘋狂行情,本文旨在幫助讀者入門區塊鏈技術。 通過Python入門區塊鏈 本文翻譯自 Adil Moujahid 的文章 A Practical Introduction to Blockchain with Python原文地址:http://adilmoujahi...
閱讀 1791·2021-10-12 10:12
閱讀 2547·2021-09-29 09:42
閱讀 2723·2021-09-03 10:28
閱讀 2258·2019-08-30 15:54
閱讀 1164·2019-08-30 15:53
閱讀 1398·2019-08-30 11:26
閱讀 3364·2019-08-30 11:02
閱讀 2146·2019-08-30 11:02