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 30 31 32 33 34 35 36 37 38 39 40 41 42
|
private static string EncryptString(string clearText, string strKey, string strIv)
{
// Place le texte à chiffrer dans un tableau d'octets
byte[] plainText = Encoding.UTF8.GetBytes(clearText);
// Place la clé de chiffrement dans un tableau d'octets
byte[] key = Encoding.UTF8.GetBytes(strKey);
// Place le vecteur d'initialisation dans un tableau d'octets
byte[] iv = Encoding.UTF8.GetBytes(strIv);
RijndaelManaged rijndael = new RijndaelManaged();
// Définit le mode utilisé
rijndael.Mode = CipherMode.CBC;
// Crée le chiffreur AES - Rijndael
ICryptoTransform aesEncryptor = rijndael.CreateEncryptor(key, iv);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
// Ecris les données chiffrées dans le MemoryStream
CryptoStream cs = new CryptoStream(ms, aesEncryptor, CryptoStreamMode.Write);
cs.Write(plainText, 0, plainText.Length);
cs.FlushFinalBlock();
// Place les données chiffrées dans un tableau d'octet
byte[] CipherBytes = ms.ToArray();
ms.Close();
cs.Close();
// Place les données chiffrées dans une chaine encodée en Base64
return Convert.ToBase64String(CipherBytes);
} |
Partager