Алгоритм и режим блочного шифрования Crypto++ с переменной зависимостью ⇐ C++
-
Anonymous
Алгоритм и режим блочного шифрования Crypto++ с переменной зависимостью
Я создаю программу с использованием Crypto++ и хочу выбрать метод шифрования/дешифрования в графическом интерфейсе. Библиотека Crypto++ работает с шаблонами и различными типами данных, поэтому определение параметров блочного шифра в одной строке с использованием переменных невозможно.
Например. Давайте использовать шифрование AES-CBC. Это выглядит так CryptoPP::CBC_Mode::Encryption obj; или AES::Шифрование; CBC_Mode_ExternalCipher::Шифрование шифратора(шифр, iv);
При переключении с AES на Twofish, или с шифрования на дешифрование, или с CBC на OFB, мне приходится переписывать эту часть. С 6 алгоритмами, 5 режимами и шифрованием/дешифрованием у меня есть комбинации 6x5x2.
Я ищу возможность использовать шаблоны для такого алгоритма. В принципе это должно выглядеть так CryptoPP::Mode::Direction obj; где Mode=CBC_Mode, Algorithm=CryptoPP::Twofish, Direction=Encrypt (или Decrypt).
Можно ли это сделать с помощью шаблонов? Привет и спасибо
Я попробовал однострочник и метод внешнего шифрования. но в обоих случаях я получаю ошибки диалога типа.
Я создаю программу с использованием Crypto++ и хочу выбрать метод шифрования/дешифрования в графическом интерфейсе. Библиотека Crypto++ работает с шаблонами и различными типами данных, поэтому определение параметров блочного шифра в одной строке с использованием переменных невозможно.
Например. Давайте использовать шифрование AES-CBC. Это выглядит так CryptoPP::CBC_Mode::Encryption obj; или AES::Шифрование; CBC_Mode_ExternalCipher::Шифрование шифратора(шифр, iv);
При переключении с AES на Twofish, или с шифрования на дешифрование, или с CBC на OFB, мне приходится переписывать эту часть. С 6 алгоритмами, 5 режимами и шифрованием/дешифрованием у меня есть комбинации 6x5x2.
Я ищу возможность использовать шаблоны для такого алгоритма. В принципе это должно выглядеть так CryptoPP::Mode::Direction obj; где Mode=CBC_Mode, Algorithm=CryptoPP::Twofish, Direction=Encrypt (или Decrypt).
Можно ли это сделать с помощью шаблонов? Привет и спасибо
Я попробовал однострочник и метод внешнего шифрования. но в обоих случаях я получаю ошибки диалога типа.
Мобильная версия