Податливость (криптография)

редактировать

Податливость - это свойство некоторых криптографических алгоритмов. Алгоритм шифрования является «пластичным», если можно преобразовать зашифрованный текст в другой зашифрованный текст, который расшифровывается до связанного открытого текста. То есть, при шифровании открытого текста, можно сгенерировать другой зашифрованный текст, который расшифровывает известную функцию без обязательного знания или обучения. м {\ displaystyle m} ж ( м ) {\ displaystyle f (m)} ж {\ displaystyle f} м {\ displaystyle m}

Гибкость часто является нежелательным свойством в криптосистеме общего назначения, поскольку она позволяет злоумышленнику изменять содержимое сообщения. Например, предположим, что банк использует потоковый шифр, чтобы скрыть свою финансовую информацию, и пользователь отправляет зашифрованное сообщение, содержащее, скажем, « ПЕРЕВЕСТИ $ 0000100,00 НА СЧЕТ №199 ». Если злоумышленник может изменить сообщение на проводе и угадать формат незашифрованного сообщения, злоумышленник может изменить сумму транзакции или получателя средств, например, « ПЕРЕВЕСТИ $ 0100000.00 НА СЧЕТ № 227 ».. Под гибкостью не понимается способность злоумышленника прочитать зашифрованное сообщение. Как до, так и после взлома злоумышленник не может прочитать зашифрованное сообщение.

С другой стороны, некоторые криптосистемы пластичны по своей конструкции. Другими словами, в некоторых обстоятельствах это можно рассматривать как функцию, которую любой может преобразовать шифрование в действительное шифрование (для некоторого ограниченного класса функций) без обязательного обучения. Такие схемы известны как схемы гомоморфного шифрования. м {\ displaystyle m} ж ( м ) {\ displaystyle f (m)} ж {\ displaystyle f} м {\ displaystyle m}

Криптосистема может быть семантически защищенной от атак с выбранным открытым текстом или даже атак с неадаптивным выбранным зашифрованным текстом (CCA1), при этом оставаясь гибкой. Однако защита от атак с адаптивным выбранным шифротекстом (CCA2) эквивалентна неподатливости.

Содержание
  • 1 Пример гибких криптосистем
  • 2 Полная неподатливость
  • 3 См. Также
  • 4 ссылки
Примеры гибких криптосистем

В потоковом шифре зашифрованный текст создается путем взятия исключающего ИЛИ из открытого текста и псевдослучайного потока на основе секретного ключа, например. Противник может построить шифрование для любого, как. k {\ displaystyle k} E ( м ) знак равно м S ( k ) {\ Displaystyle Е (м) = м \ oplus S (к)} м т {\ displaystyle m \ oplus t} т {\ displaystyle t} E ( м ) т знак равно м т S ( k ) знак равно E ( м т ) {\ Displaystyle E (m) \ oplus t = m \ oplus t \ oplus S (k) = E (m \ oplus t)}

В криптосистеме RSA открытый текст зашифрован как, где - открытый ключ. Зная такой зашифрованный текст, злоумышленник может построить шифрование для любого, как. По этой причине RSA обычно используется вместе с такими методами заполнения, как OAEP или PKCS1. м {\ displaystyle m} E ( м ) знак равно м е мод п {\ Displaystyle Е (м) = м ^ {е} {\ bmod {п}}} ( е , п ) {\ Displaystyle (е, п)} м т {\ displaystyle mt} т {\ displaystyle t} E ( м ) т е мод п знак равно ( м т ) е мод п знак равно E ( м т ) {\ textstyle E (m) \ cdot t ^ {e} {\ bmod {n}} = (mt) ^ {e} {\ bmod {n}} = E (mt)}

В криптосистеме Эль- Гамаля открытый текст зашифрован как, где - открытый ключ. Учитывая такой зашифрованный текст, злоумышленник может вычислить, что является допустимым шифрованием для любого. Напротив, система Крамера-Шупа (которая основана на Эль-Гамале) не податлива. м {\ displaystyle m} E ( м ) знак равно ( г б , м А б ) {\ displaystyle E (m) = (g ^ {b}, mA ^ {b})} ( г , А ) {\ Displaystyle (г, А)} ( c 1 , c 2 ) {\ displaystyle (c_ {1}, c_ {2})} ( c 1 , т c 2 ) {\ displaystyle (c_ {1}, t \ cdot c_ {2})} т м {\ displaystyle tm} т {\ displaystyle t}

В криптосистемах Пайе, Эль-Гамаля и RSA также возможно объединить несколько зашифрованных текстов вместе полезным способом для создания связанного зашифрованного текста. В Пайе, имея только открытый ключ и шифрование и, можно вычислить действительное шифрование их суммы. В Эль-Гамале и RSA можно комбинировать шифрование и получить действительное шифрование своего продукта. м 1 {\ displaystyle m_ {1}} м 2 {\ displaystyle m_ {2}} м 1 + м 2 {\ displaystyle m_ {1} + m_ {2}} м 1 {\ displaystyle m_ {1}} м 2 {\ displaystyle m_ {2}} м 1 м 2 {\ displaystyle m_ {1} m_ {2}}

Блочные шифры в режиме работы цепочки блоков шифров, например, частично податливы: изменение бита в блоке зашифрованного текста полностью исказит открытый текст, который он расшифровывает, но приведет к тому, что тот же бит будет перевернут в открытом тексте следующего блока.. Это позволяет злоумышленнику «пожертвовать» одним блоком открытого текста, чтобы изменить некоторые данные в следующем, возможно, злонамеренно изменив сообщение. По сути, это основная идея атаки оракула заполнения на CBC, которая позволяет злоумышленнику расшифровать почти весь зашифрованный текст, не зная ключа. По этой и многим другим причинам требуется код аутентификации сообщения для защиты от любых методов взлома.

Полная неподатливость

Fischlin, в 2005 году, определил понятие полного отсутствия податливости как способность системы оставаться без податливого, давая противник дополнительной мощность, чтобы выбрать новый открытый ключ, который может быть функцией от первоначального открытого ключа. Другими словами, злоумышленник не должен иметь возможность придумать зашифрованный текст, лежащий в основе открытый текст которого связан с исходным сообщением через отношение, которое также принимает во внимание открытые ключи.

Смотрите также
Рекомендации
Последняя правка сделана 2024-01-01 04:34:14
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте