Как расшифровать aes128, в котором используется не секретный ключ, а байты

#encryption

Вопрос:

Я знаю, что он использовал для его шифрования, но понятия не имею, как его расшифровать. Код, который он использовал для его шифрования:

     Aes aes = new AesManaged
    {
        Key = new byte[] { 0x49, 0x76, 0x61, 0x6e, 0x20, 0x4d, 0x65, 0x64, 0x76, 0x65, 0x64, 0x65, 0x76 },
        IV = new byte[16],
        Mode = CipherMode.CBC,
        Padding = PaddingMode.Zeros
    };
    ICryptoTransform crypto;
    crypto = aes.CreateEncryptor();
    return crypto.TransformFinalBlock(message, 0, message.Length); //return encrypted value
}
 

Комментарии:

1. Аналогом CreateEncryptor() является CreateDecryptor() . Кстати, статическая капельница небезопасна.

2. Я удивлен, что шифрование выполняется, так как (опять же статический и небезопасный) ключ имеет длину 13 байт (а не 16, как ожидалось).

3. Как указано в предыдущем комментарии, ключ слишком короткий (AES допускает ключи размером 16, 24 или 32 байта). Или речь идет о выводе ключа на основе пароля, который вы не публиковали (ключ может быть расшифрован в формате UTF8 для Ивана Медведева ). Обратите внимание, что пароль (даже с правильной длиной), как правило, не является безопасным ключом.