[AES]Chiffrer - Déchiffrer un String : encodage ?
Hello,
j'ai créé deux "bêtes" méthodes pour chiffrer déchiffrer un String avec AES :
Code:
1 2 3 4 5 6 7 8
| public static String chiffrerLigne(String ligne, SecretKeySpec skeySpec) throws Exception{
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
byte[] outText = cipher.doFinal((ligne.getBytes()));
return (new String(outText));
} |
Code:
1 2 3 4 5 6 7 8
| public static String dechiffrerLigne(String ligne, SecretKeySpec sksp) throws Exception{
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.DECRYPT_MODE, sksp);
byte[] outText = cipher.doFinal((ligne.trim().getBytes()));
return (new String(outText));
} |
Cependant, j'ai comme l'impression que ça n'est pas la bonne façon de procéder :?
Bien que ça marche sur une seule et même machine, le chiffrement est censé être effectué depuis une autre machine...
Cette méthode est-elle fiable ?
Est-ce que je risque d'avoir des problèmes d'encodage lors de la récup du String ?
J'ai essayé de mettre un petit "UTF-8" mais ça plante tout :aie:
Enfin si vous avez une meilleure idée, n'hésitez pas...
Merci
NB : Je ne passe pas par un fichier pour la lecture du String, donc pas de FileInputStream possible...