Для того, щоб геш-функція вважалася криптографічно стійкою, вона повинна задовільняти трьом основним вимогам, на яких засновано більшість застосувань геш-функцій в криптографії: Незворотність : для заданого значення геш-функції m має бути обчислювально неможливо знайти блок даних , для якого . Стійкість колізіям першого роду : для заданого повідомлення M має бути обчислювально неможливо підібрати інше повідомлення N , для якого . Стійкість до колізій другого роду : має бути обчислювально неможливо підібрати пару повідомлень , що мають однаковий геш. Дані вимоги залежні один від одного: