Рейтинг:0

Альтернатива шифрованию в режиме CBC?

флаг in

Учитывая, что шифрование в режиме CBC уязвимо для заполнение атак оракула, какая следующая лучшая альтернатива?

а) Включите проверку хэша в схему API, подтвердите хэш, а затем перейдите к CBC. Если проверка хэша не удалась, верните ошибку, указывающую на то же самое. Например: включить контрольную сумму HMACSHA256(AES256(обычный текст)) которая должна быть проверена как часть сообщения.

b) Реализовать пользовательский режим CBC, который включает hmac/эквивалентную контрольную сумму в конце каждого блока шифрования (в строках заполнения). Например: Создайте собственную схему в строках - "AES/CBC/PKCS5Padding/HMACSHA256". Существуют ли планы NIST/W3C по включению такой схемы?

c) Переключитесь на шифрование режима GCM. Как он сравнивается с CBC с точки зрения криптографической стойкости?

kelalaka avatar
флаг in
Руководство по GCM здесь; [Каковы правила правильного использования AES-GCM?] (https://crypto.stackexchange.com/q/84357/18298)
Рейтинг:3
флаг in

GCM — очень хорошая альтернатива, он обеспечивает встроенную аутентификацию сообщений, поэтому злоумышленник не может манипулировать зашифрованными сообщениями.

Само шифрование основано на режиме CTR, который хорошо изучен и безопасен при правильном использовании.

Главное, на что следует обратить внимание, - это серьезность повторного использования одноразового номера, повторное использование значения счетчика с одним и тем же ключом является катастрофическим, убедитесь, что вы правильно используете GCM, и все будет в порядке.

SAI Peregrinus avatar
флаг si
Режим GCM-SIV (или просто SIV) не теряет катастрофически безопасность при повторном использовании одноразового номера с тем же ключом, но является двухпроходным. OCB теперь не имеет патентов и работает быстрее, чем GCM.
флаг in
Believe уже однажды сталкивался с требованием «nonce» (хотя не мог вспомнить при формулировании вопроса) и, следовательно, не решался принять GCM. Наличие у NIST режима, включающего CBC с контрольной суммой, по-прежнему кажется лучшим вариантом. Но думаю, до тех пор нам придется доверять реализациям GCM в библиотеках.
Meir Maor avatar
флаг in
После нескольких атак с заполнением люди просто уходят от CBC, хотя у нас есть некоторые реализации на основе CBC, которые мы в настоящее время не знаем, как эффективно атаковать, отходя от того места, где мы несколько раз сгорали, кажется более безопасным.
флаг in
Думаю, отход от CBC естественен. Но внедрение GCM с условиями и положениями кажется столь же рискованным (в долгосрочной перспективе). Защита CBC с проверкой целостности (например, уровень приложения/расширенная-схема-cbc-с-проверкой-целостности) кажется более простой, чем вероятность того, что какая-то повторно используемая уязвимость, основанная на одноразовом номере, время от времени появляется в какой-то библиотеке. Исходный код не всегда может быть доступен для изучения в случае GCM или может быть упущен из виду.
флаг in
Учитывая сложности, я думаю, мы могли бы считать «CBC» известным врагом, а «GCM» — неизвестным другом.
Meir Maor avatar
флаг in
TLS1.3 отказался от CBC, и я думаю, что это был мудрый выбор.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.