Wie überprüft man, welcher Kunde eine Zahlung getätigt hat?

Eine Frage, die ich nicht richtig beantworten kann, wenn sie gestellt wird, ist

Wie genau kann die Blockchain die Identität des Benutzers ohne eine zentralisierte vertrauenswürdige Partei wie VeriSign überprüfen?

Ich weiß, dass dies auf dezentralisierte Weise geschieht und der ECDSA-Algorithmus den Zweck erfüllen sollte, aber andere Anwendungen benötigen immer noch eine zentralisierte vertrauenswürdige Partei, um zu überprüfen, ob der Benutzer wirklich der ist, für den er sich ausgibt, selbst wenn sie ECDSA verwenden .

Aber wie genau kann ich garantieren, dass sich niemand für jemand anderen ausgeben und stattdessen seine Bitcoins ausgeben kann?

Ja, ich kenne die Grundlagen, wie Public-Key-Kryptographie funktioniert, aber Informationssicherheit ist bei mir nicht stark.


Bearbeiten: Lassen Sie mich die Frage weiter untersuchen.

Angenommen, ich besitze ein Kaffeehaus mit einem intensiven Kundenstrom. Wie kann ich sicher sein, dass Kunden bereits bezahlt haben und andere nicht bezahlt haben?

Nehmen wir an, Bob und Anna sind meine Kunden. Bob bestellt einen Macchiato, Anna bestellt einen Capuccino. Beide Kaffees haben den gleichen Preis. Wie kann ich wissen, welche Zahlung von jedem von ihnen kam?

Antworten (5)

Ist es Ihnen wirklich wichtig, welcher Kunde bezahlt hat, oder ist es Ihnen wichtig, welche Rechnung bezahlt wurde?

Angenommen, Sie haben die Kunden Anna und Bob, die beide etwas bestellen. Bob bemerkt, dass er kein Geld mehr hat, also sagt Anna, dass sie für beides bezahlen wird. Wenn Sie wirklich möchten, dass der Absender seine Identität preisgibt, würde Ihr System bereits versagen, da Bob niemals etwas bezahlt.

In fast allen Fällen interessiert Sie nur, welche Rechnung bezahlt wird, und Sie brauchen die Identität des Zahlers nicht (was in einigen Fällen eine Verletzung der Privatsphäre darstellen könnte).

Der übliche Weg, dies in der Praxis zu tun, besteht darin, für jede Zahlung, die Sie erhalten möchten, eine neue Zahlungsadresse anzulegen. Sie verfolgen, welche Rechnung bezahlt wurde, indem Sie nachverfolgen, an welchen Adressen Sie Geld erhalten haben. Das Erstellen neuer Adressen ist sehr billig, und sie sind so lang, dass es äußerst unwahrscheinlich ist, dass dieselbe jemals zweimal erstellt wird.

Es wäre gut, auch zu verdeutlichen, wie groß der Bitcoin-Adressraum ist: Es gibt so viele mögliche Adressen, dass Sie für jede neue Rechnung problemlos eine neue Adresse erstellen können, ohne befürchten zu müssen, dass Ihnen die neuen Adressen ausgehen.
Dies könnte beispielsweise mit einem Verweis auf Ist jede Bitcoin-Adresse einzigartig?
Es sollte Ihnen egal sein, wer dafür bezahlt hat. Als ehemaliger E-Commerce-Site-Besitzer waren wir immer besorgt, dass jemand in betrügerischer Absicht Waren mit dem Geld eines anderen bezahlen würde, da dies zu einem Geldverlust für uns führte (Lagerauffüllung, Versandkosten, Arbeitszeitaufwand für den Umgang mit Banken usw.).
@corsiKa Sicher, für so etwas. In einer Einzelhandelsumgebung wie dem hier erwähnten Kaffeehaus spielt es wirklich keine Rolle, es sei denn, Sie möchten den Namen des Kunden rufen können, wenn seine Bestellung fertig ist.
@corsiKa: Ein gutes (oder schlechtes) Merkmal von Bitcoin ist, dass Sie, wenn jemand Sie in betrügerischer Weise mit dem Geld eines anderen für Waren bezahlt, das Geld trotzdem behalten können: Es gibt keine technische Möglichkeit für den rechtmäßigen Eigentümer, das Geld von Ihnen zurückzufordern . Genau wie bei Bargeld gibt es keine Rückbuchungen. In diesem Sinne muss es Ihnen also eigentlich egal sein, wer bezahlt hat.
@corsiKa: Wenn im Fall von Bitcoin jemand Ihr Geld ausgeben kann, bedeutet das, dass Sie mit Ihrem privaten Schlüssel nachlässig umgegangen sind. Da es keine Regierung gibt, die Gesetze durchsetzt, und die Mathematik die Strafverfolgung sinnlos macht, ist es Ihre eigene Schuld, dass Sie sich nicht besser um Ihren privaten Schlüssel kümmern.

Bei Bitcoin-Zahlungen spielt die Identität des Zahlers oft keine Rolle. Die wichtige Prüfung ist, dass die Zahlung vom Eigentümer autorisiert wurde. Bei Bitcoin besitzt derjenige, der den privaten Schlüssel kontrolliert, die Gelder, und daher reicht es aus, dass die Transaktion mit dem richtigen privaten Schlüssel signiert wurde (was für eine gültige Transaktion selbstverständlich ist).

Was für den Ladenbesitzer wichtig ist, ist zu wissen, dass er bezahlt wurde. Da Bitcoin-Zahlungen irreversibel sind, ist es nicht wichtig, ob Bob seinen Namen nennt, genauso wie es dem Barista egal wäre, Bobs Namen zu erfahren, wenn Bob ins Café kommt und einen Macchiato mit Bargeld bezahlt.

Zur Unterscheidung von Zahlungen geben Sie für jede Rechnung eine neue Empfangsadresse an . Auf diese Weise wissen Sie, wenn eine Adresse Geld erhält, welche Rechnung beglichen wurde. Glücklicherweise ist der Bitcoin-Adressraum groß genug, dass jeder so viele Adressen erstellen kann, wie er benötigt .

Unterschiedliche Bestellungen haben unterschiedliche Bitcoin-Zahlungsadressen.

Die Bestellung wird bezahlt, wenn die betreffende Adresse die angeforderte Menge an Bitcoins erhält.

Die einzige praktische Möglichkeit, die Identität eines Benutzers zu überprüfen, besteht darin, den Benutzer dazu zu bringen, etwas mit seinem privaten Schlüssel zu signieren. Die einzige Identitätsinformation, die Sie zu diesem Zeitpunkt erhalten, ist, dass der Benutzer Zugriff auf den privaten Schlüssel hat. In der Bitcoin-Blockchain ist der Besitzer des privaten Schlüssels der einzige, der die an diesen Schlüssel gebundenen Bitcoins verschieben kann, da dazu eine Signatur erforderlich ist. Wenn Sie versuchen, sich als jemand anderes auszugeben, werden Sie im Wesentlichen keinen Erfolg haben, da Sie keine Unterschrift leisten können.

einfache Antwort: Geben Sie jedem Kunden Ihre andere Adresse

Adressen niemals wiederverwenden