Wie erstelle ich eine RSAPrivateKey Beispiel aus einem byte-array?

Hallo, ich versuche eine Datei entschlüsseln, verschlüsselt mit dem öffentlichen RSA-Schlüssel. Ich habe eine 3072-bit-RSA-private-key der entsprechenden pubkey. Die Datei enthält die rohen bytes der PKCS8-Codierung der Schlüssel. die habe ich in ein byte-array rsa_priv.

public void decrypt()
{
try
{
    SecretKeySpec sk=new SecretKeySpec(rsa_priv,"RSA/EBC/PKCS8");
    Cipher dec = Cipher.getInstance("RSA");
    dec.init(Cipher.DECRYPT_MODE, sk,new IvParameterSpec(iv));
     //OAEPWithSHA-512AndMGF1Padding        
     byte temp[];
     temp=dec.doFinal(sess);
     String t=temp.toString();
     System.out.println("Session key is:"+ t);
     //session=dec(sess,rsa_priv);OAEPWithSHA-256AndMGF1Padding
}
catch (Exception e)
{
    System.out.println("Exception occured:"+ e);
}
}

wenn ich diesen code ausführen bekomme ich folgende

Exception occured:java.security.InvalidKeyException: No installed provider 
supports this key: javax.crypto.spec.SecretKeySpec

Habe ich importiert diese

import java.io.*;
import javax.crypto.*; 
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import javax.crypto.KeyGenerator;
import java.security.*;
import javax.crypto.SecretKey;
import javax.crypto.spec.OAEPParameterSpec;

mir bitte jemand helfen

  • Willkommen neue user! Vergessen Sie nicht, die änderungen anzeigen, die made, die von Jeremy D. Bitte Folgen Sie up auf Ihre Frage und vergessen Sie nicht zu akzeptieren, die Antworten, dass löst Ihr Problem.
InformationsquelleAutor user1662202 | 2012-09-11
Schreibe einen Kommentar