private const string strKey = "Key";
private const string strIV = "IV";
public static string Encrypt(string message)
{
if (string.IsNullOrEmpty(message))
{
return string.Empty;
}
var keyBuffer = CryptographicBuffer.ConvertStringToBinary(strKey, BinaryStringEncoding.Utf8);
var ivBuffer = CryptographicBuffer.ConvertStringToBinary(strIV, BinaryStringEncoding.Utf8);
var messageBuffer = CryptographicBuffer.ConvertStringToBinary(message, BinaryStringEncoding.Utf8);
var provider = SymmetricKeyAlgorithmProvider.OpenAlgorithm(SymmetricAlgorithmNames.DesCbcPkcs7);
var key = provider.CreateSymmetricKey(keyBuffer);
var buffEncrypt = CryptographicEngine.Encrypt(key, messageBuffer, ivBuffer);
return CryptographicBuffer.EncodeToBase64String(buffEncrypt);
}
public static string Decrypt(string encryptedBase64String)
{
if (string.IsNullOrEmpty(encryptedBase64String))
{
return string.Empty;
}
var buffer = CryptographicBuffer.ConvertStringToBinary(strKey, BinaryStringEncoding.Utf8);
var ivBuffer = CryptographicBuffer.ConvertStringToBinary(strIV, BinaryStringEncoding.Utf8);
var provider = SymmetricKeyAlgorithmProvider.OpenAlgorithm(SymmetricAlgorithmNames.DesCbcPkcs7);
var keyBuffer = provider.CreateSymmetricKey(buffer);
var decryptedBuffer = CryptographicEngine.Decrypt(keyBuffer, CryptographicBuffer.DecodeFromBase64String(encryptedBase64String), ivBuffer);
return CryptographicBuffer.ConvertBinaryToString(BinaryStringEncoding.Utf8, decryptedBuffer);
}