當前位置:首頁 » 區塊鏈知識 » 區塊鏈的公鑰私鑰通訊流程

區塊鏈的公鑰私鑰通訊流程

發布時間: 2021-08-31 01:51:18

比特幣公鑰,私鑰與地址的關系是怎樣的

我把我家地址(地址)給你,你有可以查到我家郵編(公鑰),你用我家郵編(公鑰)+地址寫信給我,郵件到我家郵遞櫃裡面,我用只有我有的鑰匙打開郵遞櫃(私鑰)。
1、郵遞櫃被盜(資料庫被盜)
2、鑰匙被盜(私鑰被盜)
3、知道我家地址(公鑰被盜),郵遞櫃鎖被暴力打開(私鑰被暴力破解)。

❷ 像誠信幣這樣基於區塊鏈數字貨幣中,私鑰,公鑰,地址到底是怎麼回事

很多小白剛入場時,就被私鑰,公鑰,地址,等等關系弄暈頭。有的甚至把自己私鑰搞丟了,地址上特別有錢,可偏偏就是取不出來,今天小白就把私鑰,公鑰,還有地址之間的關系跟大家捋一捋。

私鑰、公鑰和地址這三者的關系是:

私鑰轉換成(生成)公鑰,再轉換成地址,如果某個地址上有比特幣或誠信幣,就可以使用轉換成這個地址的私鑰花費上面的誠信幣。公鑰和地址的生成都依賴於私鑰,所以私鑰才最重要。

手機錢包也是同樣,但因為手機的文件管理方式不像計算機那麼方便。所以一般手機錢包會提供一個名為或類似「導出私鑰」的功能,通過這個功能,就可以將私鑰用各種形式導出來。

比如比特幣手機錢包可以導出為二維碼,可以列印或者掃描到紙上。更換手機時,裝好比特幣錢包掃描一下這個二維碼,就可以實現遷移比特幣。比特幣手機錢包和誠信幣手機錢包可以導出為一份明文字元串,列印到紙上——這就是紙錢包。

紙錢包讓用戶可以到任何有比特幣或誠信幣錢包的終端來花費你的比特幣或誠信幣。

由於錢包丟失或損壞會導致失去私鑰,從而徹底失去該數字貨幣的轉賬權。要防止出現這樣的悲劇,就要記得經常備份錢包里的數據。除了地址外,備份時也保存了所有的私鑰。

總結

  1. 私鑰要保護好,防止丟失,防止忘記,在手機清信息時方式被清除,最好手抄一份,但不要泄露。

  2. 要防止自己錢包丟失或損壞,導致丟失私鑰,喪失數字貨幣的轉賬權,否則你頓再多幣取不出來,還不是沒用。

❸ 什麼是公鑰私鑰

現在很多對稱性加密演算法,都是產生一個密鑰對,就是你所問的公私鑰~
一般來說公鑰是用來加密的~私鑰是用來解密的~
私鑰是公開的,就是用在客戶端~而公鑰則是保密的~
舉個例子吧~
由用戶名A,和公鑰3,可以得到一個序號5
那麼通過私鑰2,可以把序號5解密成A,
這樣就容易驗證序號的合法性,又不會失密~
3和2的確定是用一些特殊的函數做到的,他們之間有一定的關系,有3可以很容易的推出2來,但有2卻很難推出3來~

大體就是這個意思了~

❹ 私鑰公鑰如何生成

常用命令如下:--生成RSA私鑰(傳統格式的)openssl genrsa -out rsa_private_key.pem 1024--將傳統格式的私鑰轉換成PKCS#8格式的openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt--生成RSA公鑰openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

❺ 區塊鏈中的私鑰是指什麼

私鑰公鑰這個名詞可謂是所有考題中最簡單的了。
公開的密鑰叫公鑰,只有自己知道的叫私鑰。
公鑰(Public Key)與私鑰(Private Key)是通過一種演算法得到的一個密鑰對(即一個公鑰和一個私鑰),公鑰是密鑰對中公開的部分,私鑰則是非公開的部分。
一句話明了~

❻ 公鑰私鑰加密技術怎麼做

關於計算機信息加密/解密方面的知識,這個不是幾句話就能夠講得清楚的。
要想熟練掌握這些方面的知識,必須要學習好很多理論課程,尤其是數學知識至關重要!!例如:組合數學、概率論與數理統葉、離散數學、高等數學、計算機密碼編碼學。

❼ 怎樣實現對私鑰(公鑰)進行解密

要實現安全登錄,可以採用下面三種方法,一種基於非對稱加密演算法,一種基於對稱加密演算法,最後一種基於散列演算法。下面我們來分別討論這三種方法。
非對稱加密演算法中,目前最常用的是 RSA 演算法和 ECC(橢圓曲線加密)演算法。要採用非對稱加密演算法實現安全登錄的話,首先需要在客戶端向伺服器端請求登錄頁面時,伺服器生成公鑰和私鑰,然後將公鑰隨登錄頁面一起傳遞給客戶端瀏覽器,當用戶輸入完用戶名密碼點擊登錄時,登錄頁面中的 JavaScript 調用非對稱加密演算法對用戶名和密碼用用公鑰進行加密。然後再提交到伺服器端,伺服器端利用私鑰進行解密,再跟資料庫中的用戶名密碼進行比較,如果一致,則登錄成功,否則登錄失敗。
看上去很簡單,但是這里有這樣幾個問題。目前 RSA 演算法中,1024-2048 位的密鑰被認為是安全的。如果密鑰長度小於這個長度,則認為可以被破解。但這樣的長度超過了程序設計語言本身所允許的數字運算范圍,需要通過模擬來實現大數運算。而在 Web 系統的客戶端,如果通過 JavaScript 來模擬大數運行的話,效率將會是很低的,因此要在客戶端採用這樣的密鑰來加密數據的話,許多瀏覽器會發出執行時間過長,停止運行的警告。然而,解密或者密鑰生成的時間相對於加密來說要更長。雖然解密和密鑰生成是在伺服器端執行的,但是如果伺服器端是 PHP、ASP 這樣的腳本語言的話,它們也將很難勝任這樣的工作。ECC 演算法的密鑰長度要求比 RSA 演算法要低一些,ECC 演算法中 160 位的密鑰長度被認為與 RSA 演算法中 1024 位的密鑰長度的安全性是等價的。雖然仍然要涉及的模擬大數運算,但 ECC 演算法的密鑰長度的運算量還算是可以接受的,但是 ECC 演算法比 RSA 演算法要復雜的多,因此實現起來也很困難。
對稱加密演算法比非對稱加密演算法要快得多,但是對稱加密演算法需要數據發送方和接受方共用一個密鑰,密鑰是不能通過不安全的網路直接傳遞的,否則密鑰和加密以後的數據如果同時監聽到的話,入侵者就可以直接利用監聽到的密鑰來對加密後的信息進行解密了。
那是不是就不能通過對稱加密演算法實現安全登錄呢?其實只要通過密鑰交換演算法就可以實現安全登錄了,常用的密鑰交換演算法是 Diffie-Hellman 密鑰交換演算法。我們可以這樣來實現密鑰的安全傳遞,首先在客戶端向伺服器端請求登錄頁面時,伺服器端生成一個大素數 p,它的本原根 g,另外生成一個隨機數 Xa,然後計算出 Ya = gXa mod p,將 p、g、Ya 連同登錄頁面一起發送給客戶端,然後客戶端也生成一個隨機數 Xb,計算 Yb = gXb mod p,然後再計算 K = YaXb mod p,現在 K 就是密鑰,接下來就可以用 K 作密鑰,用對稱加密演算法對用戶輸入進行加密了,然後將加密後的信息連同計算出來的 Yb 一同發送給伺服器端,伺服器端計算 K = YbXa mod p,這樣就可以得到跟客戶端相同的密鑰 K 了,最後用客戶端加密演算法的相應解密演算法,就可以在伺服器端將加密信息進行解密了,信息解密以後進行比較,一致則登錄成功,否則登錄失敗。需要注意的時候,這里伺服器端生成的隨機數 Xa 和 客戶端生成的隨機數 Xb 都不傳遞給對方。傳遞的數據只有 p、g、Ya、Yb 和加密後的數據。
但是如果我們不採用加密演算法而採用散列演算法對登錄密碼進行處理的話,可以避免被直接解密出原文,但是如果直接採用 MD5 或者 SHA1 來對登錄密碼進行處理後提交的話,一旦入侵者監聽到散列後的密碼,則不需要解密出原文,直接將監聽到的數據提交給伺服器,就可以實現入侵的目的了。而且,目前 MD5 演算法已被破解,SHA1 演算法則被證明從理論上可破解,就算採用離線碰撞,也可以找出與原密碼等價的密碼來。所以直接採用 MD5 或者 SHA1 來對密碼進行散列處理也是不可行的。
但是如果在散列演算法中加入了密鑰,情況就不一樣了。hmac 演算法正好作了這樣的事情,下面我們來看看如何用 hmac 演算法實現安全登錄。首先在客戶端向伺服器端請求登錄頁面時,伺服器端生成一個隨機字元串,連同登錄頁面一同發送給客戶端瀏覽器,當用戶輸入完用戶名密碼後,將密碼採用 MD5 或者 SHA1 來生成散列值作為密鑰,伺服器端發送來的隨機字元串作為消息數據,進行 hmac 運算。然後將結果提交給伺服器。之所以要對用戶輸入的密碼進行散列後再作為密鑰,而不是直接作為密鑰,是為了保證密鑰足夠長,而又不會太長。伺服器端接受到客戶端提交的數據後,將保存在伺服器端的隨機字元串和用戶密碼進行相同的運算,然後進行比較,如果結果一致,則認為登錄成功,否則登錄失敗。當然如果不用 hmac 演算法,直接將密碼和伺服器端生成的隨機數合並以後再做 MD5 或者 SHA1,應該也是可以的。
這里客戶端每次請求時伺服器端發送的隨機字元串都是不同的,因此即使入侵者監聽到了這個隨機字元串和加密後的提交的數據,它也無法再次提交相同的數據通過驗證。而且通過監聽到的數據也無法計算出密鑰,所以也就無法偽造登錄信息了。
對稱和非對稱加密演算法不僅適用於登錄驗證,還適合用於最初的密碼設置和以後密碼修改的過程中,而散列演算法僅適用於登錄驗證。但是散列演算法要比對稱和非對稱加密演算法效率高。

❽ RSA公鑰與私鑰的使用

這是加密過的倆個密鑰嗎? 沒記錯的話RSA的公鑰和密鑰是兩個數字啊

❾ 說明公鑰和私鑰各在什麼時候使用

1.公鑰和私鑰是一對經過演算法得出來的兩個文件,一個私鑰只對應一個公鑰,也就是有唯一性
密鑰的路徑:*.pkr是公鑰 而 *.skr是私鑰

2.獲得別人的公鑰可以使用PGP 軟體里的「搜索」從「keyserver.pgp.com」伺服器上找到。或者讓對方給你發一個公鑰給你。PGP一般用來發郵件較多,已經支待Out Look 或第三方郵件客戶端。發郵件時PGP會檢測到有一個會話(PGP軟體里可以設置加密方式:所有郵件,指定域名或收件人等等)他會自動查詢本地公鑰且加密發送出去。要是只發個文件的話你可以用PGP軟體里的「新建 PGP壓縮包」 加密分單獨設密碼或者用對方的公鑰加密。
3.PGP軟體界面左側:公鑰一般都在「全部密鑰」里、個人的私鑰在「我的私鑰」里。「全部密鑰」里存放的都是別人的公鑰包括你自己的,想把公鑰給別人的話在那個公鑰上」右鍵-->導出.「即可(是一個*.asc的文件)。在菜單「密鑰」里有PGP密鑰環屬性。你會看到公私鑰存放的位置。
4.發郵時件如設置後PGP會自動加密解密。發文件時在「新建 PGP壓縮包」 加密,周上第2點的後一句。私鑰不會在別人那裡,只有在自己手裡。除非你發給對方,用對方的公鑰加密文件,然後對方用自己的私鑰解密用自己公鑰加密的文件,反之對方用你的公鑰加密發給你。
5.PGP生成的是一對公私鑰是兩個文件,同上第1點。郵件加密的時候軟體自動幫你用對方的公鑰加密一般你不用管的。文件加密時注意下發給誰的用誰的公鑰加密,因為有唯一性

追問:
1.Key中已校驗選項為灰色,不是綠色的勾,請問是否有影響,如有該怎麼修正

答:發郵件肯定會有影響,國為灰色的PGP軟體不會啟用,發郵件是會提示找不到公鑰,需要你手動簽下名,右鍵灰色公鑰「sign」簽名。這種情況一般是由於對方沒有在PGP伺服器上傳後驗證或是PGP軟體的bug.
2.發送到伺服器的公鑰是跟郵箱掛鉤的,那也就可以直接攻擊郵箱後,重新製作公鑰,用製作公鑰發送到伺服器替換原本公鑰,這樣就可以冒充原公鑰,用新私鑰解密。這就不安全了啊。
答:一個私鑰只對應一個公鑰,也就是有唯一性。別忘了私鑰只在自己手裡哦。

熱點內容
區塊鏈幣圈今天的話題 發布:2025-07-05 15:22:06 瀏覽:796
玩區塊鏈的人群 發布:2025-07-05 15:06:06 瀏覽:123
VP幣是傳銷還是真正區塊鏈 發布:2025-07-05 15:01:21 瀏覽:453
個人還能挖比特幣嗎 發布:2025-07-05 14:46:43 瀏覽:680
幣圈財富自由論壇 發布:2025-07-05 14:12:52 瀏覽:844
挖比特幣有沒有風險 發布:2025-07-05 14:02:51 瀏覽:82
BE區塊鏈生態算網路傳銷嗎 發布:2025-07-05 13:34:31 瀏覽:657
幣圈是什麼控制漲跌 發布:2025-07-05 12:51:01 瀏覽:385
以太坊的運作過程 發布:2025-07-05 12:34:09 瀏覽:207
如何銷售區塊鏈會議 發布:2025-07-05 11:34:12 瀏覽:219