Симметричная и асимметричная системы шифрования

    | Любовь Горшкова, Григорий Ефимов

Последняя линия обороны администраторов и пользователей от злоумышленника. Источник - Сетевой журнал

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

Криптография шагает в массы

Быстрое развитие процессов автоматизации, проникновение компьютеров во все сферы жизни повлекли за собой, помимо несомненных преимуществ, ряд специфических проблем. Одной из таких проблем стала необходимость обеспечения эффективной защиты информации. Особенно стоит отметить широкое распространение персональных компьютеров и создание компьютерных сетей. Действительно, сложно предположить, что злоумышленник взламывает наугад квартиры и офисы исключительно в поисках конфиденциальной информации. А вот злоумышленник, оснащенный персональным компьютером, подключенным к Интернету, вполне может позволить себе роскошь взламывать защиту компьютеров иногда даже ради чисто спортивного интереса. С целью предотвращения проникновения злоумышленника в компьютеры организаций и частных лиц было создано немало различных систем безопасности. Однако полностью гарантировать предотвращение несанкционированного доступа к данным, хранящимся на компьютерах, очень сложно. Очень часто бреши в системе защиты возникают по вине тех, чьи секреты эти системы охраняют. Еще большую опасность с точки зрения несанкционированного доступа к информации представляет собой процесс передачи информации по сети. Стоит также отметить, что после появления "электронных денег" и возможности осуществления торговых операций через Интернет злоумышленник получил возможность не просто переписать или испортить данные, находящиеся на вашем компьютере или пересылаемые вами по сети, но и напрямую украсть деньги с вашего электронного счета. В случае, когда настойчивый злоумышленник все-таки получил доступ к данным, хранящимся на вашем компьютере или пересылаемым по сети, последним средством, призванным защитить вашу конфиденциальную информацию и ваши финансы, является шифрование.

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

Итак, шифрование осуществляет преобразование исходных данных при помощи шифра. Согласно определению Большого Энциклопедического словаря, шифр - (франц. chiffre) есть совокупность условных знаков (условная азбука из цифр или букв) для секретной переписки. Существует два вида шифров: шифр замены и шифр перестановки. Шифр замены осуществляет преобразование замены букв или других "частей" открытого текста на аналогичные "части" шифрованного текста. Шифр перестановки осуществляет преобразование перестановки букв в открытом тексте. И тот, и другой шифр имеют долгую историю использования.

Тарабарская грамота

Первые сведения об использовании шифров в военном деле связаны с именем спартанского полководца Лисандра. Смысл шифрования сводился к следующему: на жезл, имеющий форму цилиндра, наматывалась узкая папирусная лента (без просветов и нахлестов), а затем на этой ленте вдоль оси цилиндра записывался открытый текст. Лента разматывалась, и для непосвященных получалось, что поперек ленты в беспорядке написаны какие-то буквы. Адресат брал такой же жезл и таким же образом наматывал на него полученную ленту. По названию жезла и получил название шифр - "Сцитала".

Другим примером шифра древности является шифр Цезаря. Этот шифр реализует следующие преобразования текста: каждая буква открытого текста заменялась третьей после нее буквой в алфавите, который считался написанным по кругу, то есть после "z" следует "a" (в русском алфавите соответственно после "я" - "а").

Более широкий круг пользователей имел шифр посольского приказа "тарабарская грамота", суть которого сводилась к тому, что алфавит делился на две части, и в зашифрованном тексте первая буква первой части алфавита менялась на первую букву второй части и наоборот. Необходимо добавить, что до 1708 года используемый русский алфавит - кириллица - состоял из 42 букв.

Однако вплоть до начала XX века, когда появились первые шифровальные машины, криптография была уделом чудаков-одиночек. Понимание же математического характера решаемых криптографией задач пришло только в середине ХХ века после выхода в свет работ выдающегося американского ученого Клода Шеннона. В 1945 году вышла его работа "Математическая теория криптографии", которая была рассекречена в 1948 году.

Немного математики

Прежде всего, Шеннон сделал вывод, что во всех, даже очень сложных шифрах в качестве типичных компонентов можно выделить такие простые приемы, как шифры замены и перестановки.

Математическое описание шифра замены будет выглядеть следующим образом. Пусть Х и Y - два алфавита (открытый и шифрованный соответственно), g:X ® Y - взаимно однозначное отображение Х и Y. Действие шифра замены можно представить как преобразование открытого текста X (x1,x2,…xn) в шифрованный, Y=g(X) (g(x1),g(x2),…,g(x3).

Математическое описание шифра перестановки будет выглядеть следующим образом. Пусть длина отрезков, на которые разбивается открытый текст, равна n, а s - взаимно однозначное отображение множества {1, 2, … n} в себя. Шифр перестановки действует так: отрезок открытого текста x1,x2,…xn преобразуется в отрезок шифрованного текста xs(1) ,xs(2),…xs(3).

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

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

В целом описанный Шенноном метод шифрования, получивший названия классического, или симметричного, можно представить следующим образом. Существует функция шифрования, осуществляющая преобразование открытого текста в зашифрованный (например, F: Х®Y), и существует функция дешифрования, выполняющая обратную процедуру (например, F-1: Х®Y).

Это представление сохранялось до 1976 года, когда была опубликована работа молодых американских математиков У.Дифффи и М.Э.Хеллмана "Новые направления в криптографии". В данной работе центральными являются два определения: односторонняя функция и функция с секретом.

Односторонней называется функция, обладающая двумя свойствами: существует полиномиальный алгоритм вычисления значений F(Х); не существует полиномиального алгоритма инвертирования функции F (то есть решения уравнения F(X)=Y относительно Х нет.). Иначе говоря, в этой функции расшифровка зашифрованного ею же текста не предусмотрена.

Функцией с секретом называется функция FK: Х®Y, зависящая от параметра К и обладающая следующими свойствами: существует полиномиальный алгоритм вычисления значения FK(Х) для любых К и Х; не существует полиномиального алгоритма инвертирования FK при неизвестном К; существует полиномиальный алгоритм инвертирования FK при известном К.

Шифрование при помощи функции с секретом получило также название асимметричного шифрования.

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

Классическое шифрование

Наиболее широко распространенным шифром симметричного шифрования является DES (Data Encryption Standard), разработанный IBM в 1976 году и рекомендованный Национальным бюро стандартов США к использованию в открытых секторах экономики.

Алгоритм DES работает следующим образом. Данные представляются в цифровом виде и разбиваются на блоки длинной 64 бита, затем поблочно шифруются. Блок разбивается на левую и правую части. На первом этапе шифрования вместо левой части блока записывается правая, а вместо правой - сумма по модулю 2 (операция XOR) левой и правой частей. На втором этапе по определенной схеме выполняются побитовые замены и перестановки. Ключ DES имеет длину 64 бита, из которых 56 битов - случайные, а 8 - служебные, используемые для контроля ключа.

DES имеет два режима работы: ECB (Electronic Code Book) и CBC (Cipher Block Chaining). Режим СВС отличается от обычного тем, что перед шифрование очередного блока к нему применяется операция "исключающее ИЛИ" с предыдущем блоком. В ситуациях, когда надежность алгоритма DES кажется недостаточной, используется его модификация - Triple DES (тройной DES). Строго говоря, существует несколько вариантов Triple DES. Наиболее простой - перешифрование: открытый текст шифруется на первом ключе, полученный шифротекст - на втором и, наконец, данные, полученные после второго шага, - на третьем. Все три ключа выбираются независимо друг от друга.

IDEA (International Data Encryption Algorithm) - еще один блочный шифр с длиной ключа 128 бит. Этот европейский стандарт (от ЕТН, Цюрих) предложен в 1990 году. Алгоритм IDEA по скорости и стойкости к анализу не уступает алгоритму DES.

CAST - это блочный шифр, использующий 128-битовый ключ в США и 40-битный - в экспортном варианте. CAST используется компанией Northern Telecom (Nortel).

Шифр Skipjack, разработанный Агентством национальной безопасности США (National Security Agency - NSA), использует 80-битовые ключи. Это часть проекта Capstone, цель которого - разработка общедоступного криптографического стандарта, удовлетворяющего требованиям правительства СШA. Capstone включает четыре основных компонента: шифр Skipjack; алгоритм цифровой подписи на базе стандарта DSS (Digital Signature Standard); хэш-функцию на базе алгоритма SHA (Secure Hash Algorithm); микросхему, реализующую все вышеизложенное (например, Fortezza - PCMCIA-плата, основанная на этой микросхеме).

В реализации Skipjack использована патентованная микросхема Capstone, алгоритм которой засекречен. Ожесточенный спор ведется по поводу того, что в Skipjack будут предусмотрены ключи для "посреднических агентов" (escrow agencies), которые смогут дешифровать сообщения по требованию суда.

Шифры RC2 и RC4 разработаны Роном Рейвестом - одним из основателей компании RSA Data Security, и запатентованы этой компанией. Они используют ключи разной длины, а в экспортируемых продуктах заменяют DES. Шифр RC2 - блочный, с длиной блока 64 бита; шифр RC4 - поточный. По замыслу разработчиков, производительность RC2 и RC4 должна быть не меньше, чем у алгоритма DES.

Всем системам открытого шифрования присущи следующие основные недостатки. Во-первых, принципиальной является надежность канала передачи ключа второму участнику секретных переговоров. Иначе говоря, ключ должен передаваться по секретному каналу. Во-вторых, к службе генерации ключей предъявляются повышенные требования, обусловленные тем, что для n абонентов при схеме взаимодействия "каждый с каждым" требуется n x (n-1)/2 ключей, то есть зависимость числа ключей от числа абонентов является квадратичной.

Два ключа

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

Эти системы характеризуются наличием у каждого абонента двух ключей: открытого и закрытого (секретного). При этом открытый ключ передается всем участникам секретных переговоров. Таким образом, решаются две проблемы: нет нужды в секретной доставке ключа (так как при помощи открытого ключа нельзя расшифровать сообщения, для этого же открытого ключа зашифрованные, и, следовательно, перехватывать открытый ключ нет смысла); отсутствует также квадратичная зависимость числа ключей от числа пользователей - для n пользователей требуется 2n ключей.

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

Шифра RSA назван так по первым буквам фамилий его изобретателей: Рона Райвеста, Ади Шамира и Леонарда Элдемана - основателей компании RSA Data Secutity. RSA - не только самый популярный из асимметричных шифров, но, пожалуй, вообще самый известный шифр. Математическое обоснование RSA таково: поиск делителей очень большого натурального числа, являющегося произведением двух простых, - крайне трудоемкая процедура. По открытому ключу очень сложно вычислить парный ему личный ключ. Шифр RSA всесторонне изучен и признан стойким при достаточной длине ключей. Например, 512 бит для обеспечения стойкости не хватает, а 1024 бита считается приемлемым вариантом. Некоторые утверждают, что с ростом мощности процессоров RSA потеряет стойкость к атаке полным перебором. Однако же увеличение мощности процессоров позволит применить более длинные ключи, что повысит стойкость шифра.

Шифр действует по следующему алгоритму. Первое: случайно выбираются два простых очень больших числа р и q. Второе: вычисляются два произведения n=pq, m=(p-1)(q-1). Третье: выбирается случайное целое Е, не имеющее общих сомножителей с m. Четвертое: находится D, такое, что DE=1 по модулю m. Пятое: исходный текст разбивается на блоки длиной Х не более n. Шестое: для шифрования сообщения необходимо вычислить С=ХE по модулю n. Седьмое: для дешифрования вычисляется Х=СD по модулю n.

Для шифрования необходимо знать пару чисел: Е, n, для дешифрования D, n. Первая пара - открытый ключ, вторая - закрытый. Зная открытый ключ, можно вычислить значение закрытого ключа. Необходимым промежуточным действием этого преобразования является нахождение сомножителей p и q, для чего нужно разложить n на сомножители, - эта процедура занимает очень много времени. Именно с огромной вычислительной сложностью связана криптостойкость RSA.

Стандарты PKCS (Public Key Cryptography Standards) предложены RSA Laboratories и объединением компаний, включающим Microsoft, Apple, Digital Equipment, Sun Microsystems и Lotus. В семействе PKCS множество различных стандартов (еще больше их готовится для добавления к PKCS в будущем), каждый из которых описывает отдельную область. (Учтите, что PKCS 2 и RKCS 4 объединены в PKCS 1).

Другим шифром, использующим асимметричное шифрование, является DSS.

Стандарт DSS (Digital Signature Standard) одобрен правительством США. Длина используемого ключа варьируется в пределах от 512 до 1024 бит. DSS предназначен для создания цифровой подписи (см. далее раздел о цифровой подписи), но не для закрытия информации. В стандарте DSS найдены некоторые слабые места защиты, вследствие чего он не так широко распространен.

Однако, сравнивая наиболее популярных представителей симметричного и асимметричного шифрования, стоит заметить, что программная реализация RSA гораздо сложнее DES, и поэтому она, как правило, используется при передаче небольшого объема сообщений.

Общая схема шифрованной передачи информации представлена на рис. 1. В системе симметричного шифрования оба ключа (шифрования и дешифрования) совпадают. В системе асимметричного шифрования ключи разные (шифрования - открытый, дешифрования - личный, секретный). На рисунках 2 и 3 изображены схемы распределения ключей для симметричной и асимметричной систем шифрования. Доставка секретных ключей происходит по секретным (закрытым) каналам, доставка открытых ключей - по открытым.

Шифрование в целях аутентификации

Примером шифрования в целях аутентификации (установлении подлинности автора и документа) является шифрование с помощью односторонней функции (one-way) по-другому именуемой хэш-функцией (hash function) или дайджест-функцией (digest function). Хэш-функция, примененная к шифруемым данным, дает в результате значение (дайджест), состоящее из фиксированного небольшого числа байт. Дайджест передается вместе с исходным сообщением. Получатель сообщения, зная, какая хэш-функция была применена для получения дайджеста, заново вычисляет дайджест, используя незашифрованную часть сообщения. Если значение полученного и вычисленного дайджестов совпадают, значит, содержимое сообщения не было подвергнуто никаким изменениям. Значение дайджеста не дает возможности восстановить исходное сообщение, но зато позволяет проверить целостность данных.

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

Наиболее популярными хэш-функциями являются MD2, MD4, MD5 и SHA.

MD2, MD4 и MD5 - алгоритмы дайджеста сообщений, разработанные Роном Райвестом. Каждый из них вырабатывает 128-битовый хэш-код. Алгоритм MD2 - самый медленный, MD4 - самый быстрый. Алгоритм MD5 можно считать модификацией MD4, при которой скоростью пожертвовали ради увеличения безопасности. Более подробную информацию вы найдете в документах RFC 1321 (MD2), RFC 1321 (MD4) и RFC 1319 (MD5).

SHA (Secure Hash Algorithm) - это алгоритм вычисления дайджеста сообщений, вырабатывающий 160-битовый хэш-код. Алгоритм SHA одобрен правительством СЩА (как часть проекта Capstone). Он несколько надежнее MD4 и MD5.

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

Цифровая подпись

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

Отправитель вычисляет дайджест сообщения, шифрует его своим ключом и отправляет вместе с письмом. Получатель, приняв сообщение, расшифровывает дайджест открытым ключом отправителя. Кроме того, получатель сам вычисляет дайджест принятого сообщения и сравнивает его с расшифрованным. Если два дайджеста совпадают, то подпись является подлинной. В противном случае либо изменено содержание сообщения, либо подпись подделана.

Шифр RSA также используют для выработки и проверки цифровой подписи. Чтобы подписать сообщение, отправитель шифрует его своим личным ключом и отправляет подпись вместе с сообщением. Получатель расшифровывает подпись открытым ключом отправителя и сравнивает результат с принятым сообщением. Если сообщение подлинное, то полученное расшифрованное и исходное сообщение должны совпадать.

Стандарт DSS (Digital Signature Standard) - это асимметричный шифр, использование которого рекомендовано правительством США. Здесь используются ключи длиной от 512 до 1024 бит. Стандарт DSS применяется только для формирования цифровой подписи, но не для закрытия данных. Он основан на алгоритме DSA (Digital Signature Algorithm), разработанном Национальным институтом стандартов и технологий (National Institute of Standards and Technology, NIST).

Разовые ключи

Так какой же алгоритм шифрования следует использовать - симметричный или асимметричный? На практике оба метода применяются одновременно - отчасти из-за того, что асимметричное шифрование значительно медленнее симметричного. Поэтому используется следующий прием: отправитель вырабатывает случайный секретный ключ и его средствами шифрует сообщение (симметричный алгоритм). Письмо посылается вместе с секретным ключом, который зашифрован открытым ключом получателя (алгоритм с открытым ключом). Такой выработанный случайным образом ключ называется разовым (message key).

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

Сертификаты

Асимметричное шифрование требует сохранения личного ключа в тайне. Кроме того, необходим надежный метод сопоставления открытого ключа и конкретного человека, процесса или объекта. Как же узнать, действительно ли открытый ключ принадлежит конкретному пользователю? (Если, например, этот пользователь опубликует свой открытый ключ под своим именем, то сможет прочитать все сообщения, присланные на его имя). В какой-то степени в этом поможет сертификат (certificate) - объект, надежно связывающий пользователя и его ключ. Сертификат содержит и другую информацию, например срок действия. Его выдает и подписывает центр сертификации служба (CA - Certificate Authority), однако заметим, что это не полностью решает проблему.

Сертификаты хранятся как объекты службы каталогов или на специально выделенных для этого серверах. Существует программное обеспечение сервера сертификатов, созданное как Microsoft, так и Netcape. Время от времени сертификаты необходимо отзывать. Для этого их заносят в список отозванных сертификатов (CRL - Certificate Revocation List), издаваемый СА.

Еще раз о стойкости

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

Если не принимать во внимание абсолютно стойкий шифр, массового применения которого пользователями компьютерных сетей, очевидно, не произойдет никогда, то ко всем остальным шифрам можно применить следующее высказывание "отца кибернетики" Норберта Винера: "Любой шифр может быть вскрыт, если только в этом есть настоятельная необходимость, и если информация, которую предполагается получить, стоит затраченных средств, усилий и времени…".

В доказательство истинности этого высказывания можно привести задачу, предложенную создателями RSA для всех желающих попробовать свои силы во взломе их шифра. В конце августа 1999 года компания RSA Data Security оповестила о вскрытии 512-битового открытого ключа. Во взломе принимали участие 292 компьютера на протяжении чуть больше пяти месяцев; кроме того, 9 недель ушло на предварительные расчеты. В связи со вскрытием 512-битового ключа RSA Data Security рекомендует пользователям использовать более надежные 768-битовые или даже 1028-битовые ключи.

Остается констатировать факт: любой шифр, применяемый рядовым пользователем, может быть вскрыт. Вопрос в другом: стоит ли зашифрованная информация затрат на вскрытие шифра? Так мы и подошли к основному принципу шифрования: шифруемая информация должна быть более ценной, чем стоимость защиты, и при этом менее ценной, чем стоимость атаки.

Стандарты PKCS

PKCS 1 Шифрование при помощи открытых ключей RSA

PKCS 3 Протокол Диффи-Хеллмана (Diffi Hellman) обмена и согласования ключей

PKCS 5 Шифрование с использованием секретного ключа

PKCS 6 Формат сертификатов, являющихся надмножеством сертификатов Х.509

PKCS 7 Синтаксис сообщений, содержащих шифротекст и цифровую подпись

PKCS 8 Формат личных ключей

PKCS 9 Структуры данных, используемые в других PKCS

PKCS 10 Синтаксис запросов на сертификацию

PKCS 11 Описывает API для устройств, использующих криптографические функции, например для смарт-карт

Основные понятия

Криптология - наука, занимающаяся проблемами шифрования и дешифрования.

Криптография - наука о способах преобразования (шифрования) информации с целью ее защиты от незаконных пользователей.

Криптоанализ - наука (и практика ее применения) о методах и способах вскрытия шифров.

Шифр (от франц. chiffre) - совокупность условных знаков (условная азбука из цифр или букв) для секретной переписки.

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

Шифр перестановки - шифр, осуществляющий преобразование перестановки букв в открытом тексте.

Блочный шифр - шифр, разбивающий исходный текст на блоки и преобразующий каждый блок входных данный в блок шифротекста

Поточный шифр - шифр, преобразующий открытый текст в шифротекст по одному биту за такт.

Абсолютно стойкий шифр - шифр, не поддающийся расшифровке.

Ключ - сменный элемент шифра, который применяется для шифрования конкретного сообщения.

Стойкость шифра (криптостойкость) - способность шифра противостоять всевозможным атакам на него.

Атака на шифр - попытка вскрытия шифра.

Односторонняя функция - функция шифрования F(X)=Y, не имеющая решения уравнения относительно Х.

Функция с секретом - функция шифрования, FK: Х®Y, зависящая от параметра К и не имеющая обратного решения при неизвестном К.

Цифровая подпись (digital signature) -способ проверки целостности содержимого сообщения и подлинности его отправителя основанный на формировании небольшого количества цифровой информации и ее передаче вместе с подписываемым текстом.

Разовый ключ (message key) - выработанный случайным образом секетный ключ, зашифрованный другим ключом и посылаемый вместе с зашифрованным им сообщением.

Экспортные ограничения на торговлю программными и аппаратными криптографическими продуктами.

В 1995 г. 33 страны, включая Россию, подписали Вассенаарское соглашение (Wassenaar Arrangement), посвященное проблемам международной торговли оружием и продуктами двойных технологий.

В декабре 1998 г. участники соглашения достигли договоренности об ограничении контроля со стороны правительств стран-участниц над торговлей 64-разрядными аппаратными и программными продуктами, криптографическими продуктами, реализующими 56-битовые алгоритмы класса DES и криптозащиту с открытыми ключами длиной 512 разрядов.

Сетевой журнал №9.2000