Bonjour
Je cherche à crypter et décrypter un flux en binaire. Le cryptage se passe visiblement sans problème mais lorsque je cherche à décrypter j'ai une erreur "Données incorrectes". Voici mon code :
Si quelqu'un a une idée car là je sèche :p
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 public static Stream EncryptStream(Stream streamIn) { MemoryStream ms = new MemoryStream(); DESCryptoServiceProvider DES = new DESCryptoServiceProvider(); List<byte[]> secure = GenerateAlgotihmInputs(); byte[] key = secure[0]; byte[] iv = secure[1]; ICryptoTransform desencrypt = DES.CreateEncryptor(); CryptoStream cryptostream = new CryptoStream(ms, desencrypt, CryptoStreamMode.Write); byte[] bytearrayinput = new byte[streamIn.Length - 1]; streamIn.Read(bytearrayinput, 0, bytearrayinput.Length); cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length); return ms; } public static Stream DecryptStream(Stream streamIn) { MemoryStream ms = new MemoryStream(); DESCryptoServiceProvider DES = new DESCryptoServiceProvider(); List<byte[]> secure = GenerateAlgotihmInputs(); byte[] key = secure[0]; byte[] iv = secure[1]; ICryptoTransform desdecrypt = DES.CreateDecryptor(); CryptoStream cryptostreamDecr = new CryptoStream(streamIn, desdecrypt, CryptoStreamMode.Read); StreamWriter fsDecrypted = new StreamWriter(ms); fsDecrypted.Write(new StreamReader(cryptostreamDecr).ReadToEnd()); fsDecrypted.Flush(); fsDecrypted.Close(); return ms; }
Merci
Partager