Kryptering med AES!
Hej jeg har følgende spørgsmål, jeg har noget som jeg gerne vil have krypteret og dekrypteret igen, men jeg får en fejl ud fra den kode som er fundet på codeproject.com9VOMae3BptSi/KUzMH/4Dg== Denne linje kan ikke dekrypteres
Har prøvet med forskellige andre, menjeg kan ikke se hvad forskellen er på denne og nogle af mine andre strengen, jeg sender koden til dekryptering og kryptering__
private static string EncryptText(string clearText, string Password)
{
byte[] clearBytes = System.Text.Encoding.Unicode.GetBytes(clearText);
//Dan nøgle og initialiseringsvektor ud fra medsendte password
PasswordDeriveBytes pdb = new PasswordDeriveBytes(Password,
new byte[] {0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d,
0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76});
// Åben memorystream
MemoryStream ms = new MemoryStream();
// Dan symmetrisk algoritme og sæt key og initialiseringsvektor
Rijndael alg = Rijndael.Create();
alg.Key = pdb.GetBytes(32);
alg.IV = pdb.GetBytes(16);
// Dan krypteret stream via memorystream
CryptoStream cs = new CryptoStream(ms, alg.CreateEncryptor(), CryptoStreamMode.Write);
cs.Write(clearBytes, 0, clearBytes.Length);
cs.Close();
// Hent of returner den krypterede data fra memorystream
byte[] encryptedData = ms.ToArray();
return Convert.ToBase64String(encryptedData);
}
private static string DecryptText(string cipherText, string Password)
{
if (cipherText.Length == 0)
return "";
byte[] cipherBytes = Convert.FromBase64String(cipherText);
PasswordDeriveBytes pdb = new PasswordDeriveBytes(Password,
new byte[] {0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65,
0x64, 0x76, 0x65, 0x64, 0x65, 0x76});
MemoryStream ms = new MemoryStream();
Rijndael alg = Rijndael.Create();
alg.Key = pdb.GetBytes(32);
alg.IV = pdb.GetBytes(16);
CryptoStream cs = new CryptoStream(ms,
alg.CreateDecryptor(), CryptoStreamMode.Write);
cs.Write(cipherBytes, 0, cipherBytes.Length);
cs.Close();
byte[] decryptedData = ms.ToArray();
return System.Text.Encoding.Unicode.GetString(decryptedData);
}
