Криптографическое закрытие
Криптографическое закрытие (шифрование) информации является одним из наиболее распространенных программных методов защиты информации и заключается в таком преобразовании защищаемой информации, при котором по внешнему виду нельзя определить содержание закрытых данных. Криптографической защите специалисты уделяют особое внимание, считая ее наиболее надежной, а для информации, передаваемой по линиям связи большой протяженности – единственным средством защиты информации от хищений.
Криптографическое закрытие (шифрование) информации – это такое ее преобразование, при котором отдельные фрагменты информации заменяются другими фрагментами. Криптографическое открытие (расшифровка) – это обратный процесс. При этом очень важным параметром является криптостойкость, т.е. насколько сложно отыскать правила (алгоритм) сопоставления закрытых фрагментов открытым.
Никакой способ преобразования информации или алгоритм, его реализующий, не может долго оставаться секретным. Поэтому современная концепция шифрования заключается в том, что шифр или даже вся система шифрования строятся на основе некоторого семейства преобразований открытых текстов в закрытые (т. е. шифрованные). Выбор конкретного преобразования каждый раз определяется некоторым параметром, который называется ключом. Ключ должен быть известен только участникам шифрованного обмена информацией. Сами же преобразования открытых текстов в шифрованные тексты могут быть несекретными.
Таким образом, система шифрованного обмена информацией выглядит следующим образом. Отправитель сообщения шифрует открытый текст на некотором ключе, получает закрытый текст, или криптограмму, и посылает ее по каналу связи. Получатель расшифровывает закрытый текст и получает открытый. Третья заинтересованная сторона – противник, или злоумышленник, перехватив криптограмму, пытается дешифровать ее, то есть тем или иным способом определить открытый текст сообщения или ключ.
Основные требования, предъявляемые к шифрам, заключаются в следующем:
· ключей должно быть достаточно много, чтобы дешифровка сообщения путем перебора заняла неоправданно длительное время;
· алгоритм шифрования должен быть достаточно сложным, чтобы противостоять возможному анализу и построению алгоритмов дешифрования.
Известны два типа криптосистем: симметричные и асимметричные.
Симметричная криптография – исторически самый старый метод шифрования документов. В ней для шифрования и расшифровывания применяется один и тот же ключ. Алгоритм шифрования и ключ выбираются до начала обмена сообщениями обеими сторонами, причем ключ должен сохраняться в секрете. Т.е. и передатчик, и приемник заранее знают алгоритм шифрования, а также ключ к сообщению, без которых информация представляет собой всего лишь набор символов, не имеющих смысла.
Примеры симметричных криптоалгоритмов:
– простая перестановка. Сообщение записывается в таблицу по столбцам. После того, как открытый текст записан колонками, для образования шифровки он считывается по строкам. Для использования этого шифра отправителю и получателю нужно договориться о ключе – размере таблицы;
– двойная перестановка, при которой сообщение, закрытое простой перестановке, еще раз шифруется так же. Размер второй таблицы должен быть подобран таким образом, чтобы длины строк и столбцов были другими, чем в первой. Кроме того, можно переставлять не столбцы, а строки, либо еще как-то дополнительно модифицировать порядок записи данных;
– перестановка «Магический квадрат» – один из таких модифицированных способов. Магическим квадратом называется квадратная таблица с вписанными в клетки последовательными целыми числами, начиная с 1. Эти числа должны дать в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Текст шифруется по такому квадрату последовательно, по буквам. Существует лишь один магический квадрат размером 3×3, однако квадратов 4×4 насчитывается уже 880, а число магических квадратов размером 5×5 около 250000. Ручной перебор всех вариантов такого ключа практически невозможен, поэтому данный метод был вполне надежен.
Сегодня используются два основных типа симметричных алгоритмов:
– блочные, обрабатывающие информацию блоками определённой длины (обычно 64, 128 бит). К каждому блоку применяется ключ в установленном порядке, при этом на каждом этапе осуществляется перемешивание и подстановка. Результатом является лавинный эффект – нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных, т. е. чем больше шифруемый документ, тем сложнее его вскрыть;
– поточные шифры, в которых шифрование проводится над каждым битом либо байтом открытого текста. Поточный шифр обычно создается на основе блочного.
Главным недостатком симметричных криптоалгоритмов является тот факт, что, кроме самого закрытого сообщения, получателю необходимо каким-то образом по открытому каналу передать и ключ. Таким образом, принципиальная уязвимость таких систем находится на этапе передачи данных. Поэтому для целей конфиденциального информационного обмена симметричные алгоритмы не подходят, хотя широко используются в сферах, где секретность не является принципиальным требованием.
Проблему передачи ключа получателю решает асимметричная криптография или, иначе, криптография с открытым распределением ключей.
Криптографическая система с открытым ключом – система шифрования, при которой открытый ключ свободно передаётся по открытому каналу и используется для шифрования сообщения. Для расшифровки сообщения используется секретный ключ, которым владеет только получатель, и который нигде не публикуется, никуда не передается.
Начало асимметричным шифрам было положено в 1976 г., когда был предложен метод получения секретных ключей с использованием открытого канала. В 1977 году ученые Ади Шамир, Рональд Ривест и Леонард Эйдлман из Массачусетского технологического института разработали алгоритм шифрования, основанный на разложении большого числа на простые множители. Алгоритм получил название по первым буквам фамилий авторов – RSA (Rivest, Shamir, Adleman), и до настоящего времени является одним из основных асимметричных алгоритмов.
Суть состоит в следующем. Генерируется пара связанных ключей – открытый О и закрытый З, при этом по открытому ключу невозможно вычислить или подобрать закрытый. Открытый ключ служит для закрытия документа, закрытый – для открытия. Открытый ключ сообщается по каналам связи, публикуется в СМИ, в интернете и т.д. Отправитель информации пользуется открытым ключом для шифрования документа, причем важно, что расшифровать его при помощи этого ключа невозможно. Зашифрованный документ по каналам связи передается владельцу закрытого ключа. Он, соответственно, расшифровывает документ, пользуясь закрытым ключом, который известен только ему.
Получается, что третье лицо сможет расшифровать документ только в том случае, если подберет ключ, соответствующий закрытому. В принципе, поскольку стойкость алгоритма основана на сложности факторизации, т.е. разложении на множители больших чисел, возможно и вычисление ключа. Однако на практике эта операция занимает огромное количество времени. Если учесть, что обычно требование к стойкости шифра заключается не в абсолютной невскрываемости, а в обеспечении невскрываемости в течение некоторого критического времени, то этого вполне достаточно.
Преимущества асимметричных шифров:
– не нужно предварительно передавать секретный ключ по надёжному каналу, поскольку получатель его уже знает, а отправителю он не нужен;
– пару ключей можно не менять значительное время.
Недостатки асимметричных шифров:
– в алгоритм сложнее внести изменения;
– длинные ключи. При сопоставимой стойкости ключи асимметричных алгоритмов примерно на порядок длиннее, чем симметричных;
– шифрование–расшифровка асимметричным алгоритмом происходит в 100-1000 раз медленнее, чем симметричным;
– требуются значительно бо́льшие вычислительные ресурсы, чем для симметричных.
Асимметричная криптография используется еще в одном из способов защиты информации – электронной подписи.
Дата добавления: 2019-10-16; просмотров: 1613;