Как захешировать строку в Python?

Для внутреннего хеша объекта используйте hash(text), а для стабильного отпечатка содержимого — hashlib, например SHA-256 от UTF-8. Эти варианты имеют разные назначения.

Короткий ответ

Что ответить на собеседовании

Для внутреннего хеша объекта используйте hash(text), а для стабильного отпечатка содержимого — hashlib, например SHA-256 от UTF-8. Эти варианты имеют разные назначения.

Подробный разбор

Ответ с пояснениями

Для внутреннего хеша объекта используйте hash(text), а для стабильного отпечатка содержимого — hashlib, например SHA-256 от UTF-8. Эти варианты имеют разные назначения.

import hashlib

fingerprint = hashlib.sha256("Привет".encode("utf-8")).hexdigest()

Встроенный hash() для строк не предназначен для долговременного хранения и обычно меняется между процессами из-за рандомизации. Криптографический digest воспроизводим при одинаковых байтах, поэтому заранее определите кодировку и нормализацию. Хеш не шифрует текст и сам по себе не защищает пароль; для паролей нужны специализированные схемы хранения.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее