Решил написать на Си++ хеш-функцию MD5. В нете нашел много исходников, но все они написаны тяжело для моего понимания, поэтому решил писать сам с помощью статьи с википедии(http://ru.wikipedia.org/wiki/MD5). Вроде бы даже написал, но она не работает, т.е. работает, но не правильно(выдает не верный хеш-код). Вот тут мое творение. Кому не лень, гляньте, что не так.
Смысл попытки написать самостоятельно по алгоритму? Ну, во-первых, может пойму больше, а во-втоорых, в исодниках, которые я нашел в нете, все сильно тяжело написано, а хотелось бы проще.
"Математику хорошо знаеш?" - не плохо, у меня первый курс. У нас только мат. ан. были и аналит. геометрия. Дискретной не было. "C++ builder, этим все сказано" не суть, не в среде дело.
To sergg: Не обращайте внимания на него. В этот раз мохзе решил снова проявить себя со стороны недохэкера и сказать очередную бестактность без единой капли смысла.
По мне Win API (Crypt API) будет побыстрее любого алгоритма, написаного руками. Проверял около 10 разных модулей и т.к., все уступают в скорости. Если хочется разобрать сам алгоритм, тогда другой вопрос, хотя для начала посоветовал бы CRC - он по проще в понимании и реализации. P.s. от простого к сложному
JnK, возможно по поводу Crypt API ты прав, но у меня не так уж и много времени. + начал разбирать MD5 - хочеться уже понять его да и написать(принцип у меня такой: раз начал - доделать). Посмотрите пожалуйста заполнение моего массива Х(Step3 в коде), мне кажется, что ошибка именно там.
http://www.insidepro.com/doc/005r.shtml http://www.insidepro.com/doc/md5.pdf https://forum.antichat.ru/showpost.php?p=2083849&postcount=98 в общем загляни сюда http://www.insidepro.com/doc/ "Дополнительные статьи"
Gar|k, спасибо за ссылки. .pdf у меня такая есть, я читал ее, собственно по ней и по алгоритму с википедии и пытался написать. Про PasswordsPro не сильно помогло. Это https://forum.antichat.ru/showpost.php?p=2083849&postcount=98 тоже не сильно, т.к. там используются функции, макросы из <wincrypt.h>, а я хочу сам реализовать все.
Блин, парни...всем вам спасибо, хотя бы за то, что пробуете помочь(а то немного таких нашел)... ZagZag, я ассемблер вообще не знаю.