Как сказал выше Ремус, в результате нет 'строки', все преобразования шифрования приводят к байту [], а не к строке.
Обычно я беру массив выходных байтов шифрования и вызываю BitConverter.ToString(Bytes);
, чтобы преобразовать его в шестнадцатеричный формат, хотя в результате получается формат FF-D0-FF-D1. Если требуется простая шестнадцатеричная строка, просто запустите .Replace("-", "");
, например
возврат
BitConverter.ToString (AESEncryption.Encrypt (маркер,
key)).Replace("-", "");
(AESEncryption - это простая пользовательская оболочка для RijndaelManaged)
Расшифровка не такая аккуратная, немного грубая сила, но все же простая
private byte[] FromHexString(string encryptedToken)
{
List<byte> bytes = new List<byte>();
for (int i = 0; i <= encryptedToken.Length; i+=2)
{
try
{
bytes.Add((byte)Int32.Parse(encryptedToken.Substring(i, 2), System.Globalization.NumberStyles.HexNumber));
}
catch //whatever exception
{
//handle
}
}
return bytes.ToArray();
}