Тип работы:
Предмет:
Язык работы:


РЕАЛИЗАЦИЯ И ИССЛЕДОВАНИЕ ПАРАЛЛЕЛЬНОГО АЛГОРИТМА ПОИСКА КОЛЛИЗИЙ В АЛГОРИТМЕ ХЕШИРОВАНИЯ MD5

Работа №43410

Тип работы

Дипломные работы, ВКР

Предмет

информационная безопасность

Объем работы58
Год сдачи2018
Стоимость6300 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
365
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 4
ГЛАВА 1. КРИПТОГРАФИЧЕСКАЯ ХЕШ-ФУНКЦИЯ 6
1.1 Основные определения и понятия 6
1.2 Требования к криптографическим хеш-функциям 7
1.3 Степень сложности 8
1.4 Структура Меркла — Дамгарда 9
1.5 Семейство хеш-функций MD и SHA 10
1.5.1 Семейство хеш-функций Message Digest (MD) 10
1.5.2 Семейство хеш-функций SHA 12
ГЛАВА 2. АЛГОРИТМ ХЕШИРОВАНИЯ MD5 15
2.1 История и криптоанализ хеш-функции MD5 15
2.2 Безопасность хеш-функции MD5 17
2.3 Атака коллизией на хеш-функцию MD5 17
2.4 Алгоритм хеширования MD5 18
2.5 Радужные таблицы и MD5 22
ГЛАВА 3. КОЛЛИЗИИ 27
3.1 Классическая атака коллизией 27
3.2 Атака коллизией с заданным префиксом 28
3.3 Примеры коллизий 30
3.4 Создание двух различных исполняемых файлов с одинаковым хешем 32
ГЛАВА 4. ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ 35
4.1 Используемое оборудование для вычислений 35
4.2 Основы параллельных вычислений 36
4.3 Технологии параллельного программирования 38
ГЛАВА 5. АЛГОРИТМ МАРКА СТИВЕНСА ПОИСКА ОДНОБЛОЧНОЙ КОЛЛИЗИИ 40
5.1 Оригинальный алгоритм Марка Стивенса поиска одноблочной коллизии 40
5.2 Параллельный алгоритм Марка Стивенса поиска одноблочной коллизии 42
5.3 Реализация параллельной версии алгоритма Марка Стивенса поиска одноблочной коллизии 44
5.4 Анализ скорости работы реализаций, результаты 45
ЗАКЛЮЧЕНИЕ 47
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 48
ОПРЕДЕЛЕНИЯ, ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ 54
ПРИЛОЖЕНИЕ 1 56
ПРИЛОЖЕНИЕ 2


Хеш-функции играют огромную роль в криптографии и часто используются в ЭЦП, аутентификации, обеспечении целостности данных. В силу того, что криптографические хеш-функции используются для проверки неизменности исходной информации, то даже потенциальная возможность нахождения коллизии в хеш-функции может обернуться компрометацией. Допустим, если есть возможность найти коллизию хеш-функции, использующуюся в электронной подписи, то это порождает возможность подделывания её. Поэтому мерой криптостойкости хеш-функции считается трудоемкость нахождения коллизии и прообраза. Чтобы достаточно хорошо разобраться в данном вопросе пришлось изучить большое количество материалов, значительная часть которых написана на английском языке, а именно работы: Марка Стивенса, Кузнецова А.А, Властимила Клима, Тао Се (Tao Xie) и Фэн Дэнго (Feng Dengguo) и работы других исследователей.
Целью работы является реализация параллельного алгоритма Марка Стивенса поиска коллизий в алгоритме хеширования MD5 на основе последовательного и сравнение скорости их работы.
Объектом исследования является алгоритм хеширования MD5.
Предметами исследования являются различные уязвимости данной хеш- функции, ранее реализованные атаки, найденные коллизии, алгоритмы, использованные для атак на хеш-функцию.
Для достижения указанной цели в дипломной работе решаются следующие исследовательские задачи:
1. Изучение материалов, связанных с созданием и использованием хеш- функций.
2. Изучение материалов, связанных с историей и криптоанализом хеш- функций.
3. Изучение уязвимостей и атак в алгоритме хеширования MD5.
4. Попытки реализации атак на алгоритм хеширования MD5.
5. Изучение алгоритма генерации одноблочных коллизий в MD5 Марка Стивенса.
6. Изучение и анализ способов распараллеливания данной атаки.
7. Создание параллельной реализации алгоритма Марка Стивенса.
Актуальность работы заключается в том, что MD5 до сих пор может где- то использоваться в качестве криптографической хеш-функции, а это большой риск. Кроме того, криптоанализ старых хеш-функций, улучшения атак на них, могут повлиять на создание новых хеш-функций. Ведь при создании новой устойчивой хеш-функции необходимо учитывать все возможные атаки на неё. Без коллизий хеш-функция обойтись не может в связи с принципом Дирихле, а устойчивая хеш-функция должна свести их вероятность нахождения к минимуму.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В процессе дипломной работы был реализован параллельный алгоритм Марка Стивенса поиска коллизий в MD5. Самая большая сложность, возникшая при работе, это нехватка ресурсов, а именно: ограниченное время и нехватка вычислительных мощностей. Другими проблемами стали нестабильность некоторых систем, а так же отключение электроэнергии (отсутствие источников бесперебойного питания). Из имеющегося оборудования ноутбук меньше всего подходил под мои цели: он быстро нагревался, снижалась его производительность из-за механизма дросселирования тактов (throttling). Был проведен анализ скорости работы при различных конфигурациях компьютера с использованием разных реализаций программ. Так же были успешно произведены атаки на хеш-функцию MD5.
Благодаря данной выпускной квалификационной работе, я получил много знаний и навыков, как в плане изучения криптостойкости алгоритмов хеширования, так и в плане использования технологий параллельного программирования. Появилось желание работать дальше в данном направлении, изучая криптографические хеш-функции, использующиеся сегодня, к примеру, SHA-2.
Я считаю, что нужно серьезно относиться к рекомендациям использования новых криптографических хеш-функций взамен старых. Так же уделять достаточное внимание публикациям о нахождении новых уязвимостях и удачных атаках. С каждым годом производительность вычислительных устройств растет, а значит, должны обновляться и криптографические хеш-функции, криптостойкость которых должна расти.



1. Jonathan, Katz. Introduction to Modem Cryptography / Katz Jonathan, Lindell Yehuda. // Chapman and Hall/CRC, 2014. - 603 c.
2. Shafi, Goldwasser. Lecture Notes on Cryptography / Goldwasser Shafi, Bellare Mihir. // Massachusetts Institute of Technology, 2008. - 289 c.
3. Rivest R. The MD5 Message-Digest Algorithm [Электронный ресурс]/ R. Rivest // MIT Laboratory for Computer Science and RSA Data Security, Inc., 1992. - URL: http://tools.ietf.org/html/rfc1321 — Загл. с экрана. (дата обращения 04.06.2018).
4. Bert den Boer, Antoon Bosselaers. Collisions for the Compression Function of MD5 [Электронный ресурс]/ Bert den Boer, Antoon Bosselaers // Advances in Cryptology - EUROCRYPT'93. - Berlin ect.: Springer-Vergal, 1994. (Lecture Notes in Computer Science; 765). - URL: https://www.esat.kuleuven.be/cosic/publications/article-143.pdf — Загл. с экрана. (дата обращения 04.06.2018).
5. Dobbertin H.. Cryptanalysis of md5 compress [Электронный ресурс] / H. Dobbertin // German Information Security Agency. May 2 1996. - URL: ftp: //ftp .iks-j ena. de/mitarb/lutz/crypt/hash/ dobbertin.ps — Загл. с экрана. (дата обращения 04.06.2018).
6. X Wang, D Feng, X Lai, H Yu. Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD [Электронный ресурс] / X Wang, D Feng, X Lai, H Yu // CRYPTO 2004, Ciyptology ePrint Archive, Report 2004. - URL: https://eprint.iacr.org/2004/199.pdf — Загл. с экрана. (дата обращения 04.06.2018).
7. Lenstra A., Xiaoyun Wang, Benne de Weger. Colliding X.509 Certificates [Электронный ресурс] / A. Lenstra, Xiaoyun Wang, Benne de Weger // Cryptology ePrint Archive Report 2005/067, 1 March 2005, revised 6 May 2005. Retrieved 27 July 2008.- URL: https: //eprint. iacr.org/2005/067. pdf— Загл. с экрана. (дата обращения 04.06.2018).
8. Klima V. Finding MD5 Collisions - a Toy For a Notebook [Электронный ресурс] / V. Klima // Cryptology ePrint Archive Report 2005/075, 5 March 2005, revised 8 March 2005. Retrieved 27 July 2008. - URL: https://eprint.iacr.org/2005/075.pdf— Загл. с экрана. (дата обращения
04.06.2018) .
9. Klima V. Tunnels in Hash Functions: MD5 Collisions Within a Minute [Электронный ресурс] / V. Klima // Cryptology ePrint Archive Report 2006/105, 18 March 2006, revised 17 April 2006. Retrieved 27 July 2008. - URL: https://eprint.iacr.org/2006/105.pdf — Загл. с экрана. (дата обращения 04.06.2018).
10. Tao Xie, Dengguo Feng. Construct MD5 Collisions Using Just A Single Block Of Message [Электронный ресурс] / Tao Xie, Dengguo Feng // Retrieved 28 July 2011. - URL: https://eprint.iacr.org/2010/643.pdf — Загл. с экрана. (дата обращения 04.06.2018).
11.Stevens M. Single-block collision attack on MD5 [Электронный ресурс] / M. Stevens // Cryptology ePrint Archive, Report 2012/040. - URL: https: //eprint.iacr.org/2012/040. pdf — Загл. с экрана. (дата обращения
04.06.2018) .
12. Turner S., Chen L. Updated Security Considerations for the MD5 Message- Digest and the HMAC-MD5 Algorithms [Электронный ресурс] / S.
Turner, L. Chen // IECA, L. Chen, NIST, 2011. - URL: https://tools.ietf.org/html/rfc6151— Загл. с экрана. (дата обращения
04.06.2018) .
13.Stevens M. On collisions for MD5 [Электронный ресурс] / M. Stevens // Master's Thesis, 2007. - URL: https: //marc-stevens .nl/research/papers/MTh Marc Stevens - On Collisions for MD5.pdf Загл. с экрана. (дата обращения 04.06.2018).
14.Stevens M., Lenstra A., Benne de Weger. Chosen-prefix collisions for MD5 and applications [Электронный ресурс] / M. Stevens, A. Lenstra, Benne de Weger // International Journal of Applied Cryptography, Vol. 2, No. 4,
2012, pp. 322-359. - URL: https://marc-
stevens.nl/research/papers/IJACT 12-StLdW.pdf Загл. с экрана. (дата обращения 04.06.2018).
15. Daum M., Lucks S. Hash Collisions (The Poisoned Message Attack) [Электронный ресурс] / M. Daum, S. Lucks // Eurocrypt 2005 rump session. - URL:
https: //web.archive.org/web/20100327141611/http: //th. informatik.uni- mannheim.de/people/lucks/HashCollisions/ Загл. с экрана. (дата обращения 04.06.2018).
16. Gebhardt M., Illies G., Schindler W. A Note on the Practical Value of Single Hash Collisions for Special File Formats [Электронный ресурс] / M. Gebhardt, G. Illies, W. Schindler // Bundesamt fur Sicherheit in der Informationstechnik (BSI). - URL:
https://pdfs.semanticscholar.org/f124/959267e1bc7b5b568de244a5a4f1276d d74a.pdf Загл. с экрана. (дата обращения 04.06.2018).
17.Sotirov A., Stevens M., Appelbaum J., Lenstra A., Molnar D., Dag Arne Osvik, Benne de Weger. MD5 Considered Harmful Today. Creating a rogue CA certificate [Электронный ресурс] / A. Sotirov, M. Stevens, J. Appelbaum, A. Lenstra, D. Molnar, Dag Arne Osvik, Benne de Weger // 30 December 2008. - URL: http: //www.win.tue. nl/hashclash/ro gue-ca/ Загл. с экрана. (дата обращения 04.06.2018).
18. Poisonous MD5 - Wolves Among the Sheep. Silent Signal Techblog [Электронный ресурс] - URL:
https://blog.silentsignal.eu/2015/06/10/poisonous-md5-wolves-among-the- sheep/ Загл. с экрана. (дата обращения 04.06.2018).
19. Dobbertin H. The Status of MD5 After a Recent Attack [Электронный ресурс] /H. Dobbertin // RSA Laboratories CryptoBytes, Summer 1996. - URL: ftp://ftp.arnes.si/packages/crypto-
tools/rsa.com/crvptobvtes/crypto2n2 .pdf.gz Загл. с экрана. (дата обращения 04.06.2018).
20.Schneier B. More MD5 Collisions [Электронный ресурс] / B. Schneier // Schneier on Security, June 10, 2005. - URL:
https://www.schneier.com/blog/archives/2005/06/more md5 collis.html Загл. с экрана. (дата обращения 04.06.2018).
21. [Python-Dev] hashlib — faster md5/sha, adds sha256/512 support [Электронный ресурс] // Retrieved 9 August 2010. - URL:
https: //mail.python. org/pipermail/python-dev/2005-December/058850.html (дата обращения 04.06.2018).
22. Researchers Use PlayStation Cluster to Forge a Web Skeleton Key. [Электронный ресурс] Wired // 31 December 2008. Retrieved 31 December 2008. - URL: https://www.wired.com/2008/12/berlin/ Загл. с экрана. (дата обращения 04.06.2018).
23. Callan T. This morning's MD5 attack - resolved [Электронный ресурс] / T. Callan // Symantec Official Blog, 31 December 2008. - URL: https://www.svmantec.com/connect/blogs/mornings-md5-attack-resolved Загл. с экрана. (дата обращения 04.06.2018).
24.Schneier B. Forging SSL Certificates [Электронный ресурс] /B. Schneier // Schneier on Security, 31 December 2008. - URL:
https://www.schneier.com/blog/archives/2008/12/forging ssl cer.html Загл. с экрана. (дата обращения 04.06.2018).
25.Flame malware collision attack explained [Электронный ресурс] //
Security Research & Defense - URL:
https://blogs.technet.microsoft.com/srd/2012/06/06/flame-malware- collision-attack-explained/ (дата обращения 04.06.2018).
26.Oechslin P. Making a Faster Cryptanalytic Time-Memory Trade-Off. Advances in Cryptology [Электронный ресурс] / P. Oechslin //CRYPTO 2003. LNCS. 2729. p. 617. - URL:
https: //lasec.epfl .ch/pub/lasec/doc/Oech03 .pdf Загл. с экрана. (дата обращения 04.06.2018).
27. Hellman M. E. A cryptanalytic time-memory trade-off [Электронный ресурс] / M. E. Hellman // IEEE Transactions on Information Theory, 1980.
- URL: https://ee.stanford.edu/~hellman/publications/36.pdf Загл. с экрана. (дата обращения 04.06.2018).
28. MD5 Decrypter [Электронный ресурс] - URL:
https: //www. md5 online. org/md5 -decrypt. html (дата обращения
04.06.2018) .
29. Free Password Hash Cracker [Электронный ресурс] - URL: https://crackstation.net/ (дата обращения 04.06.2018).
30. Сервис cmd5.ru [Электронный ресурс] - URL: https://cmd5.ru/ (дата обращения 04.06.2018).
31.Stevens M. CWI Cryptanalist Discovers New Cryptographic Attack Variant in Flame Spy Malware [Электронный ресурс] / M. Stevens, Centrum Wiskunde & Informatica // 7 June 2012, Retrieved 9 June 2012. - URL: https://www.cwi.nl/news/2012/cwi-cryptanalist-discovers-new- cryptographic-attack-variant-in-flame-spy-malware Загл. с экрана. (дата обращения 04.06.2018).
32. Microsoft releases Security Advisory 2718704 [Электронный ресурс] / Microsoft // 3 June 2012. Retrieved 4 June 2012. - URL: https://blogs.technet.microsoft.com/msrc/2012/06/03/microsoft-releases- security-advisory-2718704/ (дата обращения 04.06.2018).
33. Кузнецов, А. А. Параллельный алгоритм подбора одноблочной MD5- коллизии [Электронный ресурс] / А. А. Кузнецов. // Программные системы: теория и приложения. - 2015. - 6:3. - С. 61. - URL: http://psta.psiras.ru/read/psta2015 3 61-72.pdf Загл. с экрана. (дата обращения 04.06.2018).
34. McHugh N. Three way MD5 collision [Электронный ресурс] /N. McHuch //- URL: https: //natmchugh. blogspot.com/2014/11 /three-way-md5- collision.html Загл. с экрана. (дата обращения 04.06.2018).
35.Selinger P. MD5 Collision Demo [Электронный ресурс] / P. Selinger // - URL: https: //www. mscs.dal.ca/~selinger/md5collision/ Загл. с экрана.
(дата обращения 04.06.2018). (дата обращения 04.06.2018).
36.Stevens M. Project HashClash [Электронный ресурс] / Stevens M. // - URL: https: //marc-stevens. nl/p/hashclash/ Загл. с экрана. (дата обращения
04.06.2018) .
37. Disabling the Watchdog Timer While Testing Display Drivers [Электронный ресурс] - URL: https: //docs.microsoft. com/en-us/windows- hardware/drivers/display/disabling-the-watchdog-timer-while-testing- display-drivers (дата обращения 04.06.2018).
38. CUDA Toolkit Documentation v9.2.88 [Электронный ресурс] - URL: https: //docs. nvidia. com/cuda/ (дата обращения 04.06.2018).


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ