Привет Я просто пытаюсь зашифровать строку, но я хочу обратить метод дешифровки, чтобы создать именно зашифрованный ключСоздание шифрования с помощью строки
расшифровку был
public string newSample(string s)
{
byte[] buffer = Convert.FromBase64String(s);
Encoding utF8 = Encoding.UTF8;
byte[] bytes1 = utF8.GetBytes("key1");
byte[] bytes2 = utF8.GetBytes("key2");
RijndaelManaged rijndaelManaged1 = new RijndaelManaged();
rijndaelManaged1.Mode = CipherMode.CBC;
rijndaelManaged1.Padding = PaddingMode.Zeros;
rijndaelManaged1.BlockSize = 128;
rijndaelManaged1.KeySize = 128;
RijndaelManaged rijndaelManaged2 = rijndaelManaged1;
ICryptoTransform transform = (ICryptoTransform)null;
transform = rijndaelManaged2.CreateDecryptor(bytes2, bytes1);
byte[] bytes3 = (byte[])null;
using (MemoryStream memoryStream = new MemoryStream())
{
using (CryptoStream cryptoStream = new CryptoStream((Stream)memoryStream, transform, CryptoStreamMode.Write))
{
cryptoStream.Write(buffer, 0, buffer.GetLength(0));
cryptoStream.FlushFinalBlock();
}
rijndaelManaged2.Clear();
bytes3 = memoryStream.ToArray();
}
return new string(Encoding.UTF8.GetChars(bytes3));
}
можно ли обратный код и создать ключ шифрования? если так как может быть шифрование должно выглядеть lik для этого метода дешифрования ??
благодаря
Я предлагаю выбросить этот код и заменить его на ответ [jbtule] (http://stackoverflow.com/a/10366194/445517) на соответствующий вопрос. В отличие от вашего кода, он действительно безопасен. – CodesInChaos
CodesInChaos спасибо за ссылку, но я должен пойти с этим кодом по какой-то причине cheerz – Gayan
Пара недостатков: 1) Нет MAC => сломанные активными атаками 2) Нет IV, утечки общих префиксов 3) Нулевая прокладка не обратима 4) Ключ должен быть двоичным, а не текстом. 5) Как отмечалось в jon, вы не можете использовать UTF8 для зашифрованного текста. – CodesInChaos