Zum Inhalt springen

Kassomat: Unterschied zwischen den Versionen

Vierlex (Diskussion | Beiträge)
Anlumo (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 103: Zeile 103:
* von hand eingetragene "its empty"-notification bei bezahlung von schrauben oder bauteilen aus dem sortiment (falls gwünscht)
* von hand eingetragene "its empty"-notification bei bezahlung von schrauben oder bauteilen aus dem sortiment (falls gwünscht)
* Bitcoins!
* Bitcoins!
== Bitcoin/Kassomat-Protokoll ==
Ablauf (K=Kassomat, S=BC-Server):
<pre>
  1. K->S Jemand will €2 bezahlen
quote:
- eurocent: 200
  2. S->K
quote:
- uri: bitcoin://blablablabla
  3. K: wandelt uri in einen QR-Code um und zeigt ihn an (->zxing)
  4. warten…
  5. BT-Workflow:
  6.
    1. S->K €2 wurden bezahlt
receivebtc:
- eurocent: 5000
  txid: aosihduawiusdfhgsiufhewufbsidjlbfkdsbfdfksb
    2. K: Dialog wird geschlossen (mit Danke-Hinweis oder sowas)
    3. Wenn mehr als das gezahlt wurde: Guthaben in € wird aufgerechnet
  7. normaler Workflow:
  8.
    1. Geld wird eingeworfen, als Kontostand wird €8 angezeigt.
Websocket-Protokoll:
hinschicken nur cent-Beträge
zurück kommen URIs, wenn sie angezeigt werden sollen als QR-Code, oder uri+betrag, wenn für diese URI etwas bezahlt wurde. Der Betrag kann unterschiedlich sein!
Nur mit TLS, mit cert-pinning + client-side cert! Auch checken, welche crypto verwendet wird, kein RC4 erlauben!
TLS macht schon challenge/response, d.h. es ist replay-sicher
Geldfluss in anderer Richtung:
  1. Automat erkennt QR-Code
  2. K->S: erkannte uri und Betrag, der gerade in € eingezahlt wurde
sendbtc:
- address: bitcoin://aoishjdsoaidhashd
  eurocent: 3000
  3. S->K: Transaktions-ID
sentbtc:
- txid: aosihduawiusdfhgsiufhewufbsidjlbfkdsbfdfksb
  4. Transaktions-ID im Kassomat loggen!
Fehlerfall zu Punkt 3:
sentbtc:
- error: {message}
</pre>


[[Kategorie:Projekte]]
[[Kategorie:Projekte]]