ША-3


SHA-3 ( Secure Hash Algorithm 3 ) — это последний член семейства стандартов Secure Hash Algorithm , выпущенный NIST 5 августа 2015 г. [4] [5] [6] . -3 внутренне отличается от MD5 - подобной структуры SHA - 1 и SHA-2 .

SHA-3 является подмножеством более широкого семейства криптографических примитивов Keccak ( / ˈ k ɛ æ k / или / ˈ k ɛ ɑː k / ), [7] [8] , разработанного Гвидо Бертони , Джоан Даемен , Микаэлем Петерсом, и Gilles Van Assche , основанный на RadioGatún . Авторы Keccak предложили дополнительные варианты использования функции, не (пока) не стандартизированные NIST, включая потоковый шифр , аутентифицированное шифрование .система, схема хеширования «дерево» для более быстрого хеширования на определенных архитектурах, [9] [10] и шифры AEAD Keyak и Ketje. [11] [12]

Keccak основан на новом подходе, называемом конструированием губки . [13] Конструкция губки основана на широкой случайной функции или случайной перестановке и позволяет вводить («поглощать» в терминологии губки) любое количество данных и выводить («сжимать») любое количество данных, действуя как псевдослучайная функция. относительно всех предыдущих входов. Это приводит к большой гибкости.

В настоящее время NIST не планирует отзывать SHA-2 или удалять его из пересмотренного стандарта Secure Hash. [ требуется обновление? ] Назначение SHA-3 состоит в том, что его можно при необходимости напрямую заменить SHA-2 в текущих приложениях, а также значительно повысить надежность общего набора инструментов алгоритма хеширования NIST. [14]

Создатели алгоритмов Keccak и функций SHA-3 предлагают использовать более быструю функцию KangarooTwelve с настроенными параметрами и новым режимом хеширования дерева без лишних накладных расходов для небольших размеров сообщений.

Алгоритм Keccak — работа Гвидо Бертони, Джоан Деймен (которая также совместно разработала шифр Rijndael с Винсентом Рийменом ), Майкла Питерса и Жиля Ван Аше . Он основан на более ранних разработках хеш-функций PANAMA и RadioGatún . PANAMA была разработана Daemen и Craig Clapp в 1998 году. RadioGatún, преемник PANAMA, был разработан Daemen, Peeters и Van Assche и был представлен на семинаре NIST Hash Workshop в 2006 году. [15] Исходный код эталонной реализации был посвящен в общественное достояние через отказ от CC0 . [16]


Иллюстрация конструкции губки
Конструкция губки для хеш-функций. P i являются входными данными, Z i являются хешированными выходными данными. Неиспользованная «емкость» c должна вдвое превышать желаемую устойчивость к коллизиям или атакам прообразов .