Nehmen wir an, Alice möchte Bob ein paar Münzen schicken. Bob muss Alice sagen, wohin er sie schicken soll, also schickt er seine Adresse an Alice. Wie sendet Bob diese Adresse, damit Alice weiß, dass die Adresse, die sie erhält, tatsächlich Bobs Adresse ist und nicht die von Eve (einer Lauscherin), die die Münzen stehlen will?
Das Problem selbst ist per se nicht Bitcoin-spezifisch. Es geht darum, den Absender einiger Daten verifizieren zu können. Bitcoin-Adressen sind nur so konzipiert, dass sie gegen Tippfehler immun sind (sie enthalten eine Prüfsumme), aber ansonsten tut das Protokoll nichts.
Man kann jedoch ein paar Dinge tun, um sicherzustellen, dass eine korrekte Adresse gesendet und empfangen wird:
Alles in allem gibt es viele Möglichkeiten, einen Man-in-the-Middle-Angriff in dem beschriebenen Szenario zu verhindern.
Bitcoin bietet derzeit keinen Schutz dagegen. Alice und Bob müssen sicherstellen, dass ihr Kommunikationskanal sicher ist.
Der Marktplatz #bitcoin-otc verwendet die GPG-Authentifizierung, um sich genau vor dieser Situation zu schützen.
Da IRC-Spitznamen anfällig für Manipulationen sind, hilft die Aufgabe, sich zuerst beim Bot des Kanals zu authentifizieren, um sicherzustellen, dass die Kommunikation wirklich vom beabsichtigten Handelspartner stammt.
Dies ist nur eine Methode, um dieses Thema anzugehen. Es gibt viele Möglichkeiten.
Wenn Alice Bob über seine Website https://bobbysox.com/ getroffen hat, kann sie ziemlich sicher sein, dass die Adresse, die Bob auf seiner Website anzeigt, echt ist, solange Bobs SSL-Zertifikat erfolgreich verifiziert wird. Damit Eve Woman-in-the-Middle spielen kann, müsste sie sich irgendwie ein Zertifikat für bobbysox.com besorgen, oder Alices Browser wird sie auf die Tatsache aufmerksam machen, dass es ein Problem mit der sicheren Verbindung gibt. (Ob Alice davon Notiz nimmt, steht auf einem anderen Blatt).
Auf diese Weise werden Bitcoin-Adressen häufig über sichere Socket-Layer-Webverbindungen vom Händler an den Käufer weitergegeben.
Hinweis: Interessanterweise sehe ich, wenn ich auf diesen Link klicke, den ich gerade erfunden habe, eine Warnung: "Das Sicherheitszertifikat der Website ist nicht vertrauenswürdig!"
David Schwarz