Простое шифрование AES с использованием WinAPI

Мне нужно выполнить простое одноблочное шифрование / дешифрование AES в моем Qt / Приложение C ++. Это реализация «честных людей», поэтому необходимо только базовое шифрование (ключ, данные) - меня не беспокоят векторы инициализации и т. Д. Мои входные данные и ключ всегда будут ровно 16 байт.

Я действительно хотел бы избежать другой зависимости при компиляции / связывании / поставке с моим приложением, поэтому я пытаюсь использовать то, что доступно на каждой платформе. На Mac это была однострочная версия CCCrypt . В Windows я теряюсь в API из WinCrypt.h . Их пример шифрования файла составляет почти 600 строк. Серьезно?

Я смотрю на CryptEncrypt , но я падаю в кроличью нору зависимостей, которую вам нужно создать, прежде чем вы сможете это вызвать.

Может ли кто-нибудь предоставить простой пример шифрования AES с использованием Windows API? Конечно, есть способ сделать это за пару строк. Предположим, у вас уже есть 128-битный ключ и 128-битные данные для шифрования.

6
задан Dave Mateer 2 November 2011 в 18:49
поделиться