Лекция
Привет, Вы узнаете о том , что такое криптография, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое криптография , настоятельно рекомендую прочитать все из категории Шифры в криптографии.
Криптографические методы защиты информации – это мощное оружие в борьбе за информационную безопасность.
криптография (от древне-греч. κρυπτος – скрытый и γραϕω – пишу) – наука о методах обеспечения конфиденциальности и аутентичности информации.
Криптография представляет собой совокупность методов преобразования данных, направленных на то, чтобы сделать эти данные бесполезными для злоумышленника. Такие преобразования позволяют решить два главных вопроса, касающихся безопасности информации:
Проблемы защиты конфиденциальности и целостности информации тесно связаны между собой, поэтому методы решения одной из них часто применимы для решения другой.
Известны различные подходы к классификации методов криптографического преобразования информации. По виду воздействия на исходную информацию методы криптографического преобразования информации могут быть разделены на четыре группы:
Рис. 2.1. Классификация методов криптографического преобразования информации
Процесс шифрования заключается в проведении обратимых математических, логических, комбинаторных и других преобразований исходной информации, в результате которых зашифрованная информация представляет собой хаотический набор букв, цифр, других символов и двоичных кодов.
Для шифрования информации используются алгоритм преобразования и ключ. Как правило, алгоритм для определенного метода шифрования является неизменным. Исходными данными для алгоритма шифрования служит информация, подлежащая зашифрованию, и ключ шифрования. Ключ содержит управляющую информацию, которая определяет выбор преобразования на определенных шагах алгоритма и величины операндов, используемых при реализации алгоритма шифрования. Операнд – это константа, переменная, функция, выражение и другой объект языка программирования, над которым производятся операции.
В отличие от других методов криптографического преобразования информации, методы стеганографии позволяют скрыть не только смысл хранящейся или передаваемой информации, но и сам факт хранения или передачи закрытой информации. В основе всех методов стеганографии лежит маскирование закрытой информации среди открытых файлов, т.е. скрываются секретные данные, при этом создаются реалистичные данные, которые невозможно отличить от настоящих. Обработка мультимедийных файлов в информационных системах открыла практически неограниченные возможности перед стеганографией.
Графическая и звуковая информация представляются в числовом виде. Так, в графических объектах наименьший элемент изображения может кодироваться одним байтом. В младшие разряды определенных байтов изображения в соответствии с алгоритмом криптографического преобразования помещаются биты скрытого файла. Если правильно подобрать алгоритм преобразования и изображение, на фоне которого помещается скрытый файл, то человеческому глазу практически невозможно отличить полученное изображение от исходного. С помощью средств стеганографии могут маскироваться текст, изображение, речь, цифровая подпись, зашифрованное сообщение.
Скрытый файл также может быть зашифрован. Если кто-то случайно обнаружит скрытый файл, то зашифрованная информация будет воспринята как сбой в работе системы. Комплексное использование стеганографии и шифрования многократно повышает сложность решения задачи обнаружения и раскрытия конфиденциальной информации.
Содержанием процесса кодирование информации является замена исходного смысла сообщения (слов, предложений) кодами. В качестве кодов могут использоваться сочетания букв, цифр, знаков. При кодировании и обратном преобразовании используются специальные таблицы или словари. В информационных сетях кодирование исходного сообщения (или сигнала) программно-аппаратными средствами применяется для повышения достоверности передаваемой информации.
Часто кодирование и шифрование ошибочно принимают за одно и тоже, забыв о том, что для восстановления закодированного сообщения, достаточно знать правило замены, в то время как для расшифровки сообщения помимо знания правил шифрования, требуется ключ к шифру.
Сжатие информации может быть отнесено к методам криптографического преобразования информации с определенными оговорками. Целью сжатия является сокращение объема информации. В то же время сжатая информация не может быть прочитана или использована без обратного преобразования. Учитывая доступность средств сжатия и обратного преобразования, эти методы нельзя рассматривать как надежные средства криптографического преобразования информации. Даже если держать в секрете алгоритмы, то они могут быть сравнительно легко раскрыты статистическими методами обработки. Поэтому сжатые файлы конфиденциальной информации подвергаются последующему шифрованию. Для сокращения времени передачи данных целесообразно совмещать процесс сжатия и шифрования информации.
Основным видом криптографического преобразования информации в компьютерных сетях является шифрование. Под шифрованием понимается процесс преобразования открытой информации в зашифрованную информацию (шифртекст) или процесс обратного преобразования зашифрованной информации в открытую. Процесс преобразования открытой информации в закрытую получил название зашифрование, а процесс преобразования закрытой информации в открытую – расшифрование.
За многовековую историю использования шифрования информации человечеством изобретено множество методов шифрования или шифров. Методом шифрования (шифром) называется совокупность обратимых преобразований открытой информации в закрытую информацию в соответствии с алгоритмом шифрования. Большинство методов шифрования не выдержали проверку временем, а некоторые используются и до сих пор. Появление компьютеров и компьютерных сетей инициировало процесс разработки новых шифров, учитывающих возможности использования компьютерной техники как для зашифрования/расшифрования информации, так и для атак на шифр. Атака на шифр (криптоанализ, криптоатака) – это процесс расшифрования закрытой информации без знания ключа и, возможно, при отсутствии сведений об алгоритме шифрования.
Современные методы шифрования должны отвечать следующим требованиям:
Криптостойкость шифра является его основным показателем эффективности. Она измеряется временем или стоимостью средств, необходимых криптоаналитику для получения исходной информации по шифртексту, при условии, что ему неизвестен ключ.
Сохранить в секрете широко используемый алгоритм шифрования практически невозможно. Поэтому алгоритм не должен иметь скрытых слабых мест, которыми могли бы воспользоваться криптоаналитики. Если это условие выполняется, то криптостойкость шифра определяется длиной ключа, так как единственный путь вскрытия зашифрованной информации – перебор комбинаций ключа и выполнение алгоритма расшифрования. Таким образом, время и средства, затрачиваемые на криптоанализ, зависят от длины ключа и сложности алгоритма шифрования.
Работа простой криптосистемы проиллюстрирована на рис. 2.2.
Рис. 2.2. Обобщенная схема криптографической системы
Отправитель генерирует открытый текст исходного сообщения М, которое должно быть передано законному получателю по незащищенному каналу. За каналом следит перехватчик с целью перехватить и раскрыть передаваемое сообщение. Для того чтобы перехватчик не смог узнать содержание сообщения М, отправитель шифрует его с помощью обратимого преобразования Ек и получает шифртекст (или криптограмму) С=Ек(М) , который отправляет получателю.
Законный получатель, приняв шифртекст С, расшифровывает его с помощью обратного преобразования Dк(С) и получает исходное сообщение в виде открытого текста М.
Преобразование Ек выбирается из семейства криптографических преобразований, называемых криптоалгоритмами. Параметр, с помощью которого выбирается отдельное преобразование, называется криптографическим ключом К.
Криптосистема имеет разные варианты реализации: набор инструкций, аппаратные средства, комплекс программ, которые позволяют зашифровать открытый текст и расшифровать шифртекст различными способами, один из которых выбирается с помощью конкретного ключа К.
Преобразование шифрования может быть симметричным и асимметричным относительно преобразования расшифрования. Это важное свойство определяет два класса криптосистем:
I. Об этом говорит сайт https://intellect.icu . По области применения различают шифры ограниченного и общего использования.
Стойкость шифров ограниченного использования основывается на сохранении в секрете алгоритма криптографического преобразования в силу его уязвимости, малого количества ключей или отсутствия таковых (секретные кодовые системы).
Стойкость шифров общего использования основывается на секретности ключа и сложности его подбора потенциальным противником.
II. По особенностям алгоритма шифрования шифры общего использования можно разделить на следующие виды.
В одноключевых системах для шифрования и дешифрования используется один и тот же ключ.
В шифрах перестановки все буквы открытого текста остаются в шифрограмме, но меняют свои позиции. В шифрах замены наоборот, позиции букв в шифрограмме остаются теми же, что и у открытого текста, но символы открытого текста заменяются символами другого алфавита.
В аддитивных шифрах буквы алфавита заменяются числами, к которым затем добавляются числа секретной случайной (псевдослучайной) числовой последовательности (гаммы), после чего берется остаток от деления по модулю (операция mod). Если исходное сообщение и гамма представляются в битовом виде, то при шифровании и расшифровании применяется логическая операция «Исключающее ИЛИ» (XOR, сложение по модулю 2).
Квантовая криптография вносит в процесс шифрования естественную неопределенность квантового мира. Процесс отправки и приема информации выполняется посредством объектов квантовой механики (например, при помощи электронов в электрическом токе или фотонов в линиях волоконно-оптической связи). Самым ценным свойством этого вида шифрования является то, что при посылке сообщения отправляющая и принимающая сторона с достаточно большой вероятностью могут установить факт перехвата противником зашифрованного сообщения.
В двухключевых системах для шифрования и дешифрования используется два совершено разных ключа. В детерминированных шифрах при шифровании одного и того же сообщения одним и тем же ключом всегда будет получаться один и тот же шифртекст. В вероятностных шифрах в процедуре шифрования используется дополнительная случайная величина (число) - в результате при шифровании одного и того же исходного сообщения одним и тем же ключом могут получиться разные шифртексты, которые при расшифровке дадут один и тот же результат (исходное сообщение).
Комбинированные (составные) методы предполагают использование для шифрования сообщения сразу нескольких методов (например, сначала замена символов, а затем их перестановка).
III. По количеству символов сообщения (или его кодовой замены), шифруемых или расшифровываемых по однотипной процедуре преобразования различают:
- потоковые шифры – процедура преобразование применяется к отдельному символу сообщения;
- блочные шифры – процедура преобразование применяется к набору (блоку) символов сообщения.
Отличить потоковый шифр от блочного можно по следующему признаку - если в результате разбиения исходного сообщения на отдельные элементарные символы и применения к ним однотипной процедуры преобразования получаемая шифрограмма эквивалентна той, которая получается при применении преобразования «как будто ко всему исходному сообщению», то шифр потоковый, иначе блочный.
IV. По стойкости шифры делятся на три группы:
- совершенные (абсолютно стойкие, теоретически стойкие) – шифры, заведомо неподдающиеся вскрытию (при правильном использовании). Дешифрование секретного сообщения приводит к нескольким осмысленным равновероятным открытым сообщениям;
- практически (вычислительно, достаточно) стойкие – шифры, вскрытие которых за приемлемое время невозможно на современном или перспективном уровне вычислительной техники. Практическая стойкость таких систем базируется на теории сложности и оценивается исключительно на какой-то определенный момент времени с двух позиций:
- вычислительная сложность полного перебора;
- известные на данный момент слабости (уязвимости) и их влияние на вычислительную сложность;
- нестойкие шифры.
Существует несколько классификаций шифров. Рассмотрим некоторые из них.
Рис.3.1. Классификация шифров
На рисунке серым фоном представлены подгуппы шифров, которые не образуют полную вышележащую группу шифров, но получившие широкое применение на практике и описаны в настоящем курсе лекций.
В следующий таблице приведена краткая характеристика типов шифров.
Таблица 3.1. Типы шифров
Тип шифра | Краткая характеристика | Примеры шифров | |||
по количеству и последовательности использования ключей для шифрования одного сообщения | |||||
одноключевые (симметричные) |
Для зашифрования и расшифрования одного сообщения используется один (секретный) ключ. | шифр Цезаря, шифры гаммирования, DES-ECB, ГОСТ 34.12-2015 |
|||
двухключевые (асимметричные, с открытым ключом) |
Для зашифрования одного исходного сообщения используется один (открытый) ключ, а для расшифрования – другой (закрытый) ключ. При решении ряда специфических задач (например, при выработке и проверке электронной цифровой подписи) порядок использования ключей может быть обратный. Открытый и закрытый ключи связаны между собой через математические отношения (функции). | RSA, схема Эль-Гамаля |
|||
многоключевые | Для зашифрования и расшифрования одного сообщения используется несколько самостоятельных процедур преобразования, каждая из которых требует применения отдельного независимого (т.е. логически или математически несвязанного с другими) ключа. При расшифровании порядок процедур преобразований и использования ключей обратный по сравнению с процедурой зашифрования. Как правило, многоключевые шифры являются комбинированными. | ADFGVX, 3DES |
|||
по особенностям процедур преобразования сообщения | |||||
перестановки | Для получения шифрограммы символы открытого сообщения перемещаются в новые позиции. Алфавиты для записи открытых сообщений и шифрограмм совпадают. | ||||
перестановки | одинарной перестановки | При шифровании символы сообщения перемещаются с исходных позиций в новые один раз. | шифр простой одинарной перестановки, Сцитала, шифр вертикальной перестановки |
||
множественной перестановки | При шифровании символы сообщения перемещаются с исходных позиций в новые несколько раз. | шифр двойной перестановки | |||
замены (подстановки) |
При зашифровании позиции символов открытого сообщения в шифрограмме сохраняются, но заменяются символами другого алфавита (буквами, числами, рисунками и т.п.). Алфавиты для записи открытых сообщений и шифрограмм могут отличаться. | ||||
замены | однозначной замены (моноалфавитные, простые подстановочные) |
Количество шифрозамен М для каждого символа или блока символов исходного алфавита равно 1 (| Мi | = 1 для одного i-го символа или блока символов). | |||
однозначной замены |
регулярные | Шифрозамены состоят из одинакового количества символов или отделяются друг от друга разделителем (пробелом, точкой, тире и т.п.). | шифр Цезаря, лозунговый шифр, тюремный шифр |
||
регулярные | полиграммные | Шифрозамене соответствует блок символов исходного алфавита (| Мi | = 1 для одного i-ого блока символов). | биграммный шифр Порты, шифр Хилла |
||
асимметричные детерминированные |
При зашифровании одного и того же открытого сообщения одним и тем же открытым ключом всегда будет получаться одна и та же шифрограмма. Т.е. для заданного открытого ключа один и тот же символ (блок символов) открытого сообщения всегда будет представляться одной и той же шифрозаменой. | RSA, шифр на основе задачи об укладке ранца |
|||
нерегулярные | Шифрозамены состоят из разного количество символов, записываемых без разделителей. | совмещенный шифр | |||
многозначной замены | Количество шифрозамен M для отдельных символов или блока символов исходного алфавита больше 1 (| Мi | ≥ 1 для одного i-го символа или блока символов). | ||||
многозначной замены |
омофонические (однозвучные) |
Шифрозамены для разных символов или блоков символов исходного алфавита не повторяются (МI ∩ МJ = Ø для двух разных i-го и j-го символов или блоков символов). | система омофонов, книжный шифр |
||
полиалфавитные (многоалфавитные) |
Исходному алфавиту для записи открытых сообщений соответствует несколько алфавитов шифрозамен. Выбор варианта алфавита шифрозамен для зашифрования отдельного символа или блока символов зависит от особенностей шифра. Одна и та же шифрозамена может использоваться для разных символов или блоков символов исходного алфавита (МI ∩ МJ ≠ Ø для двух разных i-го и j-го символов или блоков символов). | диск Альберти, система Виженера |
|||
полиалфавитные | аддитивные (гаммирования) |
При зашифровании символы исходного алфавита в открытом сообщении заменяются числами, к которым добавляются числа секретной случайной числовой последовательности (гаммы), после чего берется остаток от деления по модулю (операция mod). | шифрование сложением по модулю N, шифр Вернама |
||
квантовые | Являются разновидностью шифров гаммирования, где в качестве носителей информации используются элементарные частицы (пучки элементарных частиц). | ||||
асимметричные вероятностные |
При зашифровании одного и того же открытого сообщения одним и тем же открытым ключом могут получаться разные шифрограммы. Т.е. для заданного открытого ключа один и тот же символ (блок символов) открытого сообщения может представляться разными шифрозаменами. Это достигается за счет использования случайной величины при зашифровании символа (блока символов), что эквивалентно переключению алфавитов шифрозамен. | схема Эль-Гамаля, шифр на основе эллиптических кривых |
|||
комбинированные (составные) |
При шифровании сообщения используется сразу несколько процедур преобразования (например, для шифрования используются одновременно замена, перестановка и гаммирование). | ADFGVX, AES, ГОСТ 34.12-2015 |
|||
по количеству символов сообщения (или его кодовой замены), шифруемых по однотипной процедуре преобразования (зашифрования или расшифрования) | |||||
потоковые | Процедура преобразования применяется к отдельному элементарному символу сообщения. Т.е., если в результате разбиения исходного сообщения на отдельные элементарные символы и применения к ним однотипной процедуры зашифрования отдельные полученные части шифрограммы можно собрать («склеить») в единую шифрограмму, поддающуюся расшифрованию, то шифр потоковый, иначе блочный. | шифр Цезаря, шифры гаммирования, ассиметричные шифры*) |
|||
блочные | Процедура преобразования применяется к блоку символов сообщения. В том числе, когда блоком является все сообщение (например, в некоторых шифрах перестановки). | шифры перестановки, DES, AES, ГОСТ 34.12-2015, ассиметричные шифры*) |
|||
по стойкости | |||||
ограниченного использования | Стойкость шифра основывается на сохранении в секрете алгоритма криптографического преобразования в силу его уязвимости или малого количества ключей. Вскрытие шифра (отдельной шифрограммы) возможно за приемлемое время. | шифр Цезаря, шифр вертикальной перестановки, DES-ECB |
|||
общего использования | Стойкость шифра основывается на секретности ключа и невозможности его подбора потенциальным противником за приемлемое время. | ||||
общего использования |
практически (вычислительно, достаточно) стойкие |
Вскрытие шифра (отдельной шифрограммы) за приемлемое время невозможно на современном или перспективном уровне вычислительной техники. Практическая стойкость оценивается исключительно на какой-то определенный момент времени с двух позиций: • вычислительная сложность полного или целенаправленного перебора множества ключей; • известные на данный момент слабости (уязвимости) и их влияние на вычислительную сложность. |
AES, ГОСТ 34.12-2015, RSA |
||
совершенные (абсолютно стойкие, теоретически стойкие) |
Шифры, заведомо неподдающиеся вскрытию (при правильном использовании). Дешифрование секретного сообщения приводит к нескольким осмысленным равновероятным открытым сообщениям. | шифры гаммирования |
*) Некоторые шифры (в частности ассиметричные) допускают выполнение процедур преобразования как в потоковом, так и в блочном режиме.
Исследование, описанное в статье про криптография, подчеркивает ее значимость в современном мире. Надеюсь, что теперь ты понял что такое криптография и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Шифры в криптографии
Ответы на вопросы для самопроверки пишите в комментариях, мы проверим, или же задавайте свой вопрос по данной теме.
Комментарии
Оставить комментарий
Информационная безопасность, Шифры в криптографии
Термины: Информационная безопасность, Шифры в криптографии