![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| textExpanser |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
Помогите в поиске быстрых библиотек для хеширования. Нужны алгоритмы для следующих хэшей:
1) MD5 2) SHA-1 3) Tiger (Tiger-128 и Tiger-192) 4) ed2k (на основе MD4) 5) crc32 Библиотеки можно к каждому алгоритму отдельно или по несколько алгоритмов - все равно, главное оптимизация по скорости. Желательна компилируемость в DLL или ActiveX (или готовые уже), т.к. будет прикручиваться к delphi программе. Оптимизация на уровне ассемблера, MMX/SSE - совсем хорошо. |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Кому интересно, тут тоже эта тема поднималась - http://www.delphimaster.ru/cgi-bin/forum.p...p;id=1186923739
|
|||
|
||||
| textExpanser |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
Но до конца не решилась. Поэтому можно (и нужно) отвечать прямо здесь.
|
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
на wasm.ru чето лежало....
когда-то писал для себя на masm-е CRC32 мож оптимизируешь... я не ставил перед собой такую цель) Присоединённый файл ( Кол-во скачиваний: 8 )
CRC32_full_ASM.rar 4,88 Kb-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| nickless |
|
|||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 19 Всего: 181 |
Еще тут можно поискать
-------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Для MD4, MD5 и SHA1 — OpenSSL. Библиотека с очень длинной историей, используется практически повсеместно, где нужна криптография. Основательно оптимизирована, в том числе и с ассемблерными вставками.
Провёл с ней простенький тест: получил ~300 Мб/с для MD5 и ~200 Мб/с для SHA1 на A64 3200+. Хватит? -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Вспомнил, есть ещё libgcrypt. Там есть реализация всех перечисленных алгоритмов, кроме Tiger-128 (192 есть). Скорость, правда, поменьше:
MD5: ~170 Мб/с SHA1: ~130 Tiger-192: ~35 CRC32: ~180 (вот это ужоснах, сляпанная на коленке реализация будет лучше). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
интересно моя реализация crc32 как даст по скорости..)) поди тоже не высоко...
да кучи есть подобных библиотек. кучи. ___ [off] кстати.. вот мы говорим о скорости библиотек... что вроде как куски блоками передаются туда-то.. а нельзяли обрабатывать сразу для 2-х и более алгоритмов? Т.е. что я имею в виду: имеем код какрой-то контрольной суммы: взять DWORD, произвети действия. взять следующий DWORD. Когда можно сделать взять DWORD, произвести действия для алгоритма1, для алгоритма2 взять следующий DWORD Т.о. мы будем "пробегать по памяти один раз"... правда тут с оптимизаций полная фигня, наверно 8)) [/off] -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| textExpanser |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 12.5.2005 Репутация: нет Всего: нет |
jonie:
Эт точно, я за такое не возьмусь. Спасибо, ребята. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |