Bonjour a tous
je réalise une application qui fait le cryptage/decryptage de données (images en particulier),pour cela j'utilise la classe Rijndael (algorithme AES),l'opération de cryptage se déroule tres bien,mais lors du décryptage l'erreur "Longueur des données à déchiffrer non valide" est générée
voici le code
Cryptage:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public Rijndael AES = Rijndael.Create(); AES.GenerateKey(); AES.GenerateIV(); Key = AES.Key; Iv = AES.IV;
////////////////////////////////////////////////////////////////////////
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public byte[] Encrypt(byte[] In) { byte[] Out = new byte[In.Length]; MemoryStream Temp = new MemoryStream(In); CryptoStream cStream = new CryptoStream(Temp, AES.CreateEncryptor(Key, Iv), CryptoStreamMode.Read); cStream.Read(Out, 0, In.Length ); cStream.Close(); return Out;
Décryptage:
Je vous remercie d'avance de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public byte[] Decrypt(byte[] In) { byte[] Out = new byte[In.Length]; MemoryStream Temp = new MemoryStream(In); CryptoStream cStream = new CryptoStream(Temp, AES.CreateDecryptor(Key, Iv), CryptoStreamMode.Read); cStream.Read(Out, 0, In.Length); cStream.Close(); return Out; }
Partager