Каждое сообщение в мессенджере, каждая онлайн-оплата и каждое подключение к корпоративному VPN опираются на криптографические алгоритмы, работающие незаметно для пользователя. То, что давно стало рутинной операцией, на самом деле держится на сложных математических преобразованиях, устойчивость которых проверялась десятилетиями исследований. В условиях массовой цифровизации и роста числа кибератак шифрование перестало быть опциональной надстройкой — оно превратилось в базовое требование к любой ИТ-инфраструктуре. Такие алгоритмы, как AES, RSA и Blowfish, обеспечивают не только конфиденциальность и целостность данных, но и соответствие регуляторным нормам вроде GDPR, ФЗ-152 и PCI DSS. В этом материале мы разберем, как устроены основные алгоритмы шифрования, где они применяются, как реализуются на аппаратном уровне и какие вызовы стоят перед криптографией в связи с развитием квантовых вычислений.

Симметричное и асимметричное шифрование: в чем разница

Шифрование — это криптографическое преобразование информации в нечитаемый вид с использованием секретного ключа, необходимое для сохранения конфиденциальности данных при передаче или хранении. Его важно отличать от хеширования: шифрование обратимо и требует ключа для расшифровки, тогда как хеширование создает уникальный "отпечаток" данных (например, с помощью SHA-256) для проверки их целостности, но не позволяет восстановить исходное содержимое.

Криптографические алгоритмы шифрования принято делить на две большие категории.

Симметричное шифрование использует один и тот же ключ и для шифрования, и для расшифровки данных. Главные преимущества такого подхода — высокая скорость и эффективность при обработке больших объемов информации. К этой группе относятся алгоритмы AES, Blowfish и ChaCha20.

Асимметричное шифрование, или инфраструктура открытых ключей (PKI), строится на паре математически связанных ключей: публичный ключ используется для шифрования, приватный — для расшифровки. Такой подход решает проблему безопасной передачи ключа по незащищенному каналу, но требует значительно больше вычислительных ресурсов. Классический пример асимметричного алгоритма — RSA.

На практике эти два подхода почти всегда комбинируются. В протоколах TLS, VPN и PGP асимметричное шифрование применяется для безопасной передачи симметричного сессионного ключа, а уже этим ключом шифруется основной поток данных — так достигается баланс между безопасностью обмена ключами и скоростью обработки трафика. Помимо симметричных и асимметричных схем, криптографические алгоритмы также подразделяют на бесключевые, одноключевые и двухключевые, каждый из которых включает в себя ряд более узких подтипов.

AES — стандарт, на котором держится современная криптография

Advanced Encryption Standard (AES) стал победителем конкурса Национального института стандартов и технологий США (NIST) в 2001 году и с тех пор остается доминирующим алгоритмом благодаря удачному сочетанию безопасности, производительности и универсальности применения. Это блочный шифр с размером блока 128 бит и длиной ключа 128, 192 или 256 бит. За два с лишним десятилетия интенсивных исследований и практического использования AES ни разу не был скомпрометирован на практике, что позволило рекомендовать его не только для защиты коммерческих систем, но и для инфраструктур, работающих с государственной тайной (в рамках стандарта Suite B).

AES применяется практически повсеместно:

  • Дисковое шифрование — BitLocker в Windows, LUKS в Linux и FileVault в macOS используют режим AES-XTS.
  • Сетевые протоколы — TLS 1.2/1.3, IPsec и WireGuard задействуют AES для шифрования трафика.
  • Облачные сервисы — шифрование томов в AWS EBS и Azure Disk Storage.
  • Мобильные операционные системы — Android File-Based Encryption (FBE) и iOS Data Protection.

Для эффективной работы AES современные процессоры оснащаются специализированными расширениями наборов инструкций: Intel AES-NI, AMD AES Instruction Set и ARM Cryptography Extensions. Они ускоряют криптографические операции в 10-30 раз по сравнению с программной реализацией, сводя накладные расходы на шифрование к минимуму. Именно поэтому AES остается практически безальтернативным выбором для высоконагруженных систем — баз данных и систем хранения данных, где шифрование "на лету" не должно заметно влиять на производительность.

RSA — надежность для ключей и подписей, а не для больших объемов данных

RSA (Rivest–Shamir–Adleman) остается главным алгоритмом асимметричной криптографии благодаря относительной простоте реализации и высокой надежности. При этом сфера его применения заметно уже, чем у AES, и ограничивается задачами, где не требуется обрабатывать большие массивы данных:

  • Обмен ключами — формирование сессионного ключа при установке соединения TLS/SSL.
  • Цифровые подписи — аутентификация программного обеспечения (code signing), электронная подпись документов, подтверждение транзакций в блокчейне.
  • Шифрование небольших объемов данных — токенов, паролей и других коротких значений.

Главное ограничение RSA — резкий рост вычислительной сложности при увеличении объема шифруемых данных и длины ключа. Наращивать длину ключа приходится для того, чтобы исключить возможность взлома методом перебора: на сегодняшний день минимально приемлемым считается ключ длиной 2048 бит, а для долгосрочной защиты рекомендуются ключи 3072 или 4096 бит. При этом сам алгоритм постепенно теряет перспективы: с появлением достаточно мощных квантовых компьютеров классические ключи RSA утратят всякую защиту, о чем подробнее говорится далее.

Blowfish, ChaCha20 и Salsa20 — легковесные альтернативы

Blowfish — гибкий симметричный алгоритм с переменной длиной ключа от 32 до 448 бит, разработанный криптографом Брюсом Шнайером в 1993 году. Несмотря на то что в стандартизированных решениях он уступил позиции AES, у Blowfish осталась своя устойчивая ниша — системы с ограниченными вычислительными ресурсами:

  • встраиваемые системы, включая IoT-устройства и роутеры;
  • устаревшее программное обеспечение, для которого нужна легковесная криптография;
  • кастомные протоколы с нестандартной длиной ключа.

На смену Blowfish в современных сценариях приходят алгоритмы ChaCha20 и Salsa20. ChaCha20 оптимизирован специально для программной реализации без аппаратного ускорения и стал одним из основных шифров в TLS 1.3 — в первую очередь на мобильных устройствах, где он позволяет экономить заряд батареи, и в облачных средах, где обеспечивает высокую скорость работы на процессорах без поддержки AES-NI. По уровню криптографической стойкости ChaCha20 сопоставим с AES-256, что во многом и объясняет его массовое внедрение в современные протоколы.

Национальные стандарты: китайские алгоритмы шифрования GB/T

Помимо международно признанных AES и RSA, в мире активно развиваются национальные криптографические стандарты. В Китае Государственное управление по делам рынка (SAMR) совместно с Государственной администрацией по вопросам шифрования (SCA) утвердили ряд алгоритмов, известных как стандарты GB/T (Guobiao). Их применение обязательно в государственном секторе, критической информационной инфраструктуре и значительной части коммерческих продуктов внутри страны, а некоторые из них уже получили международное признание в рамках стандартов ISO/IEC.

Алгоритм Тип Назначение
SM2 (ShangMi 2) Асимметричная криптография на эллиптических кривых (ECC), стандарт GB/T 32918 Шифрование данных, цифровые подписи, обмен ключами. Обеспечивает безопасность, сопоставимую с RSA 3072/4096 бит, при ключе всего 256 бит. Обязателен в электронных подписях и шифровании госсектора Китая
SM3 (ShangMi 3) Криптографическая хеш-функция, выход 256 бит Аналог SHA-256; генерация подписей совместно с SM2, проверка целостности данных, генерация ключей, протоколы аутентификации
SM4 (ShangMi 4) Симметричный блочный шифр, блок 128 бит, ключ 128 бит Прямой конкурент AES; защита беспроводных сетей (WAPI), финансовые транзакции, госплатформы, VPN. Эффективен и в программной, и в аппаратной реализации
SM9 (ShangMi 9) Идентификационная криптография (Identity-Based Cryptography) Публичный ключ выводится напрямую из идентификатора пользователя (например, email), что снимает необходимость в PKI и цифровых сертификатах. Востребован при большом числе пользователей и упрощенном управлении ключами
ZUC (Zu Chongzhi) Потоковый шифр Защита конфиденциальности и целостности данных в сетях связи нового поколения; ключ и вектор инициализации по 128 бит; основной алгоритм конфиденциальности (128-EEA3) и целостности (128-EIA3) в 3GPP 5G

Аппаратное ускорение шифрования на серверных платформах

Современные серверные платформы интегрируют криптографические блоки непосредственно в процессор или чипсет материнской платы, что позволяет выполнять шифрование без значительной нагрузки на основные вычислительные ядра:

  • Intel — AES-NI, SHA Extensions, PCLMULQDQ для режима GCM.
  • AMD — технологии SME/SEV для шифрования виртуальных машин.
  • ARM — Cryptographic Extensions с поддержкой AES, SHA и PMULL.
  • Apple — Secure Enclave и модуль PKA с поддержкой AES-XTS.
  • Китайские процессоры — специализированные блоки ускорения SM2/SM3/SM4 и ZUC.

Эти аппаратные блоки лежат в основе целого ряда задач современной ИТ-инфраструктуры. Прозрачное шифрование NVMe SSD по стандарту OPAL 2.0 позволяет защищать данные на накопителях без потери производительности по IOPS. Технологии AMD SEV-ES/SME и Intel TDX изолируют память гостевых операционных систем от гипервизора, защищая виртуальные машины. Офлоадинг SSL/TLS на балансировщиках нагрузки (F5, NGINX) или сетевых картах SmartNIC обеспечивает терминацию шифрованных соединений на скоростях от 100 Гбит/с. В контейнеризированных средах (containerd, cri-o) те же блоки применяются для шифрования образов и runtime-данных.

В совокупности использование аппаратных криптографических блоков снижает нагрузку на процессор на 70-90%, устраняет заметные задержки при обработке зашифрованного трафика и помогает соответствовать требованиям стандарта FIPS 140-2/3.

Квантовые вычисления и будущее криптографии

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

Теоретическая угроза исходит от алгоритма Шора, способного факторизовать (перебирать) значения ключей на квантовом процессоре кардинально быстрее, чем это делают классические вычислительные системы. Это ставит под удар алгоритмы, основанные на факторизации и вычислениях на эллиптических кривых, — в первую очередь RSA и ECC. При этом реальной угрозы пока нет: современные квантовые системы располагают порядка 1000 физических кубитов, тогда как для практического взлома RSA-2048 потребовалось бы порядка 20 миллионов логических кубитов. Тем не менее подготовка к переходу на квантовоустойчивые алгоритмы уже началась.

Стандартизацией так называемых постквантовых алгоритмов (Post-Quantum Cryptography, PQC) занимается NIST. В число финалистов этого конкурса вошли:

  • Kyber (на основе MLWE) — алгоритм асимметричного шифрования с открытым ключом, аналог RSA. Его устойчивость к квантовому взлому основана на сложности решения задачи "обучения с ошибками" в модульных решетках. Размер открытого ключа составляет примерно 800-1500 байт, секретного ключа — 1600-3000 байт, шифротекста — 700-1500 байт. Алгоритм обеспечивает хороший баланс между размером ключей, скоростью работы и криптостойкостью.
  • Dilithium (на основе MLWE) — алгоритм цифровых подписей, аналог ECDSA, построенный на сочетании задач MLWE и MSIS в решетках. Открытый ключ занимает 1300-2500 байт, секретный — 2500-5000 байт, подпись — 2000-4000 байт. Отличается высокой скоростью генерации ключей и надежной защитой от квантовых атак.
  • SPHINCS+ (хеш-подписи) — альтернатива, построенная на принципиально иных математических основаниях: ее стойкость целиком опирается на надежность используемой хеш-функции (SHA-256, SHAKE256) и на древовидные структуры Меркла. Подписи получаются крупными — от 8 до 50 КБ, что заметно больше, чем у Dilithium или Falcon, зато открытые ключи занимают всего 32-64 байта, а секретные — 64-128 байт. Алгоритм обеспечивает защиту от квантовых атак даже с использованием алгоритма Гровера ценой лишь увеличения длины выхода хеш-функции.
  • Falcon (на основе NTRU) — компактный алгоритм с одними из самых небольших цифровых подписей (600-1300 байт), что делает его удобным для устройств интернета вещей. Его стойкость опирается на сложность задачи NTRU в решетках, а работа отличается высокой скоростью. Главный недостаток — сложность реализации: алгоритм требует вычислений с плавающей точкой высокой точности либо выполнения громоздкой целочисленной арифметики.

Переход на постквантовые алгоритмы, скорее всего, будет постепенным, а первым шагом станут гибридные схемы вроде связки RSA с Kyber. Тем не менее владельцам и производителям вычислительного оборудования уже сейчас стоит закладывать оценку поддержки PQC при выборе новых процессоров и программных платформ.

Что в итоге

Алгоритмы шифрования давно стали неотъемлемой частью современных ИТ-систем, и по мере развития новых классов вычислительных устройств их значение будет только расти. При этом классический AES продолжает оставаться основой шифрования данных, RSA сохраняет критическую важность для формирования безопасных ключей и цифровых подписей, а ChaCha20 и постквантовые алгоритмы пока лишь набирают распространение в новых сценариях защиты информации. Владельцам вычислительной инфраструктуры уже сейчас имеет смысл присматриваться к передовым решениям, устойчивым к квантовым атакам, — но полный отказ от проверенных AES и RSA пока преждевременен.