2014-09-28 477 views
0

我知道RSA私鑰包含相關公鑰的信息。我怎樣才能從私鑰轉儲公鑰?我想在沒有openssl的iOS環境中執行此操作。可能嗎?從C++中的RSA私鑰中提取公鑰沒有openssl

+0

你的私鑰是什麼格式? – 2014-09-29 08:14:17

+0

私鑰爲PEM格式。 – yohon 2014-09-29 08:28:54

+0

PEM是一種編碼,而不是格式。什麼*格式*是你的鑰匙? – 2014-09-29 08:29:31

回答

0

是有可能......

但你要處理大約關鍵是如何表示的方式,所有的東西,即如何在關鍵的特定部分存儲在一個文件中,等

您的私鑰由一些數字組成,通常是這樣的: d(私有指數),N(共同模數)P,Q(兩個非常大的素數)dP和dQ(計算快捷方式的中間值...忽略你的任務)

你想要做的是計算PHI =(P-1)*(Q-1),然後運行擴展的歐幾里德算法HM(參見維基百科爲)爲d和PHI找到d國防部PHI的乘法逆元素......這個元素是E(公共指數)

你的公鑰,然後是元組(E,N)

+0

許多私有關鍵格式也存儲公共指數。這使生活變得相當容易。 – 2014-09-29 08:27:50

+0

你有任何源代碼參考? – yohon 2014-09-29 09:28:04

+0

nope ...但它不應該是很難找到的東西,把你的關鍵分解成它的部分...尋找開源的東西,像你的處理鍵... openssl例如...也許這也可以幫助你https://www.openssl.org/docs/apps/asn1parse.html – DarkSquirrel42 2014-10-02 06:33:35