SM4 (国密) Зашифровать
Бесплатный онлайн-инструмент SM4 (国密) Зашифровать. 100% локальная обработка — ваши данные никогда не покидают устройство.
Результат будет отображен здесь...
Ввод → Зашифровать
Usage Guide
О SM4
SM4 — симметричный алгоритм шифрования, выпущенный Государственным управлением криптографии Китая в 2012 году, являющийся важным компонентом Китайского стандарта коммерческой криптографии (GM/T 0002-2012). SM4 использует 128-битный ключ и 128-битную длину блока, с безопасностью, сопоставимой с AES-128, специально разработанный для китайских криптографических сценариев применения. SM4 широко используется в финансовом, государственном и телекоммуникационном секторах Китая и является одним из основных компонентов национальной системы криптографических алгоритмов. Согласно Закону о криптографии Китайской Народной Республики, важные области, связанные с национальной безопасностью и жизнеобеспечением населения, должны использовать национальные криптографические алгоритмы.
Шаги использования
SM4 — симметричный алгоритм шифрования, использующий один и тот же ключ для шифрования и дешифрования:
Характеристики алгоритма
SM4 основан на структуре Фейстеля со следующими техническими характеристиками:
Выбор режима шифрования
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 для обмена ключами и цифровых подписей. Это соответствует требованиям регуляторов, таких как Народный банк Китая и Комиссия по регулированию банковской и страховой деятельности Китая.
- ✅ SM4-CBC (национальный стандарт, рекомендуется для финансов)
- ✅ SM2 (обмен ключами и подпись)
- ✅ SM3 (проверка целостности)
- ✅ Использовать криптографические модули, сертифицированные национальной криптографией
- 💡 Рассмотреть подход с двойным алгоритмом (SM4 + AES) для улучшения совместимости
Рекомендуется: Шифрование данных государственных систем
Платформы электронного правительства и обмена государственными данными должны использовать национальные криптографические алгоритмы для защиты конфиденциальности данных. Используйте SM4-CBC для шифрования конфиденциальных данных, обеспечивая безопасность данных при хранении и передаче. В сочетании с подписями SM2 и SM3 хэшированием создайте полную систему безопасности.
- ✅ SM4-CBC (шифрование данных)
- ✅ SM2 (цифровые подписи)
- ✅ SM3 (проверка целостности)
- 💡 Следовать «Техническим требованиям к криптографическим приложениям в государственных информационных системах»
Рекомендуется: Национальные криптографические SSL/TLS коммуникации
Национальный криптографический SSL/TLS использует набор SM2-SM3-SM4, заменяя традиционный набор RSA-SHA256-AES. SM4 используется для шифрования сеансового ключа, защищая конфиденциальность передаваемых данных. Применимо к государственным веб-сайтам, финансовым учреждениям, критической информационной инфраструктуре и другим сценариям, требующим соответствия требованиям Закона о криптографии.
- ✅ SM2-SM3-SM4 (национальный криптографический стандартный набор SSL)
- ✅ Подход с двойным сертификатом (национальная криптография + RSA, совместимость внутри страны и за рубежом)
- ✅ Использовать браузеры и серверы, поддерживающие национальную криптографию
- 💡 Обратиться к «Технической спецификации SSL VPN» (GM/T 0024-2014)
Рекомендуется: Шифрование файлов и баз данных
Шифрование конфиденциальных файлов и полей базы данных в государственных органах и предприятиях должно использовать SM4. Используйте режим SM4-CBC для шифрования файлов или полей базы данных, с ключами, управляемыми через Службы управления ключами (KMS). Используйте разный случайный IV для каждого шифрования; IV может храниться в заголовке файла или базе данных. Для секретных файлов следует сочетать цифровые подписи SM2 для обеспечения надёжности источников файлов.
- ✅ SM4-CBC (рекомендуется)
- ✅ Использовать национальный криптографический KMS для управления ключами
- ✅ Использовать разный IV для каждого шифрования
- ✅ В сочетании с подписями SM2 (максимальная безопасность)
- 💡 Регулярно ротировать ключи
Рекомендуется: Шифрование коммуникаций устройств IoT
Сценарии, такие как телекоммуникационные операторы, умные дома и промышленный IoT, должны использовать национальные криптографические алгоритмы. SM4 подходит для ресурсно-ограниченных устройств IoT, с лучшей производительностью, чем AES-256, и безопасностью, сопоставимой с AES-128. Используйте SM4-CBC для шифрования данных коммуникации устройств, в сочетании с SM2 для аутентификации устройств и SM3 для проверки целостности прошивки.
- ✅ SM4-CBC (лёгкое шифрование)
- ✅ SM2 (аутентификация устройств)
- ✅ SM3 (целостность прошивки)
- 💡 Обратиться к «Техническим требованиям к криптографическим приложениям в IoT»
Рекомендуется: Шифрование файлов в облачном хранилище
Конфиденциальные файлы, загружаемые в облачное хранилище, должны быть зашифрованы с помощью SM4 на стороне клиента перед загрузкой, чтобы гарантировать, что поставщики облачных услуг не смогут получить доступ к открытому тексту. Используйте SM4-CBC для шифрования файлов, с ключами, управляемыми клиентом (не загружаемыми в облако). Для приложений, которым необходима интернационализация, можно одновременно поддерживать как SM4, так и AES, выбирая алгоритмы в зависимости от региона пользователя.
- ✅ SM4-CBC (национальный стандарт)
- ✅ Шифрование на стороне клиента, ключи не загружаются
- ✅ Рассмотреть подход с двойным алгоритмом (SM4 + AES)
- 💡 Создавать резервные копии ключей; потеря ключей означает невозможность восстановления данных
Рекомендации по лучшим практикам
- В критически важных секторах, таких как финансы, государственное управление и телекоммуникации в Китае, SM4 должен иметь приоритет для соответствия требованиям Закона о криптографии.
- Если приложение нуждается в интернационализации, рекомендуется поддерживать как SM4, так и AES, выбирая алгоритмы в зависимости от региона или пользователя.
- Производственные среды должны использовать режим CBC, избегать режима ECB и использовать разный случайный IV для каждого шифрования.
- При использовании национальных криптографических алгоритмов следует выбирать криптографические модули, сертифицированные Государственным управлением криптографии, для обеспечения соответствия и безопасности.
- SM4 обычно используется вместе с SM2 (обмен ключами, подпись) и SM3 (проверка целостности) для построения полной национальной криптографической системы безопасности.
- Управление ключами имеет решающее значение; используйте национальный криптографический KMS для управления ключами, регулярно ротируйте ключи и ограничивайте права доступа.