[java] cryptographie et fichiers
Bonjour
Voila, j'essaye en ce moment d'écrire dans un fichier une clé privée utilisant l'algorithme AES cryptée par une clé publique avec l'algo RSA.
Mais bon voila, quand j'essaye d'écrire la clé privée cryptée, j'ai une erreur de pointeur nul! Comme si mon fichier n'existait pas ou quelque chose comme ça!
Et rien ne s'écrit dans mon fichier.
Et pourtant, le code est inspiré des exemples du site de sun
quelqu'un aurait une idée??
Merci à l'avance
Maily :-))))
Voila, j'essaye en ce moment d'écrire dans un fichier une clé privée utilisant l'algorithme AES cryptée par une clé publique avec l'algo RSA.
Mais bon voila, quand j'essaye d'écrire la clé privée cryptée, j'ai une erreur de pointeur nul! Comme si mon fichier n'existait pas ou quelque chose comme ça!
Et rien ne s'écrit dans mon fichier.
Et pourtant, le code est inspiré des exemples du site de sun
//récupération de la clé secrète
byte[] cleSecrete= secretKey.getEncoded();
String st=new String(cleSecrete);
//
byte[] cleSecCrypt= cip.doFinal(cleSecrete);
//System.out.println("taille cle "+cleSecrete.length);
// Ecriture de la clé secrète cryptée dans un fichier
File CledesFile = new File("C:\\key.txt");
FileOutputStream file= new FileOutputStream(CledesFile);
BufferedOutputStream bufFile = new BufferedOutputStream(file);
CipherOutputStream cipFile= new CipherOutputStream(bufFile,cip);
System.out.println(cipFile.toString());
ObjectOutputStream objFile= new ObjectOutputStream(cipFile);
System.out.println(objFile.toString()+" "+objFile.getClass());
objFile.writeObject(st);
objFile.writeInt(st.length());
//l'erreur vient de cette ligne la, ou j'essaye de fermer mon stream
objFile.close();
quelqu'un aurait une idée??
Merci à l'avance
Maily :-))))
12 réponses
-
ContributeurOn va le remonter un petit coup....
Si c'est pas très clair, n'hésitez pas à me poser des questions!!!
Maily :-)))) -
Contributeurhop...
Personne n'a la moindre idée??
Maily :-)))) -
peut etre tu dois fermer avant ton "cipFile"
!!!
bon travail -
-
et si tu n'ecris pas cette ligne ??
pas d'erreur ?? -
ContributeurSi je ne l'écris pas, il n'y a rien qui s'écrit dans mon fichier... Elle est obligatoire!
Maily :-)))) -
c sert à koi CipherOutputStream
et puis peut etre tu dois le fermer avant -
cipfile.close() ;
tu ne l'as pas ecris!!? -
ContributeurSi, j'ai essayé, mais ça ne marche pas non plus!!
Maily :-)))) -
il faut le fermer avant
cipFile.close();
puis
objFile.close(); -
ContributeurEt bien non, j'ai toujours la même erreur, mais cette fois ci sur
cipFile.close()
Maily :-)))) -
alors l'erreur est peut etre juste avant les deux
il faut fermer avant
CledesFile .close et
file.close()