Разница между 1.70
и текущей версией
КриптографическаяХэшФункцияWhirlpool.
@@ -1,4 +1,4 @@
--Криптогафическая хэш-функция Whirlpool
+= Криптогафическая хэш-функция Whirlpool
В данной статье описана общая структура криптографической хеш-функции Whirlpool и основные процедуры для хеширования данных .
Приведены результаты криптоанализа Whirlpool, позволяющие сделать вывод о дальнейшем развитии хеш-функций.
@@ -6,8 +6,10 @@
-1. Введение
'''Хеширование''' : преобразование исходного информационного массива произвольной длины в битовую строку фиксированной длины.
+
'''Криптографическая хеш-функция''' : хеш-функция, являющаяся криптографически стойкой, то есть удовлетворяющая ряду требований, специфичных для криптографических приложений.
Функции хеширования могут применяться в качестве криптографических генераторов псевдослучайных чисел для создания нескольких ключей на основе одного секретного ключа. Криптографические хеш-функции используют для защиты информации от несанкционированного доступа. Также хеш-функции применяют в базах данных для хранения паролей и оганизации хеш-таблиц.
+
'''Whirlpool''' [1] : криптографическая хеш-функция, разработанная Винсентом Риджменом (Vincent Rijmen) и Пауло Баретто (Paolo Barreto). Впервые опубликована в ноябре 2000 года. Осуществляет хеширование входного сообщения с длиной до $$2 sup 256$$ бит. Одобрена европейской организацией NESSIE (New European Schemes for Signature, Integrity and Encryption, Новые европейские схемы подписей, целостности и шифрования).
Основой для хеш-функций может быть блочный шифр с симметричными ключами. Для Whirlpool функцией сжатия является блочный шифр AES.
@@ -27,7 +29,6 @@
Whirlpool использует структуру Меркля-Дамгарда[2] и одностороннюю функцию сжатия Миагучи-Пренеля[2] (рис. 1) для формирования 512-блока зашифрованого текста W.
После дополнения входное сообщение разбивается на 512-битовые блоки $$M sub 1$$, $$M sub 2$$, $$M sub t$$, которые используются для генерации последовательности хэш-значений $$H sub 1$$, $$H sub 2$$, $$H sub t$$ ($$H sub 0$$ - строка из 512 «0» бит). Для вычисления $$H sub i$$, $$W$$ шифрует $$M sub i$$, используя в качестве ключа $$H sub {i-1}$$, и выполняет $$XOR$$ между $$H sub {i-1}$$ и $$M sub i$$. Значением хэш-функции является $$H sub k$$.
-https://photos-6.dropbox.com/t/2/AAB8eiMYMFfPo7xwEdmg7RsJ7zs1Hm2H9UEApyguqd_Fpw/12/544189381/jpeg/32x32/1/_/1/2/Miyaguchi-Preneel.bmp/EJeZwq0EGBsgAigC/lwPYLSNEDaukNIfCVh6fKVChmqZqkTsLwj-bj8Mq-w0?size=1024x768&size_mode=3
--2.3. Параметры алгоритма
Входным потоком для алгоритма Whirlpool является последовательность произвольной длины, выходным потоком является последовательность 512 бит. Ключ хеширования для алгоритма Whirlpool - последовательность из 512 бит. Алгоритм состоит из 10 раундов. На каждом раунде используется функция раунда.
@@ -67,13 +68,12 @@
Процедура ShiftColumns (рис. 3) обеспечивает сдвиг столбцов матрицы состояния на различную величину. Столбец j сдвигается на j байт (Столбец 0 не изменяется, столбец 7 сдвигается на 7 байт.) В результате в матрице состояния записаны новые 8 байт.
-hhttps://photos-3.dropbox.com/t/2/AADaWUW0YBym0mXFHdIWjaLuMPwaa5YngFEPVIWQLeiexQ/12/544189381/jpeg/32x32/1/_/1/2/ShiftRows_Whirlpool.bmp/EJeZwq0EGBsgAigC/0-BKSJoMGc_TOlbQi-3vXo1x9WAghmisr0owchKB71U?size=1024x768&size_mode=3
+
---SubBytes
Процедура SubBytes (рис. 4) обеспечивает нелинейную замену байт матрицы состояния с помощью таблицы (S-Box). Байт представляют в виде двух шестнадцатеричных цифр. Левая цифра определяет строку, а правая- столбец таблицы подстановки. Две шестнадцатеричные цифры на пересечении строки и столбца определяют новый байт. Например, два байта, 5A16 и 5B16, которые отличаются только одним битом, преобразованы к $$5B sub 16$$ и $$88 sub 16$$, которые отличаются пятью битами. Таблица S-Box приведена в приложениии 1
-https://photos-1.dropbox.com/t/2/AAChT9qgRpW78gMweTkSTpdgcXo1g5-ifKiGN51OfPkrTw/12/544189381/jpeg/32x32/1/_/1/2/SubBytes_Whirlpool.bmp/EJeZwq0EGBsgAigC/ZYU9eHqegEtSomzBzWq5X6NQWPhbvENUj0Ka94qpXPw?size=1024x768&size_mode=3
Таблица может быть вычислена алгебраически, используя поле $$GF(2 sup 4 )$$ с неприводимым полиномом $$(x sup 4 + x + 1)$$. $$E$$ - миниблоки вычисляют степень, равную шестнадцатеричному значению входа; $$R$$ - миниблок использует псевдослучайный генератор чисел.
@@ -100,15 +100,12 @@
Процедура MixRows - матричное преобразование, где байты интерпретируются как полиномы с коэффициентами в $$GF(2 sup 8 )$$. Каждая строка матрицы состояния перемножается с фиксированным многочленом с(x) в $$GF(2 sup 8 )$$. Для Whirlpool этим многочленом является
$$ X sup 8 + X sup 4 + X sup 3 + X sup 2 + 1$$.
-https://photos-3.dropbox.com/t/2/AAAxF6X9Uu72KIF0VA9_OLKHUib6xgfGuWpPWgSdK3P0tg/12/544189381/jpeg/32x32/1/_/1/2/MixRows_Whirlpool.bmp/EJeZwq0EGBsgAigC/2a1TpTwCvZwu39t8GtKKgfSgCBRA_aI-J6n-U-52utI?size=1024x768&size_mode=3
---2.4.4. AddRoundKey
В преобразовании AddRoundKey байт матрицы состояния складывается в поле $$GF(2 sup 8 )$$ с соответствующим байтом матрицы состояний ключей раунда. Результат - новый байт в новой матрице состояний.
-https://photos-4.dropbox.com/t/2/AAB2td-YvO_np1T_Sh5Nf5AkRCdBm_ciomU2XVAAAxocBg/12/544189381/jpeg/32x32/1/_/1/2/AddRoundKey_Whirlpool.bmp/EJeZwq0EGBsgAigC/8aN558ir1HYvWsKv6q--XNXZakbo4DxljJ5MmHAx1g8?size=1024x768&size_mode=3
-
---2.4.5. Константы раунда
Каждая константа раунда $$RC sup r$$ является матрицей 8 x 8, где только первая строка имеет значения, отличные от нуля. Остальная часть входов содержит все нули. Значения для первой строки в каждой матрице констант могут быть вычислены, используя преобразование SubBytes. Другими словами, $$RC sup 1$$ использует первые восемь входов в таблице преобразования SubBytes; $$RC sup 2$$ использует вторые восемь входов, и т. д.
@@ -140,3 +137,6 @@
1 Schneier Bruce, Ferguson Niels, "Practical cryptography"- Inc, Wiley Publishing, pp 432 ,2003.
1 Taizo Shirai, Kyoji Shibutani. "On the diffusion matrix employed in the Whirlpool hashing function",- NESSIE public report, 2003
1 Florian Mendel, Christian Rechberger, Martin Schlaffer, Soren S. Thomsen. "The Rebound Attack: Cryptanalysis of Reduced Whirlpool and Grostl"- Unpublished manuscript, 2009.
+
+
+#КатегорияКриптография