Есть ли разница между шифрованием aes-128-cbc и aes-128?

Я хочу знать, есть ли разница между этими двумя методами шифрования? Я никогда не использовал это раньше. Мой клиент попросил меня использовать шифрование AES-128, но когда я его гуглю, он показывает мне «aes-128-cbc», «aes-128-ctr», «aes-256-cbc» или «aes-256-ctr» «так что я хочу знать, какой из них мне следует использовать, который будет похож на AES-128?

ссылка ссылка: это где я должен отправить метод шифрования

9

Решение

3 вещи:

  • AES: улучшенный стандарт шифрования. Это название алгоритма шифрования (симметричное шифрование). Другие симметричные алгоритмы шифрования: DES, 3-DES и т. Д.
  • 128: Это, вероятно, относится к размеру ключа. AES-шифрование использует 3 размера ключа (128-битный, 192-битный и 256-битный). Размер блока в AES также составляет 128 бит.
  • CBC: это режим шифрования, который вы хотите. Существует несколько режимов шифрования, которые зависят от того, насколько быстро вы хотите, чтобы ваш алгоритм работал, параллелизма и уровня безопасности. Несколько режимов: CBC (цепочка блоков шифров), ECB (электронная кодовая книга), CFB (обратная связь шифров), CTR (счетчик) и т. Д.

Теперь ваш клиент попросил вас зашифровать с помощью AES-128. Таким образом, вы должны использовать шифрование AES с размером ключа 128 бит. Любой режим, который вы можете использовать, будет вашим предпочтением. Я бы предпочел CBC.

24

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

Просто короткая заметка о CBC против ECB. Когда вы шифруете с помощью ECB, каждые 128 бит (в зависимости от размера блока) данных шифруются одним и тем же ключом. Если в открытом тексте есть какой-либо шаблон, результирующий зашифрованный текст также будет предсказуемым, независимо от того, насколько хорош алгоритм шифрования.

ЕЦБ:

Plain text: aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa
---------------- ---------------- ----------------
Encrypted:  bdefjakjapqeiowp bdefjakjapqeiowp bdefjakjapqeiowp

Если вы используете CBC, первый блок получает XOR с IV (вектором инициализации) и шифруется ключом, а второй блок получает XOR с первым блоком, а затем шифруется ключом, третий — со вторым. Получающийся в результате шифр тогда менее уязвим для частотного анализа.
Режим шифрования CBC

Это изображение взято из Wikimedia Commons, свободного хранилища медиа

Недостатком является то, что вы не можете распараллелить шифрование / дешифрование, так как вам нужен результат предыдущего блока, поэтому он может быть медленнее. Но на практике это не имеет никакого значения.

15

Глядя на ссылку, которую вы включили, он говорит, что примет несколько различных режимов, в том числе CBC. Если у вас нет особых причин не использовать его, используйте AES-128-CBC. Режим CBC — хороший режим общего назначения. Вам также нужно будет понять использование отступов (используйте PKCS # 5 или PKCS # 7, что позволяет ваша система) и вектор инициализации IV, чтобы режим CBC работал правильно.

Не используйте режим ECB, так как он небезопасен и пропускает информацию.

3

Вот aes-128-cbc а также aes-128, aes обозначает расширенный сервис шифрования, 128 это битрейт, и CBC это режим шифрования.

Тем не менее, это читается и используется только в OPEN SSL Форматы. До открытия SSL, PHP использовался mcrypt_encrypt который не был должным образом разработан (более старые версии PHP).
aes-128 может также ссылаться на rijndael при использовании mcrypt,

0
По вопросам рекламы [email protected]