# GNU Taler ![](logo-2021.svg)
## Was ist es? - Ein Bezahlsystem. - *Keine* Währung. - *Keine* Blockchain. - Kryptographisch sicher.
## Was kann es? - *Anonym* bezahlen. - Aber *transparentes* Einkommen. - Niedrige Transaktionskosten. - Erfordert (nur) Vertrauen in eine *zentrale Autorität*.
## Leuchtet es blau? - Nein. - Aber das könnt ihr ändern. Lasercutter und LEDs sind vorhanden. ![](logo-2021.svg)
## Aber warum? Bezahlmethoden: - *Bargeld:* Unhandlich, anonym, Steuerhinterziehung. - *SEPA-Überweisung:* Langsam, Datenschutz. :/ - *Kreditkarte, SEPA-Instant, ...:* Datenschutz. :/ - *Proof-of-Work-Währungen:* Energieeffizienz. >:( - *Proof-of-Stake-Währungen:* Vertrauensfrage. :(
## Aber warum? *T*axable \ *A*nonymous \ *L*ibre \ *E*conomic\ *R*eserves - Günstig. (Micropayments!) - Geldempfänger können *know-your-customer*-Prozedur unterworfen werden. - Exchange sieht nicht, *wer* ein Produkt bezahlt hat. - freie Software. :)
BargeldZerocoinKreditkarteTaler
Online
Offline
Anonym zahlen
Zahlungsempfänger besteuern
Niedrige Kosten
## Eigenschaften Als Kunde: Wie Bargeld. - Kein Login beim Bezahlen. - Coins sind *im* Wallet. - Wallet verloren -> (nur) Coins aus dem Wallet weg.
## Taler-Exchange Exchange bewahrt Geld auf: - z.B. Bankkonto (IBAN etc.) - oder Bitcoin (Bitcoinwallet) *Talermünze* ist *Anspruch* auf Verfügung über dieses Geld.
## Taler-Exchange *Überweisung an die Exchange*, um neue Taler zu erhalten. Oder *Taler einlösen*, um eine Überweisung von der Exchange zu erhalten. Oder *Taler einlösen*, um frische Taler zu erhalten.
## Taler-Münzen (zu einfach) Die Exchange hat mehrere *RSA-Signaturschlüssel*: Einen für jeden Münzwert. | Kunde | Exchange | |-------|------| | *Wählt* ein C. | | | | Nimmt 10 Euro von Kunde. | | | *Signiert* C mit ihrem 10-EUR-Key. | Problem: Exchange kann sich *Kunde/C-Zuordnung* merken.
## Münzen ausgeben (zu einfach) Kunde gibt (C, Signatur) an *Händler*. Händler *fragt Exchange*, ob *C* bekannt. *Nein?* Gut. *Ja?* Double spending!
## Taler-Münzen (nah dran) | Kunde | Exchange | |-------|------| | *Wählt* ein C. | | | Verblindet C. | | | | Nimmt 10 Euro von Kunde. | | | Signiert C *blind* mit ihrem 10-EUR-Key. | | Entblindet die Signatur. | |
## Taler-Münzen (nah dran) 10-EUR-Key: $(e, N)$, $(d, N)$ mit $x^{e \cdot d} \equiv 1 (mod\ N)$ | Kunde | Exchange | |-------|------| | *Wählt* $C$ und $b \in \mathrm{Z}_N$ | | | *Sendet* $C \cdot b^e$ | | | | *Sendet* $(C \cdot b^e) ^ d$ | | $ = C^d \cdot (b^e)^d = C^d \cdot 1$ | |

Taler-Münzen (endlich!)

Jetzt wählen wir C aber nicht frei.

Sondern: (c, C) ist ein EdDSA-Schlüsselpaar.

(Und anstelle von C müssen wir einen Hash von C benutzen.)

## Refresh-Protokoll - Münzen können ablaufen. ⇒ *Erneuern* - *Wechselgeld*
## Refresh-Protokoll - Gefährdet Besteuerbarkeit. - Lösung: Altbesitzer erhält *immer* Zugriff auf die neuen Münzen. ⇒ Steuerhinterziehung schafft *Risiko* für den Händler.
## Diffie-Hellman - Alice wählt privat/öffentliches Schlüsselpaar $(a, A)$ - Bob wählt privat/öffentliches Schlüsselpaar $(b, B)$ - Alice rechnet *gemeinsames Geheimnis* $G := a * B$ - Bob rechnet *gemeinsames Geheimnis* $G := A * b$ ("$*$" sei eine magische Operation)
## Refresh-Protokoll Idee: Neuer Münz-Schlüssel und Blendungsfaktor wird nicht gewürfelt, sondern *aus $G$ errechnet*. - Für Alices $(a, A)$ nehmen wir $(c, C)$ der alten Münze. - Bobs $(b, B)$ würfeln wir. - Die Exchange *verrät* uns das öffentliche $B$. Ergebnis: Da der alte Besitzer $a = c$ kennt, kann er $G$ und damit die *neue Münze errechnen*.
## Refresh-Protokoll ... jedenfalls wenn wir uns an das Protokoll gehalten haben. *Wieso sollten wir?*
## Wieso sollten wir? Weil wir das ganze 10× machen. - Die Exchange bittet uns, bei 9 der Anfragen zu *beweisen*, dass wir ehrlich waren. - Wir legen die jeweiligen $b$ offen. Die verbleibende (10te) Anfrage wird ausgeführt.
# Funktionsweise
## Zeug
# Architektur
## Exchange
## libeufin-Nexus
## libeufin-Sandbox
## Merchant-Backend
## Finanzielle Struktur Exchange bewahrt Geld nur auf: - z.B. Bankkonto (IBAN etc.) - oder Bitcoin (Bitcoinwallet) *Talermünze* ist *Anspruch* auf Verfügung über dieses Geld.

Auf der WICMP

WICMP-ZentralbankKredit an cashier.
cashier

Devisentausch: EUR/WICMPs.

Überweist WICMPs an exchange.

exchangeÜberweist WICMPs an Merchants.
merchant
## Are we Taler yet? Kommt drauf an: - *Einsatzfähig?* Ja. - *"Oma-tauglich"?* Nein. Wo kann ich es benutzen? - *In der echten Welt?* Noch nicht. - *Irgendwo?* An der Universität Bern. - *Auf der WICMP?* Aber ja!

Happy Hacking

    Was geht:

  • Bezahlt eure Mate und euren Tschunk mit GNU Taler.

  • Was fehlt:

  • Pixelflut mit Micropayments.
  • LED-Streifen as a (paid) Service.
  • ...
https://tschunk.shop/howto