Bezahlen im Internet: ecash & Geldkarte

Preview:

DESCRIPTION

Bezahlen im Internet: ecash & Geldkarte. Oliver Vornberger Fachbereich Mathematik/Informatik Universität Osnabrück 49069 Osnabrück oliver@uos.de. Public Key Systems. Öffentlich: [e, n] Geheim:[d, n]. x =. ( ) d mod n. x. e mod n. Alice. Bob. enc B. enc B ( ). - PowerPoint PPT Presentation

Citation preview

1

Bezahlen im Internet:ecash & Geldkarte

Oliver Vornberger

Fachbereich Mathematik/Informatik

Universität Osnabrück

49069 Osnabrück

oliver@uos.de

2

Public Key Systems

Öffentlich: [e, n]

Geheim: [d, n]

x = ( )d mod n e mod nx

3

BobAlice

Nachricht verschlüsseln

y :=

encBencBdecB

x

ydecB ( )x :=

encB ( )

4

BobAlice

Nachricht signieren

y :=

encAdecA

xdecA ( )

yencA ( )x :=

encA

5

ecash

erfunden von David Chaum

Firma Digicash

Firma ecash-Technologies

1. Alice besorgt sich von der Bank blind signierte Münzen

2. Alice transferiert die Münzen zum Kaufmann

3. Der Kaufmann läßt sie bei der Bank gutschreiben

6

BankAlice

Münzen erzeugen mit blinder Signatur

s :=

encBank decBank

sdecBank ( )z :=

encBank ( )

encBankBlendfaktor

r

Schecknr

x •

zz = (x • r e)d mod n = xd • r ed mod n = xd • r mod ny:= z / r = xd mod n

= decBank (x)

BelasteKonto von Alicemit 1,- DM

7

KaufmannAlice

Münzen ausgeben

yencBank ( )

y

Bank

encBank ( )yx :=In Liste der verbrauchtenSchecks eintragenKaufmann 1,- DM gutschreibenOK !

Ware

9

ecash offline

Bank signiert nur Münze C, in denen sich mit hoher Wahrscheinlichkeit Alice‘ Identität befindet

Kaufmann1 befragt Alice zur Münze C und erhält Response R1

Kaufmann2 befragt Alice zur Münze Cund erhält Response R2

Aus R1 und R2 errechnet die Bank die Identität von Alice

10

Blinde Signatur mit Einwegfunktion

BankAlice

f(.) mod n

s := r3 • f(x) mod n

zy := z/ry = f 1/3( x ) mod n

sz := f 1/3( ) mod n

f(.) mod n

11

BankAlice

Münzen erzeugen für offline ecash

2k mal: aj, bj, cj , rj

Bj := rj3f (g(U aj,bj) , g(aj, cj) )

Wähle W {1,2,...2k}

aj, bj, cj , rj für j W

Teste, ob U eingearbeitet

B := Bj 1/3 mod n jW

B

C := B/ rj mod n jW

= gj 1/3

jW

12

offline ecash ausgeben• Alice schickt Münze C zum Kaufmann• Kaufmann wählt Binärstring z := z1, z2, ..., zk

• Kaufmann schickt z als Challenge an Alice• Alice liefert (U aj,bj) und g(aj, cj) falls j=0

g(U aj,bj) und (aj, cj) falls j=1• Kaufmann schickt C und Alice Antwort an Bank• Bank verifiziert C und speichert z

und Sequenz U aj bzw. aj

• Eine weitere Challenge bzgl. derselben Münze Cliefert mit hoher Wahrscheinlichkeit für ein j ein zu zj komplementäres Bit

• Damit verfügt die Bank über U aj und aj und kann die Identität U von Alice errechnen.

13

à la card

PIN

Online

garantiert

0,3 %

Chip

Batch

garantiert

0,3 %

Unterschrift

Online

nicht garantiert

10 Pf

Unterschrift

Online

garantiert

5 %

electronic cash POZ Kreditkarte Geldkarte

14

Ec-Karte

Spur 1: read only 79 • 6 Bit Konto-Nr, Name, ...

Spur 2: read only 40 • 4 Bit Konto-Nr, Verfallsdatum,...

Spur 3: read/write 107 • 4 Bit Fehlbedienungszähler3 Offsets

15

Altes ec-PIN-Verfahren (eigenes Institut)

12345678

Bankleitzahl

1234567890

Kontonummer Kartenfolgenummer

1

1217

DES-Algorithmus mit Institutsschlüssel 56 Bit

3EA2B79853C41FD6

PIN

Umwandlung in 4 Dezimalzahlen ohne führende Null

16

Altes ec-PIN-Verfahren (fremdes Institut)

12345678

Bankleitzahl

1234567890

Kontonummer Kartenfolgenummer

1

DES-Algorithmus mit Poolschlüssel 56 Bit

21AF9C1234CD3976

Umwandlung in 4 Dezimalzahlen mit führender Null

Pool-PIN

0592 1725

Offset

+ 1217

PIN

=

17

Schwächen des alten ec-PIN-Verfahrens

Schlüssellänge

Gefährdeter Poolschlüssel

Fehlbedienungszähler auf Karte

Ungleichverteilung von PIN-Ziffern

18

Verteilung der PIN-Ziffern

Hex-Symbol 0 1 2 3 4 5 6 7 8 9 A B C D E F

PIN-Ziffer 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5

Zweites, drittes, viertes Zeichen:

Hex-Symbol 0 1 2 3 4 5 6 7 8 9 A B C D E F

PIN-Ziffer 1 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5

Erstes Zeichen:

typische PIN [1] [0..5] [0..5] [0..5]

1 • 6 • 6 • 6 = 216 Möglichkeiten

bei 3 Versuchen beträgt die Trefferwahrscheinlichkeit statt 1:3000 nur noch 1:72

19

Gerichtsurteile

Wer haftet bei Mißbrauch einer entwendeten Karte ?

Amtsgericht Darmstadt, 24.2.1989,Ingeborg Winter gegen Dresdner Bank:Der Sachverständige Pausch, an dessen Sachkunde das Gericht keinerlei Zweifel hat, hat bei einem Versuch, bei welchem ihm 7 verschiedene Scheckkarten mit 5 bekannten und zwei unbekannten Geheimnummern zur Verfügung standen, mittels eines Heimcomputers binnen 8,5 Stunden Rechnerzeit die Geheimnummer errechnen können.

Die Beklagte wird verurteilt, an die Klägerin 900 DM nebst 4% Zinsen zu zahlen.

20

Neues ec-PIN-Verfahren (ab 1997)

PIN-Generierung:

würfeln oder wählen

PIN-Verifizierung:

Kein Poolschlüssel mehr im Automat

Eingabe der PIN

Onlineverbindung zum Institutsserver

dort Triple-DES unter Verwendung von PIN, Kartendaten, 2 x 128 Bit-Schlüssel

Vergleich mit Referenzwert auf Karte

Fehlversuchszähler nicht mehr auf Karte

21

Geldkarte

CPU 8 Bit 3.5 MHZ

ROM 32 K Betriebssystem

EEPROM 16 K Anwendung (Geldkarte, Fahrausweis, ...)

RAM 1 K Arbeitsspeicher

Chip 21 mm2

22

Geldkarte: Konten

Zähler Karte aktueller Saldo

Girokonto Bank Karten-Nr, Pers-Daten

Schattenkonto Evidenzzentrale aktueller Saldo

Börsen- Bank Summe allerverrechnungs- KartensaldenKonto

23

Geldkarte: Ablauf

24

Challenge Response

Chipkarte Terminal

Zufallszahl x

y := DESBANK ( )x

DESBANK ( )x?=y

Problem: alle Karten enthalten globalen Schlüssel BANK

25

Challenge Response mit lokalem Schlüssel

Chipkarte Terminal

Zufallszahlx

y := DESlokal ( )x

DESlokal ( )x ?=

Kartennummer k

klokal := DESMaster( )vorberechneter Schlüssel lokal

y

26

Geldkarte: reklamieren

Karte merkt sich die letzten 3 Ladeaktionendie letzten 15 Bezahlvorgänge

Nach Ablauf der Laufzeit kann Guthaben erstattet werden.

Nach Anforderung des Kunden darf die Evidenz-Zentrale den Saldo an die Bank melden.

Auch bei weißen Karten ist Erstattung möglich, da auch ein Schattenkonto geführt wird.

27

Cashmouse

zertifiziert vom ZKAJava-fähiger Web-Browser

vorher Software installierenzum Shoppen zur Web-Seite des Händlers

zum Zahlen zur Web-Seite des HändlerkartenserversJava-Applet laden, Kommunikation in HTTP, SSLhttp://www.scard.de/shop/sh.htm

28

C:/CashmouseProtokoll

20.04.2001 13:21:33 Zahlung Gebucht: EUR 0,05 Rest: EUR 51,08 Empfaenger: Computop Buchungsdatensatz01D1 00 01 67 25 72 90 02 11 00 00 62 9D 80 00 0131 00 00 05 00 00 05 00 51 08 00 01 20 01 04 2013 20 04 14 15 E7 83 57 C1 1F C9 D4 0067 29 20 18 03 00 04 92 92 8D 03 12 00 10 01 0280 45 55 52 01 2A 00 01

29

Literatur

www.ecash-technologies.com

Chaum, Fiat, Naor Untraceable electronic cash, CRYPTO 1988

S. Brands Electronic Cash, Chapter 44 in Handbook on Algorithms and Theory of Computation, 1998

Dresen/Dunne Penny Lane, iX 12/1997

Rankl/Effing: Handbuch der Geldkarten

Sparkassenverlag: Verfahrensbeschreibung zum Geldkarte-System

H.-B. Beykirch: Chipgeld iX, 12/1998

Recommended