Guten Abend
Habe folgendes Problem.
Möchte ein Object abspeichern, das sozusagen mit random Werten in einer Methode erstellt wird
In einer anderen Methode möchte ich dieses Object dann aufrufen bzw mit dem gespeicherten File füllen. Erhalte ständig diesen Error:
Hier der Quellcode dazu:
Wo liegt mein Fehler ... >.<
Habe folgendes Problem.
Möchte ein Object abspeichern, das sozusagen mit random Werten in einer Methode erstellt wird
In einer anderen Methode möchte ich dieses Object dann aufrufen bzw mit dem gespeicherten File füllen. Erhalte ständig diesen Error:
Java:
java.lang.ClassCastException: java.io.ObjectInputStream cannot be cast to javax.crypto.SecretKey
Exception in thread "main" java.security.InvalidKeyException: No installed provider supports this key: (null)
at javax.crypto.Cipher.a(DashoA13*..)
at javax.crypto.Cipher.init(DashoA13*..)
at javax.crypto.Cipher.init(DashoA13*..)
at Encryption.decrypt(Encryption.java:160)
at Encryption.main(Encryption.java:176)
Hier der Quellcode dazu:
Java:
public static void saveObject(Object o, String filename)
{
try
{
FileOutputStream fos = new FileOutputStream(filename);
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(o);
oos.close();
}
catch(IOException e)
{
System.err.println( e );
}
}
/**
* Aufruf eines gespeicherten SecretKey Objects
*/
public static SecretKey getSecretKey(String filename)
{
SecretKey var = null;
try
{
FileInputStream file = new FileInputStream( filename );
ObjectInputStream o = new ObjectInputStream( file );
var = (SecretKey) o;
o.close();
}
catch (Exception e)
{
System.err.println( e );
}
return var;
}
[/Java]
Methode zum speichern funktioniert zu 100%, der Aufruf in folgender Methode dann aber nicht:
[code=Java]
public static void decrypt(String filepath, String filepath_Key) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException
{
SecretKey secretkey = getSecretKey(filepath_Key);
....
}
Wo liegt mein Fehler ... >.<
Zuletzt bearbeitet: