Как расшифровать Fernet зашифрованные сообщения в C#

У меня есть приложение, в котором я получаю зашифрованное сообщение Fernet, и мне нужно расшифровать его, чтобы получить исходное сообщение.

Я искал в Google, но я понял, что мне нужно использовать AES, чтобы расшифровать его в C#.

Я использую следующий код, который я нашел в stackru о том, как использовать AES, но выдает исключение, что он не является допустимым base64format

byte[] cipherBytes = Convert.FromBase64String(subscription.Extra_fields["AdminPassword"]["value"]);
using (Aes encryptor = Aes.Create())
{
    Rfc2898DeriveBytes pdb = new
        Rfc2898DeriveBytes(EncryptionKey, new byte[]
        { 0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76 });
    encryptor.Key = pdb.GetBytes(32);
    encryptor.IV = pdb.GetBytes(16);
    using (MemoryStream ms = new MemoryStream())
    {
        using (CryptoStream cs = new CryptoStream(ms, encryptor.CreateDecryptor(), CryptoStreamMode.Write))
        {
            cs.Write(cipherBytes, 0, cipherBytes.Length);
            cs.Close();
        }
        password = Encoding.Unicode.GetString(ms.ToArray());
    }
}

Так правильно ли, что AES используется для расшифровки зашифрованного сообщения Fernet.

Я новичок в этой области, любая помощь, пожалуйста.

0 ответов

Другие вопросы по тегам