Хеширование преобразует входные данные в фиксированный хеш-код, необратимый процесс. Шифрование преобразует данные в неудобочитаемый шифротекст, обратимый с помощью ключа.
Основные отличия представлены в таблице:
| Характеристика | Хеширование | Шифрование |
|---|---|---|
| Назначение | Проверка целостности, быстрая идентификация | Обеспечение конфиденциальности |
| Обратимость | Необратимо | Обратимо (с ключом) |
| Размер выходных данных | Фиксированный размер (хеш) | Переменный размер (часто больше/равен входу) |
| Требуется ключ | Нет | Да (для шифрования и/или дешифрования) |
Пример хеширования (SHA-256):
python
Пример симметричного шифрования (AES с cryptography):
python