public inbox for gost@lists.cypherpunks.ru Atom feed
* [GOST] Хэш ГОСТ 34.11-94 @ 2016-11-15 11:46 Phil Kulin 2016-11-15 18:46 ` Sergey Matveev 0 siblings, 1 reply; 6+ messages in thread From: Phil Kulin @ 2016-11-15 11:46 UTC (permalink / raw) To: gost Я не криптоэнтузиаст, и у меня есть страные вопросы Использую gogost и pygost для хэшей ГОСТ 34.11-94 для создания DS записей для DNSSEC. И например в php функция hash('gost') выдаёт совпадающее с вышеперечисленными библиотеками значение, а hash('gost-crypto') - в обратном порядке. Поведение модуля перла Digest::GOST и Digest::GOST::CryptoPro идентичное. Да я знаю, что стандарт не устанавливает порядок вывода. Это можно как-то поправить не устраивая конфертацию результата? -- Non nobis Domine non nobis sed Nomini Tuo da gloriam Phil Kulin ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GOST] Хэш ГОСТ 34.11-94 2016-11-15 11:46 [GOST] Хэш ГОСТ 34.11-94 Phil Kulin @ 2016-11-15 18:46 ` Sergey Matveev 2016-11-15 19:01 ` Dmitry Eremin-Solenikov 2016-11-15 20:23 ` Phil Kulin 0 siblings, 2 replies; 6+ messages in thread From: Sergey Matveev @ 2016-11-15 18:46 UTC (permalink / raw) To: gost [-- Attachment #1: Type: text/plain, Size: 1963 bytes --] *** Phil Kulin <phil@dip•host> [2016-11-15 15:35]: >И например в php функция hash('gost') выдаёт совпадающее с >вышеперечисленными библиотеками значение, а hash('gost-crypto') - в >обратном порядке. Поведение модуля перла Digest::GOST и >Digest::GOST::CryptoPro идентичное. Да я знаю, что стандарт не >устанавливает порядок вывода. Это можно как-то поправить не устраивая >конфертацию результата? Стандарт не фиксирует endianness результата и поэтому нужен хоть какой-то аргумент в пользу выбора того или иного варианта. Для меня это то, что используется при хэшировании в X.509 структурах различных. Это в основном (если не все) стандарты (RFC) КриптоПро. Результаты 34.11-94 в GoGOST совместимы с X.509. Какой результат работы в PHP или Perl: нужно узнать почему они сделали именно так. На самом деле изначально я реализовал как-раз наоборот (относительно того, что есть сейчас), но раз с точки зрения стандарта всё равно: то я решил, как-раз таки, упростить задачу для большинства потенциальных потребителей и сделать как в X.509, чтобы не приходилось при его использовании "вертеть" хэш. -- Sergey Matveev (http://www.stargrave.org/) OpenPGP: CF60 E89A 5923 1E76 E263 6422 AE1A 8109 E498 57EF [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GOST] Хэш ГОСТ 34.11-94 2016-11-15 18:46 ` Sergey Matveev @ 2016-11-15 19:01 ` Dmitry Eremin-Solenikov 2016-11-15 19:17 ` Sergey Matveev 2016-11-15 20:23 ` Phil Kulin 1 sibling, 1 reply; 6+ messages in thread From: Dmitry Eremin-Solenikov @ 2016-11-15 19:01 UTC (permalink / raw) To: gost 15 ноября 2016 г., 21:46 пользователь Sergey Matveev <stargrave@stargrave•org> написал: > *** Phil Kulin <phil@dip•host> [2016-11-15 15:35]: >>И например в php функция hash('gost') выдаёт совпадающее с >>вышеперечисленными библиотеками значение, а hash('gost-crypto') - в >>обратном порядке. Поведение модуля перла Digest::GOST и >>Digest::GOST::CryptoPro идентичное. Да я знаю, что стандарт не >>устанавливает порядок вывода. Это можно как-то поправить не устраивая >>конфертацию результата? [skip] > На самом деле изначально я реализовал как-раз наоборот (относительно > того, что есть сейчас), но раз с точки зрения стандарта всё равно: то я > решил, как-раз таки, упростить задачу для большинства потенциальных > потребителей и сделать как в X.509, чтобы не приходилось при его > использовании "вертеть" хэш. Я в свое время думал над этим, в итоге реализовывал так, чтобы endianness подходил для результатов вычисления HMAC/PBKDF2/и т.п. При этом при формировании подписи действительно приходится "переворачивать" хэш. Для Стрибога проверочные примеры HMAC есть в рекомендации: http://tc26.ru/methods/recommendation/%D0%A2%D0%9A26%D0%90%D0%9B%D0%93.pdf Для GOST R 34.11-94 проверочных примеров HMAC нет, поэтому я добился, чтобы совпадали результаты PBKDF2 (http://tc26.ru/methods/containers_v1/Addition_to_PKCS5_v1_0.pdf), а потом уже фиксировал результаты HMAC. Например, с КриптоПрошным s-box получается следующий результат: Key: 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f Message: 0126bdb87800af214341456563780100 MAC: bad70b61c41095bc47e1141cfaed42726a5ceebd62ce75dbbb9ad76cda9f72f7 -- With best wishes Dmitry ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GOST] Хэш ГОСТ 34.11-94 2016-11-15 19:01 ` Dmitry Eremin-Solenikov @ 2016-11-15 19:17 ` Sergey Matveev 2016-11-15 19:22 ` Dmitry Eremin-Solenikov 0 siblings, 1 reply; 6+ messages in thread From: Sergey Matveev @ 2016-11-15 19:17 UTC (permalink / raw) To: gost [-- Attachment #1: Type: text/plain, Size: 1206 bytes --] *** Dmitry Eremin-Solenikov <dbaryshkov@gmail•com> [2016-11-15 22:05]: >Я в свое время думал над этим, в итоге реализовывал так, чтобы endianness >подходил для результатов вычисления HMAC/PBKDF2/и т.п. При этом при >формировании подписи действительно приходится "переворачивать" хэш. Хм, HMAC и PBKDF2 это хороший аргумент. Мне кажется он даже весомее моего выбора. Я тогда, как будет время, пожалуй реализую HMAC и PBKDF2 (добавлю тестовые векторы и тому прочее), и вместе с этим, видимо, "переверну" то что есть сейчас. То есть будет обратно несовместимая версия. Спасибо за такую наводку! Пока ГОСТ-ом с HMAC и PBKDF2 просто ещё не сталкивался на практике. -- Sergey Matveev (http://www.stargrave.org/) OpenPGP: CF60 E89A 5923 1E76 E263 6422 AE1A 8109 E498 57EF [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GOST] Хэш ГОСТ 34.11-94 2016-11-15 19:17 ` Sergey Matveev @ 2016-11-15 19:22 ` Dmitry Eremin-Solenikov 0 siblings, 0 replies; 6+ messages in thread From: Dmitry Eremin-Solenikov @ 2016-11-15 19:22 UTC (permalink / raw) To: gost 15 ноября 2016 г., 22:17 пользователь Sergey Matveev <stargrave@stargrave•org> написал: > *** Dmitry Eremin-Solenikov <dbaryshkov@gmail•com> [2016-11-15 22:05]: >>Я в свое время думал над этим, в итоге реализовывал так, чтобы endianness >>подходил для результатов вычисления HMAC/PBKDF2/и т.п. При этом при >>формировании подписи действительно приходится "переворачивать" хэш. > > Хм, HMAC и PBKDF2 это хороший аргумент. Мне кажется он даже весомее > моего выбора. Я тогда, как будет время, пожалуй реализую HMAC и PBKDF2 > (добавлю тестовые векторы и тому прочее), и вместе с этим, видимо, > "переверну" то что есть сейчас. То есть будет обратно несовместимая > версия. Спасибо за такую наводку! > > Пока ГОСТ-ом с HMAC и PBKDF2 просто ещё не сталкивался на практике. PBKDF2 понадобился для PKCS#12/PFX, а HMAC много где используется. В TLS, например. -- With best wishes Dmitry ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GOST] Хэш ГОСТ 34.11-94 2016-11-15 18:46 ` Sergey Matveev 2016-11-15 19:01 ` Dmitry Eremin-Solenikov @ 2016-11-15 20:23 ` Phil Kulin 1 sibling, 0 replies; 6+ messages in thread From: Phil Kulin @ 2016-11-15 20:23 UTC (permalink / raw) To: gost 2016-11-15 21:46 GMT+03:00 Sergey Matveev <stargrave@stargrave•org>: > *** Phil Kulin <phil@dip•host> [2016-11-15 15:35]: >>И например в php функция hash('gost') выдаёт совпадающее с >>вышеперечисленными библиотеками значение, а hash('gost-crypto') - в >>обратном порядке. Поведение модуля перла Digest::GOST и >>Digest::GOST::CryptoPro идентичное. Да я знаю, что стандарт не >>устанавливает порядок вывода. Это можно как-то поправить не устраивая >>конфертацию результата? [skip] > На самом деле изначально я реализовал как-раз наоборот (относительно > того, что есть сейчас), но раз с точки зрения стандарта всё равно: то я > решил, как-раз таки, упростить задачу для большинства потенциальных > потребителей и сделать как в X.509, чтобы не приходилось при его > использовании "вертеть" хэш. Ну собственно https://tools.ietf.org/html/rfc5933 - там хэш для DS-записи в обратном порядке. -- Non nobis Domine non nobis sed Nomini Tuo da gloriam Phil Kulin ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-11-15 20:23 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2016-11-15 11:46 [GOST] Хэш ГОСТ 34.11-94 Phil Kulin 2016-11-15 18:46 ` Sergey Matveev 2016-11-15 19:01 ` Dmitry Eremin-Solenikov 2016-11-15 19:17 ` Sergey Matveev 2016-11-15 19:22 ` Dmitry Eremin-Solenikov 2016-11-15 20:23 ` Phil Kulin