logo
Лекции по информационным технологиям / Лекции_2_семестр

Криптография

При симметричном шифровании для шифровки и дешифровки данных применяется один и тот же секретный ключ. При этом сам ключ должен быть передан безопасным способом участникам взаимодействия до начала передачи зашифрованных данных. В симметричном шифровании применяются два типа шифров: блочные и поточные.

В первом случае исходное сообщение делится на блоки постоянной длины, каждый из которых преобразуется по определенным правилам в блок зашифрованного текста. В качестве примера блочного шифра можно привести алгоритмы DES, IDEA (автор Джеймс Мэсси), Алгоритм DES оперирует блоками длиной 64 бита и 64-битовым ключом, в котором 8 битов являются контрольными, вычисляемыми по специальному правилу (по аналогии с контрольными разрядами корректирующих кодов). В последние годы для увеличения криптостойкости алгоритма все чаще используются 128-битовые ключи, Поточные шифры оперируют с отдельными битами и байтами исходного сообщения и ключа. Поточные шифры имеют более высокую криптостойкость, но должны использовать длинные ключи, обычно равные длине передаваемого сообщения. В качестве примеров поточных алгоритмов можно привести в первую очередь алгоритмы RC (RC2, RC4, RC5) корпорации RSA Data Security (США) и алгоритмы ВЕСТА (ВЕСТА-2, ВЕСТА-2М, ВЕСТА-4) фирмы <ЛАН Крипто> (Россия).

Асимметричноешифрование основано на том, что для шифровки и расшифровки используются разные ключи, которые, естественно, связаны между собой, но знание одного ключа не позволяет определить другой. Один ключ свободно распространяется по сети и является открытым (public), второй ключ известен только его владельцу и является закрытым (private). Если шифрование выполняется открытым ключом, то сообщение может быть расшифровано только владельцем закрытого ключа - такой метод шифрования используется для передачи конфиденциальной информации. Если сообщение шифруется закрытым ключом, то оно может быть расшифровано любым пользователем, знающим открытый ключ (напомним, открытый ключ пересылается по сети совершенно открыто, и он может быть известен многим пользователям), но изменить или подменить зашифрованное сообщение так, чтобы это осталось незамеченным, владелец открытого ключа не может.

Криптостойкость асимметричного шифрования обеспечивается сложной комбинаторной задачей, решить перебором кодов которую не представляется возможным: алгоритм RSA (аббревиатура по фамилиям его создателей Rivest, Shamir, Adelman) основан на поиске делителей большого натурального числа, являющегося произведением всего двух простых чисел; алгоритм Эль-Гамаля основан на решении задачи дискретного логарифмирования для поиска числа X из уравнения аХ = b mod р при заданных числах а и b и большом простом числе р, и т. д.

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

Электронная цифровая подпись(ЭЦП)- это последовательность символов, полученная в результате криптографического преобразования исходной информации с использованием закрытого ключа и позволяющая подтверждать целостность и неизменность этой информации, а также ее авторство путем применения открытого ключа. При использовании электронной подписи файл пропускается через специальную программу (hash function), в результате чего получается набор символов (hash code), генерируются два ключа: открытый (public) и закрытый (private). Набор символов шифруется с помощью закрытого ключа. Такое зашифрованное сообщение и является цифровой подписью. По каналу связи передается незашифрованный файл в исходном виде вместе с электронной подписью. Другая сторона, получив файл и подпись, с помощью имеющегося открытого ключа расшифровывает набор символов из подписи. Далее сравниваются две копии наборов и, если они полностью совпадают, то это действительно файл, созданный и подписанный первой стороной.

Для шифрования электронной подписи используются ранее названный алгоритм RSA, а также DSA (национальный стандарт США) и Schnorr (алгоритм Klaus Schnorr); в России применяются алгоритмы шифрования электронной подписи по ГОСТ Р 34.10-94.

129