Коллизия хэшей
Что такое Коллизия хэшей?
Коллизия хэшейДва разных входа, дающих одинаковое значение криптографического хэша; ломает гарантии целостности, уникальности и подписи, зависящие от функции хэширования.
Коллизия хэшей — это пара различных входов с одинаковым хэшем. Хэш-функции сжимают произвольные данные до фиксированной длины, поэтому коллизии существуют математически; стойкая функция делает их вычислительно неподъёмными для поиска. Когда функция взломана, атакующий может подделывать сертификаты, манипулировать подписанными документами или подменять бинарные файлы. MD5 практически коллидируется с 2004 года (Wang et al.) и был использован Flame для подделки сертификата подписи кода Microsoft. SHA-1 был сломан SHAttered (Stevens et al., 2017). Современные системы должны использовать SHA-256, SHA-3 или BLAKE2/BLAKE3.
● Примеры
- 01
Пара PDF SHAttered (2017) от Google и CWI с одинаковым SHA-1.
- 02
Flame (2012) использовала коллизию MD5 с выбранным префиксом для подделки сертификата Microsoft Terminal Server.
● Частые вопросы
Что такое Коллизия хэшей?
Два разных входа, дающих одинаковое значение криптографического хэша; ломает гарантии целостности, уникальности и подписи, зависящие от функции хэширования. Относится к категории Криптография в кибербезопасности.
Что означает Коллизия хэшей?
Два разных входа, дающих одинаковое значение криптографического хэша; ломает гарантии целостности, уникальности и подписи, зависящие от функции хэширования.
Как работает Коллизия хэшей?
Коллизия хэшей — это пара различных входов с одинаковым хэшем. Хэш-функции сжимают произвольные данные до фиксированной длины, поэтому коллизии существуют математически; стойкая функция делает их вычислительно неподъёмными для поиска. Когда функция взломана, атакующий может подделывать сертификаты, манипулировать подписанными документами или подменять бинарные файлы. MD5 практически коллидируется с 2004 года (Wang et al.) и был использован Flame для подделки сертификата подписи кода Microsoft. SHA-1 был сломан SHAttered (Stevens et al., 2017). Современные системы должны использовать SHA-256, SHA-3 или BLAKE2/BLAKE3.
Как защититься от Коллизия хэшей?
Защита от Коллизия хэшей обычно сочетает технические меры и операционные практики, как описано в определении выше.
● Связанные термины
- cryptography№ 247
Криптографическая хеш-функция
Детерминированная односторонняя функция, отображающая входные данные произвольной длины в дайджест фиксированной длины и устойчивая к коллизиям, первообразам и вторым первообразам.
- cryptography№ 658
MD5
128-битная криптографическая хеш-функция Рона Ривеста (1992); взломана — практические коллизии тривиальны, и её нельзя использовать в задачах безопасности.
- cryptography№ 1023
SHA-1
Криптографическая хеш-функция, разработанная АНБ в 1995 году и выдающая 160-битный дайджест; сегодня считается взломанной с точки зрения стойкости к коллизиям.
- cryptography№ 1024
SHA-256
256-битная криптографическая хеш-функция семейства SHA-2, широко используемая для цифровых подписей, TLS, блокчейнов и контроля целостности.
- cryptography№ 321
Цифровая подпись
Криптографический механизм с открытым ключом, доказывающий подлинность, целостность и невозможность отказа от авторства сообщения или документа.
- cryptography№ 101
BLAKE2
Быстрая современная криптографическая хеш-функция, описанная в RFC 7693, с безопасностью на уровне SHA-3 и значительно большей программной производительностью.