logo

Хеш MD5 у Python

Криптографічні хеші використовуються в повсякденному житті, як-от цифрові підписи, коди автентифікації повідомлень, виявлення маніпуляцій, відбитки пальців, контрольні суми (перевірка цілісності повідомлень), хеш-таблиці, зберігання паролів і багато іншого. Вони також використовуються для надсилання повідомлень через мережу для безпеки або зберігання повідомлень у базах даних.
Існує багато хеш-функцій, визначених у хешліб бібліотека на python. Ця стаття присвячена поясненню та роботі хешу MD5.

Хеш MD5

Ця хеш-функція приймає послідовність байтів і повертає 128-бітове хеш-значення , зазвичай використовується для перевірки цілісності даних, але має проблеми з безпекою. Пов'язані функції:



    encode() : перетворює рядок на байти, щоб бути прийнятним хеш-функцією. digest() : повертає закодовані дані в байтовому форматі. hexdigest() : повертає закодовані дані в шістнадцятковому форматі.

Примітка:
Бібліотека md5 була бібліотекою Python, яка забезпечувала простий інтерфейс для створення хешів MD5.
Ця бібліотека застаріла на користь бібліотеки hashlib, яка забезпечує більш гнучкий і безпечний інтерфейс для створення хешів.

Наведений нижче код демонструє роботу хешу MD5, який приймає байти та виводить як байти.

Python3



динамічний масив java






javafx на eclipse
# Python 3 code to demonstrate the> # working of MD5 (byte - byte)> import> hashlib> # encoding techcodeview.com using md5 hash> # function> result>=> hashlib.md5(b>'techcodeview.com'>)> # printing the equivalent byte value.> print>('The byte equivalent of>hash> is> : ', end>=>'')> print>(result.digest())>

>

чому інтерфейс маркера в java

>

Вихід:

The byte equivalent of hash is : b'xf1xe0ix~xcetSx1dx11%Yx94hq'>

Пояснення: Наведений вище код займає байт і може бути прийнятий хеш-функцією. Хеш-функція md5 кодує його, а потім за допомогою digest() друкує закодований рядок, еквівалентний байтам.
Наведений нижче код демонструє, як приймати рядок як вхідний і вихідний шістнадцятковий еквівалент закодованого значення.

Python3


регулярний вираз java



# Python 3 code to demonstrate the> # working of MD5 (string - hexadecimal)> import> hashlib> # initializing string> str2hash>=> 'techcodeview.com'> # encoding techcodeview.com using encode()> # then sending to md5()> result>=> hashlib.md5(str2hash.encode())> # printing the equivalent hexadecimal value.> print>('The hexadecimal equivalent of>hash> is> : ', end>=>'')> print>(result.hexdigest())>

python зменшити

>

>

Вихід:

The hexadecimal equivalent of hash is : f1e069787ece74531d112559945c6871>

Пояснення: Наведений вище код бере рядок і перетворює його в байтовий еквівалент за допомогою encode(), щоб він міг бути прийнятий хеш-функцією. Хеш-функція md5 кодує його, а потім за допомогою hexdigest() друкує шістнадцятковий еквівалентний кодований рядок.