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

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

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

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

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

Примеры гибких криптосистем

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

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

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

В криптосистемах Paillier , ElGamal и RSA также возможно объединить несколько шифротекстов вместе полезным способом для получения связанного шифротекста. В Paillier, имея только открытый ключ и шифрование и , можно вычислить действительное шифрование их суммы . В ElGamal и в 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 м_{1}м_{2}}

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

Полная нековкость

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

Смотрите также

Ссылки

  1. ^ Долев, Дэнни; ​​Дворк, Синтия ; Наор, Мони (2000). «Неустойчивая криптография». Журнал SIAM по вычислениям . 30 (2): 391–437. CiteSeerX  10.1.1.49.4643 . doi :10.1137/S0097539795291562.
  2. ^ Белларе, Михир; Десаи, Ананд; Пойнтшеваль, Дэвид; Рогауэй, Филлип (1998-08-23). ​​Кравчик, Хьюго (ред.). Отношения между понятиями безопасности для схем шифрования с открытым ключом . Конспект лекций по информатике. Springer Berlin Heidelberg. стр. 26–45. doi :10.1007/bfb0055718. ISBN 978-3540648925. {{cite book}}: |work=проигнорировано ( помощь )
  3. ^ Фишлин, Марк (2005-07-11). «Полностью неподатливые схемы». Автоматы, языки и программирование . Конспект лекций по информатике. Том 3580. Springer, Берлин, Гейдельберг. С. 779–790. CiteSeerX 10.1.1.501.6445 . doi :10.1007/11523468_63. ISBN  9783540275800.
Взято с "https://en.wikipedia.org/w/index.php?title=Пластичность_(криптография)&oldid=1196009710"