C # эквивалент этой функции расшифровки ColdFusion - PullRequest
2 голосов
/ 18 июня 2011

У меня есть функция в ColdFusion, которая шифрует и дешифрует пароли.Мне нужен кто-то, чтобы посмотреть на функцию и указать мне или написать мне эквивалентный ac #.Это необходимо для проекта как можно скорее, поэтому я могу перебросить вам немного денег через PayPal, если вы можете помочь.

CF функция:

Decrypt("CLbtkjNkcofJ5D8s4Ri7nA==", "EajmplPP8DHg6Tqq8BVRMw==", "AES", "Base64")

Это реальная функция, с реальными данными изтестовая сторона, которую нужно преобразовать.

Любая помощь будет потрясающей ... и прибыльной.

Спасибо, Донни

1 Ответ

4 голосов
/ 18 июня 2011

Ваша отправная точка будет System.Security.Cryptography.Aes

Но эти вещи могут стать довольно странными, например, вам нужно знать, какой режим использовать. Так как ваш пример не показывает IV (вектор инициализации), вы должны использовать CipherMode.ECB.

Вот некоторый тестовый код, я оставлю это вам, чтобы обернуть это в хорошую функцию многократного использования

  byte[] key = Convert.FromBase64String("EajmplPP8DHg6Tqq8BVRMw==");
  byte[] encryptedData = Convert.FromBase64String("CLbtkjNkcofJ5D8s4Ri7nA==");

  Aes aes = Aes.Create();
  aes.Mode = CipherMode.ECB;

  using (var ms = new MemoryStream())
  {
    using (var cs = new CryptoStream(ms, aes.CreateDecryptor(key, null), CryptoStreamMode.Write))
    {
      cs.Write(encryptedData, 0, encryptedData.Length);
    }
    byte[] decryptedData = ms.ToArray();
    string clearText = Encoding.ASCII.GetString(decryptedData);
    Console.WriteLine(clearText);
  }

Ответ => "AccessOne"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...