RSA非對稱可以通過私鑰獲取公鑰嗎?

時間 2021-05-06 19:32:41

1樓:hohoha

正好也有同樣的疑問:理論上「私鑰」和「公鑰」應該只是人為的選擇而已,為什麼用openssl或者ssh-keygen命令可以從私鑰中提取出公鑰呢?

搜尋到了Can I get a public key from an RSA private key?

按照裡面的建議用openssl -text命令檢視了一下任意生成的乙個「私鑰」,裡面其實包含了「公鑰」的描述資訊。

看來理論是一回事,實際製作出來的工具又是另一回事。

2樓:

私鑰是你自己隨便定義的(如果不嫌煩,可以通過拋硬幣的方式來確定),所謂的函式也只是幫你隨機生成。

然後通過私鑰再生成公鑰。

私鑰需要保密,公鑰無需保密。

通過公鑰加密的,可以用私鑰解密;

通過私鑰加密的,也可以通過公鑰解密。

3樓:張暉

可以用公鑰驗證私鑰,但是不能從公鑰得出私鑰。RSA的原理是得到兩個大素數的乘積是簡單的事,但想從該乘積反推出這兩個大素數卻沒有任何有效的辦法。

4樓:屠蘇

RSA的私鑰和公鑰,沒有數學意義的區別。僅僅是應用時,選擇公開那乙個。所以,私鑰推算公鑰,或者公鑰推算私鑰,複雜度也是一樣的。

具體而言就是,RSA演算法的可靠性依賴於大整數的因數分解的複雜度。比如,對於整數63,我們看一眼,就知道7*9=63。

可是如果這個整數是3233,哪兩個數相乘等於3233呢?人工運算不太容易,如果使用計算機,可以得到61*53=3233。

現實中,作為金鑰使用的大整數,一般是1024位或者2048位的。你可以想象一下,破解的難度。

回頭再強調一遍,RSA的私鑰,公鑰沒有數學意義的區別。僅僅是應用時,選擇公開那乙個。公開的那個是公鑰,不公開的就是私鑰。

這是我本科學的東西,只記得大概了。有錯誤請其他答主指出。

5樓:0xFE

私鑰和公鑰在rsa涉及的數學問題上地位是相等的,只是在rsa運用上通過功能和計算問題區分私鑰和公鑰。私鑰是使用者自己儲存用來解密訊息的,這個key只能自己知道,所謂私鑰。私鑰和公鑰是關於大整數p-1 q-1互逆的,可以相互推算。

6樓:

從理論上來說是可以的。

首先,我們來看RSA演算法的定義:

選取兩個大質數,,計算

任意選擇一正整數,使得與互質。

根據計算的值。

公鑰私鑰

加密過程 (C為密文,P為明文):

解密過程

秘鑰中和的地位是對等的,在足夠大的時候,知道其中乙個,並不能在多項式時間內計算出另乙個的值。

也就是說,你可以任意選擇乙個秘鑰公開,然後將這個秘鑰作為公鑰,將另外乙個作為私鑰。

但是在實際的使用中,通常,如果是真·隨機選取的話,在加解密、簽名驗證的過程中大概會有超過1000次的模乘運算,所以,在RFC 2313 - PKCS #1: RSA Encryption Version 1.5中,建議公鑰的的值選擇是3或65537()。

這樣,公鑰加密、私鑰簽名的模乘運算次數可以降低到2次()和17次(),可以顯著的提高在實際應用中RSA演算法的效率。

非對稱資訊下的決策博弈?

我不是做博弈論的,不過這真的是博弈論嗎?我總感覺這像概率題,從乙個分布未知的環境中找到高於均值的值,因為黑箱子自己也不知道自己有什麼樣的分布啊。我們如果把題目改成下面這樣,我覺得應該就是你說的非對稱資訊的博弈了。假設對面有乙個人拿著黑箱子,裡面放著十個質地形狀相同的小球,惟一不同的是球上都標著數字 ...

非對稱加密的設計原理是什麼?

劉昴星 非對稱加密其實只是指加密和解密使用的金鑰不一樣的加密方法。你只要在數學上能證明你的明文通過公鑰能進行加密,通過私鑰能進行正確的解密,而公鑰和私鑰又不一樣,那你就設計了一種非對稱加密演算法。例如我們把凱撒密碼換一種方式 比如乙個26個字母的輪盤,加密就是順時針轉3格,a變d,b變e z變c,解...

DH演算法為什麼屬於非對稱加密演算法?

雲子可信 DH 演算法其實也叫作Diffie Hellman金鑰交換協議,是乙個不安全的秘鑰共享網路協議,無法避免中間人攻擊。假設Ali和Bob需要互相通訊並共享秘鑰 Ali先給Bob乙個明文共享引數 此資訊可以被任何人識別 Ali自己生成乙個隨機數 Ali的私鑰 並不將 告訴包括Bob在內的任何人...