Interested Article - SHA-3 (конкурс)

« SHA-3 » — конкурс Национального института стандартов и технологий (NIST) на новую криптографическую хеш-функцию , предназначенную для дополнения и замены SHA-1 и SHA-2 . Проводился в течение в 2007—2012 годов, в результате был избран алгоритм для реализации SHA-3 .

Официально объявлен в журнале Federal Register 2 ноября 2007 года . Подобный конкурсный процесс алгоритма был использован ранее для шифрования Advanced Encryption Standard (« AES ») . 2 октября 2012 года объявлены результаты: хеш-алгоритмом под наименованием SHA-3 стал алгоритм Keccak .

Цели конкурса

Изначально организаторы конкурса предполагали заменить старые хеш-функции победителем, так как в 2006 году возникло предположение, что в будущем надежность хеш-функции SHA-2 значительно снизится из-за роста мощности и производительности устройств, а также из-за появления новых методов криптоанализа . Но к 2013 году так и не было предложено ни одной достаточно серьёзной атаки на SHA-2 , и, по мнению Брюса Шнайера , переход на SHA-3 не являлся необходимым .

Процесс

Подача заявок была завершена 31 октября 2008 года . Список кандидатов, прошедших в первый раунд, был опубликован 9 декабря 2008 года . В конце февраля 2009 года NIST провели конференцию, где представили заявленные в конкурс хеш-функции и обсудили критерии прохождения во второй раунд . Список из 14 кандидатов, прошедших в раунд 2, был опубликован 24 июля 2009 года . Ещё одна конференция состоялась 23 и 24 августа 2010 года в University of California, Santa Barbara , где были рассмотрены кандидаты, прошедшие во второй раунд . О последнем туре кандидатов было объявлено 10 декабря 2010 года . И только 2 октября 2012 года NIST объявил победителя — Keccak , его создатели: , Joan Daemen , из STMicroelectronics и из NXP .

В отчётах NIST описывались критерии оценки конкурсантов; основными критериями оценки были безопасность, производительность и алгоритм хеш-функции .

Безопасность

Рассматривая безопасность алгоритмов-конкурсантов, NIST оценивал применимость хеш-функции, её устойчивость к атакам, соответствие общим для хеш-функций требованиям, а также соответствие требованиям для участников, использующих HMAC , псевдослучайные функции или рандомизированное хеширование. Этот критерий учитывался в первую очередь.

Производительность

Производительность — второй по важности критерий оценки после безопасности. При его проверке смотрели на скорость работы и требования к памяти. Сравнение происходило следующим образом:

  • В тесте ECRYPT Benchmarking of All Submitted Hashes (сокращённо eBASH) производились замеры скорости вычисления для большого числа 32- и 64-битных платформ.
  • Тест eXternal Benchmarking eXtension (сокращённо XBX) предоставил результаты для портативных устройств.
  • Дополнительно проверялась производительность и возможность оптимизации на многоядерных архитектурах. Тесты производились на архитектурах Cell Broadband Engine (сокращённо Cell ) и NVIDIA Graphics Processing Units (сокращённо GPU ) .

Также оценивалась скорость работы на конечных устройствах: ПК , мобильных устройствах ( точки доступа , роутеры , портативные медиаплееры , мобильные телефоны и терминалы оплаты ) и виртуальных машинах .

Алгоритм и характеристики реализации

Основными параметрами оценки алгоритма были гибкость и простота дизайна. Гибкость включает в себя возможность использования хеш-функции на большом числе платформ и возможности расширения набора инструкций процессора и распараллеливания (для увеличения производительности). Простота дизайна оценивалась по сложности анализа и понимания алгоритма, таким образом простота дизайна дает больше уверенности в оценке безопасности алгоритма.

Участники

NIST выбрали 51 хеш-функцию в первый тур . 14 из них прошло во второй раунд , из которых было выбрано 5 финалистов. Неполный список участников представлен ниже.

Победитель

Победитель был объявлен 2 октября 2012 года , им стал алгоритм Keccak . Он стал самым производительным на аппаратной реализации среди финалистов, а также в нём был использован нераспространённый метод шифрования — функция губки . Таким образом, атаки, рассчитанные на SHA-2 , не будут работать. Ещё одним существенным преимуществом SHA-3 является возможность его реализации на миниатюрных встраиваемых устройствах (например, USB-флеш-накопитель ).

Финалисты

NIST выбрал пять кандидатов, прошедших в третий (и последний) тур :

Организаторами были опубликованы некоторые критерии, на которых основывался выбор финалистов :

  • Производительность: «Некоторые алгоритмы были уязвимы из-за очень больших требований к производительности.»
  • Безопасность: «Мы предпочли быть консервативными в безопасности и в некоторых случаях не выбрали алгоритмы с исключительной производительностью, потому что они менее безопасны в значительной степени.»
  • Анализ: «NIST устранено несколько алгоритмов из-за неполной проверки или незрелости проекта.»
  • Разнообразие: «Хеш-функции, прошедшие в финал, основаны на различных режимах работы, в том числе и на принципе криптографической губки . С разными внутренними структурами, в том числе на основе AES , Bit slicing и на переменных XOR с дополнением.»

Также был выпущен отчёт, поясняющий оценку алгоритмов .

Хеш-функции, не прошедшие в финал

Следующие хеш-функции попали во второй раунд, но не прошли в финал. Также было при объявлении финалистов: «Ни один из этих кандидатов не был явно взломан». В скобках указана причина, по которой хеш-функции не стала финалистом.

  • Blue Midnight Wish (возможны проблемы с безопасностью)
  • CubeHash () (проблемы с производительностью)
  • ECHO ( France Telecom ) (проблемы с производительностью)
  • Fugue ( IBM ) (возможны проблемы с безопасностью)
  • Hamsi (высокие требования к ПЗУ , возможны проблемы с безопасностью)
  • Luffa (возможны проблемы с безопасностью)
  • Shabal (возможны проблемы с безопасностью)
  • SHAvite-3 (возможны проблемы с безопасностью)
  • SIMD (проблемы с производительностью, возможны проблемы с безопасностью)

Хеш-функции, не прошедшие во второй раунд

Следующие представители хеш-функций были приняты для первого раунда, но не прошли во второй. У них не было существенных криптографических уязвимостей. Большинство из них имеют слабые места в дизайне компонентов или у них были замечены проблемы с производительностью.

Заявленные хеш-функции с существенными уязвимостями

Не прошедшие в первый раунд хеш-функции имели существенные криптографические уязвимости:

Отказавшиеся конкурсанты

На протяжении первого раунда некоторые конкурсанты сами отказались от участия в конкурсе, потому что были взломаны на веб-сайте первого раунда конкурса :

  • Abacus
  • Boole
  • DCH
  • Khichidi-1
  • MeshHash
  • SHAMATA
  • StreamHash
  • Tangle
  • WaMM
  • Waterfall

Отклонённые участники

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

  • HASH 2X
  • Maraca
  • NKS 2D
  • Ponic
  • ZK-Crypt

Классификация кандидатов

В таблице перечислены известные участники конкурса с указанием основных атрибутов хеш-функций и найденных атак. В ней используются следующие аббревиатуры:

Примечания

  1. (неопр.) (PDF). Federal Register . Government Printing Office (2 ноября 2007). Дата обращения: 6 ноября 2008. 31 марта 2011 года.
  2. (неопр.) . Computer Security Resource Center . National Institute of Standards and Technology (2 ноября 2007). Дата обращения: 6 ноября 2008. 5 мая 2010 года.
  3. (неопр.) . NIST (2 октября 2012). Дата обращения: 2 октября 2012. 30 апреля 2017 года.
  4. (неопр.) . Дата обращения: 9 апреля 2015. 15 апреля 2015 года.
  5. (неопр.) (9 декабря 2008). Дата обращения: 10 декабря 2008. 27 мая 2009 года.
  6. National Institute of Standards and Technology. (неопр.) (9 декабря 2008). Дата обращения: 23 декабря 2008. 12 ноября 2013 года.
  7. (неопр.) . National Institute for Standards and Technology (24 июля 2009). Дата обращения: 24 июля 2009. 10 апреля 2012 года.
  8. National Institute of Standards and Technology. (неопр.) (30 июня 2010). Дата обращения: 12 ноября 2013. 5 марта 2010 года.
  9. (неопр.) . NIST (10 декабря 2008). Дата обращения: 15 сентября 2009. 4 июня 2009 года.
  10. (неопр.) . Дата обращения: 12 ноября 2013. 14 марта 2011 года.
  11. (неопр.) . Дата обращения: 10 декабря 2013. 24 января 2014 года.
  12. (неопр.) . Дата обращения: 12 ноября 2013. 29 декабря 2009 года.
  13. (неопр.) . Дата обращения: 3 октября 2017. 29 января 2018 года.
  14. (неопр.) . Дата обращения: 10 декабря 2013. 13 декабря 2013 года.
  15. (неопр.) . Дата обращения: 28 декабря 2016. 30 апреля 2017 года.
  16. от 18 декабря 2010 на Wayback Machine Retrieved 9 Nov 2011
  17. (неопр.) . National Institute for Standards and Technology (10 декабря 2010). Дата обращения: 12 ноября 2013. 10 апреля 2012 года.
  18. (неопр.) . Дата обращения: 12 ноября 2013. 29 декабря 2009 года.
  19. от 14 марта 2011 на Wayback Machine (PDF). Retrieved 2 March 2011
  20. Svein Johan Knapskog; Danilo Gligoroski, Vlastimil Klima, Mohamed El-Hadedy, Jørn Amundsen, Stig Frode Mjølsnes.: (неопр.) (4 ноября 2008). Дата обращения: 10 ноября 2008. 12 ноября 2013 года.
  21. Søren S. Thomsen. (неопр.) (PDF) (2009). Дата обращения: 19 мая 2009. Архивировано из 2 сентября 2009 года.
  22. Henri Gilbert; Ryad Benadjila, Olivier Billet, Gilles Macario-Rat, Thomas Peyrin, Matt Robshaw, Yannick Seurin.: (неопр.) (PDF) (29 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  23. Özgül Kücük. (неопр.) (PDF) (31 октября 2008). Дата обращения: 11 декабря 2008. 11 апреля 2012 года.
  24. Dai Watanabe; Christophe De Canniere, Hisayoshi Sato.: (неопр.) (PDF) (31 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  25. Jean-François Misarsky; Emmanuel Bresson, Anne Canteaut, Benoît Chevallier-Mames, Christophe Clavier, Thomas Fuhr, Aline Gouget, Thomas Icart, Jean-François Misarsky, Marìa Naya-Plasencia, Pascal Paillier, Thomas Pornin, Jean-René Reinhard, Céline Thuillet, Marion Videau.: (неопр.) (PDF) (28 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  26. Eli Biham; Orr Dunkelman.: (неопр.) (PDF). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  27. Jongin Lim; Donghoon Chang, Seokhie Hong, Changheon Kang, Jinkeon Kang, Jongsung Kim, Changhoon Lee, Jesang Lee, Jongtae Lee, Sangjin Lee, Yuseop Lee, Jaechul Sung.: (неопр.) (PDF) (29 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  28. Philip Hawkes; Cameron McDonald.: (неопр.) (30 октября 2008). Дата обращения: 11 ноября 2008. 12 ноября 2013 года.
  29. Jacques Patarin; Louis Goubin, Mickael Ivascot, William Jalby, Olivier Ly, Valerie Nachef, Joana Treger, Emmanuel Volte.: (неопр.) . Дата обращения: 14 ноября 2008. Архивировано из 29 января 2009 года.
  30. Hirotaka Yoshida; Shoichi Hirose, Hidenori Kuwakado.: (неопр.) (PDF) (30 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  31. Kerem Varıcı; Onur Özen and Çelebi Kocair.: (неопр.) . Дата обращения: 12 октября 2010. Архивировано из 11 июня 2011 года.
  32. Daniel Penazzi; Miguel Montes.: (неопр.) . Дата обращения: 29 ноября 2008. (недоступная ссылка)
  33. (неопр.) (PDF) (31 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  34. (неопр.) (PDF) (2009). Дата обращения: 10 июля 2009. 10 мая 2012 года.
  35. Colin Bradbury. (неопр.) (PDF) (25 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  36. Craig Newbold. (неопр.) (PDF). Дата обращения: 23 декабря 2008. 12 ноября 2013 года.
  37. Florian Mendel. (неопр.) (PDF). Дата обращения: 23 декабря 2008. 12 ноября 2013 года.
  38. Dmitry Khovratovich; Alex Biryukov, Ivica Nikolić.: (неопр.) (PDF) (30 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  39. Danilo Gligoroski. (неопр.) (12 декабря 2008). Дата обращения: 21 декабря 2008. 12 ноября 2013 года.
  40. Zijie Xu. (неопр.) (PDF). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  41. Vlastimil Klima. (неопр.) (14 декабря 2008). Дата обращения: 21 декабря 2008. 12 ноября 2013 года.
  42. Zijie Xu. (неопр.) (PDF). NIST. Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  43. Vlastimil Klima. (неопр.) (14 декабря 2008). Дата обращения: 21 декабря 2008. 12 ноября 2013 года.
  44. Danilo Gligoroski; Rune Steinsmo Ødegård, Marija Mihova, Svein Johan Knapskog, Ljupco Kocarev, Aleš Drápal.: (неопр.) (4 ноября 2008). Дата обращения: 10 ноября 2008. 12 ноября 2013 года.
  45. (неопр.) (2008). Дата обращения: 10 июля 2009. 12 ноября 2013 года.
  46. Sean O'Neil; Karsten Nohl, Luca Henzen.: (неопр.) (31 октября 2008). Дата обращения: 10 ноября 2008. 9 декабря 2008 года.
  47. Sebastiaan Indesteege. (неопр.) (6 ноября 2008). Дата обращения: 7 ноября 2008. Архивировано из 18 февраля 2009 года.
  48. Jason Worth Martin. (неопр.) (PDF) (21 октября 2008). Дата обращения: 8 ноября 2008. Архивировано из 12 июня 2010 года.
  49. (неопр.) (PDF). Дата обращения: 12 ноября 2013. 12 ноября 2013 года.
  50. Ivica Nikolić; Alex Biryukov, Dmitry Khovratovich.: (неопр.) (PDF). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  51. Mikhail Maslennikov. (неопр.) . Дата обращения: 8 ноября 2008. Архивировано из 2 мая 2009 года.
  52. (неопр.) (PDF). Дата обращения: 14 ноября 2008. (недоступная ссылка)
  53. Peter Maxwell. (неопр.) (PDF) (сентябрь 2008). Дата обращения: 9 ноября 2008. Архивировано из 12 ноября 2013 года.
  54. Peter Maxwell. (неопр.) (5 ноября 2008). Дата обращения: 6 ноября 2008. Архивировано из 9 ноября 2008 года.
  55. Michael Gorski; Ewan Fleischmann, Christian Forler.: (неопр.) (PDF) (28 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  56. Florian Mendel, Christian Rechberger, Martin Schläffer. (неопр.) (PDF) (2008). Дата обращения: 19 мая 2009. 12 ноября 2013 года.
  57. Michael Kounavis; Shay Gueron.: (неопр.) (3 ноября 2008). Дата обращения: 11 ноября 2008. 2 декабря 2013 года.
  58. Jean-Philippe Aumasson, Orr Dunkelman, Florian Mendel, Christian Rechberger, Søren S. Thomsen. (неопр.) (PDF) (2009). Дата обращения: 19 мая 2009. 12 ноября 2013 года.
  59. (неопр.) . Дата обращения: 12 ноября 2013. 4 июня 2009 года.
  60. Neil Sholer. (неопр.) (PDF) (29 октября 2008). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  61. Gregory G. Rose. (неопр.) (PDF). Дата обращения: 8 ноября 2008. 6 июля 2011 года.
  62. Gregory G. Rose. (неопр.) (PDF) (10 декабря 2008). Дата обращения: 23 декабря 2008. 13 июля 2009 года.
  63. David A. Wilson. (неопр.) (PDF) (23 октября 2008). Дата обращения: 23 ноября 2008. 12 ноября 2013 года.
  64. Natarajan Vijayarangan. (неопр.) (PDF). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  65. Björn Fay. (неопр.) (PDF). Дата обращения: 30 ноября 2008. 12 ноября 2013 года.
  66. Orhun Kara; Adem Atalay, Ferhat Karakoc and Cevat Manap.: (неопр.) . Дата обращения: 10 ноября 2008. Архивировано из 1 февраля 2009 года.
  67. Michal Trojnara. (неопр.) (PDF) (14 октября 2008). Дата обращения: 15 декабря 2008. 12 ноября 2013 года.
  68. Rafael Alvarez; Gary McGuire and Antonio Zamora.: (неопр.) (PDF). Дата обращения: 11 декабря 2008. 12 ноября 2013 года.
  69. John Washburn. (неопр.) (PDF). Дата обращения: 9 ноября 2008. Архивировано из 19 ноября 2008 года.
  70. (неопр.) (PDFauthor=John Washburn) (20 декабря 2008). Дата обращения: 23 декабря 2008. 13 июля 2009 года.
  71. Bob Hattersly. (неопр.) (PDF) (15 октября 2008). Дата обращения: 9 ноября 2008. 12 ноября 2013 года.
  72. Bob Hattersley. (неопр.) (PDF) (20 декабря 2008). Дата обращения: 23 декабря 2008. 13 июля 2009 года.
  73. Bruce Schneier. (неопр.) (19 ноября 2008). Дата обращения: 23 декабря 2008. 12 ноября 2013 года.
  74. Jason Lee. (неопр.) . TI BASIC Developer (6 ноября 2008). Дата обращения: 6 ноября 2008. 2 мая 2009 года.
  75. (неопр.) . TI BASIC Developer (6 ноября 2008). Дата обращения: 6 ноября 2008. 2 мая 2009 года.
  76. Robert J. Jenkins Jr. (неопр.) . Дата обращения: 15 декабря 2008. 22 декабря 2008 года.
  77. (неопр.) (PDF). Дата обращения: 15 декабря 2008. 12 ноября 2013 года.
  78. Geoffrey Park. (неопр.) (PDF). Дата обращения: 9 ноября 2008.
  79. Cristophe De Cannière. (неопр.) (13 ноября 2008). Дата обращения: 14 ноября 2008. 12 ноября 2013 года.
  80. Brandon Enright. (неопр.) (14 ноября 2008). Дата обращения: 14 ноября 2008. 12 ноября 2013 года.
  81. Peter Schmidt-Nielsen. (неопр.) (PDF). Дата обращения: 9 ноября 2008. 12 ноября 2013 года.
  82. María Naya-Plasencia. (неопр.) (PDF). Дата обращения: 30 ноября 2008. 22 июля 2011 года.
  83. (неопр.) . Дата обращения: 1 марта 2009. Архивировано из 9 февраля 2009 года.
  84. (неопр.) . Дата обращения: 12 ноября 2013. 10 мая 2012 года.

Ссылки

Same as SHA-3 (конкурс)