
Постквантовая криптография (PQC), также называемая квантово-защищенной, квантово-устойчивой или квантово-непроницаемой криптографией, представляет собой разработку и внедрение криптографических алгоритмов, устойчивых как к классическим, так и к квантовым атакам. Основная цель PQC - защитить цифровые коммуникации от противников, которые могут воспользоваться квантовыми компьютерами для взлома широко используемых криптосистем, таких как RSA и ECC (Эллиптическая Криволинейная Криптография).
Цель ясна: определить и стандартизировать алгоритмы, защищенные от квантовых угроз, сохраняя при этом эффективность в производительности и стоимости. Работы над этим чрезвычайно срочные, поскольку квантовые компьютеры стремительно развиваются, а время, необходимое для перехода глобальных систем шифрования, велико.
Ключевые слова: постквантовая криптография, квантово-устойчивая, квантово-защищенная, квантовые вычисления, PQC, NIST, криптография на решетках, криптография на основе хешей, кибербезопасность, миграция, квантовая угроза
Классическая криптография полагается на математические задачи (такие как факторизация крупных чисел или решение задачи дискретного логарифмирования), которые крайне затруднительно решать для обычных компьютеров. Однако, квантовые компьютеры могут запускать алгоритмы, такие как алгоритмы Шора и Гровера, которые могут сделать многие из наших современных криптосистем устаревшими.
С квантовыми компьютерами задачи, такие как:
...могут быть выполнены за часы или минуты, что мгновенно ставит под угрозу безопасность глобальных цифровых коммуникаций.
Данные, зашифрованные сегодня с использованием алгоритмов, уязвимых для квантовых атак, могут быть перехвачены и сохранены противниками. После появления мощных квантовых компьютеров эти данные можно будет расшифровать ретроспективно - сценарий особенно критичный для конфиденциальной информации государственных, финансовых или медицинских систем с длительными периодами конфиденциальности.
Алгоритм Шора (1994) продемонстрировал, что квантовый компьютер, имея достаточное количество кубитов и когерентности, может эффективно факторизовать большие числа и вычислять дискретные логарифмы. Это непосредственно угрожает:
Обе системы являются основополагающими для современных цифровых подписей, безопасных коммуникаций (TLS/SSL) и прочего.
Алгоритм Гровера, с другой стороны, может квадратично ускорить методы поиска грубой силы, влияя на алгоритмы симметричного ключа (такие как AES), но не делая их устаревшими. Увеличение размера ключа может снизить воздействие алгоритма Гровера.
Вывод:
Криптография с открытым ключом сталкивается с экзистенциальными угрозами в квантовую эру; симметричная криптография ослабляется, но все еще остается жизнеспособной при увеличении длины ключа.
Для обеспечения конфиденциальности и аутентификации PQC исследует новые математические основы, сложные как для классических, так и для квантовых вычислительных атак.
Криптография на решетках использует сложность задач на высокоразмерных решетках, таких как:
Считается, что эти задачи сложны даже для квантовых компьютеров. Схемы на решетках предпочитаемы из-за:
Примеры:
Криптография на основе хешей строит цифровые подписи из безопасных хеш-функций. Поскольку сильные устойчивые к коллизиям хеши остаются устойчивыми к квантовым компьютерам (с увеличенными выходными данными), подписи на основе хешей предлагают простоту и крепкие основы.
Пример:
Эти алгоритмы опираются на сложность декодирования общего линейного кода, проблему, не решенную ни классическими, ни квантовыми алгоритмами. Схемы на основе кодов утверждены и существуют с 1970-х годов.
Основываются на сложности решения систем мультимных квадратичных уравнений над конечными полями.
Осознавая срочную необходимость в стандартизации, Национальный институт стандартов и технологий (NIST) инициировал многолетний глобальный проект по отбору криптографических алгоритмов, устойчивых к квантовым атакам, для глобального развёртывания. Процесс начался в 2017 году и продолжается.
5 июля 2022 года NIST объявил о первых четырех коммерческих алгоритмах, устойчивых к квантовым атакам, которые переходят к стандартизации:
Эти четыре алгоритма извлекаются из структурированных решеток и хеш-функций, каждый из которых представляет надежные основы безопасности, способные противостоять квантовым атакам.
Вкратце:
Такие алгоритмы, как BIKE, Classic McEliece и SIKE, все еще изучаются для возможной стандартизации в будущем.
Адаптация PQC уже началась в чувствительных отраслях и среди правительств, которые осознают угрозу "собирать сейчас, расшифровывать позже".
Квантово-устойчивая коммуникация включает в себя использование алгоритмов PQC для обеспечения безопасности:
Последние версии TLS тестируются с "гибридными" режимами PQC, комбинирующими классические и квантово-безопасные обмен ключами. Например:
Cloudflare, Google и Microsoft провели тестирования [1][2] с гибридным PQC в TLS рукопожатиях.
Переход не является тривиальным и требует тщательного планирования.
Перед переходом организации должны проанализировать все случаи использования криптографических алгоритмов:
Автоматизированные инструменты могут сканировать на использование RSA, DSA и ECC (уязвимые к квантовым атакам) в сетях и базах кода.
nmap для сканирования криптографических алгоритмов:# Сканировать веб-сервер на поддерживаемые SSL/TLS шифры и методы обмена ключами
nmap -p 443 --script ssl-enum-ciphers example.com
Предположим, вы хотите извлечь использование RSA/ECC из результатов сканирования.
nmap -p 443 --script ssl-enum-ciphers example.com \
| grep -E "TLS_RSA|TLS_ECDHE" > weak_tls.txt
import re
with open('nmap_output.txt') as f:
for line in f:
if re.search(r'TLS_(RSA|ECDHE)', line):
print("Квантово-уязвимый шифр:", line.strip())
Адаптация может требовать обновления библиотек, микропрограмм и оборудования.
Пример: Установление ключа в Python с использованием pyca/cryptography и liboqs (см. раздел примеры кода).
Определение квантово-уязвимых алгоритмов обмена ключами и подписей в X.509 сертификатах и конфигурациях TLS.
# Вывести все x509 сертификаты в каталоге и проверить наличие RSA/ECC
for file in $(find /etc/ssl/certs -name "*.pem"); do
openssl x509 -in $file -text -noout | grep "Public Key Algorithm"
done
import subprocess
cert_files = ["/etc/ssl/certs/server.pem", "/etc/ssl/certs/other.pem"]
for cert in cert_files:
out = subprocess.check_output(['openssl', 'x509', '-in', cert, '-text', '-noout'])
if b'RSA' in out or b'EC' in out:
print(f"{cert}: Квантово-уязвимый")
for host in $(cat hosts.txt); do
nmap -p 443 --script ssl-enum-ciphers $host >> scan_results.txt
done
Предположим, вы хотите сгенерировать квантово-безопасную пару ключей с использованием pyca/cryptography (для классики) и python-oqs (для PQC):
Примечание:
python-oqsявляется официальной связкой для проекта Open Quantum Safe (liboqs).
Установите зависимости:
pip install oqs
import oqs
# Вывести доступные механизмы установления ключей (KEM)
print("Доступные KEM:", oqs.get_supported_KEM_algorithms())
# Использовать Kyber768 для квантово-безопасного обмена ключами
with oqs.KeyEncapsulation('Kyber768') as server:
public_key = server.generate_keypair()
# Симуляция инкапсуляции клиента
with oqs.KeyEncapsulation('Kyber768') as client:
ciphertext, shared_secret_client = client.encap_secret(public_key)
# Дешифровка сервером
shared_secret_server = server.decap_secret(ciphertext)
assert shared_secret_client == shared_secret_server
print(f"Установлен квантово-безопасный общий секрет (hex): {shared_secret_server.hex()}")
import oqs
# Вывести доступные алгоритмы подписи
print("Поддерживаемые алгоритмы подписи:", oqs.get_supported_sig_algorithms())
# Использовать Dilithium3 для подписей
with oqs.Signature('Dilithium3') as signer:
public_key = signer.generate_keypair()
message = b"Квантово-безопасное сообщение"
signature = signer.sign(message)
# Проверка с использованием открытого ключа (проверяющим)
with oqs.Signature('Dilithium3') as verifier:
if verifier.verify(message, signature, public_key):
print("Подпись проверена, квантово-безопасна!")
Постквантовая криптография не является отдаленной проблемой - это явная и очевидная задача для команд IT, безопасности и нормативного регулирования по всему миру. Хотя практические квантовые компьютеры, способные взломать RSA/ECC, еще не получили широкого распространения, временные рамки перехода и огромные масштабы глобальных криптографических систем требуют, чтобы работа началась уже сейчас.
Выводы:
Готовьтесь заранее. Оставайтесь агильными. Примите постквантовую криптографию сегодня.
Если вы нашли этот контент ценным, представьте, чего вы могли бы достичь с нашей комплексной 47-недельной элитной обучающей программой. Присоединяйтесь к более чем 1200 студентам, которые изменили свою карьеру с помощью техник Подразделения 8200.