Hash fonksiyonları farklı uzunluklardaki dijital mesajlardan, sabit uzunlukta özet bir mesaj çıkartırlar. Özet fonksiyonları hızlı olmalıdır, farklı girdilerin farklı çıktıları olmalıdır. En önemlisi de özet mesajından, mesajın aslına ulaşılamıyor olmasıdır. Özet mesajı incelendiğinde rastgele oluşmuş olması gerekir.
Bitcoin ağında SHA-256 sistemi kullanılır. SHA-256 algoritmasında mesaj uzunluğunuz ne olursa olsun, 256-bit (32 byte) mesaj özeti oluşacaktır. Kriptografik olarak en güvenli algoritmadır başka bir deyişle özet mesajdan, mesajın aslına ulaşmak mümkün değildir.
SHA-256 sisteminde mesaj uzunluğu ne olursa olsun çıktı 256 tane 0’dan veya 1’den oluşacaktır. Bu şekilde mesajı okumak çok zor olacağı için, mesaj 4’lü olarak bölünür ve her 4’lü grup on altılık sistemde yazılır. Yani bu durumda özet mesajı 64 tane ardışık (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) harften oluşacaktır. Teorik olarak, 256 adet ardışık 0 veya 1’le, 2²⁵⁶≈1.15×10⁷⁷ adet özet fonksiyonu oluşturulabilir. Sistemin ne kadar güvenli olduğu buradan anlaşılabilir.
Mesajda yapılacak olan en ufak değişiklik, özet mesajını tamamen değiştirir ve bambaşka bir hale getirir. Zaten böyle olmasa özet mesajından, mesajın aslına ulaşmak mümkün olurdu.