Что является атрибутами шифра
Назначение и структура алгоритмов шифрования
Шифрование является основным методом защиты; рассмотрим его подробно далее.
Можно представить зашифрование в виде следующей формулы:
В стандарте ГОСТ 28147-89 (стандарт определяет отечественный алгоритм симметричного шифрования) понятие ключ определено следующим образом: «Конкретное секретное состояние некоторых параметров алгоритма криптографического преобразования, обеспечивающее выбор одного преобразования из совокупности всевозможных для данного алгоритма преобразований».
Ключ может принадлежать определенному пользователю или группе пользователей и являться для них уникальным. Зашифрованная с использованием конкретного ключа информация может быть расшифрована только с использованием только этого же ключа или ключа, связанного с ним определенным соотношением.
Аналогичным образом можно представить и расшифрование:
При отсутствии верного ключа k2 получить исходное сообщение M’ = M с помощью правильной функции D невозможно. Под словом «невозможно» в данном случае обычно понимается невозможность вычисления за реальное время при существующих вычислительных ресурсах.
В алгоритмах симметричного шифрования для расшифрования обычно используется тот же самый ключ, что и для зашифрования, или ключ, связанный с ним каким-либо простым соотношением. Последнее встречается существенно реже, особенно в современных алгоритмах шифрования. Такой ключ (общий для зашифрования и расшифрования) обычно называется просто ключом шифрования.
В асимметричном шифровании ключ зашифрования k1 легко вычисляется из ключа k2 таким образом, что обратное вычисление невозможно. Например, соотношение ключей может быть таким:
Такое соотношение ключей используется и в алгоритмах электронной подписи.
Основной характеристикой алгоритма шифрования является криптостойкость, которая определяет его стойкость к раскрытию методами криптоанализа. Обычно эта характеристика определяется интервалом времени, необходимым для раскрытия шифра.
Рассмотрим, как выглядят изнутри алгоритмы блочного симметричного шифрования.Структура алгоритмов шифрования
Существует и более сложная структура сети Фейстеля, пример которой приведен на рис. 3.
В отличие от сети Фейстеля, SP-сети обрабатывают за один раунд целиком шифруемый блок. Обработка данных сводится, в основном, к заменам (когда, например, фрагмент входного значения заменяется другим фрагментом в соответствии с таблицей замен, которая может зависеть от значения ключа Ki) и перестановкам, зависящим от ключа Ki (упрощенная схема показана на рис. 4).
Впрочем, такие операции характерны и для других видов алгоритмов шифрования, поэтому, на мой взгляд, название «подстановочно-перестановочная сеть» является достаточно условным.
Для структуры «квадрат» характерно представление шифруемого блока данных в виде двумерного байтового массива. Криптографические преобразования могут выполняться над отдельными байтами массива, а также над его строками или столбцами.
На рис. 5 приведен пример операции над блоком данных, выполняемой алгоритмом Rijndael.
Алгоритмы с нестандартной структурой, то есть те алгоритмы, которые невозможно причислить ни к одному из перечисленных типов. Ясно, что изобретательность может быть безгранична, поэтому классифицировать все возможные варианты алгоритмов шифрования представляется сложным. В качестве примера алгоритма с нестандартной структурой можно привести уникальный по своей структуре алгоритм FROG, в каждом раунде которого по достаточно сложным правилам выполняется модификация двух байт шифруемых данных (см. рис. 6).
Основные понятия криптографии
Цель лекции: познакомить студента с основными понятиями криптографии.
Предмет и задачи криптографии
Проблемой защиты информации при ее передаче между абонентами люди занимаются на протяжении всей своей истории. Человечеством изобретено множество способов, позволяющих в той или иной мере скрыть смысл передаваемых сообщений от противника. На практике выработалось несколько групп методов защиты секретных посланий. Назовем некоторые из них, применяющиеся так же давно, как и криптографические.
Второй способ защиты информации, известный с давних времен – стеганографическая защита информации. Этот способ защиты основан на попытке скрыть от противника сам факт наличия интересующей его информации. При стеганографическом методе защиты от противника прячут физический носитель данных или маскируют секретные сообщения среди открытой, несекретной информации. К таким способам относят, например, «запрятывание» микрофотографии с тайной информацией в несекретном месте: под маркой на почтовом конверте, под обложкой книги и т.д. К стеганографии относятся также такие известные приемы, как «запрятывание» секретного послания в корешках книг, в пуговицах, в каблуках, в пломбе зуба и т.д. Некоторые из методов были разработаны еще в древние времена. Так, например, греки нашли необычное решение: они брили наголо голову раба и выцарапывали на ней свое послание. Когда волосы на голове раба отрастали вновь, его посылали доставить сообщение. Получатель брил голову раба и прочитывал текст. К сожалению, на отправку сообщения и получение ответа таким способом уходило несколько недель.
В более поздние времена в этом направлении наибольшее распространение получили химические (симпатические) чернила. Текст, написанный этими чернилами между строк несекретного сообщения, невидим. Он появлялся только в результате применения определенной технологии проявления.
В настоящее время криптография прочно вошла в нашу жизнь. Перечислим лишь некоторые сферы применения криптографии в современном информатизированном обществе:
До начала ХХ века криптографические методы применялись лишь для шифрования данных с целью защиты от несанкционированного доступа. В двадцатом веке в связи с развитием техники передачи информации на дальние расстояния интерес к криптографии значительно возрос. Благодаря созданию новых криптографических методов расширился и спектр задач криптографии. В настоящее время считается, что криптография предназначена решать следующие задачи:
Системы шифрования варьируются от самых элементарных до очень сложных. И если первые не требуют никаких математических познаний, то в последних используются понятия, знакомые лишь специалистам в некоторых областях математики и информатики. При использовании криптографических методов должны учитываться затраты на защиту информации и на реализацию методов нападения. На практике стремятся к достижению компромисса между стоимостью шифрования и требуемой степенью обеспечения безопасности.
В рамках данного учебного пособия рассматриваются как простейшие, «докомпьютерные», шифры, известные человечеству на протяжении веков, так и современные системы шифрования, разработанные только в XXI веке.
Основные определения
Теперь, узнав назначение криптографии, познакомимся с основными терминами, которые будем использовать при изучении криптографических методов защиты информации.
Шифр – совокупность заранее оговоренных способов преобразования исходного секретного сообщения с целью его защиты.
Исходные сообщения обычно называют открытыми текстами. В иностранной литературе для открытого текста используют термин plaintext.
Сообщение, полученное после преобразования с использованием любого шифра, называется шифрованным сообщением (закрытым текстом, криптограммой). В иностранной литературе для закрытого текста используют термин ciphertext.
Преобразование открытого текста в криптограмму называется зашифрованием. Обратное действие называется расшифрованием. В англоязычной литературе терминам «зашифрование/ расшифрование » соответствуют термины «enciphering/deciphering».
Система шифрования, или шифрсистема, – это любая система, которую можно использовать для обратимого изменения текста сообщения с целью сделать его непонятным для всех, кроме тех, кому оно предназначено.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа (т.е. способность противостоять криптоанализу).
Таким образом, с учетом всех сделанных определений можно дать более точное определение науке » криптография «. Криптография изучает построение и использование систем шифрования, в том числе их стойкость, слабости и степень уязвимости относительно различных методов вскрытия.
Криптографическая система защиты информации – система защиты информации, в которой используются криптографические методы для шифрования данных.
Требования к криптографическим системам защиты информации
Для разрабатываемых в настоящее время криптографических систем защиты информации сформулированы следующие общепринятые требования:
Ключевые понятия в шифровании
Иногда процесс шифрования является достаточно простым и автоматическим. Но иногда в нём случаются сбои. Чем больше вы знаете о шифровании, тем в большей безопасности вы будете при возникновении подобных ситуаций. Для начала, если вы этого ещё не сделали, рекомендуем ознакомиться с руководством «Что я должен знать о шифровании?»
В настоящем руководстве мы рассмотрим пять основных идей. Это важные понятия о процессе шифрования:
Шифр и ключ Anchor link
Вы наверняка сталкивались с чем-либо на первый взгляд непонятным. Это могло быть похоже на надпись на чужом языке или вовсе на какую-то бессмыслицу. Что-то препятствовало прочтению и пониманию. Но это вовсе не означает, что было использовано шифрование.
Каковы отличия чего-то зашифрованного от непонятного?
Шифрование — это математический процесс, используемый для превращения информации в нечитаемый (зашифрованный) вид. При этом восстановление первоначального вида информации (расшифровывание) возможно лишь с помощью специальных знаний. В процессе шифрования используются шифр и ключ.
Шифр — это набор правил (алгоритм), используемый при шифровании и расшифровывании. Это чётко определённые, выраженные в виде формулы правила, которым необходимо следовать.
Ключом является инструкция для шифра: как именно нужно шифровать и расшифровывать данные. Ключи являются одной из наиболее важных концепций в шифровании.
Один ключ или несколько? Anchor link
При использовании симметричного шифрования существует единственный ключ как для шифрования, так и расшифровывания данных.
Старые способы шифрования были симметричными. В «шифре Цезаря», использованном Юлием Цезарем, ключом для шифрования и для расшифровывания сообщений был сдвиг по алфавиту на три символа. Например, символ «A» будет изменён на «Г». Сообщение «ШИФРОВАНИЕ — ЭТО КРУТО» превратится с помощью этого ключа («три») в «ЫЛЧУСЕГРЛЗ АХС НУЦХС». Тот же самый ключ используется и для расшифровывания сообщения обратно в исходный вид. |
Симметричное шифрование все ещё применяется сегодня. Оно часто существует в форме «потоковых» и «блочных шифров», которые используют сложные математические процессы для усложнения взлома. В настоящее время процесс шифрования данных проходит в несколько этапов, максимально усложняя извлечение исходных данных при отсутствии подходящего ключа. Современные алгоритмы симметричного шифрования, такие как алгоритм Advanced Encryption Standard (AES), являются надёжными и быстрыми. Симметричное шифрование широко используется компьютерами для таких задач, как шифрование файлов, разделов жёстких дисков на компьютере, полного шифрования дисков и устройств, а также шифрования баз данных, например в менеджерах паролей. При расшифровывании информации, зашифрованной с помощью симметричного шифрования, у вас будут запрашивать пароль
. Именно поэтому мы рекомендуем использовать надёжные пароли и предоставляем пособие по созданию надёжных паролей для защиты зашифрованной информации.
Наличие лишь одного ключа может быть полезно, если вы единственный человек, нуждающийся в доступе к зашифрованной информации. Но обладание единственным ключом может стать проблемой при желании поделиться доступом к зашифрованной информации с другом, находящимся вдали от вас. Что, если вы не можете лично встретиться с ним для передачи ключа? И как поделиться ключом через небезопасное подключение к интернету?
Асимметричное шифрование, также называемое шифрованием с открытым ключом, решает эти проблемы. Асимметричное шифрование использует два ключа: закрытый ключ (для расшифровывания) и открытый ключ (для шифрования).
Симметричное шифрование
Асимметричное шифрование
Симметричное и асимметричное шифрование часто используются совместно для шифрования при передаче данных.
Асимметричное шифрование
: закрытые и открытые ключи Anchor link
Закрытый и открытый ключи создаются парами. Они математически связаны друг с другом. Вы можете представить их в виде камня, расколотого пополам. Если соединить обе половинки, то они идеально подойдут друг к другу, образуя единое целое. Ни одна часть никакого другого камня не подойдёт. Файлы открытого и закрытого ключей совпадают также. Они состоят из очень больших чисел, генерируемых компьютером.
Несмотря на своё название, открытый ключ не используется для открытия чего-либо (в отличии от реального ключа). Его предназначение заключается в другом. Более подробную информацию о работе открытых и закрытых ключей вы можете найти в нашем руководстве «Глубокое погружение в мир сквозного шифрования».