Modul 10 Steilkurs RFID, Chipkartensysteme und Authentifizierung

Größe: px
Ab Seite anzeigen:

Download "Modul 10 Steilkurs RFID, Chipkartensysteme und Authentifizierung"

Transkript

1 Modul 10 Steilkurs RFID, Chipkartensysteme und Authentifizierung M. Leischner Sicherheit in Netzen Folie 1

2 Modul 10.1 RFID M. Leischner Sicherheit in Netzen Folie 2

3 RFID (Radio Frequency Identification) kontaktlose Chipkarten RFID Chipkarten Transponder Applikation RFID- Lesegerät Energie Takt Daten kontaktloser Datenträger =Transponder Koppelelement M. Leischner Sicherheit in Netzen Folie 3

4 Bauformen von Transpondern das ist "smart dust" M. Leischner Sicherheit in Netzen Folie 4

5 Spule Spule Hochschule Induktiv gekoppelter Transponder Schwingkreis Schwingkreis Vcc ~ Chip Ground Lesegerät Transponder M. Leischner Sicherheit in Netzen Folie 5

6 Vielfachzugriff von Transpondern Transp. Vielfachzugriffsverfahren RFID- Lesegerät Transp. Transp. Transp. Raum (SDMA) Zeit (TDMA) Frequenz (FDMA) Kode (CDMA) M. Leischner Sicherheit in Netzen Folie 6

7 Kommandos für Binary Search REQUEST (SNR): Selektieren von allen Transpondern mit Seriennummer kleiner gleich SNR. Alle Transponder senden simultan ihre Seriennummer SELECT(SNR): Selektieren eines Transponders für die Abarbeitung von Kommandos. Read / Write /...: Beispiele von Kommandos. UNSELECT Der zuletzt selektierte Transponder wird für die Session deaktiviert. Aktivierung erst durch Reset. M. Leischner Sicherheit in Netzen Folie 7

8 Modul 10.2 Kartentypen M. Leischner Sicherheit in Netzen Folie 8

9 Hochgeprägte Karten / Embossed Cards 4 x 27 characters reserved for cardholder's name and address 19 characters reserved for ID number region 1 region 2 M. Leischner Sicherheit in Netzen Folie 9

10 Magnetstreifenkarte Spur 1 Spur 2 Spur 3 Beschriftungsbereich (+ zusätzliche Sicherheitsmerkmale) Feld für zusätzliche Codierung M. Leischner Sicherheit in Netzen Folie 10

11 What is a Smart Card? Definition A smart card is a (mostly) credit card-sized device embedded with either a memory chip or a memory chip and a microprocessor. Think of microprocessor smart card as a tiny, portable database and computer that you can carry in your pocket. 25 March 1974: Roland Moreno, a French journalist, filed the first patent for the Smart Card M. Leischner Sicherheit in Netzen Folie 11

12 Arten von Chipkartenspeicher ROM PROM EPROM EEPROM Flash-EEPROM FeRAM RAM M. Leischner Sicherheit in Netzen Folie 12

13 Platzbedarf für ein Bit. Festplatte 0,0005 Haar ROM FRAM EEPROM RAM M. Leischner Sicherheit in Netzen Folie 13 Quelle: Rankl/Effing

14 Kontaktfelder einer Chipkarte (ISO ) 1 Versorgungsspannung 2mm 5 Masse 2 Reset /Ctrl 3 Clock V CC RST CLK GND V PP I/O 6 Programmierspannung (nicht mehr benutzt) 7 Ein-/Ausgang 4/8 zur Zeit nicht genutzt M. Leischner Sicherheit in Netzen Folie 14

15 Aufbau einer Speicherchipkarte Electrically Programmable Read Only Memory Vcc Reset/Ctrl Clock Ground Zugriffs-, Adress-, Sicherheitslogik EEPROM ROM Read Only Memory I/O 7 M. Leischner Sicherheit in Netzen Folie 15

16 Aufbau einer Prozessor-Chipkarte Vcc Reset/Ctrl Clock Ground Co-Prozessor RAM ROM I/O 7 CPU EEPROM M. Leischner Sicherheit in Netzen Folie 16

17 Antenne Hochschule Architektur kontaktlose Chipkarte Energie Reset Komm. Takt Vcc Reset/Ctrl Clock Ground I/O Co-Prozessor CPU RAM ROM EEPROM M. Leischner Sicherheit in Netzen Folie 17

18 Antenne Hochschule Architektur kontaktlose Chipkarte (Kombikarte) Vcc Reset/Ctrl Clock Ground I/O Energie Reset Komm. Takt Co-Prozessor CPU RAM ROM EEPROM M. Leischner Sicherheit in Netzen Folie 18

19 Modul 10.3 Kommunikation Karte/Terminal M. Leischner Sicherheit in Netzen Folie 19

20 Physical Layer - Transmitting a Bit terminal external clock (typical: 3, MHz) Clock smart card divider (typical by 372) I/O I/O I/O data transmission rate = / 372 = 9600 bit/s etu (elementary time unit) = length of a bit = 372 / = 104 µs M. Leischner Sicherheit in Netzen Folie 20

21 etu (elementary time unit) Definition 1 etu (elementary time unit) = Zeitdauer für die Übertragung eines Bits in Abhängigkeit von Taktfrequenz, einem Umrechnungsfaktor ("Teiler") und einem Justierfaktor. F 1 etu D 1 f F = Umrechnungsfaktor (clock rate conversion factor, "Teiler"): Standardwert = 372 D = Justierfaktor (baud rate adjustment factor): Standardwert =1 f = Taktfrequenz (frequency): Standardwert =3, MHz M. Leischner Sicherheit in Netzen Folie 21

22 Übertragung eines Zeichens Error Signal Startbit 8 Bit = 1 Character Paritätsbit Guardtime Startbit high low CWT +0 CWT +1 CWT +2 t (etu) mindestens 12 Bitzeiten, d.h. Guardtime=2 M. Leischner Sicherheit in Netzen Folie 22

23 direct/inverse convention high low direct convention of the byte 3B = ) t (etu) high low inverse convention of the byte 3F = t (etu) M. Leischner Sicherheit in Netzen Folie 24

24 Grundschema Chipkarten-Protokoll Terminal Smart Card "Master" "Client" Reset ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp "Slave" "Server" command 1 response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 25

25 Activation Sequence and Reset Terminal Smart Card Activation sequence (driven by the terminal): 1) Ground 2) Power supply 3) (external) Clock 4) Reset 5). Reset ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp command 1 V CC RST CLK GND V PP I/O response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 26

26 Answer to Reset terminal smart card Reset ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp command 1 response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 27

27 An Example of an ATR (Answer to Reset) The ATR of the enhanced BasicCard ZC3.9: 0 means "divider = 372" --> work etu = 372 / f terminal 3B EF 00 FF A E F 16 = = B = direct convention (3F = inverse convention) "BasicCard ZC3.9" 15 historical characters M. Leischner Sicherheit in Netzen Folie 28

28 TS T0 j/n j/n j/n j/n k Aufbau ATR Basic Structure of ATR TC1 TB1 TA1 TD1 j/n j/n j/n j/n Protokoll TC2 TB2 TA2 TD2 j/n j/n j/n j/n Protokoll TC3 TB3 TA3 TD3 j/n j/n j/n j/n Protokoll TC4 TB4 TA4 H1 TCK TD4 M. Leischner Sicherheit in Netzen Folie 29 Hk

29 Protocol Type Selection Terminal Smart Card Reset (Cold Reset) ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp command 1 response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 30

30 Sending a Command Terminal Smart Card Reset ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp command 1 response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 31

31 Layered Communication Model for Smart Card Data Transfer OSI layer specification OSI layer 7 transfer of application data application layer ISO/IEC EMV GSM 11.11,... OSI layer 2 transfer of data frames data link layer ISO/IEC (T=0 / T=1) ISO/IEC (T=2) OSI layer 1 transfer of bits physical layer ISO/IEC M. Leischner Sicherheit in Netzen Folie 32

32 Transmission Layer (Data Link Layer, Übertragungsschicht) Protokoll Norm Bedeutung T=0 ISO/IEC halbduplex, asynchron byteorientiert T=1 ISO/IEC halbduplex, asynchron blockorientiert T=2 vollduplex, asynchron blockorientiert (in Normierung) T=3 vollduplex T=4 halbduplex, asynchron byteorientiert Erweiterung von T=0 T=14 M. Leischner Sicherheit in Netzen Folie 33

33 node address protocol control byte length field information field error dection code Hochschule Struktur eines T1-Transfer-Blocks (Schicht 2) NAD PCB LEN APDU EDC 1 Byte 1 Byte 1 Byte Byte 1..2 Byte prolog command APDU epilog T1 ist ein transparentes, block-orientiertes, asynchrones halb-duplex Protokoll mit Fehlerbehandlung M. Leischner Sicherheit in Netzen Folie 34

34 Class Intruction Parameter 1 Parameter 2 Length of data for command Length of data expected for response Hochschule Aufbau command-apdu CLA INS P1 P2 Lc-Feld Data Le-Feld Header Body M. Leischner Sicherheit in Netzen Folie 35

35 Sending a Response Terminal Smart Card Reset ATR (Answer to Reset) [PTS necessary] PTS-Requ PTS-Resp command 1 response 1 command 2 response 2 M. Leischner Sicherheit in Netzen Folie 36

36 status word 1 status word 2 Hochschule Aufbau Response-APDU Daten SW1 SW2 Body (optional) Trailer M. Leischner Sicherheit in Netzen Folie 37

37 Classification Scheme for the Return Code (SW1, SW2) return code process completed process aborted normal processing warning processing execution error checking error '61XX' '9000' '62XX' '63XX' '64XX' '65XX' '67XX'... '6FXX' EEPROM changed M. Leischner Sicherheit in Netzen Folie 38

38 Modul 10.4 Chipkartendateisystem nach ISO/IEC M. Leischner Sicherheit in Netzen Folie 39

39 Resourcenbedarf einer Chipkarte ROM RAM EEPROM Basic-Karte min. 8 KB 256 Byte 8 KB Java-Karte / MultOS min. 16 KB 1 KB 8 KB M. Leischner Sicherheit in Netzen Folie 40

40 Dateisystem Dateibaum ISO Verzeichnisse Dateien Master File (MF) Dedicated File (DF) Elementary File (EF) internal EF working EF M. Leischner Sicherheit in Netzen Folie 41

41 Four Types of Elementary Files File structure: transparent linear fixed linear variable cyclic a cyclic record pointer M. Leischner Sicherheit in Netzen Folie 42

42 Scenario: A Simple Smart Card File System MF 3F00 EF 0001 Every file has a file identifier (FID). The FID of the master is always 3F00 You can also assign a short file identifier (5 bit) EF 0002 DF DF01 EF 0001 EF 0002 linear fixed record record record record record M. Leischner Sicherheit in Netzen Folie 43

43 Modul 10.5 Chipkartenkommandos M. Leischner Sicherheit in Netzen Folie 44

44 IO-System Hochschule Kryptofunktionen Kommando-Abarbeitung Chipkarte Befehlsausführung Befehls- Intepretation Dateiverwaltung Zustandsautomat Speichermanager Channel Manager Kommandointerpreter Returncode-Manager Secure Mess. Entity Transmission Entity Physical Entity M. Leischner Sicherheit in Netzen Folie 45 EEPROM Quelle: nach Rankl/Effing

45 Standards für Chipkarten-Kommandos Standards für Chipkarten-Kommandos ISO/IEC Zahlungsverkehr Telekommunikation ISO/IEC (EMV '96) GSM ISO/IEC SCQL EMV 2000 EN allgemeine Erweiterungen ISO/IEC kryptographische Funktionen ISO/IEC Dateiverwaltung EN 1546 elektronische Geldbörse WWW Bibliothek USIM Universal Subscriber Identity Module (3GPP Working Group T3) M. Leischner Sicherheit in Netzen Folie 46

46 Modul 10.6 Sicherung der Datenübertragung zwischen Chipkarte/Terminal M. Leischner Sicherheit in Netzen Folie 47

47 Schichtenarchitektur der Chipkarten-Kommunikation OSI OSI Schicht 7 APDU Schicht application layer secure messaging Spezification ISO/IEC EMV GSM 11.11,... ISO/IEC und -8 OSI Schicht 2 Frames data link layer ISO/IEC (T=0 / T=1) ISO/IEC (T=2) OSI Schicht 1 Bits physical layer ISO/IEC M. Leischner Sicherheit in Netzen Folie 48

48 Secure Messaging als Zwischenschicht Application Layer APDU Appl SM APDU SM Block (T=1) Byte (T=0) Transmission Layer (Data Link Layer) M. Leischner Sicherheit in Netzen Folie 49

49 Datenobjekte des Secure Messaging APDU Appl BER-kodiert APDU Appl -Header APDU Appl -Daten Funktionalität SM-Protokoll Zwischenschicht Datenobjekt SM Kontrollinfo SM APDU Appl -Daten APDU SM -Daten APDU SM -Header Datenobjekt SM Kontrollinfo SM APDU SM M. Leischner Sicherheit in Netzen Folie 50

50 Combined-Verfahren CLA INS P1 P2 Lc Data CLA' INS P1 P2 Lc PB T Data L Data Data PB CLA' INS P1 P2 Lc PB T Data L Data Data PB CCS CLA' INS P1 P2 Lc T Data L Data Data T CCs L CCS CCS PB CLA' INS P1 P2 Lc' Data' T Data' L Data' M. Leischner Sicherheit in Netzen Folie 51

51 Konzept: Secure Environment Applikation A SSupp-A Applikation B SSupp-B SE1A SE2A SE3A SE1B SE2B Manage SE commands: - restore SE - set SE - store SE - erase SE SE-glob SSupp-glob M. Leischner Sicherheit in Netzen Folie 52

52 Modul 10.7 Authentisierung mit Chipkarten M. Leischner Sicherheit in Netzen Folie 53

53 A+A=A Unterscheidung: Authentisierung Autorisierung Authentisierung - Prozess, bei dem ein Nutzer (allgemeiner eine Ressource) das Recht auf eine Identität begründet. Schlüsselfrage: Wer bist du? Autorisierung Prozess, bei dem festgestellt wird, ob eine Identität (unter Einbezug einer Menge zugeordneter Attribute) die Erlaubnis hat, bestimmte Aktionen durchzuführen. Schlüsselfrage: Was kannst du machen? Formel: A + A = A: Authentisierung + Autorisierung = Access M. Leischner Sicherheit in Netzen Folie 54

54 Verschiedene Definitionen 'Authentisierung' American National Standard for Telecommunications ( A security measure designed to protect a communications system against acceptance of a fraudulent transmission or simulation by establishing the validity of a transmission, message, or originator. OASIS, the Organization for the Advancement of Structured Information Standards ( Authentication is the process of confirming a system entity s (=an active element of a system - e.g., an automated process or set of processes, a subsystem, a person or group of persons--that incorporates a specific set of capabilities) asserted principal identity (= AAA Service clients) with a specified, or understood, level of confidence. Center for Democracy and Technology ( Authentication - the process of verifying that a file or message has not been altered in route from the distributor to the recipient(s). M. Leischner Sicherheit in Netzen Folie 55

55 Definitionen 'Authentisierung' nach Clifford Lynch Authentication is the process where a network user establishes a right to an identity - in essence, the right to use a name. Validating authenticity entails verifying claims that are associated with an object - in effect, verifying that an object is indeed what it claims to be, or what it is claimed to be (by external metadata). Clifford Lynch (ed.): A White Paper on Authentication and Access Management Issues in Cross- Organizational Use of Networked Information Resources, Coalition for Networked Information, Spring (Revised discussion draft April 14). Available at accessed: November 20, Lynch Clifford A.: Authenticity and Integrity in the Digital Environment: An Exploratory Analysis of the Central Role of Trust," Authenticity in a Digital Environment. Washington, DC, Council on Library and Information Resources, pp 32-50, Available at accessed: November 20, M. Leischner Sicherheit in Netzen Folie 56

56 Rahmenmodell: Key-Management, Authentisierung und Verschlüsselung off-card Key-Mgmt statisches, on-card Key-Mgmt dynamisches, on-card Key-Mgmt Authentisierung Transaktion verschlüsselt Vorbereitung Durchführung Transaktionen außerhalb Chipkarte basierend auf Karte/Terminal-Kommunikation M. Leischner Sicherheit in Netzen Folie 57

57 Klassifikationsschema Authentisierung (nach Rankl/Effing) Authentisierung Algorithmus Ablauf symmetrisch asymmetrisch statisch dynamisch Beteiligte Verfahren einseitig Challenge-Response gegenseitig M. Leischner Sicherheit in Netzen Folie 58

58 Authentisierung Key-Mgmt Hochschule Einseitige, statische, symmetrische Authentisierung Key-DB K_symm K_symm =? Chipkarte ja=o.k. Terminal M. Leischner Sicherheit in Netzen Folie 59

59 Authentisierung Key-Mgmt Hochschule Einseitige, symmetrische, dynamische Authentisierung Key-DB challenge rnd K_symm response K_symm Chipkarte =? Terminal ja=o.k. M. Leischner Sicherheit in Netzen Folie 60

60 Authentisierung Key- Mgmt Hochschule Gegenseitige, symmetrische, dynamische Authentisierung K_symm rnd-c ASK RANDOM rnd-t K_symm MUTUAL AUTHENTICATE Chipkarte =? =? Terminal ja=o.k. ja=o.k. M. Leischner Sicherheit in Netzen Folie 61

61 Authentisierung Key-Mgmt Hochschule Einseitige, statische, asymmetrische Authentisierung mit globalen Schlüsseln Chipkarte Terminal sec-key indiv. Daten Signatur der (indiv.) Daten pub-key =? Chipkarte ja=o.k. M. Leischner Sicherheit in Netzen Folie 62

62 Authentisierung Key-Mgmt Hochschule Einseitige, asymmetrische, dynamische Authentisierung Key-DB challenge rnd sec-key-c response pub-key-c Chipkarte =? Terminal ja=o.k. M. Leischner Sicherheit in Netzen Folie 63

63 Verschlüsselung Authentisierung Key- Mgmt Hochschule Gegenseitige, symmetrische, dynamische Authentisierung und Verschlüsselung K_symm rnd-c ASK RANDOM rnd-t K_symm Chipkarte Verschlüsselung Terminal M. Leischner Sicherheit in Netzen Folie 64

64 Verschlüsselung Authentisierung Key-Mgmt Hochschule Gegenseitige, symm., dynam., Authentisierung mit Key-Mgmt und Verschlüsselung Key-DB card number K_symm rnd-c ASK RANDOM rnd-t K_symm Chipkarte Verschlüsselung Terminal M. Leischner Sicherheit in Netzen Folie 65

65 Verschlüsselung authentication on card key mgmt off card key mgmt Hochschule Gegenseitige, dynam., symm. Authentisierung mit Master-Key und Verschlüsselung Masterkey Masterkey card number card number rnd-c rnd-t ASK RANDOM K_symm Chipkarte M. Leischner Sicherheit in Netzen Folie 66 Verschlüsselung K_symm Terminal

66 Authentisierung Key-Mgmt Hochschule Einseitige, statische, asymmetrische Authentisierung mit kartenindividuellen Schlüsseln (Version 1) Chipkarte Terminal sec-key-t sec-key-c pub-key-c Signatur (pub-key-c) pub-key-t =? ja=o.k. Chipkarte Daten Signatur (Daten) =? pub-key-c ja=o.k. M. Leischner Sicherheit in Netzen Folie 67

67 Authentisierung Key-Mgmt Hochschule Einseitige, statische, asymmetrische Authentisierung mit kartenindividuellen Schlüsseln (Version 2) Chipkarte Terminal sec-key-t Zertifikat Signatur (pub-key-c) pub-key-t pub-key-c =? ja=o.k. sec-key-c Signatur (Daten) pub-key-c Chipkarte Daten =? ja=o.k. einseitige, statische, asymmetrische Authentisierung mit kartenindividuellen Schlüsseln und teilweisem oncard-key-mmgt M. Leischner Sicherheit in Netzen Folie 68

68 Modul 10.8: Lebenszyklus einer Chipkarte M. Leischner Sicherheit in Netzen Folie 69

69 Lebensphase einer Multiapplikations-Chipkarte Herstellung (1) Vorbereitung Karte (2) Chipkartenlebenszyklus definiert in ISO/IEC Personalisierung (3) Einbringen neue Anwendung (4) Kartenbenutzung (4) Löschen Anwendung (4) Benutzung Bendigung (5) M. Leischner Sicherheit in Netzen Folie 70

70 Literatur Rankl Wolfgang, Effing Wolfgang: Handbuch der Chipkarten, Hanser Verlag, 5. Auflage, M. Leischner Sicherheit in Netzen Folie 71