stringtranslate.com

Алгоритм с симметричным ключом

Шифрование с симметричным ключом: один и тот же ключ используется как для шифрования, так и для дешифрования.

Алгоритмы с симметричным ключом [a] — это алгоритмы для криптографии , которые используют одни и те же криптографические ключи как для шифрования открытого текста , так и для расшифровки зашифрованного текста . Ключи могут быть идентичными, или может быть простое преобразование между двумя ключами. [1] Ключи, на практике, представляют собой общий секрет между двумя или более сторонами, который может использоваться для поддержания конфиденциальной информационной связи. [2] Требование, чтобы обе стороны имели доступ к секретному ключу, является одним из главных недостатков симметричного шифрования по сравнению с шифрованием с открытым ключом (также известным как шифрование с асимметричным ключом). [3] [4] Однако алгоритмы шифрования с симметричным ключом обычно лучше подходят для массового шифрования. За исключением одноразового блокнота, они имеют меньший размер ключа, что означает меньше места для хранения и более быструю передачу. В связи с этим шифрование с асимметричным ключом часто используется для обмена секретным ключом на шифрование с симметричным ключом. [5] [6] [7]

Типы

Симметричное шифрование может использовать как потоковые шифры , так и блочные шифры . [8]

Поточные шифры шифруют цифры (обычно байты ) или буквы (в шифрах подстановки) сообщения по одной за раз. Примером является ChaCha20 . Шифры подстановки — это хорошо известные шифры, но их можно легко расшифровать с помощью таблицы частот . [9]

Блочные шифры берут несколько бит и шифруют их в одном блоке, дополняя открытый текст для достижения кратного размера блока. Алгоритм Advanced Encryption Standard (AES), одобренный NIST в декабре 2001 года, использует 128-битные блоки.

Реализации

Примерами популярных алгоритмов с симметричным ключом являются Twofish , Serpent , AES (Rijndael), Camellia , Salsa20 , ChaCha20 , Blowfish , CAST5 , Kuznyechik , RC4 , DES , 3DES , Skipjack , Safer и IDEA . [10]

Использовать как криптографический примитив

Симметричные шифры обычно используются для достижения других криптографических примитивов , а не только шифрования. [ необходима цитата ]

Шифрование сообщения не гарантирует, что оно останется неизменным при шифровании. Поэтому часто код аутентификации сообщения добавляется к шифротексту, чтобы гарантировать, что изменения в шифротексте будут замечены получателем. Коды аутентификации сообщения могут быть созданы из шифра AEAD (например, AES-GCM ).

Однако симметричные шифры не могут использоваться для целей неотказуемости, за исключением случаев привлечения дополнительных сторон. [11] См. стандарт ISO/IEC 13888-2.

Другое применение — построение хэш-функций из блочных шифров. Смотрите одностороннюю функцию сжатия для описания нескольких таких методов.

Построение симметричных шифров

Многие современные блочные шифры основаны на конструкции, предложенной Хорстом Фейстелем . Конструкция Фейстеля позволяет строить обратимые функции из других функций, которые сами по себе необратимы. [ необходима цитата ]

Безопасность симметричных шифров

Симметричные шифры исторически были восприимчивы к атакам с известным открытым текстом , атакам с выбранным открытым текстом , дифференциальному криптоанализу и линейному криптоанализу . Тщательное построение функций для каждого раунда может значительно снизить шансы успешной атаки. [ необходима цитата ] Также возможно увеличить длину ключа или раунды в процессе шифрования, чтобы лучше защититься от атаки. Однако это, как правило, увеличивает вычислительную мощность и снижает скорость, с которой выполняется процесс, из-за количества операций, которые должна выполнить система. [12]

Большинство современных алгоритмов с симметричным ключом, по-видимому, устойчивы к угрозе постквантовой криптографии . [13] Квантовые компьютеры экспоненциально увеличат скорость, с которой эти шифры могут быть декодированы; в частности, алгоритм Гровера будет брать квадратный корень из времени, традиционно требуемого для атаки методом перебора , хотя эти уязвимости можно компенсировать удвоением длины ключа. [14] Например, 128-битный шифр AES не будет защищен от такой атаки, поскольку это сократит время, необходимое для проверки всех возможных итераций, с более чем 10 квинтиллионов лет до примерно шести месяцев. Напротив, квантовому компьютеру все равно потребуется столько же времени, чтобы декодировать 256-битный шифр AES, сколько обычному компьютеру потребуется декодировать 128-битный шифр AES. [15] По этой причине AES-256 считается «квантовоустойчивым». [16] [17]

Управление ключами

Ключевое учреждение

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

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

Генерация ключей

При использовании с асимметричными шифрами для передачи ключей псевдослучайные генераторы ключей почти всегда используются для генерации сеансовых ключей симметричного шифра. Однако отсутствие случайности в этих генераторах или в их векторах инициализации является катастрофическим и приводило к криптоаналитическим взломам в прошлом. Поэтому важно, чтобы реализация использовала источник высокой энтропии для своей инициализации. [18] [19] [20]

Взаимный шифр

Взаимный шифр — это шифр, в котором, как и в случае с вводом открытого текста в криптографическую систему для получения шифртекста , можно ввести шифртекст в то же место в системе для получения открытого текста. Взаимный шифр также иногда называют самовзаимным шифром . [21] [22]

Практически все механические шифровальные машины реализуют обратный шифр, математическую инволюцию на каждой набранной букве. Вместо того, чтобы разрабатывать два типа машин, одну для шифрования и одну для дешифрования, все машины могут быть идентичны и могут быть настроены (ключированы) одинаково. [23]

Примеры взаимных шифров включают в себя:

Большинство современных шифров можно классифицировать как потоковые шифры , большинство из которых используют обратный XOR-шифровальный объединитель, или блочные шифры , большинство из которых используют шифр Фейстеля или схему Лая-Месси с обратным преобразованием в каждом раунде. [ необходима ссылка ]

Примечания

  1. ^ Другие термины для симметричного шифрования — это secret-key , single-key , shared-key , one-key и private-key . Использование последнего и первого терминов может создать двусмысленность с похожей терминологией, используемой в криптографии с открытым ключом . Симметричную криптографию следует противопоставлять асимметричной криптографии .

Ссылки

  1. ^ Картит, Заид (февраль 2016 г.). «Применение алгоритмов шифрования для обеспечения безопасности данных в облачном хранилище, Картит и др.». Достижения в области повсеместных сетей: Труды UNet15 : 147. ISBN 9789812879905.
  2. ^ Делфс, Ганс; Кнебль, Хельмут (2007). "Симметричное шифрование". Введение в криптографию: принципы и приложения . Springer. ISBN 9783540492436.
  3. ^ Маллен, Гэри; Маммерт, Карл (2007). Конечные поля и приложения. Американское математическое общество. стр. 112. ISBN 9780821844182.
  4. ^ «Демистификация симметричных и асимметричных методов шифрования». Geeks for Geeks. 2017-09-28.
  5. ^ Джонсон, Лейтон (2016), «Основы компонентов безопасности для оценки», Руководство по оценке, тестированию и оценке средств контроля безопасности , Elsevier, стр. 531–627, doi :10.1016/b978-0-12-802324-2.00011-7, ISBN 9780128023242, S2CID  63087943 , получено 2021-12-06
  6. ^ Альварес, Рафаэль; Кабальеро-Хиль, Кандидо; Сантоха, Хуан; Самора, Антонио (27 июня 2017 г.). «Алгоритмы облегченного обмена ключами». Датчики . 17 (7): 1517. дои : 10.3390/s17071517 . ISSN  1424-8220. ПМК 5551094 . ПМИД  28654006. 
  7. ^ Бернстайн, Дэниел Дж.; Ланге, Таня (14.09.2017). «Постквантовая криптография». Nature . 549 (7671): 188–194. Bibcode :2017Natur.549..188B. doi :10.1038/nature23461. ISSN  0028-0836. PMID  28905891. S2CID  4446249.
  8. ^ Pelzl & Paar (2010). Понимание криптографии . Берлин: Springer-Verlag. стр. 30. Bibcode :2010uncr.book.....P.
  9. ^ Белларе, Михир; Рогауэй, Филипп (2005). Введение в современную криптографию (PDF) .
  10. ^ Редер, Том. «Симметричная криптография». www.cs.cornell.edu . Получено 05.02.2017 .
  11. ^ "ISO/IEC 13888-2:2010". ISO . Получено 2020-02-04 .
  12. ^ Дэвид Р. Мирза Ахмад; Райан Рассел (2002). Защита сети от взлома (2-е изд.). Рокленд, Массачусетс: Syngress. стр. 165–203. ISBN 1-932266-18-6. OCLC  51564102.
  13. ^ Дэниел Дж. Бернстайн (2009). "Введение в постквантовую криптографию" (PDF) . Постквантовая криптография .
  14. ^ Дэниел Дж. Бернстайн (2010-03-03). «Гровер против МакЭлиса» (PDF) . {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  15. ^ Вуд, Ламонт (21.03.2011). «Часы тикают для шифрования». Computerworld . Получено 05.12.2022 .
  16. ^ О'Ши, Дэн (29.04.2022). «AES-256 присоединяется к квантовому сопротивлению». Fierce Electronics . Получено 05.12.2022 .
  17. ^ Вайсбаум, Франсуа; Лугрин, Томас (2023), Малдер, Валентин; Мермуд, Ален; Лендерс, Винсент; Телленбах, Бернхард (ред.), «Симметричная криптография», Тенденции в области защиты данных и технологий шифрования , Cham: Springer Nature Switzerland, стр. 7–10, doi : 10.1007/978-3-031-33386-6_2 , ISBN 978-3-031-33386-6, получено 2023-09-12
  18. ^ Ян Голдберг и Дэвид Вагнер. «Случайность и браузер Netscape». Январь 1996 г. Журнал доктора Добба. Цитата: «Жизненно важно, чтобы секретные ключи генерировались из непредсказуемого источника случайных чисел».
  19. ^ Ристенпарт, Томас; Йилек, Скотт (2010). «Когда хорошая случайность становится плохой: уязвимости сброса виртуальной машины и хеджирование развернутой криптографии» (PDF) . Симпозиум NDSS 2010. Генераторы случайных чисел (ГСЧ) неизменно являются слабым звеном в безопасном использовании криптографии.
  20. ^ "Симметричная криптография". Джеймс. 2006-03-11.
  21. ^ Пол Реуверс и Марк Саймонс. Крипто-музей. «Энигма Ур». 2009.
  22. ^ Крис Кристенсен. «Простые подстановочные шифры». 2006.
  23. ^ Грег Гебель. «Механизация шифров». 2018.
  24. ^ "... истинный шифр Бофорта. Обратите внимание, что у нас есть взаимное шифрование ; шифрование и дешифрование — это одно и то же". -- Хелен Ф. Гейнс. "Криптоанализ: исследование шифров и их решений". 2014. стр. 121.
  25. ^ Грег Гебель. «Механизация шифров». 2018.
  26. ^ Фридрих Л. Бауэр. «Расшифрованные секреты: методы и принципы криптологии». 2006. С. 144
  27. ^ Дэвид Саломон. «Кодирование данных и компьютерных коммуникаций». 2006. С. 245
  28. ^ Грег Гебель. «Американские дешифровальщики в тени войны». 2018.