Мне нужно выполнить простое одноблочное шифрование / дешифрование AES в моем Qt / Приложение C ++. Это реализация «честных людей», поэтому необходимо только базовое шифрование (ключ, данные)
- меня не беспокоят векторы инициализации и т. Д. Мои входные данные и ключ всегда будут ровно 16 байт.
Я действительно хотел бы избежать другой зависимости при компиляции / связывании / поставке с моим приложением, поэтому я пытаюсь использовать то, что доступно на каждой платформе. На Mac это была однострочная версия CCCrypt
. В Windows я теряюсь в API из WinCrypt.h
. Их пример шифрования файла составляет почти 600 строк. Серьезно?
Я смотрю на CryptEncrypt
, но я падаю в кроличью нору зависимостей, которую вам нужно создать, прежде чем вы сможете это вызвать.
Может ли кто-нибудь предоставить простой пример шифрования AES с использованием Windows API? Конечно, есть способ сделать это за пару строк. Предположим, у вас уже есть 128-битный ключ и 128-битные данные для шифрования.