Криптография - Материал из Википедии

Печать PDF

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

Изначально криптография изучала методы шифрования информации — обратимого преобразования открытого (исходного) текста на основе секретного алгоритма и/или ключа в шифрованный текст (шифртекст). Традиционная криптография образует раздел симметричных криптосистем, в которых зашифрование и расшифрование проводится с использованием одного и того же секретного ключа. Помимо этого раздела современная криптография включает в себя асимметричные криптосистемы, системы электронной цифровой подписи (ЭЦП), хеш-функции, управление ключами, получение скрытой информации, квантовую криптографию.

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

Криптография — одна из старейших наук, ее история насчитывает несколько тысяч лет.

 

Терминология

  • Открытый (исходный) текст — данные (не обязательно текстовые), передаваемые без использования криптографии.
  • Шифрованный (закрытый) текст — данные, полученные после применения криптосистемы с указанным ключом.
  • Криптосистема — семейство обратимых преобразований открытого текста в шифрованный.
  • Ключ — параметр шифра, определяющий выбор конкретного преобразования данного текста. В современных шифрах алгоритм шифрования известен и криптографическая стойкость шифра целиком определяется секретностью ключа (Принцип Керхгоффа).
  • Криптоанализ — наука, изучающая математические методы нарушения конфиденциальности и целостности информации.
  • Криптоаналитик — человек, создающий и применяющий методы криптоанализа.
  • Криптография и криптоанализ составляют криптологию, как единую науку о создании и взломе шифров (такое деление привнесено с запада, до этого в СССР и России не применялось специального деления).
  • Криптографическая атака — попытка криптоаналитика вызвать отклонения в атакуемой защищенной системе обмена информацией. Успешную криптографическую атаку называют взлом или вскрытие.
  • Зашифрование — процесс нормального применения криптографического преобразования открытого текста на основе алгоритма и ключа в результате которого возникает шифрованный текст.
  • Расшифрование — процесс нормального применения криптографического преобразования шифрованного текста в открытый.
  • Дешифрование — процесс извлечения открытого текста без знания криптографического ключа на основе известного шифрованного. Термин дешифрование обычно применяют по отношению к процессу криптоанализа шифротекста (криптоанализ сам по себе, вообще говоря, может заключаться и в анализе шифросистемы, а не только зашифрованного ею открытого сообщения).
  • Криптографическая стойкость — способность криптографического алгоритма противостоять криптоанализу.
  • Имитозащита — защита от навязывания ложной информации. Имитозащита достигается обычно за счет включения в пакет передаваемых данных имитовставки.
  • Имитовставка — блок информации, применяемый для имитозащиты, зависящий от ключа и данных. В частном случае обеспечивается ЭЦП.

 

История криптографии и криптоанализа

Использовавшийся в Древней Греции шифр "скитала", чья современная реконструкция показана на фото, вероятно был первым устройством для шифрования.
Основная статья: История криптографии

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

Основные классические виды шифрования это перестановочное шифрование, при котором буквы сообщения переставляются (например 'помоги мне' превращается в 'опомиг нме' при простейшей схеме перестановки) и замещающий шифр, когда буквы или группы букв по определённому правилу заменяются на другие буквы или группы букв (например 'fly at once' становится 'gmz bu podf' при замене каждой буквы следующей за ней в алфавите). Простейшие версии обоих шифров - не более чем небольшая защита от любопытных. Первым замещающим шифром был шифр Цезаря, в котором каждая буква исходного текста заменялась буквой, стоящей на некоторое фиксированное число мест дальше в алфавите. Назван этот шифр в честь Юлия Цезаря который, как сообщается, использовал шифр со смещением 3 при связи со своими полководцами во время военных компаний.

Шифрованием пытались достичь гарантированной секретной связи в первую очередь в таких областях, как, шпионаж, военное дело, и дипломатия. Так, существуют древние еврейские зашифрованные тексты. Криптография рекомендуется к применению в индийской Камасутре как средство для связи любовников.[1] Стеганография (то есть, сокрытие самого факта передачи сообщения) также появилась в античные времена. Первый пример передачи скрытого сообщения из Геродота - таутировка сделанная на обритой голове раба, скрытая под отросшими волосами.[2] Более современные примеры стеганографии состоят в использовании симпатических чернил, микроточек и цифровых водяных знаков для сокрытия информации.

Шифротексты, получающиеся после применения классических шифров (а также и некоторых современных) всегда выдают статистичекую информацию об исходном тексте, которая может быть использована для их взлома. После разработки частотного анализа (возможно арабским энциклопедистом аль-Кинди) в 9м веке, практически все такие шифры стали взламываемыми достаточно квалифицированным взломщиком. Однако классические шифры до сих пор пользуются популярностью, правда больше как головоломки (см. криптограмма). По существу, все шифры оставались уязвимы для криптоанализа с использованием этой техники до изобретения полиалфавитных шрифтов, наиболее вероятно Леоном Баттистой Альберти около 1467 года (есть некоторые указания на то, что они были известны арабам несколько ранее). Нововведение Альберти состояло в том, чтобы использовать различные шифры(то есть замещающих алфавитов) для разных частей сообщения (возможно для каждого последовательного исходного текста в некотором наборе). Он также изобрёл вероятно первую автоматическую шифровальную машину - колесо, которое осуществляло частичную реализацию его изобретения. В полиалфавитном шифре Вигнера, для шифрование используется ключевое слово, которое контролировало замену буквы в зависимости от того, какая использовалась буква ключевого слова. В середине 1800х годов Бэббидж показал, что полиалфавитные шифры этого типа содержат частичную уязвимость к технике частотного анализа.[2]

Шифровальная машина Энигма, разные модификации которой использовались германскими войсками с концх 1920х годов до конца Второй Мировой Войны, осуществляла сложное электро-механическое полиалфавитное шифрование. Взлом шифра Энигмы Biuro Szyfrow и последующая широкомасштабная дешифровка сообщений Энигмы в Блетчли Парк (Bletchley Park), были важным вкладом в победу Союзников во Второй Мировой Войне.[2]

Хотя частотный анализ является мощным средством, шифрование до сих пор остаётся эффективным на практике, так как многие потенциальные криптоаналитики не знакомы с этой техникой. Взлом сообщения без частотного анализа обычно требует знания используемого шифра, то есть является следствием шпионажа, взятки, кражи или измены для его определения. В 19м веке стало окончательно ясно, что секретность алгоритма шифрования не является гарантией от взлома, более того в дальнейшем было понято, что адекватная крипографическая схема (включая шифр) должна оставаться защищённой даже, если противник полностью узнал алгоритм шифрования. Секретность ключа должна быть достаточна для хорошего шифра, чтобы сохранить стойкость к попыткам взлома. Этот фундаментальный принцип впервые ясно сформулировал в 1883 Огюстом Керкгоффсом и обычно называется Принципом Керкгоффса; альтернативно и более прямо принцип был также сформулирован Клодом Шенноном как Максима Шеннона — 'враг знает нашу систему'.

Для облегчения шифрования были разработаны различные вспомогательные устройства. Одним из самы первых является скитала, придуманная в Древней Греции, представляющая собой простую палочку. Придумано оно было предположительно в Спарте для осуществления перестановочного шифрования. В средние века, были придуманы другие вспомогательные средства, такие как решётка для шифрования, использовавшаяся для различных видов стеганографии. С появлением полиалфавитных шифров, вспомогательные устройства стали усложняться, как например диск с шифротекстом Альберти, квадратная доска(tabula recta) Тритемиуса и дисковый шифр Томаса Джефферсона (переоткрытый независимо Этьеном Базери около 1900). Различные механические шифраторы/дешифраторы были разработаны уже в 20м веке. Принцип действия многих из них был запатентован, например роторная машина самая известная из которых — Энигма использовалась немцами во время Второй Мировой Войны.[3] The ciphers implemented by better quality examples of these designs brought about a substantial increase in cryptanalytic difficulty after WWI.[4]

Развитие компьютерной техники и электроники после Второй Мировой сделало возможным использование более сложных шифров. Более того, компьютеры позволили шифровать любые данные, которые представимы в цифровом бинарном виде, в отличие от классических шифров, которые предназначались только для шифрования написанных текстов. Это привело к непригодности лингвистических методов криптоанализа для большинства случаев, так как многие компьютерные шифры характеризуются работой с бинарными последовательностями битов (возможно сгруппированных в блоки), в то время как классические и механические схемы обычно манипулировали традиционными знаками (буквами и цифрами). С другой стороны компьютеры помогают криптоанализу, что может компенсировать усложнение шифров. Однако, не смотря на это, хорошие современные шифры идут впереди криптоанализа, обычно использование качественного шифра очень эффективно (т.е. осуществляется быстро и с минимальными ресурсами), в то время, как взлом требует усилий на много порядков больше как по времени, так и по ресурсам, делая криптоанализ настолько неэффективным и непрактичным, что можно считать его невозможным за разумное время или с разумными ресурсами.

 

Развитие академических криптографических исследований началось относительно недавно — начиная примерно с середины 1970х годов с открытой публикации спецификации стандарта шифрования DES by the NBS, в статье Диффи — Хеллмана,[5] и открытием алгоритма RSA. После этого, криптография начинает широко использоватся в коммуникациях, компьютерных сетях и вообще компьютерной безопасности. На данный момент секретность большинства современных методов криптографии базируется на вычислительной сложности таких поблем, как факторизация больших целых чисел или проблема дискретного логарифма. В большинстве случаев существуют доказательства, что методики шифрования являются надёжными если соответствующая вычислительная проблема не может быть эффективно решена.[6] Единственное существенное исключение из этого правила - метод одноразового блокнота, который работает каждый раз с новыми значениями и имеет абсолютную криптографическую стойкость.

Как не раз показала мировая история криптографии, разработчики криптографических алгоритмов и систем должны очень серьёзно подходить к возможности разработки в будущем более мощных средств дешифровки. Например, продолжающееся развитие компьютерной техники, постоянно увеличивает длину ключа шифрования, который может быть взломан методом грубой силы. Возможное использование квантовых вычислений также учитывается при проектировании некоторых криптографических систем - необходимо учитывать потенциальную опасность применения таких устройств.[7]

По существу, до 20го века криптография имела дело только с языковедческими образцами. С тех пор акцент сместился и теперь в криптографии активно используются математика, включая теорию информации, теорию сложности вычислений, статистику, комбинаторику, абстрактную алгебру и теорию чисел. Криптография также стала частью инженерного дела (см. Криптографическое инженерное дело и security engineering). Также активно развиваются исследования по применению в криптографии квантовой физики (см. квантовая криптография и квантовый компьютер).

 

Современная криптография

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

  • симметричные DES, AES, ГОСТ 28147-89, Camellia, Twofish, Blowfish, IDEA, RC4 и др.
  • ассиметричные RSA и Elgamal (Эль-Гамаль)
  • хэш-функций MD4, MD5, SHA-1, ГОСТ Р 34.11-94

Во многих странах приняты национальные стандарты шифрования. В 2001 году в США принят стандарт симметричного шифрования AES на основе алгоритма Rijndael с длиной ключа 128, 192 и 256 бит. Алгоритм AES пришёл на смену прежнему алгоритму DES, который теперь рекомендовано использовать только в режиме Triple DES. В Российской Федерации действует стандарт ГОСТ 28147-89, описывающий алгоритм блочного шифрования с длиной ключа 256 бит, а также алгоритм цифровой подписи ГОСТ Р 34.10-2001.

 

Криптография с симметричным ключом

Основная статья: Алгоритм с симметричным ключом

 

Криптография с открытым ключом

Основная статья: Криптосистема с открытым ключом

 

Криптоанализ

Основная статья: Криптоанализ

 

Криптографические примитивы

 

Криптографические протоколы

Основная статья: Криптографический протокол

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

 

Отношение криптографии с законом и государством

 

Запреты

 

Экспортный контроль

Основная статья: Экспорт криптографии

 

Управление цифровыми правами

Основная статья: Технические средства защиты авторских прав

 

См. также

  • атака «человек посередине»
  • атака грубой силой (brute-force)
  • атака по открытому тексту
  • атака на реализацию
  • Somvi

 

Ссылки

  • Юрий Лифшиц. Курс лекций Современные задачи криптографии
  • Информационная безопасность и шифрование
  • Криптографический ликбез
  • Криптографический справочник
  • Библиотека научных статей по криптографической защите информации
  • Криптолог-блог

 

Литература

  • Баричев С.Г., Гончаров В.В., Серов Р.Е. Основы современной криптографии. М.: "Горячая линия - Телеком", 2001.
  • Варфоломеев А.А., Жуков А.Е., Пудовкина М.А. Поточные криптосистемы. Основные свойства и методы анализа стойкости. М.: ПАИМС, 2000.
  • Введение в криптографию. Под общ. ред. Ященко В.В. М.: МЦНМО-ЧеРо, 1998.
  • Венбо Мао Современная криптография: теория и практика = Modern Cryptography: Theory and Practice. — М.: «Вильямс», 2005. — С. 768. — ISBN 0-13-066943-1
  • Герасименко В.А. Защита информации в автоматизированных системах обработки данных., кн. 1, 2. М.: Энергоатомиздат, 1994.
  • ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования. М.: ГК СССР по стандартам, 1989.
  • ГОСТ Р 34.10-94.Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асиметричного криптографического алгоритма. М., 1995.
  • ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования. М., 1995.
  • ГОСТ Р 34.10-2001 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. М., 2001.
  • Нильс Фергюсон, Брюс Шнайер Практическая криптография = Practical Cryptography: Designing and Implementing Secure Cryptographic Systems. — М.: «Диалектика», 2004. — С. 432. — ISBN 0-471-22357-3
  • Конхейм А. Г. Основы криптографии. М.: Радио и связь, 1987.
  • Мафтик С. Механизмы защиты в сетях ЭВМ. М.: Мир, 1993.
  • Мельников В.В. Защита информации в компьютерных системах. М.: Финансы и статистика, 1997.
  • Молдовян А.А., Молдовян Н.А., Советов Б.Я. Криптография. СПб.: "Лань", 2000.
  • Молдовян Н.А. Скоростные блочные шифры. СПб.: Издательство СПбГУ, 1998.
  • Нечаев В.И. Элементы криптографии (Основы теории защиты информации). М.: Высшая школа, 1999.
  • Основы криптозащиты АСУ. Под ред. Б.П. Козлова. М.: МО, 1996.
  • Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях. М.: Радио и связь, 1999.
  • Ухлинов А.М. Управление безопасностью информации в автоматизированных системах. М.: МИФИ, 1996.
  • Жельников В. Криптография от папируса до компьютера. М.: АВР,1996.

Оригинал статьи на Википедии