Общие | |
---|---|
Дизайнеры | , Арьен К. Ленстра, |
Впервые опубликовано | 2005 |
Преемники | VSH * |
Подробности | |
Размеры дайджеста | 1024 бита и больше |
В криптографии, Very Smooth Hash (VSH) - это доказуемо безопасная криптографическая хеш-функция, изобретенная в 2005 году Скотт Контини, Арьен Ленстра и Рон Стейнфельд. Доказуемая безопасность означает, что обнаружение столкновений так же сложно, как и некоторые известные сложные математические задачи. В отличие от других хэшей , устойчивых к коллизиям,, которые можно доказать, VSH эффективен и применим на практике. Асимптотически, для этого требуется только одно умножение на log (n) битов сообщения и используется арифметика типа RSA. Следовательно, VSH может быть полезен во встроенных средах, где пространство кода ограничено.
Были предложены два основных варианта VSH. Во-первых, найти столкновение так же сложно, как найти нетривиальный модульный квадратный корень из очень гладкого числа по модулю n. Другой использует простой модуль p (без люка ), и его доказательство безопасности опирается на трудность нахождения дискретных логарифмов очень гладких чисел по модулю p. Обе версии имеют одинаковую эффективность.
VSH не подходит в качестве замены случайного оракула, но может использоваться для построения доказуемо безопасной случайной хэш-функции с лазейкой. Эта функция может заменить функцию лазейки, используемую в схеме подписи Крамера – Шупа, поддерживая ее доказуемую безопасность, при этом сокращая время проверки примерно на 50%.
Весь криптографический хэш широко используемые в настоящее время функции не основаны на сложных математических задачах. Те несколько функций, которые построены на сложных математических задачах, называются доказуемой безопасностью. Обнаружение столкновений, как известно, так же сложно, как решение сложной математической задачи. Для базовой версии функции Very Smooth Hash эта сложная проблема состоит в том, чтобы найти модульные квадратные корни (VSSR) из определенных специальных чисел (VSN). Предполагается, что это так же сложно, как разложение целых чисел.
Для фиксированных констант c и n целое число m является очень гладким числом (VSN), если наибольший простой множитель m не превосходит (войти n).
Целое число b является очень гладким квадратичным остатком по модулю n, если наибольшее простое число в факторизации b s не больше (log n) и существует такое целое число x, что . Целое число x называется модульным квадратным корнем числа b.
Нас интересуют только нетривиальные квадратные корни, у которых x ≥ n. Если x < n, the root can be easily computed using algorithms from fields of характеристики 0, например вещественное поле. Следовательно, они не подходят для криптографических примитивов.
Очень гладкое число Нетривиальный модульный квадратный корень (VSSR) - это следующая проблема: пусть n будет произведением двух неизвестных простых чисел примерно одинакового размера и пусть . Пусть - последовательность простых чисел. VSSR представляет собой следующую задачу: для данного n найти такое, что и по меньшей мере одно из e 0,..., e k является нечетным.
Предположение VSSR состоит в том, что не существует вероятностного полинома (в ) временной алгоритм, который решает VSSR с неотрицательной вероятностью. Это считается бесполезным допущением для практики, потому что оно не говорит о том, для какого размера модулей VSSR является вычислительно трудным. Вместо используется расчетное предположение VSSR . В нем говорится, что решение VSSR считается столь же сложным, как факторизация трудно-факторного битного модуля, где несколько меньше, чем размер .
Пусть параметры фиксируются следующим образом: и .
Тогда - очень гладкое число по отношению к этим параметрам, потому что больше, чем все простые множители . С другой стороны, не является VSN при и .
Целое число - очень гладкий квадратичный остаток по модулю , потому что это очень гладкое число (под ) и у нас есть такое, что (мод ). Это тривиальный модульный квадратный корень, потому что и поэтому модуль не участвует при возведении в квадрат.
Целое число также является очень гладким квадратичным остатком по модулю . Все простые множители меньше 7,37, а модульный квадратный корень равен , поскольку (мод ). Таким образом, это нетривиальный корень. Задача VSSR состоит в том, чтобы найти с учетом и . И мы предполагаем, что это вычислительно так же сложно, как разложение на множители .
Пусть быть большим составным RSA, и пусть последовательность простые числа. Пусть , длина блока, будет наибольшим целым числом такое, что
Функция на шаге 4 называется функцией сжатия.
Было предложено несколько улучшений, ускорений и более эффективных вариантов VSH. Ни один из них не меняет основную концепцию функции. Эти улучшения называются:
VSH-DL - вариант VSH с дискретным логарифмом, не имеющий люк, его безопасность зависит от сложности нахождения дискретного логарифма по простому модулю p.
Дискретный логарифм очень гладких чисел (VSDL) - это проблема, при которой, учитывая очень гладкое число, мы хотим найти его дискретный логарифм по модулю некоторого числа n.
Как и в предыдущем разделе, для
Предположение VSDL состоит в том, что не существует вероятностного полинома (в
Сильная устойчивость к столкновениям - единственное свойство, подтвержденное для VSH. Это не подразумевает устойчивость к прообразу или другие важные свойства хэш-функции, и авторы заявляют, что «VSH не следует использовать для моделирования случайных оракулов » и не может быть заменен на конструкции, которые зависят от них (Подписи RSA, некоторые MAC ). VSH не следует рассматривать как хеш-функцию общего назначения, как это обычно понимается в проектировании безопасности.
VSH является мультипликативным: пусть x, y и z - три битовые строки одинаковой длины, где z состоит только из нулевых битов, а строки удовлетворяют x AND y = z. Легко видеть, что H (z) H (x OR y) ≡ H (x) H (y) (mod n). В результате VSH уступает классической атаке компромисса времени и памяти, которая применяется к мультипликативным и аддитивным хешам.
Этот факт можно использовать для построения атаки по прообразу VSH с помощью
VSH производит очень длинный хэш (обычно 1024 бита). Нет никаких указаний на то, что усеченный хеш VSH обеспечивает безопасность, соизмеримую с длиной хеша.
Существует атака частичного столкновения на VSH, усеченная до младших l битов.
Сложность этой атаки против VSH:
Это, вероятно, исключает применимость VSH в схемах цифровой подписи которые производят подписи короче, чем результат хеширования VSH, например схемы подписей с эллиптической кривой.