Закрытый ключ
система с открытым ключом (разновидность асимметричного шифрования, асимметричного шифра) — система шифрования и/или электронной подписи (ЭП), при которой открытый ключ передаётся по открытому (то есть не защищённому, доступному для наблюдения) каналу и используется для проверки ЭП и для шифрования сообщения. Для генерации ЭП и для расшифровки сообщения используется закрытый ключ. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах, в частности, в протоколах TLS и его предшественнике SSL (лежащих в основе HTTPS), в SSH. Также используется в PGP, S/MIME.
Идея криптосистемы с открытым ключом
Общие принципы
Асимметричное шифрование с открытым ключом базируется на следующих принципах:
- Можно сгенерировать пару очень больших чисел (открытый ключ и закрытый ключ) так, чтобы, зная открытый ключ, нельзя было вычислить закрытый ключ за разумный срок. При этом механизм генерации является общеизвестным.
- Имеются надёжные методы шифрования, позволяющие зашифровать сообщение открытым ключом так, чтобы расшифровать его можно было только закрытым ключом. Механизм шифрования общеизвестен.
- Владелец двух ключей никому не сообщает закрытый ключ, но передает открытый ключ контрагентам или делает его общеизвестным.
Если необходимо передать зашифрованное сообщение владельцу ключей, то отправитель должен получить открытый ключ. Отправитель шифрует свое сообщение открытым ключом получателя и передает его получателю (владельцу ключей) по открытым каналам. При этом расшифровать сообщение не может никто, кроме владельца закрытого ключа.
В результате можно обеспечить надёжное шифрование сообщений, сохраняя ключ расшифровки секретным для всех — даже для отправителей сообщений.
Этот принцип можно объяснить через бытовую аналогию «замо́к — ключ от замка́» для отправки посылки. У участника A есть личный замок и ключ от него. Если участник А хочет получить секретную посылку от участника Б, то он публично передаёт ему свой замок. Участник Б защёлкивает замок на секретной посылке и отправляет её участнику А. Получив посылку, участник А открывает ключом замок и получает посылку.
Знание о передаче замка и перехват посылки ничего не дадут потенциальному злоумышленнику: ключ от замка есть только у участника А, поэтому посылка не может быть вскрыта.
Реализация через одностороннюю функцию
Идея криптографии с открытым ключом очень тесно связана с идеей односторонних функций, то есть таких функций , что по известному
довольно просто найти значение
, тогда как определение
из
невозможно за разумный срок.
Но сама односторонняя функция бесполезна в применении: ею можно зашифровать сообщение, но расшифровать нельзя. Поэтому криптография с открытым ключом использует односторонние функции с лазейкой. Лазейка — это некий секрет, который помогает расшифровать. То есть существует такой , что, зная
и
, можно вычислить
. Например, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (лазейка), то можно легко решить эту проблему.
Получатель информации формирует открытый ключ и «лазейку» (другими словами, открытую и закрытую часть ключа), затем передает открытый ключ отправителю, а «лазейку» оставляет у себя. Отправитель шифрует информацию на основе открытого ключа: такую зашифрованную информацию просто расшифровать, лишь имея одновременно и открытый ключ, и «лазейку». В терминах функции, получатель формирует с лазейкой
, затем передает информацию о параметрах функции
отправителю (при этом, даже зная параметры функции
, невозможно обнаружить «лазейку» за разумный срок). После этого отправитель формирует шифрованное сообщение
, а получатель извлекает
из
, зная
(где
— исходное не шифрованное сообщение).
Примеры
Понять идеи и методы криптографии с открытым ключом помогает следующий пример — хранение паролей в удалённом компьютере, к которому должны подключаться пользователи. Каждый пользователь в сети имеет свой пароль. При входе он указывает имя и вводит секретный пароль. Но если хранить пароль на диске удалённого компьютера, то кто-нибудь его может считать (особенно легко это сделать администратору этого компьютера) и получить доступ к секретной информации. Для решения задачи используется односторонняя функция. При создании секретного пароля в компьютере сохраняется не сам пароль, а результат вычисления функции от этого пароля и имени пользователя. Например, пользователь Алиса придумала пароль «Гладиолус». При сохранении этих данных вычисляется результат функции (АЛИСА_ГЛАДИОЛУС), пусть результатом будет строка РОМАШКА, которая и будет сохранена в системе. В результате файл паролей примет следующий вид:
| Имя | |
|---|---|
| АЛИСА | РОМАШКА |
| БОБ | НАРЦИСС |
Вход в систему теперь выглядит так:
| Имя: | АЛИСА |
|---|---|
| Пароль: | ГЛАДИОЛУС |
Когда Алиса вводит «секретный» пароль, компьютер проверяет, даёт или нет функция, применяемая к АЛИСА_ГЛАДИОЛУС, правильный результат РОМАШКА, хранящийся на диске компьютера. Стоит изменить хотя бы одну букву в имени или в пароле, и результат функции будет совершенно другим. «Секретный» пароль не хранится в компьютере ни в каком виде. Файл паролей может быть теперь просмотрен другими пользователями без потери секретности, так как функция практически необратима.
В предыдущем примере используется односторонняя функция без лазейки, поскольку не требуется по зашифрованному сообщению получить исходное. В следующем примере рассматривается схема с возможностью восстановить исходное сообщение с помощью «лазейки», то есть труднодоступной информации. Для шифрования текста можно взять большой абонентский справочник, состоящий из нескольких толстых томов (по нему очень легко найти номер любого жителя города, но почти невозможно по известному номеру найти абонента). Для каждой буквы из шифруемого сообщения выбирается имя, начинающееся на ту же букву. Таким образом букве ставится в соответствие номер телефона абонента. Отправляемое сообщение, например «КОРОБКА», будет зашифровано следующим образом:
| Сообщение | Выбранное имя | Криптотекст |
|---|---|---|
| К | Королёв | 5643452 |
| О | Орехов | 3572651 |
| Р | Рузаева | 4673956 |
| O | Осипов | 3517289 |
| Б | Батурин | 7755628 |
| К | Кирсанова | 1235267 |
| А | Арсеньева | 8492746 |
Криптотекстом будет являться цепочка номеров, записанных в порядке их выбора в справочнике. Чтобы затруднить расшифровку, следует выбирать случайные имена, начинающиеся на нужную букву. Таким образом исходное сообщение может быть зашифровано множеством различных списков номеров (криптотекстов).
Примеры таких криптотекстов:
| Криптотекст 1 | Криптотекст 2 | Криптотекст 3 |
|---|---|---|
| 1235267 | 5643452 | 1235267 |
| 3572651 | 3517289 | 3517289 |
| 4673956 | 4673956 | 4673956 |
| 3517289 | 3572651 | 3572651 |
| 7755628 | 7755628 | 7755628 |
| 5643452 | 1235267 | 5643452 |
| 8492746 | 8492746 | 8492746 |
Чтобы расшифровать текст, надо иметь справочник, составленный согласно возрастанию номеров. Этот справочник является лазейкой (секрет, который помогает получить начальный текст), известной только получателю. Без данных из обоих справочников расшифровать текст в общем случае невозможно, однако для шифровки достаточно лишь первого справочника. При этом получатель может заранее легко сформировать оба справочника, передав лишь первый из них отправителю для шифровки.
Схема шифрования с открытым ключом
Пусть — пространство ключей, а
и
— ключи шифрования и расшифрования соответственно.
— функция шифрования для произвольного ключа
такая, что
. Здесь
, где
— пространство шифротекстов, а
, где
— пространство сообщений.
— функция расшифрования, с помощью которой можно найти исходное сообщение
, зная шифротекст
:
,
— набор шифрования, а
— соответствующий набор для расшифрования. Каждая пара
имеет свойство: зная
, невозможно решить уравнение
, то есть для данного произвольного шифротекста
невозможно найти сообщение
. Это значит, что по данному
невозможно определить соответствующий ключ расшифрования
.
является односторонней функцией, а
— .
Ниже показана схема передачи информации лицом А лицу В. Они могут быть как физическими лицами, так и организациями и так далее. Но для более лёгкого восприятия принято участников передачи отождествлять с людьми, чаще всего именуемыми Алиса и Боб. Участника, который стремится перехватить и расшифровать сообщения Алисы и Боба, чаще всего называют Евой.

- Боб выбирает пару
и шлёт ключ шифрования
(открытый ключ) Алисе по открытому каналу, а ключ расшифрования
(закрытый ключ) защищён и секретен (он не должен передаваться по открытому каналу).
- Чтобы послать сообщение
Бобу, Алиса применяет функцию шифрования, определённую открытым ключом
:
,
— полученный шифротекст.
- Боб расшифровывает шифротекст
, применяя обратное преобразование
, однозначно определённое значением
.
Научная основа
Начало асимметричным шифрам было положено в работе «Новые направления в современной криптографии» Уитфилда Диффи и Мартина Хеллмана, опубликованной в 1976 году. Находясь под влиянием работы Ральфа Меркла о распространении открытого ключа, они предложили метод получения секретных ключей, используя открытый канал. Этот метод экспоненциального обмена ключей, который стал известен как обмен ключами Диффи — Хеллмана, был первым опубликованным практичным методом для установления разделения секретного ключа между заверенными пользователями канала. В 2002 году Хеллман предложил называть данный алгоритм «Диффи — Хеллмана — Меркле», признавая вклад Меркле в изобретение криптографии с открытым ключом. Эта же схема была разработана (англ. Malcolm J. Williamson) в 1970-х, но держалась в секрете до 1997 года. Метод Меркле по распространению открытого ключа был изобретён в 1974 и опубликован в 1978 году, его также называют загадкой Меркле.
В 1977 году учёными Рональдом Ривестом, Ади Шамиром и Леонардом Адлеманом из Массачусетского технологического института был разработан алгоритм шифрования, основанный на проблеме разложения на множители. Система была названа по первым буквам их фамилий (RSA — Rivest, Shamir, Adleman). Эта же система была изобретена в 1973 году (англ. Clifford Cocks), работавшим в центре правительственной связи (GCHQ), но эта работа хранилась лишь во внутренних документах центра, поэтому о её существовании не было известно до 1977 года. RSA стал первым алгоритмом, пригодным и для шифрования, и для цифровой подписи.
Вообще, в основу известных асимметричных криптосистем кладётся одна из сложных математических проблем, которая позволяет строить односторонние функции и функции-лазейки. Например, криптосистемы Меркля — Хеллмана и опираются на так называемую задачу об укладке рюкзака.
Основные принципы построения криптосистем с открытым ключом
- Начинаем с трудной задачи
. Она должна решаться сложно в смысле теории: не должно быть алгоритма, с помощью которого можно было бы перебрать все варианты решения задачи
за полиномиальное время относительно размера задачи. Более правильно сказать: не должно быть известного полиномиального алгоритма, решающего данную задачу — так как ни для одной задачи ещё пока не доказано, что для неё подходящего алгоритма нет в принципе.
- Можно выделить легкую подзадачу
из
. Она должна решаться за полиномиальное время и лучше, если за линейное.
- «Перетасовываем и взбалтываем»
, чтобы получить задачу
, совершенно не похожую на первоначальную. Задача
должна по крайней мере выглядеть как оригинальная труднорешаемая задача
.
открывается с описанием, как она может быть использована в роли ключа зашифрования. Как из
получить
, держится в секрете как секретная лазейка.
- Криптосистема организована так, что алгоритмы расшифрования для легального пользователя и криптоаналитика существенно различны. В то время как второй решает
-задачу, первый использует секретную лазейку и решает
-задачу.
Криптография с несколькими открытыми ключами
- В следующем примере показана схема, в которой Алиса шифрует сообщение так, что только Боб может прочитать его, и наоборот, Боб шифрует сообщение так, что только Алиса может расшифровать его.
Пусть есть 3 ключа ,
,
, распределенные так, как показано в таблице.
| Лицо | Ключ |
|---|---|
| Алиса | |
| Боб | |
| Кэрол | |
| Дэйв | |
| Эллен | |
| Франк |
Тогда Алиса может зашифровать сообщение ключом , а Эллен расшифровать ключами
,
, Кэрол — зашифровать ключом
, а Дэйв расшифровать ключами
,
. Если Дэйв зашифрует сообщение ключом
, то сообщение сможет прочитать Эллен, если ключом
, то его сможет прочитать Франк, если же обоими ключами
и
, то сообщение прочитает Кэрол. По аналогии действуют и другие участники. Таким образом, если используется одно подмножество ключей для шифрования, то для расшифрования требуются оставшиеся ключи множества. Такую схему можно использовать для n ключей.
| Шифруется ключом | Расшифровывается ключом |
|---|---|
- Теперь можно посылать сообщения группам агентов, не зная заранее состав группы.
Рассмотрим для начала множество, состоящее из трех агентов: Алисы, Боба и Кэрол. Алисе выдаются ключи и
, Бобу —
и
, Кэрол —
и
. Теперь, если отправляемое сообщение зашифровано ключом
, то его сможет прочитать только Алиса, последовательно применяя ключи
и
. Если нужно отправить сообщение Бобу, сообщение шифруется ключом
, Кэрол — ключом
. Если нужно отправить сообщение и Алисе и Кэрол, то для шифрования используются ключи
и
.
Преимущество этой схемы заключается в том, что для её реализации нужно только одно сообщение и n ключей (в схеме с n агентами). Если передаются индивидуальные сообщения, то есть используются отдельные ключи для каждого агента (всего n ключей) и каждого сообщения, то для передачи сообщений всем различным подмножествам требуется ключей.
Недостатком такой схемы является то, что необходимо также широковещательно передавать подмножество агентов (список имён может быть внушительным), которым нужно передать сообщение. Иначе каждому из них придется перебирать все комбинации ключей в поисках подходящей. Также агентам придется хранить немалый объём информации о ключах.
Криптоанализ алгоритмов с открытым ключом
Казалось бы, что криптосистема с открытым ключом — идеальная система, не требующая безопасного канала для передачи ключа шифрования. Это подразумевало бы, что два легальных пользователя могли бы общаться по открытому каналу, не встречаясь, чтобы обменяться ключами. К сожалению, это не так. Рисунок иллюстрирует, как Ева, выполняющая роль активного перехватчика, может захватить систему (расшифровать сообщение, предназначенное Бобу) без взламывания системы шифрования.

В этой модели Ева перехватывает открытый ключ , посланный Бобом Алисе. Затем создает пару ключей
и
, «маскируется» под Боба, посылая Алисе открытый ключ
, который, как думает Алиса, открытый ключ, посланный ей Бобом. Ева перехватывает зашифрованные сообщения от Алисы к Бобу, расшифровывает их с помощью секретного ключа
, заново зашифровывает открытым ключом
Боба и отправляет сообщение Бобу. Таким образом, никто из участников не догадывается, что есть третье лицо, которое может как просто перехватить сообщение
, так и подменить его на ложное сообщение
. Это подчеркивает необходимость аутентификации открытых ключей. Для этого обычно используют сертификаты. Распределённое управление ключами в PGP решает возникшую проблему с помощью поручителей[неавторитетный источник][источник не указан 4377 дней].
Ещё одна форма атаки — вычисление закрытого ключа, зная открытый (рисунок ниже). Криптоаналитик знает алгоритм шифрования , анализируя его, пытается найти
. Этот процесс упрощается, если криптоаналитик перехватил несколько криптотекстов с, посланных лицом A лицу B.

Большинство криптосистем с открытым ключом основано на проблеме факторизации больших чисел. К примеру, RSA использует в качестве открытого ключа n произведение двух больших простых чисел. Сложность взлома такого алгоритма состоит в трудности разложения числа n на простые множители. Но эту задачу решить реально. И с каждым годом процесс разложения становится все быстрее. Ниже приведены данные разложения на множители с помощью алгоритма «Квадратичное решето».
| Год | Число десятичных разрядов в разложенном числе | Во сколько раз сложнее разложить на множители 512-битовое число |
|---|---|---|
| 1983 | 71 | > 20 млн |
| 1985 | 80 | > 2 млн |
| 1988 | 90 | 250 тыс. |
| 1989 | 100 | 30 тыс. |
| 1993 | 120 | 500 |
| 1994 | 129 | 100 |
Также задачу разложения потенциально можно решить с помощью алгоритма Шора при использовании достаточно мощного квантового компьютера.
Для многих методов несимметричного шифрования криптостойкость, полученная в результате криптоанализа, существенно отличается от величин, заявляемых разработчиками алгоритмов на основании теоретических оценок. Поэтому во многих странах вопрос применения алгоритмов шифрования данных находится в поле законодательного регулирования. В частности, в России к использованию в государственных и коммерческих организациях разрешены только те программные средства шифрования данных, которые прошли государственную сертификацию в административных органах, в частности, в ФСБ, ФСТЭК.
Особенности системы
Применение
Алгоритмы криптосистемы с открытым ключом можно использовать:
- как самостоятельное средство для защиты передаваемой и хранимой информации,
- как средство распределения ключей (обычно с помощью алгоритмов криптосистем с открытым ключом распределяют ключи, малые по объёму, а саму передачу больших информационных потоков осуществляют с помощью других алгоритмов),
- как средство аутентификации пользователей.
Преимущества
Преимущества асимметричных шифров перед симметричными:
- не нужно предварительно передавать секретный ключ по надёжному каналу;
- только одной стороне известен ключ зашифрования, который нужно держать в секрете (в симметричной криптографии такой ключ известен обеим сторонам и должен держаться в секрете обеими);
- в больших сетях число ключей в асимметричной криптосистеме значительно меньше, чем в симметричной.
Недостатки
Недостатки алгоритма несимметричного шифрования в сравнении с симметричным:
- в алгоритм сложнее внести изменения;
- более длинные ключи — ниже приведена таблица, сопоставляющая длину ключа симметричного алгоритма с длиной ключа RSA с аналогичной криптостойкостью:
| Длина симметричного ключа, бит | Длина ключа RSA, бит |
|---|---|
| 56 | 384 |
| 64 | 512 |
| 80 | 768 |
| 112 | 1792 |
| 128 | 2304 |
- шифрование-расшифровывание с использованием пары ключей проходит на два-три порядка медленнее, чем шифрование-расшифрование того же текста симметричным алгоритмом;
- требуются существенно бо́льшие вычислительные ресурсы, поэтому на практике асимметричные криптосистемы используются в сочетании с другими алгоритмами:
- для ЭЦП сообщение предварительно подвергается хешированию, а с помощью асимметричного ключа подписывается лишь относительно небольшой результат хеш-функции;
- для шифрования они используются в форме гибридных криптосистем, где большие объёмы данных шифруются симметричным шифром на сеансовом ключе, а с помощью асимметричного шифра передаётся только сам сеансовый ключ.
Виды асимметричных шифров
- RSA (Rivest-Shamir-Adleman)
- DSA (Digital Signature Algorithm)
- Elgamal (Шифросистема Эль-Гамаля)
- Diffie-Hellman (Обмен ключами Диффи — Хелмана)
- ECDSA (Elliptic Curve Digital Signature Algorithm) — алгоритм с открытым ключом для создания цифровой подписи.
- ГОСТ Р 34.10-2012
- Rabin
- Luc
- McEliece
- Криптосистема Уильямса
См. также
- Блочный шифр
- Поточный шифр
- Инфраструктура открытых ключей (PKI)
- CEILIDH
- Сложность пароля
- Hushmail — веб-служба электронной почты, основанная на шифровании с открытым ключом.
Примечания
- Брюс Шнайер. Прикладная криптография. 2-е изд. Протоколы, алгоритмы и исходные тексты на языке Си. Глава 2.7 Цифровые подписи и шифрование.
- Саломаа А. Криптография с открытым ключом. с. 74-75
- Handbook of Applied Cryptography, Menezes A.J., Oorschot P.C., Vanstone S.A. С. 25—26
- Брюс Шнайер. Прикладная криптография. 2-е изд. Протоколы, алгоритмы и исходные тексты на языке Си. Глава 3.5
- PGP. Распределение ключей. Архивировано 26 июля 2013 года.
- Принцип достаточной защиты. Дата обращения: 4 декабря 2008. Архивировано из оригинала 24 мая 2010 года.
- Баричев С. Криптография без секретов. с. 20
Литература
- Саломаа А. Криптография с открытым ключом. — М.: Мир, 1995. — 318 с. — ISBN 5-03-001991-X.
- A. J. Menezes, P. C. van Oorschot, S. A. Vanstone. Handbook of Applied Cryptography. — 1997. — ISBN 0-8493-8523-7.
- Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си = Applied Cryptography. Protocols, Algorithms and Source Code in C. — М.: Триумф, 2002. — 816 с. — 3000 экз. — ISBN 5-89392-055-4.
Ссылки
- Тридцать лет открытому ключу | Computerworld Россия | Издательство «Открытые системы» (рус.)
Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер, Информация о Закрытый ключ, Что такое Закрытый ключ? Что означает Закрытый ключ?
Ne sleduet putat so skvoznym shifrovaniem sistema s otkrytym klyuchom raznovidnost asimmetrichnogo shifrovaniya asimmetrichnogo shifra sistema shifrovaniya i ili elektronnoj podpisi EP pri kotoroj otkrytyj klyuch peredayotsya po otkrytomu to est ne zashishyonnomu dostupnomu dlya nablyudeniya kanalu i ispolzuetsya dlya proverki EP i dlya shifrovaniya soobsheniya Dlya generacii EP i dlya rasshifrovki soobsheniya ispolzuetsya zakrytyj klyuch Kriptograficheskie sistemy s otkrytym klyuchom v nastoyashee vremya shiroko primenyayutsya v razlichnyh setevyh protokolah v chastnosti v protokolah TLS i ego predshestvennike SSL lezhashih v osnove HTTPS v SSH Takzhe ispolzuetsya v PGP S MIME Ideya kriptosistemy s otkrytym klyuchomObshie principy Asimmetrichnoe shifrovanie s otkrytym klyuchom baziruetsya na sleduyushih principah Mozhno sgenerirovat paru ochen bolshih chisel otkrytyj klyuch i zakrytyj klyuch tak chtoby znaya otkrytyj klyuch nelzya bylo vychislit zakrytyj klyuch za razumnyj srok Pri etom mehanizm generacii yavlyaetsya obsheizvestnym Imeyutsya nadyozhnye metody shifrovaniya pozvolyayushie zashifrovat soobshenie otkrytym klyuchom tak chtoby rasshifrovat ego mozhno bylo tolko zakrytym klyuchom Mehanizm shifrovaniya obsheizvesten Vladelec dvuh klyuchej nikomu ne soobshaet zakrytyj klyuch no peredaet otkrytyj klyuch kontragentam ili delaet ego obsheizvestnym Esli neobhodimo peredat zashifrovannoe soobshenie vladelcu klyuchej to otpravitel dolzhen poluchit otkrytyj klyuch Otpravitel shifruet svoe soobshenie otkrytym klyuchom poluchatelya i peredaet ego poluchatelyu vladelcu klyuchej po otkrytym kanalam Pri etom rasshifrovat soobshenie ne mozhet nikto krome vladelca zakrytogo klyucha V rezultate mozhno obespechit nadyozhnoe shifrovanie soobshenij sohranyaya klyuch rasshifrovki sekretnym dlya vseh dazhe dlya otpravitelej soobshenij Etot princip mozhno obyasnit cherez bytovuyu analogiyu zamo k klyuch ot zamka dlya otpravki posylki U uchastnika A est lichnyj zamok i klyuch ot nego Esli uchastnik A hochet poluchit sekretnuyu posylku ot uchastnika B to on publichno peredayot emu svoj zamok Uchastnik B zashyolkivaet zamok na sekretnoj posylke i otpravlyaet eyo uchastniku A Poluchiv posylku uchastnik A otkryvaet klyuchom zamok i poluchaet posylku Znanie o peredache zamka i perehvat posylki nichego ne dadut potencialnomu zloumyshlenniku klyuch ot zamka est tolko u uchastnika A poetomu posylka ne mozhet byt vskryta Realizaciya cherez odnostoronnyuyu funkciyu Ideya kriptografii s otkrytym klyuchom ochen tesno svyazana s ideej odnostoronnih funkcij to est takih funkcij f x displaystyle f x chto po izvestnomu x displaystyle x dovolno prosto najti znachenie f x displaystyle f x togda kak opredelenie x displaystyle x iz f x displaystyle f x nevozmozhno za razumnyj srok No sama odnostoronnyaya funkciya bespolezna v primenenii eyu mozhno zashifrovat soobshenie no rasshifrovat nelzya Poetomu kriptografiya s otkrytym klyuchom ispolzuet odnostoronnie funkcii s lazejkoj Lazejka eto nekij sekret kotoryj pomogaet rasshifrovat To est sushestvuet takoj y displaystyle y chto znaya f x displaystyle f x i y displaystyle y mozhno vychislit x displaystyle x Naprimer esli razobrat chasy na mnozhestvo sostavnyh chastej to ochen slozhno sobrat vnov rabotayushie chasy No esli est instrukciya po sborke lazejka to mozhno legko reshit etu problemu Poluchatel informacii formiruet otkrytyj klyuch i lazejku drugimi slovami otkrytuyu i zakrytuyu chast klyucha zatem peredaet otkrytyj klyuch otpravitelyu a lazejku ostavlyaet u sebya Otpravitel shifruet informaciyu na osnove otkrytogo klyucha takuyu zashifrovannuyu informaciyu prosto rasshifrovat lish imeya odnovremenno i otkrytyj klyuch i lazejku V terminah funkcii poluchatel formiruet f displaystyle f s lazejkoj y displaystyle y zatem peredaet informaciyu o parametrah funkcii f displaystyle f otpravitelyu pri etom dazhe znaya parametry funkcii f displaystyle f nevozmozhno obnaruzhit lazejku za razumnyj srok Posle etogo otpravitel formiruet shifrovannoe soobshenie f x displaystyle f x a poluchatel izvlekaet x displaystyle x iz f x displaystyle f x znaya y displaystyle y gde x displaystyle x ishodnoe ne shifrovannoe soobshenie Primery Ponyat idei i metody kriptografii s otkrytym klyuchom pomogaet sleduyushij primer hranenie parolej v udalyonnom kompyutere k kotoromu dolzhny podklyuchatsya polzovateli Kazhdyj polzovatel v seti imeet svoj parol Pri vhode on ukazyvaet imya i vvodit sekretnyj parol No esli hranit parol na diske udalyonnogo kompyutera to kto nibud ego mozhet schitat osobenno legko eto sdelat administratoru etogo kompyutera i poluchit dostup k sekretnoj informacii Dlya resheniya zadachi ispolzuetsya odnostoronnyaya funkciya Pri sozdanii sekretnogo parolya v kompyutere sohranyaetsya ne sam parol a rezultat vychisleniya funkcii ot etogo parolya i imeni polzovatelya Naprimer polzovatel Alisa pridumala parol Gladiolus Pri sohranenii etih dannyh vychislyaetsya rezultat funkcii f displaystyle f ALISA GLADIOLUS pust rezultatom budet stroka ROMAShKA kotoraya i budet sohranena v sisteme V rezultate fajl parolej primet sleduyushij vid Imya f displaystyle f imya parol ALISA ROMAShKABOB NARCISS Vhod v sistemu teper vyglyadit tak Imya ALISAParol GLADIOLUS Kogda Alisa vvodit sekretnyj parol kompyuter proveryaet dayot ili net funkciya primenyaemaya k ALISA GLADIOLUS pravilnyj rezultat ROMAShKA hranyashijsya na diske kompyutera Stoit izmenit hotya by odnu bukvu v imeni ili v parole i rezultat funkcii budet sovershenno drugim Sekretnyj parol ne hranitsya v kompyutere ni v kakom vide Fajl parolej mozhet byt teper prosmotren drugimi polzovatelyami bez poteri sekretnosti tak kak funkciya prakticheski neobratima V predydushem primere ispolzuetsya odnostoronnyaya funkciya bez lazejki poskolku ne trebuetsya po zashifrovannomu soobsheniyu poluchit ishodnoe V sleduyushem primere rassmatrivaetsya shema s vozmozhnostyu vosstanovit ishodnoe soobshenie s pomoshyu lazejki to est trudnodostupnoj informacii Dlya shifrovaniya teksta mozhno vzyat bolshoj abonentskij spravochnik sostoyashij iz neskolkih tolstyh tomov po nemu ochen legko najti nomer lyubogo zhitelya goroda no pochti nevozmozhno po izvestnomu nomeru najti abonenta Dlya kazhdoj bukvy iz shifruemogo soobsheniya vybiraetsya imya nachinayusheesya na tu zhe bukvu Takim obrazom bukve stavitsya v sootvetstvie nomer telefona abonenta Otpravlyaemoe soobshenie naprimer KOROBKA budet zashifrovano sleduyushim obrazom Soobshenie Vybrannoe imya KriptotekstK Korolyov 5643452O Orehov 3572651R Ruzaeva 4673956O Osipov 3517289B Baturin 7755628K Kirsanova 1235267A Arseneva 8492746 Kriptotekstom budet yavlyatsya cepochka nomerov zapisannyh v poryadke ih vybora v spravochnike Chtoby zatrudnit rasshifrovku sleduet vybirat sluchajnye imena nachinayushiesya na nuzhnuyu bukvu Takim obrazom ishodnoe soobshenie mozhet byt zashifrovano mnozhestvom razlichnyh spiskov nomerov kriptotekstov Primery takih kriptotekstov Kriptotekst 1 Kriptotekst 2 Kriptotekst 31235267 5643452 12352673572651 3517289 35172894673956 4673956 46739563517289 3572651 35726517755628 7755628 77556285643452 1235267 56434528492746 8492746 8492746 Chtoby rasshifrovat tekst nado imet spravochnik sostavlennyj soglasno vozrastaniyu nomerov Etot spravochnik yavlyaetsya lazejkoj sekret kotoryj pomogaet poluchit nachalnyj tekst izvestnoj tolko poluchatelyu Bez dannyh iz oboih spravochnikov rasshifrovat tekst v obshem sluchae nevozmozhno odnako dlya shifrovki dostatochno lish pervogo spravochnika Pri etom poluchatel mozhet zaranee legko sformirovat oba spravochnika peredav lish pervyj iz nih otpravitelyu dlya shifrovki Shema shifrovaniya s otkrytym klyuchomPust K displaystyle K prostranstvo klyuchej a e displaystyle e i d displaystyle d klyuchi shifrovaniya i rasshifrovaniya sootvetstvenno Ee displaystyle E e funkciya shifrovaniya dlya proizvolnogo klyucha e K displaystyle e in K takaya chto Ee m c displaystyle E e m c Zdes c C displaystyle c in C gde C displaystyle C prostranstvo shifrotekstov a m M displaystyle m in M gde M displaystyle M prostranstvo soobshenij Dd displaystyle D d funkciya rasshifrovaniya s pomoshyu kotoroj mozhno najti ishodnoe soobshenie m displaystyle m znaya shifrotekst c displaystyle c Dd c m displaystyle D d c m Ee e K displaystyle E e e in K nabor shifrovaniya a Dd d K displaystyle D d d in K sootvetstvuyushij nabor dlya rasshifrovaniya Kazhdaya para E D displaystyle E D imeet svojstvo znaya Ee displaystyle E e nevozmozhno reshit uravnenie Ee m c displaystyle E e m c to est dlya dannogo proizvolnogo shifroteksta c C displaystyle c in C nevozmozhno najti soobshenie m M displaystyle m in M Eto znachit chto po dannomu e displaystyle e nevozmozhno opredelit sootvetstvuyushij klyuch rasshifrovaniya d displaystyle d Ee displaystyle E e yavlyaetsya odnostoronnej funkciej a d displaystyle d Nizhe pokazana shema peredachi informacii licom A licu V Oni mogut byt kak fizicheskimi licami tak i organizaciyami i tak dalee No dlya bolee lyogkogo vospriyatiya prinyato uchastnikov peredachi otozhdestvlyat s lyudmi chashe vsego imenuemymi Alisa i Bob Uchastnika kotoryj stremitsya perehvatit i rasshifrovat soobsheniya Alisy i Boba chashe vsego nazyvayut Evoj Bob vybiraet paru e d displaystyle e d i shlyot klyuch shifrovaniya e displaystyle e otkrytyj klyuch Alise po otkrytomu kanalu a klyuch rasshifrovaniya d displaystyle d zakrytyj klyuch zashishyon i sekreten on ne dolzhen peredavatsya po otkrytomu kanalu Chtoby poslat soobshenie m displaystyle m Bobu Alisa primenyaet funkciyu shifrovaniya opredelyonnuyu otkrytym klyuchom e displaystyle e Ee m c displaystyle E e m c c displaystyle c poluchennyj shifrotekst Bob rasshifrovyvaet shifrotekst c displaystyle c primenyaya obratnoe preobrazovanie Dd displaystyle D d odnoznachno opredelyonnoe znacheniem d displaystyle d Nauchnaya osnovaNachalo asimmetrichnym shifram bylo polozheno v rabote Novye napravleniya v sovremennoj kriptografii Uitfilda Diffi i Martina Hellmana opublikovannoj v 1976 godu Nahodyas pod vliyaniem raboty Ralfa Merkla o rasprostranenii otkrytogo klyucha oni predlozhili metod polucheniya sekretnyh klyuchej ispolzuya otkrytyj kanal Etot metod eksponencialnogo obmena klyuchej kotoryj stal izvesten kak obmen klyuchami Diffi Hellmana byl pervym opublikovannym praktichnym metodom dlya ustanovleniya razdeleniya sekretnogo klyucha mezhdu zaverennymi polzovatelyami kanala V 2002 godu Hellman predlozhil nazyvat dannyj algoritm Diffi Hellmana Merkle priznavaya vklad Merkle v izobretenie kriptografii s otkrytym klyuchom Eta zhe shema byla razrabotana angl Malcolm J Williamson v 1970 h no derzhalas v sekrete do 1997 goda Metod Merkle po rasprostraneniyu otkrytogo klyucha byl izobretyon v 1974 i opublikovan v 1978 godu ego takzhe nazyvayut zagadkoj Merkle V 1977 godu uchyonymi Ronaldom Rivestom Adi Shamirom i Leonardom Adlemanom iz Massachusetskogo tehnologicheskogo instituta byl razrabotan algoritm shifrovaniya osnovannyj na probleme razlozheniya na mnozhiteli Sistema byla nazvana po pervym bukvam ih familij RSA Rivest Shamir Adleman Eta zhe sistema byla izobretena v 1973 godu angl Clifford Cocks rabotavshim v centre pravitelstvennoj svyazi GCHQ no eta rabota hranilas lish vo vnutrennih dokumentah centra poetomu o eyo sushestvovanii ne bylo izvestno do 1977 goda RSA stal pervym algoritmom prigodnym i dlya shifrovaniya i dlya cifrovoj podpisi Voobshe v osnovu izvestnyh asimmetrichnyh kriptosistem kladyotsya odna iz slozhnyh matematicheskih problem kotoraya pozvolyaet stroit odnostoronnie funkcii i funkcii lazejki Naprimer kriptosistemy Merklya Hellmana i opirayutsya na tak nazyvaemuyu zadachu ob ukladke ryukzaka Osnovnye principy postroeniya kriptosistem s otkrytym klyuchomNachinaem s trudnoj zadachi P displaystyle P Ona dolzhna reshatsya slozhno v smysle teorii ne dolzhno byt algoritma s pomoshyu kotorogo mozhno bylo by perebrat vse varianty resheniya zadachi P displaystyle P za polinomialnoe vremya otnositelno razmera zadachi Bolee pravilno skazat ne dolzhno byt izvestnogo polinomialnogo algoritma reshayushego dannuyu zadachu tak kak ni dlya odnoj zadachi eshyo poka ne dokazano chto dlya neyo podhodyashego algoritma net v principe Mozhno vydelit legkuyu podzadachu P displaystyle P iz P displaystyle P Ona dolzhna reshatsya za polinomialnoe vremya i luchshe esli za linejnoe Peretasovyvaem i vzbaltyvaem P displaystyle P chtoby poluchit zadachu P displaystyle P sovershenno ne pohozhuyu na pervonachalnuyu Zadacha P displaystyle P dolzhna po krajnej mere vyglyadet kak originalnaya trudnoreshaemaya zadacha P displaystyle P P displaystyle P otkryvaetsya s opisaniem kak ona mozhet byt ispolzovana v roli klyucha zashifrovaniya Kak iz P displaystyle P poluchit P displaystyle P derzhitsya v sekrete kak sekretnaya lazejka Kriptosistema organizovana tak chto algoritmy rasshifrovaniya dlya legalnogo polzovatelya i kriptoanalitika sushestvenno razlichny V to vremya kak vtoroj reshaet P displaystyle P zadachu pervyj ispolzuet sekretnuyu lazejku i reshaet P displaystyle P zadachu Kriptografiya s neskolkimi otkrytymi klyuchamiV sleduyushem primere pokazana shema v kotoroj Alisa shifruet soobshenie tak chto tolko Bob mozhet prochitat ego i naoborot Bob shifruet soobshenie tak chto tolko Alisa mozhet rasshifrovat ego Pust est 3 klyucha KA displaystyle K A KB displaystyle K B KC displaystyle K C raspredelennye tak kak pokazano v tablice Lico KlyuchAlisa KA displaystyle K A Bob KB displaystyle K B Kerol KC displaystyle K C Dejv KA displaystyle K A KB displaystyle K B Ellen KB displaystyle K B KC displaystyle K C Frank KA displaystyle K A KC displaystyle K C Togda Alisa mozhet zashifrovat soobshenie klyuchom KA displaystyle K A a Ellen rasshifrovat klyuchami KB displaystyle K B KC displaystyle K C Kerol zashifrovat klyuchom KC displaystyle K C a Dejv rasshifrovat klyuchami KA displaystyle K A KB displaystyle K B Esli Dejv zashifruet soobshenie klyuchom KA displaystyle K A to soobshenie smozhet prochitat Ellen esli klyuchom KB displaystyle K B to ego smozhet prochitat Frank esli zhe oboimi klyuchami KA displaystyle K A i KB displaystyle K B to soobshenie prochitaet Kerol Po analogii dejstvuyut i drugie uchastniki Takim obrazom esli ispolzuetsya odno podmnozhestvo klyuchej dlya shifrovaniya to dlya rasshifrovaniya trebuyutsya ostavshiesya klyuchi mnozhestva Takuyu shemu mozhno ispolzovat dlya n klyuchej Shifruetsya klyuchom Rasshifrovyvaetsya klyuchomKB displaystyle K B i KC displaystyle K C KA displaystyle K A KA displaystyle K A i KC displaystyle K C KB displaystyle K B KA displaystyle K A i KB displaystyle K B KC displaystyle K C KC displaystyle K C KA displaystyle K A KB displaystyle K B KA displaystyle K A KB displaystyle K B KC displaystyle K C KB displaystyle K B KA displaystyle K A KC displaystyle K C Teper mozhno posylat soobsheniya gruppam agentov ne znaya zaranee sostav gruppy Rassmotrim dlya nachala mnozhestvo sostoyashee iz treh agentov Alisy Boba i Kerol Alise vydayutsya klyuchi KA displaystyle K A i KB displaystyle K B Bobu KB displaystyle K B i KC displaystyle K C Kerol KA displaystyle K A i KC displaystyle K C Teper esli otpravlyaemoe soobshenie zashifrovano klyuchom KC displaystyle K C to ego smozhet prochitat tolko Alisa posledovatelno primenyaya klyuchi KA displaystyle K A i KB displaystyle K B Esli nuzhno otpravit soobshenie Bobu soobshenie shifruetsya klyuchom KA displaystyle K A Kerol klyuchom KB displaystyle K B Esli nuzhno otpravit soobshenie i Alise i Kerol to dlya shifrovaniya ispolzuyutsya klyuchi KB displaystyle K B i KC displaystyle K C Preimushestvo etoj shemy zaklyuchaetsya v tom chto dlya eyo realizacii nuzhno tolko odno soobshenie i n klyuchej v sheme s n agentami Esli peredayutsya individualnye soobsheniya to est ispolzuyutsya otdelnye klyuchi dlya kazhdogo agenta vsego n klyuchej i kazhdogo soobsheniya to dlya peredachi soobshenij vsem razlichnym podmnozhestvam trebuetsya 2n 2 displaystyle 2 n 2 klyuchej Nedostatkom takoj shemy yavlyaetsya to chto neobhodimo takzhe shirokoveshatelno peredavat podmnozhestvo agentov spisok imyon mozhet byt vnushitelnym kotorym nuzhno peredat soobshenie Inache kazhdomu iz nih pridetsya perebirat vse kombinacii klyuchej v poiskah podhodyashej Takzhe agentam pridetsya hranit nemalyj obyom informacii o klyuchah Kriptoanaliz algoritmov s otkrytym klyuchomKazalos by chto kriptosistema s otkrytym klyuchom idealnaya sistema ne trebuyushaya bezopasnogo kanala dlya peredachi klyucha shifrovaniya Eto podrazumevalo by chto dva legalnyh polzovatelya mogli by obshatsya po otkrytomu kanalu ne vstrechayas chtoby obmenyatsya klyuchami K sozhaleniyu eto ne tak Risunok illyustriruet kak Eva vypolnyayushaya rol aktivnogo perehvatchika mozhet zahvatit sistemu rasshifrovat soobshenie prednaznachennoe Bobu bez vzlamyvaniya sistemy shifrovaniya V etoj modeli Eva perehvatyvaet otkrytyj klyuch e displaystyle e poslannyj Bobom Alise Zatem sozdaet paru klyuchej e displaystyle e i d displaystyle d maskiruetsya pod Boba posylaya Alise otkrytyj klyuch e displaystyle e kotoryj kak dumaet Alisa otkrytyj klyuch poslannyj ej Bobom Eva perehvatyvaet zashifrovannye soobsheniya ot Alisy k Bobu rasshifrovyvaet ih s pomoshyu sekretnogo klyucha d displaystyle d zanovo zashifrovyvaet otkrytym klyuchom e displaystyle e Boba i otpravlyaet soobshenie Bobu Takim obrazom nikto iz uchastnikov ne dogadyvaetsya chto est trete lico kotoroe mozhet kak prosto perehvatit soobshenie m displaystyle m tak i podmenit ego na lozhnoe soobshenie m displaystyle m Eto podcherkivaet neobhodimost autentifikacii otkrytyh klyuchej Dlya etogo obychno ispolzuyut sertifikaty Raspredelyonnoe upravlenie klyuchami v PGP reshaet voznikshuyu problemu s pomoshyu poruchitelej neavtoritetnyj istochnik istochnik ne ukazan 4377 dnej Eshyo odna forma ataki vychislenie zakrytogo klyucha znaya otkrytyj risunok nizhe Kriptoanalitik znaet algoritm shifrovaniya Ee displaystyle E e analiziruya ego pytaetsya najti Dd displaystyle D d Etot process uproshaetsya esli kriptoanalitik perehvatil neskolko kriptotekstov s poslannyh licom A licu B Bolshinstvo kriptosistem s otkrytym klyuchom osnovano na probleme faktorizacii bolshih chisel K primeru RSA ispolzuet v kachestve otkrytogo klyucha n proizvedenie dvuh bolshih prostyh chisel Slozhnost vzloma takogo algoritma sostoit v trudnosti razlozheniya chisla n na prostye mnozhiteli No etu zadachu reshit realno I s kazhdym godom process razlozheniya stanovitsya vse bystree Nizhe privedeny dannye razlozheniya na mnozhiteli s pomoshyu algoritma Kvadratichnoe resheto God Chislo desyatichnyh razryadov v razlozhennom chisle Vo skolko raz slozhnee razlozhit na mnozhiteli 512 bitovoe chislo1983 71 gt 20 mln1985 80 gt 2 mln1988 90 250 tys 1989 100 30 tys 1993 120 5001994 129 100 Takzhe zadachu razlozheniya potencialno mozhno reshit s pomoshyu algoritma Shora pri ispolzovanii dostatochno moshnogo kvantovogo kompyutera Dlya mnogih metodov nesimmetrichnogo shifrovaniya kriptostojkost poluchennaya v rezultate kriptoanaliza sushestvenno otlichaetsya ot velichin zayavlyaemyh razrabotchikami algoritmov na osnovanii teoreticheskih ocenok Poetomu vo mnogih stranah vopros primeneniya algoritmov shifrovaniya dannyh nahoditsya v pole zakonodatelnogo regulirovaniya V chastnosti v Rossii k ispolzovaniyu v gosudarstvennyh i kommercheskih organizaciyah razresheny tolko te programmnye sredstva shifrovaniya dannyh kotorye proshli gosudarstvennuyu sertifikaciyu v administrativnyh organah v chastnosti v FSB FSTEK Osobennosti sistemyPrimenenie Algoritmy kriptosistemy s otkrytym klyuchom mozhno ispolzovat kak samostoyatelnoe sredstvo dlya zashity peredavaemoj i hranimoj informacii kak sredstvo raspredeleniya klyuchej obychno s pomoshyu algoritmov kriptosistem s otkrytym klyuchom raspredelyayut klyuchi malye po obyomu a samu peredachu bolshih informacionnyh potokov osushestvlyayut s pomoshyu drugih algoritmov kak sredstvo autentifikacii polzovatelej Preimushestva Preimushestva asimmetrichnyh shifrov pered simmetrichnymi ne nuzhno predvaritelno peredavat sekretnyj klyuch po nadyozhnomu kanalu tolko odnoj storone izvesten klyuch zashifrovaniya kotoryj nuzhno derzhat v sekrete v simmetrichnoj kriptografii takoj klyuch izvesten obeim storonam i dolzhen derzhatsya v sekrete obeimi v bolshih setyah chislo klyuchej v asimmetrichnoj kriptosisteme znachitelno menshe chem v simmetrichnoj Nedostatki Nedostatki algoritma nesimmetrichnogo shifrovaniya v sravnenii s simmetrichnym v algoritm slozhnee vnesti izmeneniya bolee dlinnye klyuchi nizhe privedena tablica sopostavlyayushaya dlinu klyucha simmetrichnogo algoritma s dlinoj klyucha RSA s analogichnoj kriptostojkostyu Dlina simmetrichnogo klyucha bit Dlina klyucha RSA bit56 38464 51280 768112 1792128 2304shifrovanie rasshifrovyvanie s ispolzovaniem pary klyuchej prohodit na dva tri poryadka medlennee chem shifrovanie rasshifrovanie togo zhe teksta simmetrichnym algoritmom trebuyutsya sushestvenno bo lshie vychislitelnye resursy poetomu na praktike asimmetrichnye kriptosistemy ispolzuyutsya v sochetanii s drugimi algoritmami dlya ECP soobshenie predvaritelno podvergaetsya heshirovaniyu a s pomoshyu asimmetrichnogo klyucha podpisyvaetsya lish otnositelno nebolshoj rezultat hesh funkcii dlya shifrovaniya oni ispolzuyutsya v forme gibridnyh kriptosistem gde bolshie obyomy dannyh shifruyutsya simmetrichnym shifrom na seansovom klyuche a s pomoshyu asimmetrichnogo shifra peredayotsya tolko sam seansovyj klyuch Vidy asimmetrichnyh shifrovRSA Rivest Shamir Adleman DSA Digital Signature Algorithm Elgamal Shifrosistema El Gamalya Diffie Hellman Obmen klyuchami Diffi Helmana ECDSA Elliptic Curve Digital Signature Algorithm algoritm s otkrytym klyuchom dlya sozdaniya cifrovoj podpisi GOST R 34 10 2012 Rabin Luc McEliece Kriptosistema UilyamsaSm takzheBlochnyj shifr Potochnyj shifr Infrastruktura otkrytyh klyuchej PKI CEILIDH Slozhnost parolya Hushmail veb sluzhba elektronnoj pochty osnovannaya na shifrovanii s otkrytym klyuchom PrimechaniyaBryus Shnajer Prikladnaya kriptografiya 2 e izd Protokoly algoritmy i ishodnye teksty na yazyke Si Glava 2 7 Cifrovye podpisi i shifrovanie Salomaa A Kriptografiya s otkrytym klyuchom s 74 75 Handbook of Applied Cryptography Menezes A J Oorschot P C Vanstone S A S 25 26 Bryus Shnajer Prikladnaya kriptografiya 2 e izd Protokoly algoritmy i ishodnye teksty na yazyke Si Glava 3 5 PGP Raspredelenie klyuchej neopr Arhivirovano 26 iyulya 2013 goda Princip dostatochnoj zashity neopr Data obrasheniya 4 dekabrya 2008 Arhivirovano iz originala 24 maya 2010 goda Barichev S Kriptografiya bez sekretov s 20LiteraturaSalomaa A Kriptografiya s otkrytym klyuchom M Mir 1995 318 s ISBN 5 03 001991 X A J Menezes P C van Oorschot S A Vanstone Handbook of Applied Cryptography 1997 ISBN 0 8493 8523 7 Shnajer B Prikladnaya kriptografiya Protokoly algoritmy ishodnye teksty na yazyke Si Applied Cryptography Protocols Algorithms and Source Code in C M Triumf 2002 816 s 3000 ekz ISBN 5 89392 055 4 SsylkiTridcat let otkrytomu klyuchu Computerworld Rossiya Izdatelstvo Otkrytye sistemy rus
