SM4 (国密) Зашифровать

Бесплатный онлайн-инструмент SM4 (国密) Зашифровать. 100% локальная обработка — ваши данные никогда не покидают устройство.

National Standards
Legacy
Вывод

Результат будет отображен здесь...

Ввод Зашифровать

Usage Guide

О SM4

SM4 — симметричный алгоритм шифрования, выпущенный Государственным управлением криптографии Китая в 2012 году, являющийся важным компонентом Китайского стандарта коммерческой криптографии (GM/T 0002-2012). SM4 использует 128-битный ключ и 128-битную длину блока, с безопасностью, сопоставимой с AES-128, специально разработанный для китайских криптографических сценариев применения. SM4 широко используется в финансовом, государственном и телекоммуникационном секторах Китая и является одним из основных компонентов национальной системы криптографических алгоритмов. Согласно Закону о криптографии Китайской Народной Республики, важные области, связанные с национальной безопасностью и жизнеобеспечением населения, должны использовать национальные криптографические алгоритмы.

Национальный криптографический стандарт: SM4 — симметричный алгоритм шифрования Китайского стандарта коммерческой криптографии, образующий полную систему национальных криптографических алгоритмов вместе с SM3 (хэш), SM2 (асимметричное шифрование) и SM9 (криптография на основе идентификации). В критически важных секторах, таких как финансы, государственное управление и телекоммуникации в Китае, использование национальных криптографических алгоритмов рекомендуется или является обязательным.

Шаги использования

SM4 — симметричный алгоритм шифрования, использующий один и тот же ключ для шифрования и дешифрования:

1. Выбор режимаВыберите режим шифрования (CBC, ECB), рекомендуется режим CBC
2. Установка ключаВведите или сгенерируйте 128-битный ключ (16 байт), ключ должен храниться в тайне
3. Установка IVРежим CBC требует вектора инициализации (IV), используйте разный случайный IV для каждого шифрования
4. Шифрование данныхВведите открытый текст, нажмите кнопку «Зашифровать» для получения зашифрованного текста
5. Дешифрование данныхИспользуйте тот же ключ, IV и режим, введите зашифрованный текст, нажмите кнопку «Дешифровать» для восстановления открытого текста
Защита конфиденциальности: Все вычисления выполняются локально в вашем браузере, данные никогда не загружаются на серверы, полностью офлайн-обработка.

Характеристики алгоритма

SM4 основан на структуре Фейстеля со следующими техническими характеристиками:

Национальный стандартКитайский стандарт коммерческой криптографии (GM/T 0002-2012), соответствует требованиям Закона о криптографии
128-битный ключФиксированный 128-битный ключ, безопасность сопоставима с AES-128
128-битный блокДлина блока 128 бит, как у AES
32 раундаИспользует 32 раунда нелинейной итерации, высокая безопасность
Локализованный дизайнОптимизирован для китайских сценариев применения, бесшовно интегрирован с национальной системой криптографических алгоритмов
Требования соответствия: Согласно Закону о криптографии Китайской Народной Республики и соответствующим отраслевым нормативным актам, криптографические приложения в критически важных секторах, таких как финансы, государственное управление и телекоммуникации, должны использовать национальные криптографические алгоритмы. Если ваше приложение затрагивает эти секторы, SM4 должен иметь приоритет над AES.

Выбор режима шифрования

SM4 поддерживает несколько режимов шифрования, каждый с разными характеристиками безопасности и производительности:

CBC (рекомендуется)Режим сцепления блоков шифра, высокая безопасность, требует IV, подходит для большинства сценариев
ECB (не рекомендуется)Режим электронной кодовой книги, не требует IV, но низкая безопасность, одинаковый открытый текст даёт одинаковый зашифрованный текст
Предупреждение безопасности: Режим ECB имеет уязвимости безопасности, одинаковые блоки открытого текста дают одинаковые блоки зашифрованного текста, что делает паттерны легко идентифицируемыми злоумышленниками. В производственных средах следует использовать режим CBC и обеспечивать использование разного случайного IV для каждого шифрования.

Сценарии применения

SM4 широко используется в критической информационной инфраструктуре Китая и секторах коммерческой криптографии:

Финансовый секторШифрование данных и защита транзакций для банков, ценных бумаг и страховых организаций
Государственные системыШифрование данных для электронного правительства, электронных лицензий и обмена государственными данными
ТелекоммуникацииШифрование данных и защита передачи для мобильных коммуникаций и устройств IoT
Национальный криптографический SSLНациональные криптографические SSL-сертификаты (набор SM2-SM3-SM4) используют SM4 для симметричного шифрования
Шифрование файловЗашифрованное хранение конфиденциальных файлов в государственных органах и предприятиях
Шифрование баз данныхШифрование полей базы данных и файлов резервных копий

FAQ

Q: В чём разница между SM4 и AES?

A: Происхождение стандарта: SM4 — стандарт коммерческой криптографии, выпущенный Государственным управлением криптографии Китая (2012), AES — федеральный стандарт, выпущенный NIST США (2001). Длина ключа: SM4 поддерживает только 128-битные ключи, AES поддерживает 128/192/256 бит. Структура алгоритма: SM4 основан на структуре Фейстеля (32 раунда), AES основан на структуре SPN (10/12/14 раундов). Безопасность: SM4 имеет безопасность, сопоставимую с AES-128, оба с сложностью 2^128. Производительность: AES лучше работает на платформах с аппаратным ускорением, SM4 имеет сопоставимую производительность в программных реализациях. Соответствие: В критически важных секторах Китая SM4 соответствует требованиям Закона о криптографии, AES — нет. Рекомендация: Используйте SM4 для критически важных секторов в Китае, используйте AES для международных приложений.

Q: В каких сценариях требуется обязательное использование SM4?

A: Согласно Закону о криптографии Китайской Народной Республики (вступил в силу 1 января 2020 года) и соответствующим отраслевым нормативным актам: Обязательное использование: Продукты коммерческой криптографии, затрагивающие национальную безопасность, национальную экономику и жизнеобеспечение населения, и общественные интересы должны быть сертифицированы Государственным управлением криптографии и использовать национальные криптографические алгоритмы (включая SM4). Рекомендуемое использование: Критически важные секторы, такие как финансы (банки, ценные бумаги, страхование), государственное управление (электронное правительство, электронные лицензии), телекоммуникации (мобильные коммуникации, IoT), энергетика (электроэнергия, нефть) и транспорт (железные дороги, гражданская авиация). Необязательное использование: Общие коммерческие приложения и личные приложения могут выбирать самостоятельно, но использование национальных криптографических алгоритмов помогает повысить безопасность и соответствие требованиям. Примечание: Конкретные требования определяются последними законами, нормативными актами и отраслевыми стандартами.

Q: Почему SM4 имеет только 128-битную длину ключа?

A: Выбор SM4 128-битного ключа был основан на балансе между соображениями безопасности и производительности. Достаточная безопасность: Сложность взлома 128-битного ключа составляет 2^128 (приблизительно 3,4×10^38), что потребовало бы миллиардов лет даже с использованием всех компьютеров мира. Преимущество производительности: 128-битные ключи работают лучше, чем 256-битные ключи, с более высокой скоростью шифрования. Международный стандарт: AES-128 также является широко используемым стандартом, доказывая, что 128-битные ключи достаточно безопасны. Будущее расширение: Если в будущем потребуется более высокая безопасность, можно использовать варианты или обновлённые версии SM4. Практическое применение: Для подавляющего большинства сценариев применения 128-битный ключ SM4 уже обеспечивает достаточную безопасность.

Q: Как использовать SM4 в международных приложениях?

A: Соображения совместимости: SM4 используется преимущественно в Китае с ограниченной международной поддержкой. Если приложение нуждается в интернационализации, рекомендуется поддерживать как SM4, так и AES. Подход с двойным алгоритмом: 1) Механизм согласования: Клиент и сервер согласовывают используемый алгоритм (SM4 в Китае, AES за рубежом). 2) Двойное шифрование: Используйте одновременно шифрование SM4 и AES для обеспечения дешифрования как внутри страны, так и за рубежом. 3) Идентификация алгоритма: Идентифицируйте используемый алгоритм в данных и выбирайте алгоритм на основе идентификатора при дешифровании. Поддержка библиотек: OpenSSL 1.1.1+ поддерживает SM4, GmSSL — специализированная библиотека национальных криптографических алгоритмов.

Q: Какова связь между SM4, SM2 и SM3?

A: SM4, SM2 и SM3 — три основных компонента национальной системы криптографических алгоритмов, часто используемых вместе. SM4: Симметричный алгоритм шифрования, используется для шифрования данных, высокая скорость, подходит для больших объёмов данных. SM2: Алгоритм асимметричного шифрования и цифровой подписи, используется для обмена ключами и подписи, высокая безопасность, но более низкая скорость. SM3: Хэш-алгоритм, используется для проверки целостности данных и дайджестов сообщений. Совместное использование: Типичный рабочий процесс — использовать SM2 для обмена ключами SM4, использовать SM4 для шифрования данных, использовать SM3 для проверки целостности и использовать SM2 для подписи. Национальный криптографический набор: SM2-SM3-SM4 — полный набор национальных криптографических алгоритмов, аналогичный набору RSA-SHA256-AES. Применение: Национальные криптографические SSL-сертификаты используют набор SM2-SM3-SM4, заменяя традиционный набор RSA-SHA256-AES.

Q: Как проверить правильность реализации SM4?

A: Стандартные тестовые векторы: Стандарт GM/T 0002-2012 предоставляет официальные тестовые векторы. Например, используя конкретные ключи и открытый текст, SM4 должен производить конкретный зашифрованный текст. Инструменты сравнения: Используйте несколько независимых реализаций (таких как OpenSSL, GmSSL, этот инструмент) для шифрования одних и тех же данных и сравнения результатов на согласованность. Проверка дешифрования: Дешифруйте сразу после шифрования для проверки возможности восстановления исходных данных. Сертифицированные продукты: При использовании для продуктов коммерческой криптографии используйте криптографические модули, сертифицированные Государственным управлением криптографии. Реализация с открытым исходным кодом: GmSSL (GitHub) — авторитетная реализация с открытым исходным кодом национальных криптографических алгоритмов и может использоваться в качестве справочника.

Use Cases

Рекомендуется: Шифрование данных финансового сектора

Шифрование данных для финансовых учреждений, таких как банки, ценные бумаги и страхование, должно использовать национальные криптографические алгоритмы. Типичные применения включают: шифрование данных транзакций, защиту информации о клиентах, шифрование полей базы данных. Рекомендуется режим SM4-CBC в сочетании с SM3 для проверки целостности и SM2 для обмена ключами и цифровых подписей. Это соответствует требованиям регуляторов, таких как Народный банк Китая и Комиссия по регулированию банковской и страховой деятельности Китая.

Recommended Configuration:
  • ✅ SM4-CBC (национальный стандарт, рекомендуется для финансов)
  • ✅ SM2 (обмен ключами и подпись)
  • ✅ SM3 (проверка целостности)
  • ✅ Использовать криптографические модули, сертифицированные национальной криптографией
  • 💡 Рассмотреть подход с двойным алгоритмом (SM4 + AES) для улучшения совместимости
Рекомендуется: Шифрование данных государственных систем

Платформы электронного правительства и обмена государственными данными должны использовать национальные криптографические алгоритмы для защиты конфиденциальности данных. Используйте SM4-CBC для шифрования конфиденциальных данных, обеспечивая безопасность данных при хранении и передаче. В сочетании с подписями SM2 и SM3 хэшированием создайте полную систему безопасности.

Recommended Configuration:
  • ✅ SM4-CBC (шифрование данных)
  • ✅ SM2 (цифровые подписи)
  • ✅ SM3 (проверка целостности)
  • 💡 Следовать «Техническим требованиям к криптографическим приложениям в государственных информационных системах»
Рекомендуется: Национальные криптографические SSL/TLS коммуникации

Национальный криптографический SSL/TLS использует набор SM2-SM3-SM4, заменяя традиционный набор RSA-SHA256-AES. SM4 используется для шифрования сеансового ключа, защищая конфиденциальность передаваемых данных. Применимо к государственным веб-сайтам, финансовым учреждениям, критической информационной инфраструктуре и другим сценариям, требующим соответствия требованиям Закона о криптографии.

Recommended Configuration:
  • ✅ SM2-SM3-SM4 (национальный криптографический стандартный набор SSL)
  • ✅ Подход с двойным сертификатом (национальная криптография + RSA, совместимость внутри страны и за рубежом)
  • ✅ Использовать браузеры и серверы, поддерживающие национальную криптографию
  • 💡 Обратиться к «Технической спецификации SSL VPN» (GM/T 0024-2014)
Рекомендуется: Шифрование файлов и баз данных

Шифрование конфиденциальных файлов и полей базы данных в государственных органах и предприятиях должно использовать SM4. Используйте режим SM4-CBC для шифрования файлов или полей базы данных, с ключами, управляемыми через Службы управления ключами (KMS). Используйте разный случайный IV для каждого шифрования; IV может храниться в заголовке файла или базе данных. Для секретных файлов следует сочетать цифровые подписи SM2 для обеспечения надёжности источников файлов.

Recommended Configuration:
  • ✅ SM4-CBC (рекомендуется)
  • ✅ Использовать национальный криптографический KMS для управления ключами
  • ✅ Использовать разный IV для каждого шифрования
  • ✅ В сочетании с подписями SM2 (максимальная безопасность)
  • 💡 Регулярно ротировать ключи
Рекомендуется: Шифрование коммуникаций устройств IoT

Сценарии, такие как телекоммуникационные операторы, умные дома и промышленный IoT, должны использовать национальные криптографические алгоритмы. SM4 подходит для ресурсно-ограниченных устройств IoT, с лучшей производительностью, чем AES-256, и безопасностью, сопоставимой с AES-128. Используйте SM4-CBC для шифрования данных коммуникации устройств, в сочетании с SM2 для аутентификации устройств и SM3 для проверки целостности прошивки.

Recommended Configuration:
  • ✅ SM4-CBC (лёгкое шифрование)
  • ✅ SM2 (аутентификация устройств)
  • ✅ SM3 (целостность прошивки)
  • 💡 Обратиться к «Техническим требованиям к криптографическим приложениям в IoT»
Рекомендуется: Шифрование файлов в облачном хранилище

Конфиденциальные файлы, загружаемые в облачное хранилище, должны быть зашифрованы с помощью SM4 на стороне клиента перед загрузкой, чтобы гарантировать, что поставщики облачных услуг не смогут получить доступ к открытому тексту. Используйте SM4-CBC для шифрования файлов, с ключами, управляемыми клиентом (не загружаемыми в облако). Для приложений, которым необходима интернационализация, можно одновременно поддерживать как SM4, так и AES, выбирая алгоритмы в зависимости от региона пользователя.

Recommended Configuration:
  • ✅ SM4-CBC (национальный стандарт)
  • ✅ Шифрование на стороне клиента, ключи не загружаются
  • ✅ Рассмотреть подход с двойным алгоритмом (SM4 + AES)
  • 💡 Создавать резервные копии ключей; потеря ключей означает невозможность восстановления данных

Рекомендации по лучшим практикам

  • В критически важных секторах, таких как финансы, государственное управление и телекоммуникации в Китае, SM4 должен иметь приоритет для соответствия требованиям Закона о криптографии.
  • Если приложение нуждается в интернационализации, рекомендуется поддерживать как SM4, так и AES, выбирая алгоритмы в зависимости от региона или пользователя.
  • Производственные среды должны использовать режим CBC, избегать режима ECB и использовать разный случайный IV для каждого шифрования.
  • При использовании национальных криптографических алгоритмов следует выбирать криптографические модули, сертифицированные Государственным управлением криптографии, для обеспечения соответствия и безопасности.
  • SM4 обычно используется вместе с SM2 (обмен ключами, подпись) и SM3 (проверка целостности) для построения полной национальной криптографической системы безопасности.
  • Управление ключами имеет решающее значение; используйте национальный криптографический KMS для управления ключами, регулярно ротируйте ключи и ограничивайте права доступа.

Обсуждение и отзывы

0 комментариев
Я