Нужна инструкция MD5 - PullRequest
       18

Нужна инструкция MD5

1 голос
/ 14 апреля 2010

Есть ли какой-то конкретный алгоритм для кодирования и декодирования MD5. Пожалуйста, дайте мне правильное направление или руководство, чтобы я мог двигаться дальше ... У меня много поисков в Google, но я не нашел, пожалуйста, дайте статьи или учебные ссылки.

Ответы [ 2 ]

6 голосов
/ 14 апреля 2010

MD5 - алгоритм хеширования, который по определению (должен быть) не декодируется. Для описания алгоритма прочитайте Wikipedia .

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

Первый визит в Google: http://sourceforge.net/projects/libmd5-rfc/

2 голосов
/ 14 апреля 2010

MD5, не кодирует и не декодирует. MD5 преобразует ввод переменного размера (до многих терабайт) в вывод фиксированного размера (128 бит, или 16 байтов). Смысл MD5 состоит в том, чтобы не допустить вычисления обратного преобразования.

Спецификация MD5 является короткой, простой для чтения и включает векторы испытаний и реализацию на языке Си. Многие языки программирования / среды уже включают реализации MD5. Есть также много независимых криптографических библиотек, которые предлагают реализации MD5 на разных языках; Возможно, вы захотите взглянуть на sphlib , который включает оптимизированный код для MD5 как на C, так и на Java.

Обратите внимание, что теперь MD5 считается криптографически слабым. В частности, были найдены способы для эффективного вычисления коллизий (два разных входа с одинаковым выходом), чего не должна допускать хорошая хеш-функция (коллизия обязательно существует для любой хэш-функции, но не должно быть осуществимым для фактического вычисления таких коллизий ; для MD5 это довольно просто [около 14 секунд ЦП на базовом ПК]).

...