Sünnipäevaparadoksi uurija

ühise sünnipäeva tõenäosus grupi suuruse suhtes

Interaktiivse simulatsiooni laadimine...

paradoks peitub paarides, mitte inimestes 🖖

Paradoks kaob, kui lõpetad inimeste loendamise ja hakkad loendama paare. 23 inimese puhul on võrreldavaid sünnipäevi vaid 23, aga erinevaid paare on C(23,2) = 253 — ja igaüks neist võib anda kokkulangevuse, piisab ühest ainsast. Inimlik intuitsioon lähtub küsimusest „kui palju on minusuguseid inimesi”, mis kasvab lineaarselt, samas kui tegelikult oluline suurus — paarisvõrdluste arv — kasvab ruutsõltuvuses valemiga n(n−1)/2. Sellepärast tõuseb tõenäosuskõver nii vara järsult: juba n=23 juures on 50% ületatud ja n=57 juures üle 99%, sest ülesandele antakse O(n²) võimalust kokkulangevuseks.

miks arvutame vastupidist 🖖

Selle asemel et jälgida iga võimalikku viisi, kuidas kokkulangevus võiks tekkida, esitab tööriist palju lihtsama vastupidise küsimuse: kui suur on tõenäosus, et kõigi sünnipäevad on erinevad? Lisa inimesi ükshaaval — teine peab vältima 1 hõivatud päeva (364/365), kolmas 2 ja nii edasi —, korruta need kahanevad murrud ja lahuta tulemus 100%-st. Peamine mõte: 23 inimese juures langeb 'kõik erinevad' tõenäosus lõpuks alla poole, ja just seetõttu on 23 pöördepunkt.

sama matemaatika murrab krüptograafia 🖖

Sama loogika juhib vaikselt digitaalset turvalisust. Räsifunktsiooni murdmiseks pole ründajal harva vaja kindlat sihtmärki — piisab kahest suvalisest sisendist, mis annavad sama väljundi, ja see on täpselt 'ükskõik milline paar' probleem. Nii langeb N võimaliku väljundiga räsi sünnipäevarünnaku ohvriks juba umbes √N katse järel, mitte N järel. Seepärast pakub 256-bitine räsi vaid umbes 128 bitti kokkupõrkekindlust ning arendajad peavad pikkuse kahekordistama.

Näiteülesanded

  • kontor n=10 - n=10 -> 11.7% tõenäosus – tundub turvaline, kuid võrdluses on juba 45 paari
  • klass n=23 - n=23 -> 50.7% tõenäosus – kuulus pöördepunkt: tõenäolisem kui mitte
  • ruum n=30 - n=30 -> 70.6% tõenäosus – tüüpilises klassis ligikaudu 2 juhul 3-st
  • saal n=57 - n=57 -> 99.0% tõenäosus – juba 57 inimesega peaaegu kindel sündmus