Криптографический хэш-алгоритм SM3 — это криптографическая хэш-функция, которая широко используется в таких областях, как сетевая безопасность и проверка целостности данных. SM 3 — это китайский стандарт коммерческого криптографического хэш-алгоритма, объявленный Государственным управлением криптографии Китая в 2010 году. Подходит для цифровых подписей и проверки в коммерческих криптографических приложениях.
SM3 находится в SHA-256 Алгоритм, усовершенствованный на основе SHA-256 довольно. СМ3 и MD5 Итерационный процесс аналогичен, также используется MD(Merkle-Damgard)структура。группировка длина сообщений 512 бит, длина значения дайджеста равна 256 Кусочек.
Основной принцип хеш-функции: хэш-функция преобразует входное сообщение любой длины в выходное фиксированной длины, причем изменение выходного значения должно резко меняться из-за небольших изменений входного значения.
SM 3 Идеи разработки алгоритма: алгоритм SM 3 использует структуру блочного шифрования.,Используйте перестановки, нелинейные функции и модульные операции для достижения путаницы и распыления данных.,чтобы обеспечитьданныеиз Безопасностьсекс。
SM 3 Процесс шифрования алгоритма: включая Заполнение сообщений, начальная векторная установка, группировка сообщений, итеративное шифрование и другие шаги и, наконец, генерируют хэш-значение как результат шифрования данных. СМ 3 Процесс расчета показан на рисунке ниже:
SM3 израсширение Шаги сообщения начинаются с 512 биты данных, сгруппированные как входные. Поэтому нам нужно заполнить длину данных до 512 кратное битам. данные Правила заполнения MD5 То же, конкретные шаги заключаются в следующем:
Заполнение сообщений означает данные, как показано ниже:
Заполнение Нужно нажать после сообщения 512 bit Группировать, то есть m′=B0B1⋅⋅⋅Bn−1m'=B^{0}B^1···B^{n-1}m′=B0B1⋅⋅⋅Bn−1 ,в n=l+k+65512n=\frac{l+k+65}{512}n=512l+k+65。
В дальнейшем расчет будет итеративным, а метод итерации следующий:
// CF() — функция сжатия, V(0) — 256-битное исходное. значениеIV, B(i) — заполненная группировка сообщений
for i=0 to n-1
V(i+1)=CF(V(i), B(i)))
Если после группировки осталась только одна группа, то длина равна 512бит, то есть n=1n=1n=1, m´=B0m´=B_0m´=B0, V1=CF(V0,B0)V_1=CF(V_0 ,B_0)V1 =CF(V0,B0), полученное V0V_0V0 является окончательным хеш-значением.
Если групп nnn, выполняется nnn итераций, а окончательным результатом VnV_nVn является окончательное значение хеш-функции.
SM 3 итеративное Шаг сжатия не использует группировку данных напрямую для операций, а выполняется путем группировки. сообщений BiB^iBi произведено 132 слово сообщения.
расширение сообщения должны быть группировкой сообщения расширяются в 132 слова W0,W1,,,W67,W0′,W1′,,,W63′W_0,W_1,,,W_{67},W'_0,W'_1,,,W'_{63}W0,W1 ,,,W67,W0′,W1′,,,W63′, то как быть с группировкой сообщений Шерстяная ткань?
в итоге получил 132 слова сообщения, перед 68 слова сообщения образуют последовательность WjW_jWj, после 64 слова сообщения образуют последовательность Wj′W'_jWj′ ,в индекс jjj Начни считать с 0.
SM3 итерационный процесс и MD5 Тоже похоже Структура МД (Меркле-Дамгарда). но СМ3 и MD5 Разница в том, что SM3 использоватьрасширение сообщение получает слово сообщения для выполнения операций.
Как рассчитывается сжатие?
Основная и самая сложная часть всего алгоритма — это функция сжатия. Функция сжатия объединяет эти восемь переменных. 64 тот же раундизвычислить,водин раундизвычислить过程如下图所示:
Соедините последнюю итерацию A, B, C, D, E, F, G, HA, B, C, D, E, F, G, HA, B, C, D, E, F, G, H, That то есть ABCDEFGH=VnABCDEFGH=V_nABCDEFGH=Vn — это окончательное значение хеш-функции.
Приложения в сетевой безопасности: Метод SM 3 широко используется при проверке целостности и аутентификации личности при передаче данных в сети, обеспечивая надежность сетевой связи.
Применение в криптографии: Алгоритм SM 3 может использоваться в протоколах криптографии, цифровых сертификатах, обмене ключами и других сценариях, обеспечивая надежную безопасность данных.
Заявление в ЭЦП: алгоритм СМ 3 способен генерировать хэш-значение цифровой подписи,Используется для проверки целостности и подлинности документов.,Обеспечивает базовую поддержку электронной коммерции и электронных контрактов.
SM 3 Как разновидность эффективной хэш-функции алгоритм имеет важное положение и перспективы применения в области сетевой безопасности. Поскольку технологии продолжают развиваться, SM 3 алгоритм будет продолжать совершенствоваться и вносить больший вклад в защиту конфиденциальности данных.