Я пытаюсь преобразовать свой закрытый ключ в RSA в ключ из строки, но по какой-то причине он выводит системную ошибку.Преобразование строки в ключ для шифрования
static private Key privatekey;
try{
byte[] keyprivBytes = Base64.decode(KeypriString,0);
PKCS8EncodedKeySpec specpriv = new PKCS8EncodedKeySpec(keyprivBytes);
KeyFactory keyFactorypriv = KeyFactory.getInstance("RSA");
privatekey = keyFactorypriv.generatePrivate(specpriv); <--(here is where the logcat says the code is broken)
}catch(UnsupportedEncodingException | InvalidKeySpecException | NoSuchAlgorithmException e){
e.printStackTrace();
}
, в котором keypriString
является String
, где мой секретный ключ.
LogCat:
11-12 11:11:20.066 15141-15141/<pakage name> W/System.err: java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
11-12 11:11:20.066 15141-15141/<pakage name> W/System.err: at com.android.org.conscrypt.OpenSSLKey.getPrivateKey(OpenSSLKey.java:180)
11-12 11:11:20.076 15141-15141/<pakage name> W/System.err: at com.android.org.conscrypt.OpenSSLRSAKeyFactory.engineGeneratePrivate(OpenSSLRSAKeyFactory.java:64)
11-12 11:11:20.076 15141-15141/<pakage name> W/System.err: at java.security.KeyFactory.generatePrivate(KeyFactory.java:187)
11-12 11:11:20.076 15141-15141/<pakage name> W/System.err: at <pakage name>.Crypto.<init>(Crypto.java:62)
Может кто-нибудь сказать мне эту проблему ??
пожалуйста, вы можете опубликовать весь ваш LogCat сообщение – Anjali
это весь LogCat связан с проблемой, остальное лишь некоторые журналами я сделал при использовании шифрования – NobodyNemo
, но у вас нет упоминания о том, за исключением чего вы получаете – Anjali