Асимметричная криптография
Асимметричная криптография (также известная как криптография с открытым ключом) — это раздел криптографии, в котором для шифрования и расшифрования сообщений используются два различных, но математически связанных ключа: открытый (публичный) и закрытый (приватный). В отличие от симметричной криптографии, где один и тот же ключ применяется для обеих операций, асимметричная схема позволяет безопасно передавать открытый ключ по незащищённому каналу, не раскрывая закрытый. Основное свойство таких систем — вычислительная невозможность восстановления закрытого ключа на основе открытого за приемлемое время.
История
Предпосылки и ранние работы
До середины 1970-х годов вся криптография была симметричной: отправитель и получатель должны были заранее договориться о секретном ключе, что создавало проблему распределения ключей. В 1976 году американские учёные Уитфилд Диффи и Мартин Хеллман опубликовали работу «New Directions in Cryptography», в которой впервые предложили концепцию асимметричной криптографии. Они описали протокол обмена ключами (протокол Диффи — Хеллмана), позволяющий двум сторонам создать общий секретный ключ через открытый канал.
Первые реализации
В 1977 году Рон Ривест, Ади Шамир и Леонард Адлеман (массачусетский технологический институт) предложили первую практическую асимметричную криптосистему — RSA, названную по первым буквам фамилий авторов. RSA основана на сложности факторизации больших целых чисел. В том же году был опубликован алгоритм, который стал стандартом де-факто для шифрования и цифровых подписей.
Развитие и стандартизация
В 1985 году Нил Коблиц и Виктор Миллер независимо предложили криптографию на эллиптических кривых (ECC), которая обеспечивает эквивалентную стойкость при меньших размерах ключей. В 1990-е годы были разработаны алгоритмы постквантовой криптографии, устойчивые к атакам с использованием квантовых компьютеров. К 2020-м годам асимметричная криптография стала основой для протоколов TLS/SSL, PGP, SSH и многих других.
Основные принципы
Пара ключей
Каждый пользователь генерирует пару ключей:
- Открытый ключ — публикуется в открытом доступе, используется для шифрования сообщений или проверки цифровой подписи.
- Закрытый ключ — хранится в секрете, используется для расшифрования или создания цифровой подписи.
Функция с односторонней лазейкой
Асимметричные алгоритмы основаны на математических функциях, которые легко вычислить в одном направлении, но трудно обратить без дополнительной информации (лазейки). Например, умножение двух больших простых чисел тривиально, а факторизация их произведения — вычислительно сложна.
Цифровая подпись
Асимметричная криптография позволяет создавать цифровые подписи: отправитель шифрует хеш сообщения своим закрытым ключом, а получатель проверяет подпись открытым ключом. Это обеспечивает аутентификацию, целостность и неотказуемость.
Виды асимметричных алгоритмов
Алгоритмы на основе факторизации
- RSA — наиболее распространённый алгоритм. Стойкость основана на сложности разложения на множители произведения двух больших простых чисел. Используется для шифрования и цифровых подписей.
- Рабин — вариант RSA, основанный на сложности извлечения квадратного корня по модулю составного числа.
Алгоритмы на основе дискретного логарифмирования
- Протокол Диффи — Хеллмана — не является полноценной криптосистемой, а лишь протоколом обмена ключами. Стойкость основана на сложности дискретного логарифмирования в конечных полях.
- Эль-Гамаль — криптосистема, использующая дискретный логарифм. Может применяться для шифрования и подписей.
Криптография на эллиптических кривых (ECC)
ECC использует алгебраическую структуру эллиптических кривых над конечными полями. Обеспечивает эквивалентную стойкость при меньших размерах ключей (например, 256-битный ключ ECC сопоставим по стойкости с 3072-битным RSA). Стандарты: ECDH (обмен ключами), ECDSA (цифровая подпись).
Постквантовые алгоритмы
Разрабатываются для устойчивости к атакам на квантовых компьютерах. Примеры:
- Кристаллы-Кибер — основан на решётках.
- Фалкон — на основе решёток с использованием технологии GPV.
- SPHINCS+ — на основе хеш-функций.
Применение
Защита интернет-соединений
Протоколы TLS/SSL, используемые в HTTPS, применяют асимметричную криптографию для аутентификации сервера и обмена симметричными ключами. Например, при установке соединения браузер проверяет цифровой сертификат сервера, подписанный удостоверяющим центром.
Электронная почта
Стандарты PGP (Pretty Good Privacy) и S/MIME позволяют шифровать и подписывать электронные письма. Пользователи публикуют открытые ключи, а закрытые хранят локально.
Цифровые подписи и блокчейн
Криптовалюты (например, Bitcoin, Ethereum) используют ECDSA для создания цифровых подписей транзакций. В блокчейне открытые ключи выступают в качестве адресов.
Аутентификация
SSH-ключи, используемые для удалённого доступа к серверам, основаны на асимметричных алгоритмах (RSA, ECDSA, Ed25519). Закрытый ключ хранится на клиенте, открытый — на сервере.
Электронные документы и государственные услуги
В России асимметричная криптография применяется в инфраструктуре электронной подписи (ГОСТ Р 34.10-2012 на эллиптических кривых) для подписания документов, налоговых деклараций и договоров.
Криптостойкость и риски
Размер ключей
Стойкость асимметричных алгоритмов зависит от длины ключа. Для RSA рекомендуется длина не менее 2048 бит (с 2023 года — 3072 бит для долгосрочной защиты). Для ECC — 256 бит. С развитием вычислительной техники минимальные длины пересматриваются.
Атаки
- Атака «человек посередине» — злоумышленник перехватывает открытые ключи и подменяет их своими. Защита достигается через сертификаты и центры сертификации.
- Квантовая угроза — алгоритм Шора позволяет факторизовать большие числа и вычислять дискретные логарифмы за полиномиальное время на квантовом компьютере. Это ставит под угрозу RSA и ECC. Переход на постквантовые алгоритмы является активной областью исследований.
Управление ключами
Потеря закрытого ключа делает невозможным расшифрование данных. Компрометация закрытого ключа позволяет злоумышленнику подписывать документы от имени владельца. Для защиты используются аппаратные модули безопасности (HSM) и защищённые хранилища.
Стандарты и нормативное регулирование в России
В Российской Федерации асимметричная криптография регулируется Федеральным законом «Об электронной подписи» (№ 63-ФЗ). Национальные стандарты:
- ГОСТ Р 34.10-2012 — алгоритмы цифровой подписи на эллиптических кривых.
- ГОСТ Р 34.11-2012 — хеш-функция «Стрибог».
- ГОСТ 28147-89 — симметричный шифр, но используется в связке с асимметричными схемами.
Сертифицированные средства криптографической защиты информации (СКЗИ) обязательны для использования в государственных информационных системах и при обработке персональных данных.
Интересные факты
- В 1997 году британское правительство рассекретило документы, согласно которым асимметричная криптография была изобретена в 1973 году сотрудниками Центра правительственной связи (GCHQ) Джеймсом Эллисом и Клиффордом Коксом, но оставалась засекреченной.
- Алгоритм RSA был запатентован в США в 1983 году, патент истёк в 2000 году.
- В 2022 году Национальный институт стандартов и технологий США (NIST) объявил о выборе первых постквантовых алгоритмов для стандартизации.
Источники
- Диффи У., Хеллман М. «New Directions in Cryptography» (1976).
- Ривест Р., Шамир А., Адлеман Л. «A Method for Obtaining Digital Signatures and Public-Key Cryptosystems» (1978).
- Коблиц Н. «Elliptic Curve Cryptosystems» (1987).
- ГОСТ Р 34.10-2012 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи».
- Федеральный закон «Об электронной подписи» № 63-ФЗ (2011, с изменениями).
- NIST Post-Quantum Cryptography Standardization Process (2022).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →