J'ai un petit soucis pour décrypter un fichier en utilisant l'algo blowfish. Le cryptage se passe sans problème:
la classe cl_BlowFish permet de faire toutes les opérations de cryptage / décryptage (en utilisant les classes Cipher...
la méthode crypt donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 cl_BlowFish acl_BlowFish = new cl_BlowFish(); acl_BlowFish.generateKey(); byte[] secretKey = acl_BlowFish.getSecretKeyInBytes(); byte[] ciphertext = acl_BlowFish.crypt(fichier_countain1);
j'écris ensuite fichier_countain1 dans un fichier: je récupère bien le code crypté.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public byte[] crypt(byte[] plaintext) { try { Cipher cipher = Cipher.getInstance("Blowfish"); cipher.init(Cipher.ENCRYPT_MODE, secretKey); return cipher.doFinal(plaintext); } catch (Exception e) {System.out.println(e);} return null; }
Vies ensuite le décryptage, je récupère le code crypté du fichier précédent, mais je n'arrive pas à le décrypté :
fichier_countain est le string qui contient le texte crypté de la fonction précédente.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 cl_BlowFish acl_BlowFish = new cl_BlowFish(); acl_BlowFish.generateKey(); byte[] secretKey = acl_BlowFish.getSecretKeyInBytes(); acl_BlowFish.setSecretKey(secretKey); byte [] aByte = new byte[128]; aByte = fichier_countain.getBytes(); String res = acl_BlowFish.decryptInString(aByte);
le pb ne vient ps de la méthode decryptInString, je l'ai testé plusieurs fois.
ça serait sympa de m'aider, c un tp à rendre pour hier...
Partager