/// <summary> /// /// </summary> /// <param name="data"></param> /// <param name="key"></param> /// <returns></returns> public static string Decrypt(EncryptionResult data, string key) { if (data == null) throw new ArgumentNullException("data"); var cipherBytes = Convert.FromBase64String(data.CipherText); if (key == null || key.Length == 0) throw new ArgumentNullException("key"); var saltBytes = Convert.FromBase64String(data.Salt); var keyBytes = ASCIIEncoding.ASCII.GetBytes(key); return Decrypt(cipherBytes, saltBytes, keyBytes); }
/// <summary> /// Ontsleutel een versleutelde string welke is versleuteld met de Encrypt methode. /// </summary> /// <param name="secureString">De volledige secure string zoals deze gegenereerd wordt door Encrypt()</param> /// <returns>De originele (ontsleutelde) tekststring</returns> public static string Decrypt(string secureString) { if (String.IsNullOrEmpty(secureString)) return secureString; var data = new EncryptionResult(secureString); var saltBytes = Convert.FromBase64String(data.Salt); var cipherBytes = Convert.FromBase64String(data.CipherText); return Decrypt(cipherBytes, saltBytes, MasterKey); }