Modul 10 Steilkurs RFID, Chipkartensysteme und Authentifizierung
|
|
- Gerrit Beutel
- vor 8 Jahren
- Abrufe
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