|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
07.05.2009, 14:57 | #1 |
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
Различие MD5 Delphi и MD5 PHP
Проблема в том что хэш дельфийских модулей не совпадает с тем что возвращает PHP
1)26A5B64D95447269BED200360DB0F0B2 2)628c781eae084f1aa24f895f476d8072 3)55d98fb1516429b4956ee1ad12b79e98 Это хэш одной строки. Первые 2 это от тех модулей что я цеплял к Delphi, третий создан php. А получать надо результат идентичный PHP. Все это нужно для онлайн генератора ключей. Delphi 2009. |
07.05.2009, 20:05 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
НЕ ПОДТВЕРЖДАЮ!!!!
я не знаю, что и как Вы там мутите. Но, например, для строчки '1234567890' (без кавычек) MD5 получается: Код:
Обе подпрограммы выдают ИДЕНТИЧНЫЙ MD5 hash (проверял в Delphi5) и из umd5(1).zip Edit1.Text := MD5('1234567890'); и из umd5(2).zip Edit2.Text := MD5DigestToStr( MD5String('1234567890')); p.s. umd5(2).zip выдаёт в верхнем регистре... |
07.05.2009, 20:26 | #3 |
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
1.
Код:
2. PHP код:
http://incyberteam.ru/md5.php?s=100 |
07.05.2009, 22:40 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
у меня всё в порядке
проект и EXEшник прикладываю... подозреваю, что это Дельфи2009 выпендрюкивается (насколько мне известно, 2009 версия первая с полной поддержкой unicode. возможно, это и приводит к искажениям ;( ) на другую версию (младше) Дельфи есть возможность перейти? Добавлено Ваш exe-шник работал действительно так, как Вы описали. перекомпилировал ваш проект (только меня смутило вот в program Project1; вот это Код:
и, если у Вас umd5 лежит в вышележащем каталоге, то значит всё нормально... После перекомпиляции всё заработало... Последний раз редактировалось Serge_Bliznykov; 07.05.2009 в 22:57. |
07.05.2009, 22:49 | #5 | ||
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
Цитата:
Цитата:
Последний раз редактировалось Viteef; 07.05.2009 в 22:53. |
||
07.05.2009, 23:01 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
так.
вопрос — у Вас это сильно "горит" ? срочность большая? Я бы мог на праздники поковыряться... и второе. я практически уверен, что в Delphi 2009 либо есть директива компилятора, которая указывает считать строки String обычными, не unicode, либо банально заменить string на AnsiString (надеюсь, что AnsiString не стала уникодной!) удачи. |
07.05.2009, 23:14 | #7 |
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
Именно так string -> AnsiString.
Прикрепляю поправленный umd5.pas для Delphi 2009 |
07.05.2009, 23:20 | #8 |
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
да, umd5.pas у меня на уровень выше
|
07.05.2009, 23:59 | #9 |
stopfake.org
Участник клуба
Регистрация: 03.05.2007
Сообщений: 1,927
|
Тем не менее один из модулей подклюкивал на длинных строках
|
08.05.2009, 00:29 | #10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Причём, глючит тот, который umd5(1).zip (MD5(...) ) второй, который MD5DigestToStr( MD5String(..) работает корректно! |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
подсчет md5 | Noor | Компоненты Delphi | 8 | 18.11.2009 08:22 |
MD5 в Delphi | LeoN | Общие вопросы Delphi | 7 | 23.09.2009 12:25 |
Считаем md5 сумму файла | DeniCPP | Общие вопросы C/C++ | 6 | 04.04.2009 23:31 |
Убить процесс, md5, архивация | Igoressicus | Помощь студентам | 1 | 16.01.2009 10:37 |
Ипользование md5 шифрования в C? | fis | Общие вопросы C/C++ | 1 | 06.06.2008 16:58 |