Реализация Crypto ++ DES и длина ключа

Я долго искал криптобиблиотеку для C ++ и наконец наткнулся Crypto ++. Библиотека казалась нормальной, пока я не попытался использовать 3DES. Проблема заключается в том, что длина ключа для алгоритма DES, реализованного в этой библиотеке, составляет 64 бита (вместо обычных 56 бит). Я потратил некоторое время на поиски объяснений, и все, что я наконец получил, это пара слов из документации Crypto ++:

Реализация DES в Crypto ++ игнорирует биты четности (младшие значащие биты каждого байта) в ключе.

Означает ли это, что если у меня есть обычный 56-битный ключ и я хочу расшифровать некоторые данные с помощью этой библиотеки, мне нужно «расширить» мой ключ, вставив бессмысленный дополнительный бит после каждых 7 бит моих данных ключа? Или есть другой способ использовать 56-битные ключи с этой замечательной библиотекой?

1

Решение

Обычный ключ DES составляет 8 байтов, просто lsb (младший значащий бит), бит четности, игнорируется почти во всех текущих реализациях DES.

Но возникает вопрос, должны ли использоваться DES и / или 3DES (со 112-битными и / или 168-битными ключами). Ответ для DES: нет, для 3DES: только для устаревшей совместимости. Оба из них были заменены AES.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector