~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ B84C54F73B7ECC4D530145E21CD6B255__1716460560 ✰
Заголовок документа оригинал.:
✰ SipHash - Wikipedia ✰
Заголовок документа перевод.:
✰ СипХэш — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/SipHash ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/b8/55/b84c54f73b7ecc4d530145e21cd6b255.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/b8/55/b84c54f73b7ecc4d530145e21cd6b255__translat.html ✰
Дата и время сохранения документа:
✰ 22.06.2024 10:55:18 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 23 May 2024, at 13:36 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

СипХэш — Википедия Jump to content

СипХэш

Из Википедии, бесплатной энциклопедии

SipHash — это на основе add-rotate-xor (ARX), семейство псевдослучайных функций созданное Жаном-Филиппом Омассоном и Дэниелом Дж. Бернштейном в 2012 году. [1] : 165  [2] в ответ на серию атак типа «хеш-флуд» типа «отказ в обслуживании» (HashDoS) в конце 2011 года. [3]

SipHash спроектирован как некриптографическая хеш-функция . Хотя его можно использовать для обеспечения безопасности, SipHash фундаментально отличается от криптографических хеш-функций, таких как алгоритмы безопасного хеширования (SHA), тем, что он подходит только в качестве кода аутентификации сообщения : хэш-функции с ключом , такой как хеш-код аутентификации сообщения ( HMAC ). То есть SHA спроектирован таким образом, что злоумышленнику сложно найти два сообщения X и Y , такие что SHA( X ) = SHA( Y ), даже если кто угодно может вычислить SHA( X ). Вместо этого SipHash гарантирует, что, увидев X i и SipHash( X i , k ), злоумышленник, не знающий ключа k, не сможет найти (любую информацию о) k или SipHash( Y , k ) для любого сообщения Y ∉ { X i } чего они раньше не видели.

Обзор [ править ]

SipHash вычисляет 64-битный код аутентификации сообщения на основе сообщения переменной длины и 128-битного секретного ключа. Он был разработан, чтобы быть эффективным даже для коротких входных данных, с производительностью, сравнимой с некриптографическими хеш-функциями, такими как CityHash . [4] : 496  [2] это можно использовать для предотвращения атак типа «отказ в обслуживании» на хеш-таблицы («хеш-флудинг»), [5] или для аутентификации сетевых пакетов . Позже был добавлен вариант, который дает 128-битный результат. [6]

Хеш-функция без ключа, такая как SHA, устойчива к коллизиям только в том случае, если используется весь вывод. Если он используется для генерации небольшого результата, например индекса в хэш-таблице практического размера, то ни один алгоритм не может предотвратить коллизии; злоумышленнику нужно сделать столько попыток, сколько существует возможных результатов.

Например, предположим, что сетевой сервер спроектирован так, чтобы иметь возможность одновременно обрабатывать до миллиона запросов. Он отслеживает входящие запросы в хеш-таблице с двумя миллионами записей, используя хеш-функцию для сопоставления идентификационной информации каждого запроса с одной из двух миллионов возможных записей таблицы. Злоумышленнику, знающему хеш-функцию, достаточно ввести в нее произвольные входные данные; один из двух миллионов будет иметь определенное значение хеш-функции. Если злоумышленник теперь отправит на сервер несколько сотен запросов, выбранных с одинаковым значением хеш-функции, это приведет к большому количеству коллизий хеш-функций, замедляя (или, возможно, останавливая) сервер с эффектом, аналогичным потоку пакетов. многомиллионному Запросы. [7]

Используя ключ, неизвестный злоумышленнику, хэш-функция с ключом, такая как SipHash, предотвращает атаки такого рода. Хотя можно добавить ключ к неключевой хэш-функции ( HMAC — популярный метод), SipHash гораздо более эффективен.

Функции в семействе SipHash обозначаются как SipHash- c - d , где c — количество раундов на блок сообщения, а d — количество раундов финализации. Рекомендуемые параметры: SipHash-2-4 для лучшей производительности и SipHash-4-8 для консервативной безопасности. В нескольких языках используется Siphash-1-3 для обеспечения производительности с риском пока неизвестных DoS-атак. [8]

Эталонная реализация была выпущена как общедоступное программное обеспечение под лицензией CC0 . [6]

Использование [ править ]

SipHash используется в хэш-таблиц реализациях различного программного обеспечения: [9]

Следующие программы используют SipHash другими способами:

Реализации

См. также [ править ]

Ссылки [ править ]

  1. ^ Добрауниг, Кристоф; Мендель, Флориан; Шлеффер, Мартин (29 ноября 2014 г.). «Дифференциальный криптоанализ SipHash». Избранные области криптографии -- SAC 2014 . Конспекты лекций по информатике. Том. 8781. стр. 165–182. дои : 10.1007/978-3-319-13051-4_10 . ISBN  978-3-319-13050-7 . Проверено 28 февраля 2018 г.
  2. ^ Перейти обратно: а б Жан-Филипп Омассон и Дэниел Дж. Бернштейн (18 сентября 2012 г.). «SipHash: быстрый PRF с коротким вводом» . Архив электронной печати по криптологии .
  3. ^ Леннон, Майк (28 декабря 2011 г.). «Уязвимость хеш-таблицы делает возможным широкомасштабные DDoS-атаки» . Неделя Безопасности .
  4. ^ Итак, Вон; Нарайанан, Ашок; Оран, Дэвид; Стапп, Марк (2013). «Именованная сеть передачи данных на маршрутизаторе». Материалы конференции ACM SIGCOMM 2013 по SIGCOMM . стр. 495–496. дои : 10.1145/2486001.2491699 . ISBN  9781450320566 . S2CID   1457918 . Проверено 28 февраля 2018 г. Недавно предложенный SipHash [1] предлагает хороший баланс, поскольку он обеспечивает устойчивость к коллизиям и производительность, сравнимую с некриптохешами.
  5. ^ Омассон, Жан-Филипп; Бернштейн, Дэниел Дж .; Босслет, Мартин (8 ноября 2012 г.). Перезагрузка DoS-затопления хэшем: атаки и защита (PDF) . Форум по безопасности приложений – Западная Швейцария , 2012 г. Архивировано из оригинала (PDF) 13 сентября 2013 г.
  6. ^ Перейти обратно: а б «SipHash: быстрый PRF с коротким вводом» . 01.08.2016. Архивировано из оригинала 02 февраля 2017 г. Проверено 21 января 2017 г. Интеллектуальная собственность: нам неизвестны какие-либо патенты или заявки на патенты, имеющие отношение к SipHash, и мы не планируем подавать на них заявки. Справочный код SipHash выпущен под лицензией CC0, лицензией, аналогичной общедоступной.
  7. ^ Кросби, Скотт А.; Уоллах, Дэн С. (6 августа 2003 г.). Отказ в обслуживании посредством атак, усложняющих алгоритм . Симпозиум по безопасности Usenix . Вашингтон
  8. ^ Омассон, Жан-Филипп (veorq) (12 ноября 2015 г.). «Комментарий: измените Siphash, чтобы использовать один из более быстрых вариантов алгоритма (Siphash13, Highwayhash) · Проблема № 29754 · ржавчина-lang/rust» . Гитхаб . Проверено 28 февраля 2024 г. Дизайнер SipHash здесь, не изменил своего мнения о SipHash-1-3 :-) [...] Есть «отличитель» на 4 раундах [...] или, проще говоря, статистическая погрешность, которая проявляется при конкретный шаблон различия во входных данных 4-раундовой последовательности. Но вы не можете внедрить этот шаблон в SipHash-1-3, потому что вы не контролируете все состояние. И даже если бы вы могли внедрить этот шаблон, предвзятостью все равно нельзя было бы воспользоваться.
  9. ^ Омассон, Жан-Филипп; Бернштейн, Дэниел Дж. (01 августа 2016 г.). «SipHash: быстрый PRF с коротким вводом, пользователи» . Архивировано из оригинала 02 февраля 2017 г. Проверено 21 января 2017 г.
  10. ^ Вагг, Род (28 февраля 2019 г.). «сборка: включить SipHash v8 для создания начального хэша» . Нод.js. ​ Получено 21 октября 2021 г. - через GitHub .
  11. ^ Го, Ян (9 января 2019 г.). «При желании используйте полусифаш для целочисленного хеширования» . В8 . Проверено 21 октября 2021 г.
  12. ^ «Библиотека OCaml: Hashtbl» . Проверено 17 февраля 2024 г.
  13. ^ «Безопасность Perl – атаки, усложняющие алгоритм» . Perldoc-браузер . 16 мая 2016 г. Проверено 21 октября 2021 г.
  14. ^ Хаймс, Кристиан (27 сентября 2013 г.). «PEP 456 — Безопасный и взаимозаменяемый алгоритм хеширования» . Проверено 21 января 2017 г.
  15. ^ «Переход на SipHash-1-3 #73596» .
  16. ^ Маквей, Саманта (16 июля 2018 г.). «Реализовать SipHash, использовать в качестве нашей функции хеширования с 64-битными хеш-значениями» . МоарВМ . Получено 16 июля 2018 г. - через GitHub .
  17. ^ https://bugs.ruby-lang.org/issues/13017
  18. ^ Макартур, Шон (30 июня 2016 г.). «std: используйте siphash-1-3 для HashMap» . Ржавчина . Получено 21 января 2017 г. - через GitHub .
  19. ^ Пёттеринг, Леннарт (22 декабря 2013 г.). «shared: переключить нашу реализацию хэш-таблицы на SipHash» . системад . Получено 21 января 2017 г. - через freedesktop.org .
  20. ^ https://github.com/openbsd/src/blob/master/sys/crypto/siphash.h
  21. ^ https://svnweb.freebsd.org/base/head/sys/crypto/siphash/
  22. ^ https://github.com/WireGuard/wg-dynamic/commit/360b9c8c8b4c4364b755dc0935f05e4ba4429cb0
  23. ^ «Компактное блочное реле» . Гитхаб . Проверено 27 сентября 2018 г.
  24. ^ bslh_siphashalgorithm.h
  25. ^ https://github.com/ipfs/bbloom/blob/73e3f896a4f8bbed8589df6ff5c28ebfbd728e31/sipHash.go#L15

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: B84C54F73B7ECC4D530145E21CD6B255__1716460560
URL1:https://en.wikipedia.org/wiki/SipHash
Заголовок, (Title) документа по адресу, URL1:
SipHash - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)