Schöne Frage.
1. Mehrere Keys führen eventuell zur selben Adresse.
2. Es ist nicht gewehrleistet, dass man wirklich 2^160 verschiedene Adressen aus den 2^256 ECDSA Keys generieren kann.
Die Hash-Funktion wirkt wie ein Zufallsgenerator, der jedem Schlüssel eine Adresse zuordnet.
Durchschnittlich treffen 2^96 Schlüssel auf eine Adresse (= 2^256 / 2^160).
Also manche Adressen haben mehr, manche haben weniger Schlüssel. Man könnte jetzt die Varianz dazu berechnen.
Trotz Varianz bewegt sich die Anzahl Schlüssel pro Adresse immer in der Größenordnung von 2^96.
Die Wahrscheinlichkeit, dass eine Adresse gar keine Schlüssel hat, ist verschwindend gering.
Das heißt im Umkehrschluss: Die Allermeisten (>99.9%) der 2^160 theoretisch möglichen Adressen können tatsächlich generiert werden.
Wenn man das als Zweierpotenz ausdrückt (2^160 * 99.9% = 2^159.9999999), dann ändert sich praktisch nichts,
es bleibt also bei 2^160 Adressen, die auch praktisch erstellt werden können.Kann man hierzu eine Aussage treffen wie sich das auf die Wahrscheinlichkeit einer Collusion auswirkt?
Mit der Kollisionswahrscheinlichkeit hat das eigentlich nichts zu tun.
Die Kollisionswahrscheinlichkeit ist ein
Geburtstagsproblem, das nur von zwei Größen abhängt: Anzahl der möglichen Adressen (2^160) und Anzahl der verwendeten Adressen (blockchain.info hat eine Statistik über die Anzahl der verwendeten Adressen).
Eine ähnliche Sache ist es, wenn jemand versucht, einen Geburtstagsangriff zu machen, also selbst so viele Adressen zu erstellen, bis er zwei gleiche findet.
Die Faustformel dazu lautet: Anzahl Bits geteilt durch 2.
Also bei 2^160 möglichen Adressen muss der Angreifer 2^80 Adressen generieren, bis er zwei gleiche Adressen (mit unterschiedlichen Schlüsseln) findet.
2^80 klingt erstmal gefährlich niedrig, wenn man so hört, was die ASICs schon können.
Allerdings müsste der ASIC dazu nicht nur den RIPEMD- und den SHA256-Algorithmus, sondern auch die ECDSA-Kurven beherrschen.
Das wäre also ein sehr teurer Angriff.