Double key encryption
Double key encryption (двухключевое шифрование) — это криптографический метод, при котором для защиты информации используются два различных ключа: один для шифрования (зашифрования) данных, а другой — для их расшифрования. В отличие от симметричного шифрования, где один и тот же ключ применяется для обеих операций, двухключевое шифрование относится к асимметричным криптосистемам. Оно обеспечивает возможность безопасной передачи данных по открытым каналам без предварительного обмена секретным ключом, что является его ключевым преимуществом. Наиболее известным примером реализации этого принципа является криптосистема RSA, разработанная в 1977 году Роном Ривестом, Ади Шамиром и Леонардом Адлеманом.
История
Концепция двухключевого шифрования была впервые предложена в 1976 году американскими криптографами Уитфилдом Диффи и Мартином Хеллманом в работе «New Directions in Cryptography». Они описали принцип асимметричного шифрования, основанный на трудности решения задачи дискретного логарифмирования. В том же году они представили протокол обмена ключами Диффи — Хеллмана, который стал первым практическим методом установления общего секретного ключа через незащищённый канал. Однако сам метод не обеспечивал шифрование данных напрямую, а лишь позволял двум сторонам договориться о ключе для последующего симметричного шифрования.
Первая полноценная криптосистема с открытым ключом, RSA, была опубликована в 1977 году. Она базировалась на сложности разложения больших целых чисел на простые множители. В 1985 году появились криптосистемы на основе эллиптических кривых (ECC), предложенные Нилом Коблицем и Виктором Миллером независимо друг от друга. ECC обеспечивает сопоставимую стойкость при значительно меньшей длине ключа, что сделало её популярной для мобильных устройств и интернета вещей.
В России асимметричное шифрование регулируется национальными стандартами. В 2001 году был принят ГОСТ Р 34.10-2001, описывающий алгоритмы электронной подписи на основе эллиптических кривых, а в 2012 году — ГОСТ Р 34.10-2012, который используется и в настоящее время. Эти стандарты поддерживают двухключевые схемы, применяемые в государственных информационных системах и банковской сфере.
Принцип работы
В двухключевом шифровании каждый участник системы генерирует пару ключей: открытый (public key) и закрытый (private key). Открытый ключ распространяется публично, например, через сертификаты или ключевые серверы. Закрытый ключ хранится в секрете у владельца. Шифрование выполняется с помощью открытого ключа получателя, а расшифрование — с помощью его закрытого ключа. Таким образом, любой отправитель может зашифровать сообщение, которое сможет прочитать только владелец соответствующего закрытого ключа.
Математически это реализуется через односторонние функции с «потайным входом» (trapdoor functions). Например, в RSA: открытый ключ состоит из модуля \( n = p \times q \) (где \( p \) и \( q \) — большие простые числа) и показателя \( e \). Закрытый ключ включает показатель \( d \), который вычисляется из \( e \) и \( \varphi(n) \). Шифрование: \( c = m^e \mod n \), расшифрование: \( m = c^d \mod n \). Без знания \( p \) и \( q \) (или \( d \)) восстановить исходное сообщение практически невозможно.
Виды и классификация
Двухключевое шифрование классифицируют по нескольким признакам.
По математической основе
- На основе факторизации (RSA, Rabin): стойкость основана на трудности разложения больших чисел на множители.
- На основе дискретного логарифмирования (ElGamal, DSA): стойкость опирается на сложность вычисления дискретного логарифма в конечных полях.
- На основе эллиптических кривых (ECDH, ECDSA, ГОСТ Р 34.10-2012): используют группы точек эллиптической кривой, что даёт бо́льшую эффективность при той же стойкости.
По назначению
- Шифрование данных: прямое зашифрование сообщений (например, RSA-OAEP).
- Электронная подпись: создание и проверка цифровых подписей (например, ГОСТ Р 34.10-2012, ECDSA).
- Протоколы обмена ключами: установление общего сеансового ключа (например, ECDH).
По режиму работы
- Чистое асимметричное шифрование: весь блок данных шифруется открытым ключом (редко на практике из-за низкой скорости).
- Гибридное шифрование: асимметричный алгоритм используется для шифрования симметричного ключа, которым затем шифруется основной объём данных (например, в протоколах TLS, PGP).
Применение
Двухключевое шифрование широко применяется в современных информационных системах.
Защита каналов связи
Протоколы TLS/SSL, используемые для защиты веб-трафика (HTTPS), электронной почты (SMTPS) и мессенджеров, опираются на асимметричное шифрование для начального обмена ключами. В России сертификация TLS-соединений регулируется требованиями ФСБ России, в частности, для государственных информационных систем.
Электронная подпись и аутентификация
Цифровые подписи на основе двухключевого шифрования применяются в электронном документообороте (например, в системе «Госуслуги»), банковских операциях (платёжные поручения, договоры) и для подтверждения авторства программного обеспечения. В России обязательным стандартом для государственных нужд является ГОСТ Р 34.10-2012.
Криптовалюты и блокчейн
В системах на основе блокчейна (например, Bitcoin, Ethereum) двухключевое шифрование используется для создания адресов кошельков и подписи транзакций. Открытый ключ служит адресом, а закрытый — для подтверждения права на средства.
Шифрование электронной почты
Стандарты PGP (Pretty Good Privacy) и S/MIME реализуют гибридное шифрование: сообщение шифруется симметричным ключом, который, в свою очередь, шифруется открытым ключом получателя. Это позволяет безопасно обмениваться конфиденциальной информацией, включая вложения.
Критика и ограничения
Основные недостатки двухключевого шифрования связаны с производительностью и управлением ключами.
- Низкая скорость: асимметричные алгоритмы на несколько порядков медленнее симметричных. Например, RSA с ключом 2048 бит может обрабатывать лишь несколько мегабайт в секунду на современном процессоре, тогда как AES-256 — гигабайты.
- Длина ключа: для обеспечения стойкости требуются ключи длиной от 2048 бит для RSA (по рекомендациям NIST и ФСБ России), что увеличивает размер зашифрованных данных и нагрузку на память.
- Управление открытыми ключами: требуется инфраструктура открытых ключей (PKI) для проверки подлинности открытых ключей. Без неё возможны атаки «человек посередине» (MITM), когда злоумышленник подменяет открытый ключ.
- Уязвимость к квантовым вычислениям: алгоритмы RSA и ECC теоретически могут быть взломаны с помощью квантового компьютера (алгоритм Шора). В связи с этим активно разрабатываются постквантовые криптосистемы, в том числе в России (например, на основе кодов, решёток и многомерных квадратичных систем).
Правовое регулирование в России
В Российской Федерации использование двухключевого шифрования регулируется Федеральным законом № 63-ФЗ «Об электронной подписи» (2011) и нормативными актами ФСБ России. Сертифицированные средства криптографической защиты информации (СКЗИ) должны соответствовать ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012 (хеширование). Для государственных нужд и банковской сферы применение импортных алгоритмов (RSA, ECDSA) допускается только в сочетании с российскими стандартами. Организации, признанные в РФ экстремистскими или нежелательными, не могут использовать сертифицированные СКЗИ, если они не прошли процедуру сертификации в ФСБ России.
Источники
- Diffie W., Hellman M. New Directions in Cryptography // IEEE Transactions on Information Theory. — 1976. — Vol. 22, No. 6. — P. 644–654.
- Rivest R., Shamir A., Adleman L. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems // Communications of the ACM. — 1978. — Vol. 21, No. 2. — P. 120–126.
- ГОСТ Р 34.10-2012. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. — М.: Стандартинформ, 2012.
- Федеральный закон от 06.04.2011 № 63-ФЗ «Об электронной подписи» (с изменениями).
- Menezes A., van Oorschot P., Vanstone S. Handbook of Applied Cryptography. — CRC Press, 1996. — 816 p.
- NIST. Recommendation for Key Management. Special Publication 800-57 Part 1 Rev. 5. — 2020.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →