1
我想知道是否有可能從私鑰恢復RSA公鑰?私人密鑰加載像這樣:是否有可能從私鑰的byte []數組中恢復RSA公鑰?
PrivateKey privateKey = GnuRSAPrivateKey.valueOf(Utils.hexStringToBytes(prvKey));
如何從私人加載PublicKey? privateKey.getFormat返回null。
我想知道是否有可能從私鑰恢復RSA公鑰?私人密鑰加載像這樣:是否有可能從私鑰的byte []數組中恢復RSA公鑰?
PrivateKey privateKey = GnuRSAPrivateKey.valueOf(Utils.hexStringToBytes(prvKey));
如何從私人加載PublicKey? privateKey.getFormat返回null。
我假設你的GnuRSAPrivateKey
是從the GNU Crypto project。
A GnuRSAPrivateKey
實例包含私鑰,其中包含一些額外的值,這些值不是實現RSA所需要的,但仍然受歡迎用於性能(使用中國剩餘定理)和安全性(公開指數對於掩蔽,這有助於防止時間攻擊)。因此,這個私鑰還包含公鑰。
所以這應該工作:
GnuRSAPrivateKey sk = GnuRSAPrivateKey.valueOf(theEncodedPrivateKey);
PrivateKey privateKey = sk;
PublicKey publicKey = new GnuRSAPublicKey(sk.getN(), sk.getE());
它的工作原理!謝謝 :) – dynax60
注意,這是一個大約長棄用的加密工具庫的問題。 –