Encrypt.cs
BitmapImage bitmapImage = new BitmapImage(new Uri(this.BaseUri,@"D:\Others\Quotes\1.jpg"));
var plainString = bitmapImage;
string key = txtkey.Text; // Key
string encryptedString = await EncryptStringHelper(plainString.ToString(), key); // Encrypt method and get string
txbencrypt.Text = encryptedString;
Decrypt.cs
string encryptedString = txbencrypt.Text; // Encrypt text
string key = txtkey.Text; // Same key
string decryptedString = await DecryptStringHelper(encryptedString, key);
imgoutput.Source = decryptedString;
private Task<string> EncryptStringHelper(string plainString, string key)
{
try
{
var hashKey = GetMD5Hash(key);
var decryptBuffer = CryptographicBuffer.ConvertStringToBinary(plainString, BinaryStringEncoding.Utf8);
var AES = SymmetricKeyAlgorithmProvider.OpenAlgorithm(SymmetricAlgorithmNames.AesEcbPkcs7);
var symmetricKey = AES.CreateSymmetricKey((IBuffer)hashKey);
var encryptedBuffer = CryptographicEngine.Encrypt(symmetricKey, decryptBuffer, null);
var encryptedString = CryptographicBuffer.EncodeToBase64String(encryptedBuffer);
return Task.Run(() =>
{
return encryptedString;
});
}
catch (Exception ex)
{
return null;
}
}
public Task<string> DecryptStringHelper(string encryptedString, string key)
{
try
{
var hashKey = GetMD5Hash(key);
IBuffer decryptBuffer = CryptographicBuffer.DecodeFromBase64String(encryptedString);
var AES = SymmetricKeyAlgorithmProvider.OpenAlgorithm(SymmetricAlgorithmNames.AesEcbPkcs7);
var symmetricKey = AES.CreateSymmetricKey((IBuffer)hashKey);
var decryptedBuffer = CryptographicEngine.Decrypt(symmetricKey, decryptBuffer, null);
string decryptedString = CryptographicBuffer.ConvertBinaryToString(BinaryStringEncoding.Utf8, decryptedBuffer);
return Task.Run(() =>
{
return decryptedString;
});
}
catch (Exception ex)
{
return null;
}
}
I develop Universal windows application(UWP) then tried encrypt and decrypt to image file, but i convert image to encrypt text then i couldn't convert when i decrypt that text into image. So how do i do that?
base64string?decryptedString- base64string, and you want to create image fromdecryptedString