Хэш-функции — это функции, получающие на входе данные, обычно строку, и возвращающие число. При многократном вызове хэш-функции с одинаковыми входными данными она всегда будет возвращать одно и то же число, и возвращаемое число всегда будет находиться в гарантированном интервале.
Какие хэш функции бывают?
Криптографические хэш-функции классифицируются по наличию ключа:
- Ключевые хэш-функции:
- Используют секретный ключ для генерации хэша.
- Обеспечивают дополнительный уровень безопасности.
- Например: HMAC (Hash-based Message Authentication Code), PBKDF2 (Password-Based Key Derivation Function 2).
- Бесключевые хэш-функции:
- Не требуют ключа для вычисления хэша.
- Быстрее и проще в использовании.
- Широко используются для обеспечения целостности данных и создания цифровых подписей.
- Например: MD5 (Message Digest 5), SHA (Secure Hash Algorithm), BLAKE3.