Sebuah fungsi hash kriptografi adalah transformasi yang mengambil input dan mengembalikan nilai berukuran tetap, yang disebut nilai hash. Jika input adalah 'jpg.' File gambar nilai hash yang dihasilkan secara efektif akan menjadi sidik jari untuk file itu. Fungsi hash yang ideal memiliki tiga sifat utama: mudah untuk menghitung nilai hash untuk setiap data yang diberikan, sangat sulit untuk melakukan reverse engineering nilai hash, dan hal ini sangat tidak mungkin bahwa dua nilai input yang berbeda, tidak peduli seberapa mirip, akan menghasilkan nilai hash yang sama.