Zwykła odpowiedź brzmi: jakie jest prawdopodobieństwo, że nieuczciwa asteroida rozbije się na Ziemi w ciągu najbliższej sekundy, niszcząc cywilizację taką, jaką znamy i zabijając kilka miliardów ludzi? Można argumentować, że każde nieszczęśliwe zdarzenie z prawdopodobieństwem niższym niż to nie jest tak naprawdę bardzo ważne.
Jeśli mamy „Perfect” funkcji skrótu z wielkości wyjściowej n , i mamy p wiadomości hash (indywidualna długość komunikatu nie jest ważne), to prawdopodobieństwo kolizji jest o p 2 /2 n + 1 (jest to przybliżenie, które jest ważne dla „małego” p , tj. znacznie mniejszego niż 2 n / 2 ). Na przykład w przypadku SHA-256 ( n = 256 ) i miliarda wiadomości ( p = 109 ) prawdopodobieństwo wynosi około 4,3 * 10–60 .
Kosmiczna skała masowego mordercy zdarza się średnio raz na 30 milionów lat. Powoduje to prawdopodobieństwo takiego zdarzenia występującego w następnej sekundy do około 10 -15 . To 45 rzędów wielkości bardziej prawdopodobne niż kolizja SHA-256. Krótko mówiąc, jeśli uznasz, że kolizje SHA-256 są przerażające, twoje priorytety są błędne.
W ustawieniach zabezpieczeń, w których atakujący wybiera wiadomości, które zostaną zaszyfrowane, atakujący może użyć znacznie więcej niż miliarda wiadomości; przekonasz się jednak, że prawdopodobieństwo sukcesu atakującego będzie nadal znikomo małe. Taki jest sens używania funkcji skrótu z 256-bitowym wyjściem: aby ryzyko kolizji można było pominąć.
Oczywiście wszystkie powyższe założenia zakładają, że SHA-256 jest „idealną” funkcją skrótu, której daleko jeszcze do udowodnienia. Mimo to SHA-256 wydaje się dość solidny.