Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
02 Ноя 2024
2 мин
5792

Как работать с модулем hashlib в Python

«Изучите основы работы с модулем hashlib в Python для работы с криптографическими хеш-функциями и проверки целостности данных.»

Модуль hashlib предоставляет набор функций для работы с криптографическими хеш-функциями, такими как MD5, SHA-1, SHA-256 и другими. В данной статье мы рассмотрим основы использования модуля hashlib в Python.

Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.

Создание хеша

Для создания хеша используйте функцию hashlib.new(). В качестве аргумента укажите название алгоритма хеширования, например, 'md5' или 'sha256'.

import hashlib

md5_hash = hashlib.new('md5')
sha256_hash = hashlib.new('sha256')

Хеширование данных

Для хеширования данных используйте метод update(). Метод принимает в качестве аргумента байтовую строку.

data = b'Hello, world!'
md5_hash.update(data)
sha256_hash.update(data)

💡 Важно: Не забудьте преобразовать строку в байты с помощью encode() перед вызовом update().

data = 'Hello, world!'
md5_hash.update(data.encode())
sha256_hash.update(data.encode())

Получение хеша

Для получения хеша в виде шестнадцатеричной строки используйте метод hexdigest().

md5_hex = md5_hash.hexdigest()
sha256_hex = sha256_hash.hexdigest()

print(f'MD5: {md5_hex}')
print(f'SHA-256: {sha256_hex}')

Вывод:

MD5: 65a8e27d8879283831b664bd8b7f0ad4
SHA-256: 315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3

На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.

Хеширование файла

Для хеширования файла сначала откройте его в двоичном режиме, затем считывайте блоки данных и передавайте их в метод update().

file_path = 'example.txt'

with open(file_path, 'rb') as file:
    while True:
        data = file.read(1024)
        if not data:
            break
        md5_hash.update(data)
        sha256_hash.update(data)

print(f'MD5: {md5_hash.hexdigest()}')
print(f'SHA-256: {sha256_hash.hexdigest()}')

Теперь вы знаете основы работы с модулем hashlib в Python. Этот модуль полезен для проверки целостности данных, аутентификации и других криптографических задач. Если вам интересно углубиться в тему, рекомендуем посетить онлайн школу и пройти курс по Python-разработке.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий