OSS-GOST-Crypto/gost-yescrypt: различия между версиями
Vt (обсуждение | вклад) мНет описания правки |
Vt (обсуждение | вклад) мНет описания правки |
||
Строка 1: | Строка 1: | ||
= Хеширование паролей на ГОСТ = | = Хеширование паролей на ГОСТ = | ||
В 2013-2015 был проведен международный конкурс Password Hashing Competition (PHC) <http://password-hashing.net/> в котором были особо отмечены несколько алгоритмов хеширования паролей, среди которых ''yescrypt'' <https://www.openwall.com/yescrypt/>. '''yescrypt''' разработан как усовершенствование популярного алгоритма '''scrypt''' (Colin Percival 2009, RFC 7914), который в свою очередь использует PBKDF2 (RSA, RFC 2898, RFC 8018) для одной итерации. (Описание ''yescrypt'': http://password-hashing.net/submissions/specs/yescrypt-v2.pdf). Безопасность ''yescrypt'' обеспечивается свойствами ''SHA-256'' и ''HMAC''. Криптографические свойства '''gost-yescrypt''' обеспечиваются применением алгоритма вычисления кода аутентификации сообщения ''HMAC_GOSTR3411_2012_256'' поверх результата работы ''yescrypt'', по формуле: | В 2013-2015 был проведен международный конкурс Password Hashing Competition (PHC) <http://password-hashing.net/> в котором были особо отмечены несколько алгоритмов хеширования паролей, среди которых ''yescrypt'' <https://www.openwall.com/yescrypt/>. '''yescrypt''' разработан как усовершенствование популярного алгоритма '''scrypt''' (Colin Percival 2009, RFC 7914), который в свою очередь использует '''PBKDF2''' (RSA, RFC 2898, RFC 8018) для одной итерации. (Описание ''yescrypt'': http://password-hashing.net/submissions/specs/yescrypt-v2.pdf). Безопасность ''yescrypt'' обеспечивается свойствами ''SHA-256'' и ''HMAC''. Криптографические свойства '''gost-yescrypt''' обеспечиваются применением алгоритма вычисления кода аутентификации сообщения ''HMAC_GOSTR3411_2012_256'' поверх результата работы ''yescrypt'', по формуле: | ||
[[Файл:Gost-yescrypt.png|центр|HMAC_{sb256}(HMAC_{sb256}(sb256(P),S),yescrypt(P,S))]] | [[Файл:Gost-yescrypt.png|центр|HMAC_{sb256}(HMAC_{sb256}(sb256(P),S),yescrypt(P,S))]] |
Версия от 03:35, 6 октября 2018
Хеширование паролей на ГОСТ
В 2013-2015 был проведен международный конкурс Password Hashing Competition (PHC) <http://password-hashing.net/> в котором были особо отмечены несколько алгоритмов хеширования паролей, среди которых yescrypt <https://www.openwall.com/yescrypt/>. yescrypt разработан как усовершенствование популярного алгоритма scrypt (Colin Percival 2009, RFC 7914), который в свою очередь использует PBKDF2 (RSA, RFC 2898, RFC 8018) для одной итерации. (Описание yescrypt: http://password-hashing.net/submissions/specs/yescrypt-v2.pdf). Безопасность yescrypt обеспечивается свойствами SHA-256 и HMAC. Криптографические свойства gost-yescrypt обеспечиваются применением алгоритма вычисления кода аутентификации сообщения HMAC_GOSTR3411_2012_256 поверх результата работы yescrypt, по формуле:
где HMACsb256 это функция HMAC_GOSTR3411_2012_256, sb256, это функция streebog256, т.е. функция Streebog с длиной хэш-кода 256-бит, P пароль, S соль. Функция HMAC_GOSTR3411_2012_256 определена рекомендациях по стандартизации Р 50.1.113─2016 и RFC 7836, функция Streebog определена в ГОСТ Р 34.11─2012 и RFC 7091.