8(800) 222 32 56
Панель управления
Решения для бизнеса

Постквантовая криптография: дорожная карта миграции TLS/SSH для сервиса и клиентов

Постквантовая криптография: дорожная карта миграции TLS/SSH для сервиса и клиентов
Подберите идеальное решение для ваших задач:
в России, США и Нидерландах обеспечат максимальную скорость. Воспользуйтесь всеми преимуществами надежного оборудования. Базовая помощь и техническое обслуживание входят в пакет услуг.

Введение

Постквантовая криптография (PQC) из «темы на будущее» перешла в плоскость эксплуатационных задач: стандарты утверждены, реализации появились в массовых библиотеках, а риск «собрали трафик сегодня — расшифровали завтра» (harvest now, decrypt later) делает откладывание дорогим именно для данных с долгим сроком ценности. На уровне базовых криптопримитивов уже есть финализированные стандарты для обмена ключами (ML‑KEM) и цифровых подписей (ML‑DSA, SLH‑DSA), и регулятор прямо подталкивает админов и инженеров начинать переход как можно раньше. 

На практике миграция TLS/SSH в 2026 году — это почти всегда гибридный сценарий: вы добавляете постквантовый компонент к существующему ECDHE/X25519‑обмену ключами (в TLS и SSH), сохраняя совместимость и имея понятный откат. Так вы закрываете именно «долгосрочную конфиденциальность» уже сейчас, не ломая публичную PKI и экосистему клиентов. 

Дальше в статье — практическая и пошаговая дорожная карта для сервиса и клиентов: инвентаризация, тестирование, включение гибридных групп/алгоритмов, мониторинг переговоренных параметров, rollout/rollback, а также нюансы производительности, совместимости и PKI.


Готовы перейти на современную серверную инфраструктуру?

В King Servers мы предлагаем серверы как на AMD EPYC, так и на Intel Xeon, с гибкими конфигурациями под любые задачи — от виртуализации и веб-хостинга до S3-хранилищ и кластеров хранения данных.

  • S3-совместимое хранилище для резервных копий
  • Панель управления, API, масштабируемость
  • Поддержку 24/7 и помощь в выборе конфигурации

Создайте аккаунт

Быстрая регистрация для доступа к инфраструктуре


Почему PQC нужно планировать уже сейчас

Что именно «ломает квант»

Если говорить максимально прикладно для эксплуатационщиков, основной удар квантовых атак приходится по публично‑ключевой криптографии, на которой держатся:

  • обмен ключами (Diffie‑Hellman / ECDH / X25519) — то, что обеспечивает PFS и шифрование трафика в TLS/SSH;
  • подписи (RSA/ECDSA/EdDSA) — то, что обеспечивает аутентичность сертификатов, SSH‑ключей, обновлений и артефактов.

Поэтому наиболее быстрый практический выигрыш даёт перенос именно обмена ключами на гибридные/постквантовые схемы в TLS 1.3 и SSH KEX.

Позиция NIST и временные ориентиры

Критично, что это не «исследовательская рекомендация», а курс на уровне стандартов и планов перехода:

  • NIST выпустил первые три финализированных PQC‑стандарта и прямо призывает системных администраторов начинать переход как можно скорее
  • На странице проекта PQC NIST подчёркивает: с выходом первых стандартов организациям следует начинать миграцию, а по переходному таймлайну NIST планирует депрецировать и затем убрать квант‑уязвимые алгоритмы из стандартов к 2035 году, причём «высокорисковые системы» должны переходить заметно раньше. 
  • NIST IR 8547 (публичный драфт) описывает ожидаемый подход к переходу и должен использоваться как «рамка» для планирования в индустрии и госсекторе. 

Практический вывод для эксплуатации: если у вас есть данные с жизненным циклом 5–10+ лет (персональные данные, финансы, коммерческие тайны, межсервисные токены/ключи, резервные копии), то TLS/SSH‑миграцию на гибридный режим разумно включать в дорожные карты уже сейчас, а не «к 2030».


Стандарты и алгоритмы PQC, которые важно знать для TLS и SSH

Ниже — минимальный «словарик» без академической нагрузки, но с теми числами и свойствами, которые реально влияют на MTU, latency и PKI.

Состояние PQC‑стандартов NIST на апрель 2026

NIST в августе 2024 выпустил три основных PQC‑стандарта (FIPS), которые «готовы к немедленному использованию» и составляют основу большинства внедрений: ML‑KEM (обмен ключами), ML‑DSA и SLH‑DSA (подписи). 

Параллельно продолжается стандартизация дополнительных алгоритмов: NIST прямо указывает, что помимо трёх «первых» алгоритмов выбраны для дальнейшей стандартизации подпись Falcon (будущий FN‑DSA) и KEM HQC. 

Почему гибрид почти всегда лучше «чистого PQ» в транспортных протоколах

Для TLS/SSH в реальной прод‑эксплуатации чаще всего выбирают гибридный обмен ключами:

  • он сохраняет безопасность, даже если позже в PQ‑схеме найдут уязвимость (остаётся классический компонент);
  • он смягчает риски несовместимости и «сырости» реализаций;
  • он позволяет работать с публичной PKI без немедленного перехода на PQ‑подписи в сертификатах.

Именно поэтому массовые стеки в 2025–2026 годах активно двигаются через гибридные группы вида X25519MLKEM768 (TLS) и mlkem768x25519‑sha256 (SSH). 

Таблица сравнения: что меняется в размерах ключей/сообщений

Эта таблица даёт понимание, почему «PQC = больше байт на рукопожатие», и где это может ударить по сетевым траекториям, балансерам и DPI.

Назначение

Алгоритм/набор

Стандарт

Уровень (смысл)

Размеры, важные в транспорте

KEM (обмен ключами)

ML‑KEM‑768

FIPS 203

баланс по «прочность/стоимость» (часто выбор по умолчанию в экосистемах)

encapsulation key 1184 B, decapsulation key 2400 B, ciphertext 1088 B, shared secret 32 B 

KEM (обмен ключами)

ML‑KEM‑512

FIPS 203

меньше нагрузка, ниже уровень

EK 800 B, DK 1632 B, CT 768 B, SS 32 B 

KEM (обмен ключами)

ML‑KEM‑1024

FIPS 203

выше уровень, больше трафик

EK 1568 B, DK 3168 B, CT 1568 B, SS 32 B 

Подпись

ML‑DSA‑65

FIPS 204

«середина», часто рассматривают как практичный профиль

private key 4032 B, public key 1952 B, signature 3309 B 

Подпись

ML‑DSA‑44

FIPS 204

легче по ресурсам

SK 2560 B, PK 1312 B, SIG 2420 B 

Подпись

ML‑DSA‑87

FIPS 204

выше уровень, тяжелее

SK 4896 B, PK 2592 B, SIG 4627 B 

Подпись (hash‑based)

SLH‑DSA‑SHA2‑128s

FIPS 205

«малые подписи» в пределах семейства, но всё равно крупнее классики

pk bytes 32, sig bytes 7856 

Подпись (hash‑based)

SLH‑DSA‑SHA2‑128f

FIPS 205

«быстрая генерация», подпись ещё больше

pk bytes 32, sig bytes 17088 

Подпись (hash‑based)

SLH‑DSA‑SHA2‑256f (пример)

FIPS 205

высокий уровень, огромные подписи

pk bytes 64, sig bytes 35664 

Ключевой эксплуатационный вывод: для TLS/SSH сначала проще и выгоднее включить ML‑KEM‑768 в гибриде (это влияет на размеры ClientHello/ServerHello key_share, но не требует менять сертификаты), а миграцию подписей и PKI делать отдельным этапом.


Реализации на сегодня: OpenSSL, OpenSSH, LibreSSL и популярные серверы/клиенты

TLS: OpenSSL 3.5 как «точка сборки» PQC в массовом Linux

OpenSSL 3.5 — важный рубеж, потому что в нём появились:

  • поддержка PQC‑примитивов (ML‑KEM и ML‑DSA в официальной ветке) и
  • поддержка гибридных TLS‑групп для key exchange: X25519MLKEM768, SecP256r1MLKEM768, SecP384r1MLKEM1024

При этом документация OpenSSL отдельно подчёркивает практический компромисс: CPU‑стоимость близка к соответствующим ECDH‑группам, но сообщения обмена ключами существенно крупнее

Ещё один практический момент: OpenSSL 3.5 ввёл команды для инвентаризации групп, что сильно упрощает диагностику «что вообще доступно в этой сборке»:

openssl list -tls-groupsopenssl list -all-tls-groups

Это упоминается в обсуждении/issue по добавлению команды в OpenSSL 3.5. 

Важная деталь по дефолтам. В OpenSSL 3.5 гибрид X25519MLKEM768 поставлен первым в дефолтном списке групп, и клиенты обычно шлют его как приоритетный key share. Это отлично для раннего перехода, но может всплыть на «хрупких» сетевых трактах (старые TLS‑терминаторы, DPI, некоторые L7‑прокси), где большие ClientHello вызывают проблемы. Поэтому стратегия миграции ниже всегда включает canary + мониторинг + план отката.

TLS: NGINX/Apache/HAProxy — PQC появляется «автоматом», если библиотека умеет

Большинство популярных серверов и прокси не «реализуют PQC» сами — они используют TLS‑библиотеку:

  • NGINX: выбор групп делается директивой ssl_ecdh_curve, которая задаёт список поддерживаемых кривых/групп при использовании OpenSSL. С OpenSSL 3.5 в этот список уже можно включать гибридные группы (например, X25519MLKEM768), и это становится практической конфигурационной ручкой.
  • Apache httpd (mod_ssl): можно явно задавать группы через SSLOpenSSLConfCmd Groups ... (это прокидывается в OpenSSL). Пример ниже.
  • HAProxy: управляет группами через настройки «curves» (глобальные defaults или per‑bind), опираясь на возможности используемой SSL‑библиотеки. Практически важный вывод: PQC в HAProxy появляется, когда HAProxy собран с OpenSSL 3.5 и вы включили соответствующие группы.

SSH: OpenSSH уже живёт в «гибридной эпохе»

Для SSH ситуация часто даже проще, чем для TLS, потому что OpenSSH уже несколько релизов делает гибридный KEX дефолтом:

  • OpenSSH внедрил гибридный sntrup761x25519‑sha512@openssh.com и сделал его приоритетным/дефолтным в современных сборках. 
  • По состоянию на OpenSSH 10.x введён гибридный mlkem768x25519‑sha256, и он становится «первым выбором» в новых релизах. 
  • Начиная с OpenSSH 10.1 добавлено предупреждение, если соединение устанавливается без постквантового KEX. 

Это означает: во многих Linux‑дистрибутивах вы «почти уже мигрировали» на уровне KEX, если поддерживаете актуальные версии OpenSSH на клиентах и серверах.

LibreSSL: осторожно с ожиданиями «в релизе» vs «в разработке»

LibreSSL активно двигается, но важно различать:

  • в стабильных релизах появились элементы, необходимые для ML‑KEM (например, публичный API); 
  • поддержка MLKEM768_X25519 keyshare в TLS (и сопутствующие изменения) фигурирует в changelog ветки «in development» (например, 4.3.0). 

Для прод‑планирования это значит: если ваша инфраструктура сильно завязана на LibreSSL, закладывайте дополнительные проверки по конкретным версиям и backport‑политике в вашем дистрибутиве.

Таблица: где реально доступен PQC‑обмен ключами «из коробки»

Компонент

TLS/SSH

Что доступно «из коробки»

Управление/отключение

Комментарий

OpenSSL 3.5

TLS

гибридные группы X25519MLKEM768 / SecP256r1MLKEM768 / SecP384r1MLKEM1024, причём X25519MLKEM768 в дефолтном списке первым 

через список групп (API/конфиг), можно убирать группы из DEFAULT и управлять key shares звёздочкой * 

Базовая цель для массовой миграции TLS на Linux

Go crypto/tls (Go 1.24)

TLS

X25519MLKEM768 включён по умолчанию при CurvePreferences == nil 

откат: GODEBUG=tlsmlkem=0 

Важно для сервисов и агентов на Go (в т.ч. внутренних)

OpenJDK (SunJSSE, JEP 527)

TLS

добавлены X25519MLKEM768 / SecP256r1MLKEM768 / SecP384r1MLKEM1024; включены по умолчанию при отсутствии явного списка в jdk.tls.namedGroups

через java.security/системные свойства

Существенно для enterprise‑клиентов/мидлвари

OpenSSH 9–10

SSH

гибридный KEX (sntrup… + X25519), затем mlkem… + X25519; предупреждение при non‑PQC KEX 

KexAlgorithms в sshd_config/ssh_config

Часто «самый простой PQ‑вин» в инфраструктуре

NGINX + OpenSSL 3.5

TLS

PQC‑группы доступны через OpenSSL; управляются ssl_ecdh_curve 

конфиг NGINX + библиотечные дефолты

Следите за логированием negotiated group в вашей версии NGINX/OpenSSL 


Дорожная карта миграции TLS для сервиса и клиентов

Ниже — практический план (без предположений о ваших конкретных SLA/регуляторике: если детали не заданы, считаем их неуточнёнными). Логика такая: сначала гибридный KEX, затем — по готовности экосистемы — подписи/сертификаты.

Таймлайн миграции (ориентир)

timeline    title PQC миграция TLS (ориентир для прод-эксплуатации)    section Подготовка      Инвентаризация TLS-терминации/клиентов : 0-4 недели      Классификация сервисов по критичности и сроку ценности данных : 0-6 недель    section Лаборатория      Сборка/подключение OpenSSL 3.5 на стенде : 2-8 недель      Тесты совместимости (клиенты, LB, WAF, прокси) : 4-10 недель      Нагрузочные тесты и MTU/fragmentation проверки : 6-12 недель    section Пилот      Canary на 1-5% трафика (гибридный KEX) : 8-16 недель      Наблюдаемость: метрики, логи negotiated group, ошибки рукопожатия : 8-20 недель    section Масштабирование      Rollout на Tier-1 сервисы (интернет/межсервисы) : 4-9 месяцев      Стандартизация baseline (policy, CI checks) : 6-12 месяцев    section Эволюция      Подготовка к PQ-подписям в PKI (внутренние mTLS контуры) : 9-24 месяцев      Переоценка после обновлений стандартов/реализаций : ежегодно

Ориентир по «глобальным дедлайнам» даёт NIST: движение идёт к депрецированию и удалению квант‑уязвимых алгоритмов к 2035, а «высокорисковые» должны мигрировать раньше. 

Этап планирования: инвентаризация и приоритизация

В реальном проде TLS‑миграция начинает ломаться не на криптографии, а на «зоопарке» точек терминации и клиентов. Поэтому цель инвентаризации — получить список:

  • где вы терминируете TLS (edge LB/CDN, ingress, service mesh, прямой NGINX/Apache, gRPC‑балансеры);
  • какие TLS‑библиотеки реально используются на серверах и клиентах (OpenSSL/GnuTLS/BoringSSL/LibreSSL/Go crypto/tls/JSSE и т.д.);
  • какие узлы ограничены FIPS‑режимом или HSM‑политиками;
  • какие сегменты сети потенциально «хрупкие» (DPI, старые WAF, прокси, устройства).

Практическая приоритизация по критичности:

  • Tier‑0/Tier‑1: внешние веб‑эндпоинты, API, SSO, платежи, внутренний mTLS между критичными сервисами; данные с долгой ценностью.
  • Tier‑2: админ‑панели, служебные API, батч‑каналы.
  • Tier‑3: вторичные сервисы, где риск HNDL ниже (например, короткоживущие данные и низкая ценность).

Этап лаборатории: «включаем PQC так, чтобы можно было выключить»

Базовый принцип: не трогаем сертификаты на первом шаге

Гибридный/постквантовый обмен ключами в TLS 1.3 можно включить, не меняя сертификаты сервера (сертификаты продолжают быть RSA/ECDSA/Ed25519). Это важное упрощение, потому что публичная экосистема X.509 будет догонять PQ‑подписи заметно дольше.

Отдельно отмечается, что гибрид X25519MLKEM768 в OpenSSL — «TLS‑only примитив» (не универсальный KEM для всех протоколов), что ещё раз подчёркивает: в TLS это решается на уровне групп/key share, а не через «переезд сертификатов за один релиз». 

Проверяем, что OpenSSL 3.5 действительно привнесён и активен

Минимальный набор команд для стенда:

# Версия и директория конфиговopenssl version -aopenssl version -d# Какие TLS-группы доступныopenssl list -tls-groupsopenssl list -all-tls-groups

Команды -tls-groups/-all-tls-groups привязаны к OpenSSL 3.5. 

Управление группами: миссия критична для совместимости и rollback

В OpenSSL можно управлять поддерживаемыми группами и тем, какие key shares посылает клиент (в TLS 1.3), через «group list» (в документации это описано в терминах SSL_CTX_set1_curves_list/SSL_CTX_set1_groups_list и др.). Важные эксплуатационные детали:

  • можно ссылаться на встроенный список как DEFAULT;
  • можно удалять группу из дефолта (например, DEFAULT:-X25519MLKEM768);
  • можно указывать предсказанные key shares звёздочкой * (сервер игнорирует *, клиент — нет);
  • можно игнорировать неизвестные группы префиксом ? (полезно для «один конфиг на разные сборки»). 

Это — базовый механизм вашего безопасного rollout/rollback.

Развёртывание на стороне сервиса: практические конфиги

Ниже примеры для Linux. Пути могут отличаться по дистрибутивам; если у вас не указан дистро, принимайте это как шаблоны.

Вариант A: NGINX (TLS‑терминация на nginx, library = OpenSSL 3.5)

Файл: /etc/nginx/nginx.conf или /etc/nginx/conf.d/site.conf

server {    listen 443 ssl http2;    server_name example.com;    ssl_certificate     /etc/ssl/certs/example.com.fullchain.pem;    ssl_certificate_key /etc/ssl/private/example.com.key;    # Базовый минимум: TLS 1.2+ (TLS 1.3 предпочтителен для KEX-групп)    ssl_protocols TLSv1.2 TLSv1.3;    # Важно: список групп/кривых для (EC)DHE и TLS 1.3 supported_groups.    # При наличии OpenSSL 3.5 сюда можно добавить гибрид X25519MLKEM768.    #    # Стратегия "безопасный старт": гибрид + fallback на X25519/P-256    ssl_ecdh_curve X25519MLKEM768:X25519:prime256v1;    # Для наблюдаемости удобно логировать negotiated group и предложенные группы.    # NGINX предоставляет $ssl_curve / $ssl_curves (в зав-ти от версии); смотрите ниже log_format.    access_log /var/log/nginx/access.log main;}

Директива ssl_ecdh_curve официально задаёт список поддерживаемых кривых при использовании OpenSSL. Переменные $ssl_curve и $ssl_curves существуют в NGINX и позволяют логировать negotiated group/список групп. 

Пример log_format (в http{} блока):

log_format main '$remote_addr - $host [$time_local] '                '"$request" $status $body_bytes_sent '                'tls=$ssl_protocol cipher=$ssl_cipher '                'group=$ssl_curve groups=$ssl_curves '                'rt=$request_time';

Нюанс: в некоторых комбинациях NGINX/OpenSSL новые PQC‑группы могли логироваться не «красивым» именем, а в hex, из‑за способа сопоставления групп. Для этого в истории изменений NGINX есть отдельные обсуждения/фиксы, ставшие заметнее после добавления X25519MLKEM768 в дефолт OpenSSL 3.5. 

Вариант B: Apache httpd (mod_ssl)

Файл: обычно /etc/apache2/sites-enabled/000-default-le-ssl.conf (Debian/Ubuntu) или /etc/httpd/conf.d/ssl.conf (RHEL‑семейство)

<VirtualHost *:443>    ServerName example.com    SSLEngine on    SSLCertificateFile      /etc/ssl/certs/example.com.fullchain.pem    SSLCertificateKeyFile   /etc/ssl/private/example.com.key    SSLProtocol             -all +TLSv1.2 +TLSv1.3    # Ключевое: управление группами через OpenSSLConfCmd (пробрасывается в libssl).    # Список: гибрид + классические fallback.    SSLOpenSSLConfCmd Groups "X25519MLKEM768:X25519:prime256v1"</VirtualHost>

Эта схема использует механизм настройки TLS‑групп в OpenSSL (через конфиг‑команды). Важно, что сами названия групп берутся из реализации OpenSSL 3.5, где X25519MLKEM768 определён как гибридная группа. 

Вариант C: HAProxy (TLS‑терминация на HAProxy)

Файл: /etc/haproxy/haproxy.cfg

global    log /dev/log local0    maxconn 50000    # Рекомендуется включить capture cipherlist для диагностики совместимости    tune.ssl.capture-cipherlist-size 800defaults    mode http    log global    option httplog    timeout connect 5s    timeout client  60s    timeout server  60sfrontend fe_https    bind :443 ssl crt /etc/haproxy/certs/example.com.pem alpn h2,http/1.1    # Зависит от версии HAProxy и SSL-библиотеки: задаём приоритет групп (curves).    # Идея та же: гибрид + fallback.    # (Синтаксис может отличаться по версиям; проверяйте `haproxy -vv` и вашу документацию.)    # ssl-default-bind-curves X25519MLKEM768:X25519:prime256v1    # Логи: добавляем версию TLS и cipherlist (полезно при «вдруг отвалились старые клиенты»)    log-format "%ci:%cp [%tr] %ft %b/%s %ST %B tls=%sslv c=%sslc %[ssl_fc_cipherlist_str]"    default_backend be_app

Шаблон лог‑формата с %sslv, %sslc и ssl_fc_cipherlist_str, а также необходимость tune.ssl.capture-cipherlist-size, полезны для расследований TLS‑ошибок и оценки совместимости. 

Этап rollout: canary, постепенность, контроль «что реально договорилось»

Поток развёртывания (рекомендуемый)

flowchart TD    A[Стенд: OpenSSL 3.5 + гибридные группы] --> B[Тесты совместимости: клиенты/прокси/WAF]    B --> C{Ошибки рукопожатия\n> базового порога?}    C -- Да --> R[Сужаем группы:\nоставляем X25519,\nоткатываем PQ]\n    C -- Нет --> D[Canary 1-5% трафика]    D --> E[Мониторинг: handshake failures,\nтайминги, negotiated group,\nClientHello size]    E --> F{SLO в норме\nи нет всплеска ошибок?}    F -- Нет --> R2[Rollback: убрать X25519MLKEM768\nиз group list]    F -- Да --> G[Rollout 25% -> 50% -> 100%]    G --> H[Закрепляем baseline:\npolicy+CI checks+runbooks]

Как делать rollback «в одну ручку»

Rollback должен быть банальным: убрать PQC‑группу из списка.

Если вы управляете группами через OpenSSL‑механизм, полезно знать, что можно начинать от DEFAULT и исключать X25519MLKEM768 (или любую другую группу) из дефолта. Это прямо предусмотрено синтаксисом списка групп. 

Пример в стиле OpenSSL group list (концептуально):

  • было: Groups = DEFAULT
  • стало: Groups = DEFAULT:-X25519MLKEM768

Плюс можно сохранить в конфиге «мягкий режим» через ?‑префикс, чтобы конфиг не ломался на хостах без нужной группы. 

Дорожная карта для клиентов TLS

С клиентами всё зависит от того, кто ваш клиент.

Если ваши клиенты — «общественный интернет» (браузеры/мобильные приложения)

Обычно вы не можете заставить всех клиентов поддерживать PQC. Поэтому стратегия:

1) включаете PQC‑гибрид на сервере; 2) удостоверяетесь, что клиенты, которые умеют, договариваются о гибриде, а остальные — уходят в X25519/P‑256 без падения; 3) мониторите handshake failures и negotiated group.

Cloudflare ведёт справочную страницу по поддержке гибридных PQ‑соглашений разными софтами — полезная точка сверки для «кто уже умеет». 

Если ваши клиенты — контролируемые агенты/SDK (DevOps‑сценарии)

Тогда вы можете ехать быстрее и жёстче.

Go‑клиенты/сервисы. В Go 1.24 гибридный X25519MLKEM768 включён по умолчанию при CurvePreferences == nil, а откат делается через GODEBUG=tlsmlkem=0. 

Практический код‑паттерн для «управляемого отката» (через env):

# Отключить ML-KEM гибрид в Go TLS для быстрой деэскалации инцидентаexport GODEBUG=tlsmlkem=0systemctl restart your-service

Java‑клиенты (OpenJDK/SunJSSE). В рамках внедрения гибридных KEM для TLS (JEP 527) добавляются X25519MLKEM768 и соответствующие группы на NIST‑стандартизированном ML‑KEM, и они включаются по умолчанию при отсутствии явного списка jdk.tls.namedGroups.


Дорожная карта миграции SSH для сервиса и клиентов

Для админов SSH часто «самый дешёвый» способ получить постквантовый выигрыш в транспортном канале: OpenSSH уже сделал большую часть работы.

Базовая стратегия

1) Убедиться, что серверы и клиенты используют актуальный OpenSSH.2) Проверить, какой KEX реально выбирается и не отключён ли PQC‑KEX корпоративными hardening‑политиками.3) При необходимости — зафиксировать KexAlgorithms в конфиге (и оставить fallback).4) Включить наблюдаемость (хотя бы через диагностические команды и выборочный verbose).

OpenSSH документирует текущую PQC‑позицию и то, что в новых версиях приоритет отдан гибридному mlkem…+x25519, а также присутствует предупреждение для не‑PQC соединений. 

Конфигурация на стороне сервера (sshd)

Файл: /etc/ssh/sshd_config

Рекомендуемый подход: фиксируем KEX‑алгоритмы так, чтобы:

  • первым шёл постквантовый/гибридный;
  • дальше — fallback на curve25519;
  • дальше — при необходимости — на более старые группы (если у вас реально есть такие клиенты).

Пример:

# /etc/ssh/sshd_config# Явно задаём KEX приоритет: PQ/hybrid -> modern classical.KexAlgorithms mlkem768x25519-sha256,sntrup761x25519-sha512@openssh.com,curve25519-sha256# Остальные настройки опускаем (аутентификация/ключи — отдельная тема)

Названия гибридных KEX и их приоритеты зависят от версии OpenSSH; в новых релизах присутствует mlkem768x25519‑sha256 и sntrup761x25519‑sha512@openssh.com. 

Применение:

sshd -t && systemctl reload sshd

Конфигурация на стороне клиента

Файл: ~/.ssh/config (пользователь) или /etc/ssh/ssh_config (системная политика)

Host *    KexAlgorithms mlkem768x25519-sha256,sntrup761x25519-sha512@openssh.com,curve25519-sha256

Проверка: что реально выбралось

Диагностика (быстро и надёжно):

# Список KEX, которые умеет текущий клиентssh -Q kex | head# Подробный вывод negotiationssh -vvv user@host

Плюс ориентируйтесь на то, что OpenSSH начиная с 10.1 сигнализирует, если договорились без PQC KEX — это полезно как «охранный датчик», когда политики случайно вырезали нужные алгоритмы. 


PKI, производительность, риски, мониторинг и итоговый чек-лист

PKI и сертификаты: как разделить «конфиденциальность» и «аутентичность»

Реальность 2026: для многих вы сможете включить PQ‑устойчивую конфиденциальность через гибридный KEX (TLS/SSH) заметно раньше, чем сможете заменить аутентификацию (сертификаты/подписи).

Почему:

  • менять сертификаты на PQ‑подписи означает менять всю цепочку: CA, политики, клиенты, инспекцию, иногда HSM, и отдельно решать совместимость с публичными корневыми хранилищами;
  • гибридный KEX решает именно «harvest now, decrypt later» для трафика без необходимости менять PKI немедленно.

При этом NIST подчёркивает, что ML‑KEM/ML‑DSA/SLH‑DSA «могут и должны» применяться уже сейчас, а стандарты готовы для использования. 

Практическая стратегия PKI по слоям:

  • Интернет‑фронты (публичные браузеры): оставить классические сертификаты (ECDSA/RSA) до тех пор, пока экосистема публичной PKI не будет готова; включить гибридный KEX на TLS 1.3.
  • Внутренний mTLS (контролируемые клиенты): параллельно подготовить экспериментальный контур с ML‑DSA сертификатами (например, для сервис‑меша/агентов), но запускать только после проверки совместимости клиентов.
  • Артефакты/подписи обновлений: отдельный трек, часто быстрее и безопаснее для пилота, чем X.509 для браузеров.

Производительность и «сетевые» эффекты PQC

Увеличение рукопожатия

Даже в гибридном режиме ключевые «байтовые» увеличения идут от ML‑KEM:

  • для ML‑KEM‑768 публичный ключ 1184 байта и ciphertext 1088 байт. В гибриде это добавляется к классическому X25519 keyshare и служебным структурам TLS.

OpenSSL прямо предупреждает: CPU‑стоимость сопоставима с ECDH, но сообщения ключевого обмена заметно больше

Практические риски от этого: - фрагментация ClientHello/ServerHello и проблемы у старых middlebox; - рост handshake latency на «длинных» сетях и при packet loss; - неожиданные «SSL handshake failure» на некоторых балансерах/прокси.

HelloRetryRequest и лишний RTT

Если клиент не прислал нужный keyshare, сервер может отправить HelloRetryRequest (HRR), что добавляет RTT. Поэтому при внедрении важно, чтобы клиент присылал предсказанные keyshares для самых вероятных групп. OpenSSL поддерживает настройку «predicted keyshares» через * в списке групп, максимум до 4 keyshares. 

Мониторинг и тестирование: что добавить в эксплуатационный контур

TLS: диагностика negotiated group и регрессий

1) Логируйте negotiated group на TLS‑терминации (если это возможно в вашем стеке). В NGINX смотрите $ssl_curve/$ssl_curves. 

2) Собирайте ошибки рукопожатия отдельно от HTTP‑ошибок. Для HAProxy полезно явно расширить log‑format полями TLS и cipherlist, плюс включить tune.ssl.capture-cipherlist-size. 

3) Проверяйте доступные группы и текущие дефолты на каждом целевом образе:

openssl list -tls-groupsopenssl list -all-tls-groups

4) Проверка end‑to‑end рукопожатия (примеры):

# Проверка TLS 1.3 и вывод цепочки сертификатовopenssl s_client -connect example.com:443 -servername example.com -tls1_3 -showcerts# Принудительно задать группы (через конфиг-команды SSL_CONF_cmd; подходит для диагностики)# Синтаксис групп и поддержка описаны в механизме SSL_CTX_set1_curves_list.openssl s_client -connect example.com:443 -servername example.com -tls1_3 -groups X25519MLKEM768:X25519

s_client поддерживает конфиг‑команды SSL_CONF_cmd, а управление/синтаксис списков групп описан в документации OpenSSL. 

SSH: контроль KEX и политика

  • Инвентаризация поддерживаемых KEX на клиентах: ssh -Q kex.
  • Выборочный ssh -vvv на критичных путях.
  • Контроль политик KexAlgorithms в sshd_config и ssh_config.

OpenSSH уже подсвечивает non‑PQC соединения предупреждением в новых версиях — используйте это как сигнал для наблюдаемости и hardening‑регрессий. 

Основные риски и меры смягчения

Таблично — чтобы можно было использовать как «risk register» для change‑management.

Риск

Где проявляется

Симптом

Смягчение

Большие ClientHello ломают старые middlebox/DPI

TLS edge/корп. сети

рост handshake failures, timeouts

canary rollout; fallback‑группы (X25519/P‑256); возможность быстро убрать X25519MLKEM768 из group list; мониторинг negotiated group 

Непредсказуемый HRR/лишний RTT

TLS 1.3

рост latency на первой установке

настроить predicted keyshares (звёздочка *), держать X25519 как predicted рядом с гибридом 

Несовместимость библиотек/версий

TLS/SSH

часть клиентов не коннектится

инвентаризация клиентов; обязателен fallback; по возможности обновление клиентов (Go/Java/OpenSSH) 

«Сырость»/разные реализации PQC

везде

странные баги, расхождения

гибридная стратегия; staged rollout; регулярная переоценка по выходу патчей OpenSSL/OpenSSH 

Сложность PKI‑миграции на PQ‑подписи

PKI/mTLS

клиенты не принимают PQ‑сертификаты, рост размеров

разделить треки: KEX сейчас, подписи позже; пилотировать в изолированных внутренних контурах; учитывать размер подписи ML‑DSA/SLH‑DSA 

Чек‑лист внедрения

Ниже — чек‑лист, который удобно превращать в тикеты. Он намеренно практический.

Подготовка - Зафиксирован список TLS‑точек терминации и используемых TLS‑библиотек по средам/кластерам. - Отдельно отмечены «хрупкие» периметры: WAF/DPI/прокси/старые клиенты. - Определены Tier‑0/Tier‑1 сервисы по критичности и сроку ценности данных.

Стенд - OpenSSL 3.5 (или эквивалентный стек) собран/доставлен на стенд, группы видны через openssl list -tls-groups. - Сервер настроен на гибридную группу + fallback (пример: X25519MLKEM768:X25519:P‑256). - Пройдены тесты: рукопожатие, нагрузка, MTU‑чувствительность, негативные сценарии.

Rollout - Canary включён на малую долю трафика/хостов. - Добавлены метрики/логи negotiated group (NGINX $ssl_curve/$ssl_curves или эквивалент). - Подготовлен rollback: удаление X25519MLKEM768 из списка групп (например, через DEFAULT:-X25519MLKEM768). 

Клиенты - Для контролируемых клиентов (Go/Java) определён policy: включено по умолчанию или gated‑флагом; есть быстрый «выключатель» (например, GODEBUG=tlsmlkem=0 для Go). 

SSH - Проверено, что OpenSSH использует PQ/hybrid KEX (mlkem… или sntrup…); при необходимости KexAlgorithms зафиксирован. 

PKI - Отдельный трек на PQ‑подписи/сертификаты: оценка размера и совместимости (ML‑DSA/SLH‑DSA), пилот в изолированном внутреннем контуре. 


Суть дорожной карты проста: начните с гибридного KEX в TLS и SSH (это даёт выигрыш по «долгой конфиденциальности» уже сейчас), делайте rollout как инфраструктурное изменение уровня «обновление TLS‑библиотеки», держите fallback и быстрый откат, а миграцию PKI на PQ‑подписи планируйте отдельным этапом по зрелости клиентов и внутренних процессов. NIST не просто «разрешает», а прямо подталкивает начинать переход как можно раньше — и это один из редких случаев, когда регуляторская рекомендация хорошо совпадает с эксплуатационной реальностью. 

Как повысить антиплагиат: 8 эффективных способов 2021 года
Сайт

Как повысить антиплагиат: 8 эффективных способов 2021 года

Чем популярнее тема, тем сложнее написать уникальный текст. Большинство письменных трудов должно содержать цитаты, термины,

Медиасервер: зачем он вам нужен и как его настроить?
Решения для бизнеса

Медиасервер: зачем он вам нужен и как его настроить?

Медиасервер используется для хранения фильмов, музыки или личных фотографий. К нему можно подключиться по локальной сети из

ІоВ – одна из главных технологических тенденций 2021 года
DDoS

ІоВ – одна из главных технологических тенденций 2021 года

Устройства из категории IoT (Internet of Things, «интернет вещей») уже прочно вошли в нашу жизнь. Если