Oppure

Loading
06/12/05 9:46
tyler
Sto` implementando un sistema di anonimato e un metodo che ho implementato di una classe (per crittografia simmetrica) in fase di esecuzione (del main) lancia una eccezione..


La classe ha come come VARIABILI DI CLASSE:

protected KeyGenerator kg;
protected Key key;
protected Cipher c;

Il metodo che codifica funziona; il metodo che decodifica un file cifrato creando un nuovo file con il contenuto in chiaro lancia nell' esecuzione del main una eccezione in cui mi dice che devo mettere un provider come parametro di init..(java.security.InvalidKeyException: No installed Provider supports this key: (null))

Il codice del metodo che non va` e` il seguente:

public void decodifica(String cipheredFile)throws Exception{
FileInputStream ciphered = new FileInputStream(cipheredFile);
ByteArrayOutputStream baos2 = new ByteArrayOutputStream();
int j = 0;
while((j = ciphered.read()) != -1) {
baos2.write(j);
}
byte[] toDecrypt = baos2.toByteArray();
c = Cipher.getInstance("AES/CBC/PKCS5Padding";);
c.init(Cipher.DECRYPT_MODE, key);
byte[] decrypted = c.doFinal(toDecrypt);
FileOutputStream fos = new FileOutputStream(cipheredFile + ".simm.decoded";);
fos.write(decrypted);
fos.close();
}

Ho studiato le API ma non ho ben compreso cos'e` un Provider, il suo uso e come introdurlo nel codice..

Se qualcuno puo` aiutarmi lo ringrazio molto!
:k:
aaa
06/12/05 11:15
tyler
Cos'e` la classe IvParameterSpec?
Credo sia cio` di cui ho bisogno per far funzionare il mio metodo..
Qualcuno sa` spiegarmi cosa fa questa classe?
aaa
06/12/05 11:18
tyler
PS: ho gia` guardato gli esempi di codici sulla crittografia pubblicati in questo sito.., e` per questo che sto` cercando aiuto anche nel forum.., perche` non mi sono stati sufficienti per capire questo inghippo..(sono ottimi cmq.., mi hanno fatto capire moltissime cose!)
aaa
06/12/05 21:26
pierotofy
A giudicare dal messaggio dell'eccezione, probabilmente la classe che stai cercando di richiamare non ? disponibile, probabilmente si tratta di un package aggiuntivo non fornito assieme all'SDK standard.

Prova a consultare sul sito della SUN se ? effettivamente un package aggiuntivo.
Il mio blog: piero.dev
07/12/05 14:12
tyler
Ho risolto.., ho messo a posto qualche parametro e ora funziona..; grazie dell'aiuto cmq..

Ciao!
aaa