GermanDie folgenden Fragen und Antworten sind ein Destilat aus diversen annonymisierten e-Mails von Lesern. Die Antworten stellen meine persönliche Meinung dar und ersetzen nicht das Studium der entsprechenden Normen oder Spezifikation. Auch nehme ich (selbstverständlich) nicht in Anspruch, dass die genannten Antworten auf alle Ewigkeit korrekt sind, da sie sich meine Meinung aufgrund ändernder Rahmenbedingungen oder neuer Erkenntnisse irgendwann auch einmal durchaus ändern kann.

Mittlerweile umfaßt die Liste annähernd 400 Fragen und Antworten!

Tip: Die Suchfunktion des Browsers (i.d.R. CRTL+F) lässt sich gut nutzen um bestimmte Themen in der mittlerweile ziemlich gross geratenen FAQ Liste zu finden.

Neue Fragen sowie Verbesserungs- und Ergänzungsvorschläge sind jederzeit herzlich willkommen.

GermanThe following questions and answers are distilled from many annomised e-mails from readers. The answers are my personal opinion and don't substitute the study of the corresponding standards ans specifications. I'm not claiming that the answers are correct till to the end of time. It could be that my mind will change because of changing some gereral conditions like standards and specifications.

Meanwhile, the list includes nearly 400 questions and answers!

Tip: The search function of the Browser (shortcut often CRTL+F) can be used well to find certain topics in the FAQ list.

New questions and suggestions for improvements are always wellcommed.

Suchmachine für die Homepage/Search engine for the Homepage

Loading

Übersetzer/Translator

Inhalt/Content

Die am häufigsten gestellten Fragen/Most frequently asked questions

FAQ 2010

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

14. Dez. 2010German

Speicherchipkarten

Besitzt eine Speicherkarte auch einen Mikroprozessor?

Speicherchipkarten besitzen in der Regel keine CPU sondern nur eine fest verdrahtete Logik. Diese kann dann nur einige wenige einfache Befehle abarbeiten. Der Vorteil ist, dass man dies auf wenig Halbleiterfläche realisieren kann und deshalb recht günstig ist. Im kontaktlosbereich für größere Entfernungen (1 m) ist dies die einzige Möglichkeit, da die übertragene Energie zur Zeit noch nicht für den Betrieb eines Mikrocontrollers ausreicht. In Ausnahmefällen gibt es aber tatsächlich Mikrocontroller (d.h. mit CPU) die so tun als ob sie Speicherkarten sind. Das beste Beispiel dazu ist der "Card-Emulation-Mode" für Mifare (ein typische Speicherkartenprodukt).

16. Aug. 2010German

MNC (mobile network codes)

Kennen Sie eine offizielle Liste der MCCs (mobile network codes) im Mobilfunk?

Eine offizielle Liste seitens der ITU ist mir nicht bekannt. Als unverbindliche Referenzliste eignet sich jedoch ganz gut die folgenden Aufstellung in der Wikipedia

http://en.wikipedia.org/wiki/Mobile_Network_Code

16. Aug. 2010German

Key-Fob

Was ist ein Key-Fob?

Ein Key-Fob ist die Bezeichnung für einen Schlüsselanhänger. Im Umfeld von Chipkarten werden darunter allerdings mittlerweile besondere Chipkarten verstanden, die eine von ID-1 abweichende Form haben und an beispielsweise einem Schlüsselbund befestigt werden können. Dazu weisen sie typischerweise einen entsprechenden (in der Regel) runden Durchbruch auf.

14. Aug. 2010German

MFF

Was ist MFF?

MFF ist die Abkürzung für den M2M Form Factor, d.h. das JEDEC SON-8 Gehäuse für SIM-Karten. Diese Gehäuse kann sowohl in einen entsprechenden Sockel eingesteckt als auch analog gewöhnlicher SMD-Bauteile auf eine Leiterplatte gelötet werden.

13. April 2010German

Handbuch der Chipkarten mit braunen Umschlag

Bei eBay und anderen findet man oftmals ein Handbuch der Chipkarten mit braunem Umschlag. Ist das eine neue Ausgabe?

Dabei handelt es sich um den Entwurf für einen Einband vom Carl Hanser Verlag für die 5. Auflage des Handbuch der Chipkarten. Mir gefiel die Farbe allerdings überhaupt nicht und zudem ist auf diesem Entwurf eine Karte für Flash-Massenspeicher abgebildet und keine Chipkarte. Deshalb habe ich diesen Entwurf abgelehnt und er wurde auch nie realisiert. Allerdings hat er es doch irgendwie in die freie Wildbahn geschaft und ist aktuell vor allem auf eBay und anderen Verkaufsplattformen das übliche Cover für das aktuelle deutsch Handbuch der Chipkarten. Eventuell wollen da auch manche übereifrige Händler arglosen Käufern suggerieren, dass es tatsächlich eine neue Auflage vom Handbuch der Chipkarten gibt.

26. Jan 2010German

ADN, LND aus SIM auslesen

Ich suche nach einem Weg, über APDUs die Anzahl der verfügbaren Datensätze in den Speicherbereichen ADN und LND zu bestimmen - also den zulässigen Wertebereich für die jeweiligen Read-Record-APDUs.

Sie führen ein SELECT-Kommando auf das EF ADN (abbreviated dialing number)/LND (last number dialed) aus. Dann ein GET RESPONSE und bekommen Dateigröße und Länge der Records zurück. Die Anzahl der Records kann man sich dann durch Division ausrechnen.

Bei www.wrankl.de/JavaPC/ReadSIM.pdf gibt dazu auch einen Java Beispielkode.

20. Jan. 2010German

SCQL

I am currently searching a smart card operating system with SCQL (smart card querry languages) and databases.

Since the beginning of the idea Smart Cards with SCQS never came to real life. Only a few prototypes of smart card operating systems with SCQS were available somewhere in the mid 90th. As I know nowbody use SCQS and no smart card operating system in these days support SCQS.

4. Jan. 2010German

Hersteller einer SIM-/USIM-Karte

Gibt es auf der SIM Informationen zum Halbleiterhersteller?

Den Hersteller einer SIM-/USIM-Karte herauszufinden ist nicht einfach. Die in ISO/IEC 7816 festgelegten Kennzeichen (tags) wurden in den entsprechenden ETSI-Spezifikationen nie umgesetzt. In der Praxis sieht die Analyse einer unbekannten SIM/USIM dann tatsächlich so aus, dass man sich das Modul visuel anschaut und versucht, dieses und den ATR einen Hersteller zuzuordnen. Falls man bei einem Chipkarten-Hersteller arbeitet kennt man oft noch die Dateien mit den üblichen Fertigungsdaten, das hilft einem auch noch weiter. Ohne diese Erfahrung bzw. diese Hintergrundinformation ist es sehr schwierig den Hersteller der Karte oder des Mikroprozessors herauszufinden.

4. Jan. 2010German

Energiesparmodus/Sleep

Wie schalte ich eine SIM in den Energiesparmodus?

Der Energiesparmodus einer SIM wird normalerweise dadurch erreicht, dass man kein Kommando zu dieser schickt. Dies führt automatisch dazu, dass der Mikrocontroller in den Energiesparmodus fällt. Ein eigenes SLEEP-Kommando ist dazu nicht möglich. Möchte das Endgerät (d.h. das Telefon) das Stromsparen ganz extrem betreiben, so kann es noch die Taktfrequenz der SIM/USIM abschalten. Das spart zwar in der SIM/USIM nicht recht viel mehr Strom, aber im Endgerät kann die Takterzeugung abgeschaltet werden. Das wiederum spart schon etwas Strom. Dabei ist zu achten, dass der Takt nur auf einem bestimmten Pegel angehalten werden darf. Ob dies low oder high ist, steht in einer Datei der SIM. Andere Pegel können zum Reset der SIM führen.

3. Jan. 2010German

commercial/physical derivat/cutdown

Was ist ein commercial derivat/cutdown bzw. ein physical derivat/cutdown?

Ein commercial derivat oder commercial cutdown ist eine kostengünstigere Variante eines Chipkarten-Mikrocontrollers ohne (aufwendige) Änderung der Hardware. Dabei wird vom Betriebssystem und der Anwendung nicht der gesamte vom Chip zur Verfügung gestellte Speicher genutzt. Daraus resultiert eine Reduktion des Chippreises durch den Halbleiterhersteller. Der Vorteil für einen Halbleiterhersteller ist dabei, dass nicht für alle verwendeten Speichergrößen eigene Derivate des Chips entwickelt und produziert werden müssen. Als vereinfachtes Beispiel sei hier ein Chip aufgeführt, der einen verfügbaren EEPROM-Speicher von 64 kByte hat und als commerical derivat mit dem Preis eines Chips von 32 kByte EEPROM angeboten würde, wenn 32 kByte des EEPROM nicht benötigt werden und brach liegen. Dieses Vorgehen ist nur für einen bestimmten Stückzahlenbereich interessant. Sind die Stückzahlen zu niedrig, dann ist der Aufwand für einen Halbleiterhersteller unrentabel. Sind die Stückzahlen zu groß dann würde ein physical derivat bzw. physical cutdown gemacht. Dies ist dann ein Chip der im oben genannten Beispiel physikalisch tatsächlich nur 32 kByte EEPROM hat und natürlich kostengünstiger zu fertigen ist als ein Chip mit 64 kByte EEPROM.

2. Jan 2010German

SON-8 SIM

Was ist eine SON-8 SIM?

SON-8 ist der offizielle Name von ETSI für den Formfaktor der M2M SIM, d.h. einer lötbaren SIM für den Gebrauch in Automatenmodulen. SON-8 orientiert sich an einer JEDEC-Spezifikation und hat eine Größe von 5 mm x 6 mm. Frühere Bezeichnungen waren auch (V)QFN8, SON8 und DFN8.

1. Jan 2010German

Hot-Spot-Distribution

Was ist eine Hot-Spot-Distribution bei NVM?

Die Anzahl der Schreib-/Löschvorgänge in nichtflüchtige Speicher (NVM - non volatile memory, z.B. Flash-Speicher) ist, technologisch bedingt, begrenzt. Ein typischer Wert bei Chipkarten ist dabei 100 000 garantierte Schreib-/Löschvorgänge in Flash-Speicher. Da in manche, oft sehr kleine, Speicherbereiche jedoch manche Daten sehr häufig geschrieben werden, würde dies zu einer verringerten Lebensdauer der Chipkarte führen. Die Stellen an denen Daten sehr oft geschrieben werden nennt man auch "Hot-Spots". Da wiederum andere Daten sehr selten geschrieben werden versucht man hier einen Ausgleich zuschaffen. Dazu werden vom Betriebssystem der Chipkarte oder von der Hardware des Mikrocontrollers die physischen Speicherorte der im NVM abgelegten Daten verschoben. Somit verteilt man die Last der Schreib-/Löschzugriffe auf eine größere Anzahl von Speicherbereichen. Dies erhöht signifikant die Lebensdauer der Chipkarte. Allerdings muss der Vorgang der Hot-Spot-Distribution atomar erfolgen, damit ein plötzlicher Spannungsabbruch nicht zu undefinierten Daten im NVM führen kann. FTLs (flash transaction layer) bei Flash-Massenspeichern haben neben der Deaktivierung von defekten Bereichen eine ähnliche Funktion.

FAQ 2009

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

4. Dez. 2009German

Java Card 3.0 and EEPROM

I am writing a JAVA Card 3.0 applet. I would like to write data into the EEPROM on the smart card. Could you please provide me some pointers for the best way of achieving this.

Just use the standard Java Card API to write into the EEPROM. All the details are done by the Java Card OS.

10. Oct. 2009German

SIM appication management over the air (OTA)

I want controll UICC applications in a secure manner from a background system. So I need to send the UICC applications in a full security preserving manner to the card. Do you have any suggestions or advises for me like any specification or book I need to study?

Your thoughts concerning the application management over a secure channel are rigth. This is since a few years the usual way to load and delete applications in (Java based) smart cards (SIM cards) over the air in mobile phone systems. The usual name for this is RAM (remote application management) and the relevant standard for the application management inside the card is the Global Platform Spezificationen (www.globalplatform.org). Nearly all Java SIM cards do support most of the functionality of this specification. The secure data transmission over the air (OTA) from a background system to the SIM card is standalized by the ETSI (www.etsi.org) specification TS 23.048 "Security Mechanisms for the (U)SIM Application Toolkit"

23. Sept. 2009German

FIA

Was ist FIA ?

Bei einer FIA (fault induction analysis, in etwa: Analyse mittels Fehlereinstreuung) wird durch äußere Einflüsse (Lichtblitz, Strahlung, ...) versucht auf dem Chipkarten-Mikrocontroller gezielt eine Fehlfunktionen hervorzurufen. Die induzierte Fehlfunktion nutzt man aus, um ein auf dem Chipkarten-Mikrocontroller gespeichertes Geheimnis herauszufinden. Die häufigste FIA wird umgangssprachlich Lichtangriff (light attack) genannt oder auch als Optical Fault Induction (OFI) Attack bezeichnet. Bei dieser Art von Angriffen auf den Chipkarten-Mikrocontroller wird dieser kurzzeitig und selektiv an einer bestimmten Stelle mit Licht hoher Intensität bestrahlt. Dieses kann beispielsweise aus einem Lasercutter stammen. Durch die hohe zugeführte Energiemenge kann es zu Fehlfunktionen des Mikrocontrollers kommen, die dann für Angriffe auf den Chip genutzt werden können.

17. Sept. 2009German

CNP

Was ist CNP-Fraud?

CNP-Fraud (card not present fraud) ist der Betrug mit Kreditkarten in solchen Fällen in denen die Karte nicht vorgezeigt werden kann, wie beispielsweise Einkäufe über Internet oder per Telefon. Die Betrüger verwenden dabei üblicherweise die Transaktionsdaten (Kartennummer, Name, Verfallsdatum) einer Kreditkarte. Eine Gegenmassnahme war die Einführung eines zusätzlichen Sicherheitskode, der für die eigentliche Transaktion nicht benötigt wird und der Prüfung des Vorhandenseins der Kreditkarte dient. Dieser Sicherheitskode darf auf den Transaktionsbelegen nicht ausgedruckt werden und hat unter anderem die Bezeichnungen Card Validation Code (CVC), Card Verification Value (CVV), Card Security Code (CSC) oder Kartenprüfnummer (KPN). Ein anderes Verfahren zur Prüfung ob bei einer Transaktion auch eine physische Karte vorliegt die die Abfrage der Anschrift des Kartenbenutzers. Dies wird Address Verification System/Service (AVS) genannt.

10. Sept. 2009German

ISO-Protokoll

Was ist bei Chipkarten ein ISO-Protokoll?

Als ISO-Protokolle bei Chipkarten werden die beiden Übertragungsprotokolle T=0 und T=1 bezeichnet, da sie über ein Jahrzehnt lang die beiden einzigen Protokolle waren, die Eingang in die ISO/IEC 7816 Normenreihe gefunden hatten. Allerdings wäre strenggenommen demnach mittlerweile auch USB ein "ISO-Protokoll", da es in der Zwischenzeit ebenfalls in der ISO/IEC 7816 normiert ist.

5. Sept. 2009German

CSIM

Was ist die CSIM?

Die CSIM (CDMA Subscriber Identify Module) ist die Bezeichnung für ein Sicherheitsmodul das sich austauschbar in mobilen Endgeräten des Mobilfunksystems CDMA 2000 befindet. Die CSIM hat eine ähnliche Funktionalität wie die SIM, jedoch mit dem Kryptoalgorithmus CAVE (cellular authentication, voice privacy and encryption), der für eine Vielzahl von kryptografisch gesicherten Funktionen in der CSIM eingesetzt wird. Die CSIM kann auch als Applikation auf einer U-ICC realisiert sein. Die mittlerweile überholte frühere Bezeichnung für die CSIM war R-UIM (removable user identity module).

5. Sept. 2009German

M2M-SIM

Was ist eine M2M-SIM?

SIM-Karten die im Umfeld von Automaten, Telemetrie-Geräten und im weiten Feld des Automotivebereichs eingesetzt werden, bezeichnet man zusammenfassend als M2M-SIM. Dabei sind Funktionalität und Sicherheitsanforderungen an den Mikrocontroller in der Regel unverändert, lediglich die Anforderungen hinsichtlich des Temperaturbereichs und der Lebensdauer sind deutlich erweitert. M2M-SIMs werden als (übliches) Plug In oder fest eigelötet als SMD (surface mounted device) eingesetzt.

1. Sept. 2009German

Mifare-Emulation

Was ist die Mifare-Emulation?

Kontaktlose Chipkarten mit Mifare-Funktionalität bestehen seitens der Chiphardware typischerweise aus einem Speicherchip mit zusätzlicher Sicherheitslogik, sie sind also in ihrer einfachsten Form keine Prozessorkarten. Die Mifare-Emulation ist nichts anderes als die Nachahmung (Emulation) der Mifare Funktionalität auf einer Prozessorkarte, üblicherweise als eine Applikation von mehreren. Dazu muss die Prozessorkarte die entsprechenden Voraussetzungen seitens der Hardware bieten, die gesamte Logik von Mifare wird jedoch mit Programmkode für den Prozessor abgebildet.

20. Aug. 2009German

Open Smart Card Operating System

Is there a Open Smart Card Operating System available?

Some years ago there were 3 or 4 open smart card projects but it seems that only one survived. It is the SOSSE project at http://www.mbsks.franken.de/sosse/. There is also some source code for quite simple SIM cards at users.net.yu/~dejan and forum.gsmhosting.com/vbb/index.php available

20. Juni 2009German

Type Approval

Was ist bei Chipkarten ein Type Approval und gibt es Beispiele dafür?

In bestimmten Einsatzfelden von Chipkarten gibt es sogenannte Type Approvals (deutsch: Bauartzulassung). Ein Type Approval bei Chipkarten ist eine Prüfung der Chipkarte ob sie den spezifizierten technischen Anforderungen entspricht. Wird die Prüfung positiv beschieden dann wird von der prüfenden Instanz ein Type Approval erteilt und die Chipkarte darf in Umlauf gebracht werden. Ein Beispiel findet sich im Bereich von Zahlungsverkehrskarten. So erteilt Visa nach erfolgreicher Prüfung ein Type Approval für EMV-Kreditkarten mit Chip, das 2 Jahre gültig ist und anschließend nochmals um 2 Jahre verlängert werden kann. Erst nach Erteilung des Type Approvals darf der Kartenhersteller die Karten an die Visa Mitgliedsbanken vertreiben.

15. Juni 2009German

Smartcard-Middleware

Was ist eine Smartcard-Middleware?

Eine Smartcard-Middleware ist eine Art Zwischensoftware auf dem PC, die den PC-seitigen Applikationen eine einheitliche Schnittstelle für den Zugriff auf (verschiedene) Chipkarten zur Verfügung stellt. Beispiele dafür sind PKCS#11, MS-CAPI (Microsoft Cryptographic API), CNG (Cryptographic API Next Generation) und die ISO/IEC 24727.

16. Juni 2009German

LFI

Was ist LFI?

Als LFI (laser fault induction) wird die Fehlereinstreuung (fault induction) durch kurze und stark fokussierte Laserblitze auf den Mikrocontroller bezeichnet. Dies kann im ungünstigsten Fall zur Änderung von Daten oder Änderung von Programmabläufen führen. Da LFI-Angriffe zeitlich exakt mit dem Ablauf des Maschinenprogramms synchronisiert sein müssen ist die typische Gegenmassnahme die Verwendung von zufallsgesteuerten Wartezeiten.

1. Juni 2009German

SDA ,DDA

Was ist eigentlich SDA und DDA?

SDA (static data authentication) und DDA (dynamic data authentication) sind Verfahren zur Echtheitsprüfung von Kreditkarten mit Prozessorchip nach der EMV-Spezifikation. Bei SDA werden bereits bei der Personalisierung unveränderliche Kartendaten mit dem geheimen RSA-Schlüssel des Kartenherausgeber signiert und in der Karte gespeichert. Die Chipkarte muss dazu keinen RSA-Algorithmus rechnen können da die Signatur statisch ist und bei der Authentisierung vom Terminal oder Hintergrundsystem geprüft wird. Der Vorteil dabei ist, dass die Chipkarte keinen numerischen Koprozessor für RSA benötigt, was den Preis reduziert. Der Nachteil ist, dass dieses Verfahren nicht gegen duplizierte Karten schützt.

Bei DDA hingegen signiert die Chipkarte feste und variable Daten der Chipkarte und des Terminals mit dem RSA-Algorithmus. Damit ist die Signatur dynamisch, d.h. bei jeder Transaktion unterschiedlichen. Die wird anschließend vom Terminal bzw. dem Hintergrundsystem überprüft und so die Authentizität der Chipkarte überprüft. Dieses dynamisches Verfahren ist gegenüber dem statischen SDA-Verfahren deutlich sicherer erfordert jedoch einen RSA-Koprozessor auf dem Chipkarten-Mikrocontroller, was den Preis des Chips etwas erhöht.

27. May 2009German

SMS with an APDU inside

Can I send from an application on the PC APDUs to an application on a UICC smartcard in a mobile device?

In some cases it is possible to send a SMS according to the TS 23.048 standard from a PC via a connected mobile phone to an other mobile phone. But there are USIMs in the field which have a so called "sender validation" and this USIM checks if the message comes from the right sender.

In the case that you can send a SMS to an other mobile phone, you have to use the so called "SIM specific SMS" which will be transferred in any case from the mobile phone to the USIM. This is important because some mobile phones store the SMS in their own memory and not in the SIM anymore. The SIM receive this SMS and check if it is a usual text SMS for the user or this specific SMS. If it is a usual text SMS it will be stored in the EF SMS. If it is a specific SMS the SIM check all the security stuff (e.g. check the MAC, decrypt the message). If all this is ok the SIM interpret and execute the APDU which was inside the SMS. Depending on some parameters of this SMS the USIM can send data back to the sender including security.

For receiving and interpreting such an SMS you need some keys from the network operator, because their is always a minimum security level defined. This secures that it is not possible for attackers to access the SIM via over the air. Usually it is not possible to get this keys.

22. Mai 2009German

Template-Angriff

Was ist ein Template-Angriff?

Ein Template-Angriff ist eine vergleichende Strommessung beim PIN-Vergleich. Dazu sind jedoch einige Voraussetzungen zu erfüllen. Man benötigt zwei Chipkarten mit dem gleichen Mikrocontroller und dem gleichen Betriebssystem. Zusätzlich muss die PIN auf einer der Karten frei änderbar sein. Diese Voraussetzungen klingen schwieriger als sie in der Praxis wirklich sind, da von den Kartenemittenten zu einem bestimmten Zeitpunkt nicht allzu viele unterschiedliche Chiptypen inklusive Betriebssystem ausgegeben werden.

Das Angriffsszenario gestaltet sich nun folgendermaßen: Die erste Chipkarte, deren PIN bekannt und beliebig änderbar ist, verwendet man um für alle möglichen PINs (d.h. „0000“ bis „9999“) jeweils ein Stromreferenzmuster zu ermitteln. Dies kann man auch mit überschaubaren Aufwand automatisieren, so dass es sich in kurzer Zeit durchführen läßt. Die gemessenen Stromsignaturen sind abhängig vom Mikrocontroller, dem Betriebssystem und natürlich von den verglichenen PINs. Die Zeitspanne der Messung kann dabei beispielsweise die Kopierfunktion umfassen, die die Referenz-PIN vom nichtflüchtigen Speicher (EEPROM, Flash) zum darauf folgenden Vergleich ins RAM kopiert.

Nun sendet man eine beliebige PIN an die zweite Chipkarte mit der unbekannten PIN und misst dabei mit genügend hoher Auflösung den Stromverbrauch während des gleichen Zeitraums wie bei der Referenzkarte. Das dabei gemessene Strommuster vergleicht man anschließend mit den Stromsignaturen der ersten Karte und ermittelt daraus durch einfachen Vergleich die unbekannte PIN.

Eine detailierte Beschreibung zu diesem Thema findet sich hinter diesem Link.

17. Mai 2009German

invasive Angriffe

Was sind invasive Angriffe?

Ein invasiver Angriff bedeutet, dass ein physischer Eingriff auf dem Chip vorgenommen wird. Klassisch zu nennende Beispiele sind hier FIB (focused ion beam) oder Laser Cutter. Bei den non invasiven Angriffen hingegen wird kein physischer Einfluss auf den Chip ausgeübt, sondern nur das Verhalten des Chips von außen messtechnisch beobachtet. Die Beispiele hierzu sind Strommessungen (SPA/DPA), Abstrahlungsmessungen (SEMA/DEMA - simple electromagnetic analysis/ differential electromagnetic analysis) und Zeitmessungen (timing attack).

In der Mitte zwischen diesen beiden Polen bewegen sich die semi invasiven Angriffe. Bei ihnen werden zwar keine physischen Änderungen auf dem Chip durchgeführt, allerdings wird der Chip trotzdem von außen beeinflusst. Dies kann etwa das fokussierte Licht eines Lasers sein oder auch energiereiche Strahlung. Die beabsichtigte Wirkung ist dabei in der Regel die Einstreuung von Fehlern in den Programmablauf des Mikrocontrollers. Mit dieser Dreiteilung lassen sich alle derzeit bekannten Angriffe auf Chipkarten gut zuordnen, was ganz gewiss eine Voraussetzung für umfassende Schutzmassnahmen ist.

Eine detailierte Beschreibung zu diesem Thema findet sich hinter diesem Link.

16. Mai 2009German

Mini-UICC

Wo ist eigentlich die Mini-UICC spezifiziert?

Diese ist in der ETSI TS 102 221 festgelegt, die über die Webseite von ETSI umsonst heruntergeladen werden kann.

21. April 2009German

text mode for SMST4PIC

I want  to send the SMS in text mode not in PDU mode, so please can you help me in this?

Text mode is quite easy, just send the ASCII text instead of the PDU to the mobile phone. The rest is similar than in PDU mode.

19. April 2009German

buy SMST4PIC

I am interested in knowing if the SMST4PIC Version 5 and 6 is available. I want to buy them for my home. Could you please send me the price and details.

The intention of the actual versions of SMST4PIC is to use it as a basis for your own developments. There is no out of the box version at the moment available. Maybe I will make in the future such a version but until now you had to adopt the software by your own.

19. April 2009German

silberne Moduloberfläche

Aus welchem Material bestehen eigentlich die silbernen Moduloberflächen?

Im Gegensatz zu den bislang üblichen Kontaktflächen aus Gold bestehen die silberfarbigen aus Paladium. Dieses wird in der Regel als zusätzliche Schicht auf die bereits bestehende Goldoberfläche aufgebracht. Gerade im Bereich von Zahlungsverkehrskarten sind Module mit silbernen Kontaktfläche vor allem aus Designgründen zur Zeit sehr beliebt.

18. April 2009German

Dual-Core-Prozessor

Gibt es eigentlich Dual-Core-Prozessoren bei Chipkarten-Mikrocontrollern?

Es gibt einen Hersteller, der neuerdings zwei CPUs in seinen Chipkarten-Mikrocontrollern einsetzt. Der Grund dafür ist nicht wie bei PCs die damit erreichbare größere Rechenleistung sondern eine Erhöhung der Sicherheit. Diese resultiert sich daraus, dass die Störung (z.B. durch Glitch, Licht, Strahlung, ...) einer CPU recht zuverlässung durch logischen Vergleich mit der identisch ausgeführten Rechenoperationen der anderen CPU erkannt werden kann.

24. März 2009 German

CAMS

Was ist ein CAMS?

Ein CAMS (card application management system, deutsch Kartenanwendungsmanagementsystem) ist die zentrale Komponente des Hintergrundsystems während der Kartenbenutzung. Die Hautpaufgabe ist die Verwaltung des Karten- und Anwendungslebenszyklus (card/application life cycle). Konkret ist dies das Management der in Benutzung befindlichen Chipkarten, die auf ihnen gespeicherten Anwendungen und der dazugehörigen Daten inklusive Schlüssel. Manche CAMS ermöglichen auch eine Rekonstruktion der auf den ausgegebenen Chipkarten befindlichen Anwendungen und Daten, damit man eine defekte oder verlorenen gegangene Karte ohne zusätzliche Schritte neu ausgeben kann.

23. März 2009 German

Software SIM

Was ist eine Software SIM?

Eine SIM (subscriber identity module) ist die übliche Bezeichnung für die GSM-spezifische Chipkarte. Sie ist ein obligatorisches Sicherheitsmodul, das sich austauschbar in mobilen Endgeräten des GSM-Mobilfunksystems befindet und mittlerweile ausschließlich als Plug-In-Karte im ID-000-Format ausgeführt ist. Sie ist der Träger der Identität des Teilnehmers und hat als Hauptaufgabe die Sicherstellung der Echtheit des Mobiltelefons gegenüber dem Netzwerk.

Eine Software SIM ist die Funktionalität einer SIM als Simulation auf einem Rechner, wie beispielsweise auf dem Applikations-Prozessor des Mobiltelefons. Dies entspricht nicht dem ursprünglichen ETSI-Standard, da die SIM als herausnehmbare ("removeable") Hardware ausgeführt sein muss. Der Vorteil einer Software SIM ist, dass man im Mobiltelefon keine Hardware (SIM, Kartenterminal) mehr benötigt, der Nachteil ist die u.U. geringere Sicherheit.

13. March 2009German

smart ration cards

I'm working on a system where the people would get smart ration cards. There will be a centralized database at the headquarters with all necessary details of the residents. Please give me suggestions about what type of chips can be used and how come this project could be implemented in a safe manner.

A smart card can communicate much faster than 9600 bit/s, 115 kbit/s are today usual. Don't use DES for new systems, it is not secure enough. Triple-DES or AES would be the approbriate algorithm. Don't use RSA with less than 1024 bit key length for new system, it is not secure enough. 2048 Bit key length would be future proof.

Be careful with a fingerprint reader for people who do physical work with their hands, the readers might not work well. Specify the amount of data you want to store into the card, this is one of the most important criteriums to choose a specific card. Specify the standard for the card operating system, for your application it should be ISO/IEC 7816-4.

Use UML diagramms for the use cases, this is much clearer than a textual description. Specify the reliability of the terminal-server-connection, e.g. 99,99 percent of the time.

2. March 2009German

SMST4PIC

How can i write your code to IC?

If i want to modify your code, what tools i need?

For writing the binary file to a PIC controller you need a programmer like the PICkit2 from Microchip or similar. You should use MPLAB for modification, this is the free development environment including hardware simulation from Microchip.

18. Februar 2009 German

Eavesdropping und Skimming

Was ist eigentlich der Unterschied zwischen Eavesdropping und Skimming?

Mit Eavesdropping wird das Abhören des Datenaustausches zwischen zwei Geräten (z.B. Terminal und kontaktbehaftete oder kontaktlose Chipkarte) bezeichnet. Das typische Beispiel ist das Abhören der Kommunikation zwischen Terminal und Chipkarte über einen Zwischenstecker (auch Paddle oder Kelle genannt).

Beim Skimming findet ein Datenaustausch mit der Karte statt, der an dem eigentlichen Benutzer vorbei geht. Dabei werden Daten einer Magnetstreifen- oder Chipkarte durch den Angreifer gelesen. Ein typisches Beispiel für Skimming ist das Ausspähen der PIN-Eingabe und das unbefugte Lesen des Magnetstreifens an Geldausgabeautomaten.

8. Februar 2009 German

Echtzeituhr (RTC)

Gibt es Smart Cards mit eingebauter Echtzeituhr (RTC)?

Bisher gibt es keine Karten mit eingebauter Echtzeituhr. Das liegt daran, dass man keine Stromquelle für die Echtzeituhr zur Verfügung hat, die die "stromlose Zeit" zwischen den Sitzungen an einem Terminal überbrückt. Es gibt neuere Karten mit Display, Taster usw. die eine Batterie haben und bei denen es im Prinzip möglich wäre auch eine Echtzeituhr als separaten Chip einzubauen. Ich kenne aber aktuelle keine Implementierung einer solchen Konfiguration. Sicherheitstechnisch wäre in so einem Fall natürlich zu hinterfragen, was passiert, wenn man die Batterie für eine gewisse Zeitspanne von der Echtzeituhr abklemmt. Dies müßte zuverlässig vom Chipkarten-Mikrocontroller erkannt werden, ansonsten könnte man hier nahezu beliebige Manipulationen der Zeit vornehmen.

FAQ 2008

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

13. Dezember 2008 German

Wormhole-Angriff, Relais-Angriff

Was ist eigentlich ein Wormhole-Angriff?

Dies ist ein anderer Name für einen Relais-Angriff. Dabei wird die Kommunikationsreichweite einer kontatklos arbeitenden Chipkarte über eine Übertragungsstrecke durch den Angreifer "verlängert". Der Angreifer kommuniziert dann verdeckt über einen sogenannten "Leech" mit der Originalkarte und leitet die Kommunikation zu einem "Ghost". Mit diesem Ghost kann dann der zweite Angreifer an einer entfernt stehenden Kasse beispielsweise bezahlen. Die Kasse kann den Ghost informationstechnisch nicht von der originalen Karte unterscheiden, da er sich aufgrund der "verlängerten" Verbindung wie die Originalkarte  verhält. Dies ist ein typischer Angriff auf kontaktlos arbeitende Chipkarten mit Bezahlfunktion. Ein Schutz kann durch einen faradayischen Käfig (z.B. Alufolie) um die Originalkarte oder durch einen bei der Bezahlung zu betätigenden Taster auf der Originalkarte stattfinden.

8. Dez. 2008German

SMST: MAX232

Is the MAX 232 in SMST neccessary?

The converter in the Nokia cable make from the est. 0/3 Volt phone output a RS232 conform output with ± 12 Volt. If you connect SMST direct to the phone you can eleminate the MAX232 on the PCB. This will reduze the number of components and also the size of the PCB. But be careful with the voltage level of this interface. You should measure the voltage before connecting phone and SMST. Maybe you need some resistore for level adaption.

6. Dez. 2008German

SMST: RS232 connection to phone

On your project the output is called RS232, with a DB9 plug. Do I need a specific cable for connecting my Nokia 6100 phone (kind of RS-232 converter), or can I just connect your transmitter directly to the FBUS pinouts ?

The best is to use the original cable from Nokia because there is a voltage converter inside the plug of the cable. The DTR-Pin supports this converter with power. A direct connection between SMST and phone can damage the phone, because of the RS232 signals.

4. Nov. 2008German

SMST: communication problem

I sent an AT command to the mobile phone and get only some strange values back.

Try to establish first a communication via RS232 between your PC and the phone. With some cable between phone and PC/microcontroller the DTR pin on the PC-side of the RS232 cable must be activated!.

If you get only strange values/characters it could be that you have set a wrong data transmission rate on the PC-side. Try 9600 bit/s, 8 bit data, 1 stop bit, and no parity bit. This should work in most of the cases.

For testing I use HTerm (www.der-hammer.info/terminal). This freeware gives you all possibility you need to communicate with a mobile phone.

22. August 2008 German

Nachbilden und klonen von Karten

Mit welchen Hilfsmitteln (Software, Hardware (Smart Card)) lassen sich in kurzer Zeit ein Teil einer bestehenden Smart Card nachbilden?

Gibt es eine Möglichkeit Karten zu klonen? Wenn ja welche Hilfsmittel könnten Sie hierzu empfehlen?

Grundsätzlich muß man hier zwischen Speicherkarten und Prozessorkarten unterscheiden. Speicherkarten ohne Zugriffsschutz durch Authentisierung (PIN oder Challenge-Response-Verfahren können i.d.R. komplett ausgelesen werden. Kopiert man den Dateninhalt dann auf einen entsprechenden Rohling, dann hat man einen Klon. Allerdings sollte dies allen aktuellen und professionell aufgebauten Chipkartensystemen nicht mehr möglich sein.

Bei Prozessorkarten benötigen Sie im einfachsten Fall eine Java Card Entwicklungsumgebung sowie einige dazu passende Java Karten. Damit können Sie dann die Funktionalität der Orginalkarte nachbilden, sofern Sie auch die dazu notwendigen Spezifikationen haben. Ein Zugriff auf alle Daten der Orginalkarte ist in der Regel nicht möglich, da die geheimen Schlüssel zur Authentisierung und damit zur Erreichung der Leseberechtigung i.d.R. nur dem Systembetreiber bekannt sind. Deshalb kann man im Falle von Prozessorkarten eigentlich pauschal behaupten, dass ein Klonen mit normalen Bordmitteln nicht möglich ist.

14. Aug. 2008German

mobile phone number discovery

I'm looking for something that will allow to get in an automatic way the telephone number of GSM cell phones around a specific location. Is this possible?

I think this is not possible. The whole data and voice transmission between mobile phone and base station is encrypted. This encryption is quite strong and until now it is not possible to extract from this encrypted data stream the data you need for your idea.

13. August 2008 German

Firmenkarte

Es geht um das Single Sign On an einer Workstation mittels einer Smartcard, allerdings wird eigentlich eine "eierlegende Wollmilchsau" der Smartcards gewünscht, welche den Dienstausweis, die Zutrittskontrolle, eben dieses Single Sign On sowie eine "elektronische Geldbörse" beinhaltet. Der Hintergrund dieser Multifunktionskarte ist schlicht und ergreifend der, dass der Mitarbeiter quasi durch die Zutrittsfunktion "genötigt" wird, die Karte vom SmartCard Terminal am Rechner ab zu ziehen um denselben zu sperren. Nun wurden jedoch Bedenken geäussert, dass die Mitarbeiterdaten, welche auf der Smartcard aufgedruckt sind, sofern diese verloren geht, wohl eher einen kriminellen Akt provozieren könnten beim Finder.

Ist Ihnen ein Betrieb bekannt, in dem eine Smartcard mit mehreren Funktionen zum Einsatz kommt? Sind die Karten dort auch als Mitarbeiterausweise in Betrieb mit Fotos und Mitarbeiterdaten? Wie sieht es mit der Art der Karten aus, werden die von den Betrieben selbst segmentiert und programmiert, oder werden sie vom Chipkartenhersteller bereits so angeliefert?

In der Praxis kommen alle beschriebenen Varianten vor. Die Idee zusätzliche Funktionen wie Zugang auf die Karte aufzubringen ist sicherlich gut, da der Benutzer damit gezwungen wird seine Karte immer bei sich zu haben und beim Verlassen des Arbeitsplatz i.d.R. dann auch mitnimmt. Damit wird dann automatisch der Arbeitsplatzrechner gesperrt. Zusätzlich sollte man zum Sperren des Arbeitsplatzes noch einen Timeout einsetzen. Dies deckt dann auch noch die Fälle ab, in denen der Mitarbeiter längere Zeit mit einem Kollegen im Nachbarbüro diskutiert, da er in solchen Situationen vermutlich seinen Ausweis nicht aus dem Kartenleser des Arbeitsplatzes zieht.

Grundsätzlich würde ich bei Zugangskarten keinen Bezug zur betreffenden Firma herstellen, da dies dem Finder mehr oder minder dazu einlädt die Karte mal an der entsprechenden Stelle "auszuprobieren". Bei kleineren Betrieben wird sich sicherlich nicht die Anschaffung eines Ausgabeterminal mit Drucker rentieren, sondern man wird die Karte vollständig bedruckt und personalisiert von einem entsprechenden Lieferanten beziehen. Bei größeren Firmen wird man mit vorbereiteten Rohlingen arbeiten, die dann mit einem entsprechenden Kartendrucker direkt vor Ort und bei der Ausgabe personalisiert werden.

10. Juli 2008 German

Hello World bei Java Card

Ich habe eine Beispiel-Applikation "helloWorld" in form einer CAP-Datei vorliegen. Diese habe ich mittels scriptgen in eine .scr Datei gewandelt, welche aus APDU-Befehlen besteht. Diese Datei wurde mit powerup, "select AID Appl" und powerdown ergänzt. Auch das aufspielen auf die Karte mittels APDUTOOl (Kommandozeile: apdutool -pcsc helloworld.scr) und dem Listener gibt mir als Antwort-SW1/2 '9000' zurück.

Wie kann ich prüfen ob das Applet wirklich auf der Karte ist und wie kann ich es "ausführen"?

Ich denke der Ablauf war völlig korrekt und '9000' zeigt eigentlich auch an, dass das Applet erfolgreich auf die Karte geladen wurde. Wie man nun testen kann ob wirklich alles fehlerfrei verlaufen ist hängt davon ab, was die "Hello World" Anwendung auf der Karte macht. Wäre es ein PC-Programm, dann würde man bekanntermaßen bei der Ausführung auf dem Monitor den "Hello World" Text sehen. Bei einer Chipkarte ist das nicht so einfach, da diese keine direkte Ausgabemöglichkeit zum benutzer hat. In der Regel muss man ein spezielles Kommando zur Karte senden und erhält dann als Antwort das "Hello World" ASCII-kodiert im Datenteil der Antwort-APDU. Falls Sie den Quellkode zur CAP-Datei haben sollten Sie diesen genauer anschauen, dann kriegt man normalerweise recht schnell heraus welches Kommando man zur Karte senden muss. Falls Sie jedoch nur die CAP-Datei haben, dann müßten Sie versuchen aus dieser den Quellkode zu rekonstruieren (d.h. einen Disassembliervorgang auszuführen) um herauszufinden wie Sie der Karte "Hello World" entlocken können.

2. Juni 2008 German

SWP Chipkarte

Wie kann man eine Chipkarte erkennen, die mit SWP kommunizieren kann?

Rein optisch sieht man es einem normalen 6- oder 8-Kontakt-Modul nicht an, ob darin ein Chip mit SWP-Schnittstelle steckt. Ein Ansatz wäre mit einem Multimeter im Betrieb der Chipkarte den elektrischen Pegel des Konatkts C6 zu messen. Befinden sich dieser auf den typischen SWP-Pegel, dann wäre dies ein ganz gutes Indix dafür, dass diese Chipkarte SWP unterstützt.

2. Juni 2008 German

USB Chipkarte

Wie kann man eine Chipkarte erkennen, die mit USB kommunizieren kann?

Sofern diese Chipkarte kein spezielles Modul hat, das direkt auf die USB-Buchse paßt wird es schwierig. Rein optisch sieht man es einem normalen 8-Kontakt-Modul nämlich nicht an, ob darin ein Chip mit USB-Schnittstelle steckt. Ein Ansatz wäre mit einem Multimeter im Betrieb der Chipkarte die elektrischen Pegel der Konatkte C4 und C8 zu messen. Befinden sich diese auf den typischen USB-Pegeln, dann wäre dies ein ganz gutes Indix dafür, dass diese Chipkarte USB unterstützt.

20. Mai 2008 German

Chipkarte als Speicher für Benutzeridentitäten

In einer Arbeit wollen wir die eine Prozessor-Chipkarte als sicheren Speicher für Benutzeridentitäten benutzen. Wenn ich mir überlege wie sehr die Chipkarte in der Gesellschaft verbreitet ist um z.B. sichere Schlüssel zu speichern, dann verstehe ich noch nicht, weshalb wir die Karten auf eine relativ "primitive" Weise benutzen. Wir besitzen mindestens drei Karten, speichern andere, geheime Informationen (z.B. Passwörter) nicht auf der Karte (wir haben ja auch keine Lesegeräte etc.). Die Chipkarte hat durch den "einfachen" Passwortschutz auch seine Nachteile, nur treten die in den Hintergrund wenn man beachtet, dass wir geheime Informationen sonst z.B. auf Notizzettel schreiben. Ich glaube nicht daran, aber haben wir hier ein technisches Problem? Ist der Datendurchsatz und die Prozessortaktrate zu gering, damit man die Karte "angenehm" benutzen kann?

Mittlerweile haben Chipkarten sowohl genügend Rechenleistung (z.B. ARM7 32 Bit Prozessor) als auch genügend Speicher (bis 1 GByte Flash) für nahezu alle sinnvollen Einsatzgebiete. Auch die Chipkarten-Betriebssysteme haben einen Funktionsumfang erreicht, der eine nahtlose Einbindung in das PC-Umfeld ermöglicht, z.B. mit USB und TCP/IP an einen üblichen PV oder Mac.

Die Schwierigkeit liegt vielmehr darin die zur Verfügung stehende Chipkarten-Technik an die Vielzahl von Programmen zu integrieren. Denken Sie da mal nur an an Single-Sign-On im Firmenumfeld, seit Jahren diskutiert aber in der Praxis nahezu kein Fortschritt erkennbar. Erschwerend kommt da noch hinzu, dass der normale Benutzer wenig Schutzbedürfnis für seine persönlichen Daten hat. Es gibt da sicherlich noch einige weitere Punkte, die einer Integration nicht förderlich sind.

Ich bin allerdings auch nicht der Ansicht, dass man alle persönlichen Informationen auf eine einer einzigen Karte unterbringen sollte. Das würde im Falle des Verlustes oder des Defekts ein signifikantes Problem ergeben. Wesentlicher ist noch, dass bei verteilten Informationen der Benutzer mehr Möglichkeiten hat, den Zugriff darauf zu steuern. Da bin traue einem physischen Zugriffsschutz mehr als einem logischen.

18. April 2008 German

open source Chipkarten-Simulator

Ich bin auf der Suche nach einem open source Chipkarten-Simulator. So richtig fündig wurde ich nicht. Kennen Sie zufällig solche Simulatoren?

Eine frei verfügbare Version eines Chipkarten-Simulators kenne ich leider nicht. Manche Chipkarten-Betriebssysteme kann man für Testzwecke auch für PCs kompilieren, so dass man eine Simulation eines echten Betriebssystems hat. Der Vortel ist die deutlich höhere Geschwindigkeit und die bessere Entwicklungsumgebung als bei den üblichen Embedded-Umgebungen. Allerdings ist der Quellkode dieser Systeme in allen Fällen vertraulich.

10. März 2008 German

Single-Wire-Protocoll

Was ist eigentlich das Single-Wire-Protocoll?

Das SWP ist ein neues Vollduplex Protokoll mit einer einzigen Verbindungsleitung zwischen USIM und einem NFC-Controller in Mobiltelefonen. Dabei werden Daten in der einen Richtung durch Spannungsänderungen und in der Gegenrichtung über Strommodulation übertragen. Zur elektrischen Übertragung wird die Kontaktfläche C6 verwendet, die früher für die heute nicht mehr benutzte Programmierspannung Vpp vorgesehen war. Die SWP übergeordnete Protokollschnicht ist HCI (Host Controller Interface). Beide Spezifikationen sind über den Server von ETSI (www.etsi.org) frei verfügbar. SWP/HCI wird bei Mobiltelefonen eingesetzt, die NFC als zusätzliches Kommunikationsschnittstelle anbieten.

10. Februar 2008 German

Smart Card Webserver

Kann man auf einer aktuellen Java Karte einen Webserver implementieren?

Dies wurde bereits mehrmals realisiert. Allerdings mus man dabei die TCP/IP Kommunikation über ein eigenes case 4 Kommando tunneln und auf dem PC einen kleinen Treiber implementieren um die Komunikation zwischeb dem Browser auf dem PC und dem Webserver auf der Chipkarte herzustelen. Bei Java auf Chipkarten hat man leider keinen Strings zur Verfügung was die Programmierung etwas umständlich macht. Die HTML-Daten für den Webserver kann man als Java-Objekte oder auch in dem Dateisystem der Chipkarte ablegen. Letzteres vereinfacht die Administration, da man dazu die bereits vorhandenen Kommandos und die Rechteverwaltung des Dateisystems benutzen kann.

16. Jan. 2008 German

Java SIM with keys for download

I need an activated Java SIM with administrative rights to download an application on the SIM.

It is not possible to buy such a SIM. This kind of cards are available only internaly for the R&D people of GSM network operators.

FAQ 2007

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

14. Dez. 2007German

Aspects Developer und GemXpressso/GemXplorer

Im Rahmen dieses Semesters beschäftigen wir uns mit dem SIM Application Toolkit. Auf Grund unserer Anforderungen sind wir aber auf der Suche nach Aspects Developer von Aspects Software oder GemXpressso/ GemXplorer von Gemplus.

Haben Sie vielleicht Erfahrungen mit diesen IDE's oder vielleicht sogar einen Download dieser Software zu Verfügung? Ich suche zwar schon lange, finde aber nichts. Vielleicht haben Sie Quellen die mir weiterhelfen könnten.

Ich kenne diese beiden Entwicklungsumgebungen nur oberflächlich und habe auch keinen Zugriff darauf. Es gibt meines Wissens auch keine frei verfügbaren Entwicklungsumgebungen für das SIM Application Toolkit. Dies wird üblicherweise durch die Applikationsentwicklungen der Kartenhersteller abgedeckt und erfordert oft auch erhebliches Hintergrundwissen zum jeweiligen Chipkarten-Betriebssystemen

12. Nov. 2007German

Smart Card Development Tools

What development studio do you use for developing smart cards?

I use since years the Smart Card Professional Development Kit from G&D. This is a really very good development environment.

12. Nov. 2007German

SMST

Ich verwende ein Siemens C55, welches über COM1 betrieben wird. Das Senden von AT Commands an das Handy funktioniert einwandfrei. Auch Statusinformationen lassen sich vom Telefon abrufen. Das Senden einer SMS hat jedoch nur ein einziges Mal funktioniert. Seither werden die Informationen laut "read port" Information in Eclipse zwar an das Mobiltelefon gesendet, jedoch geht die SMS nicht vom Handy ab. Haben Sie eventuell eine Idee, was dieses Problem auslösen kann?

Es könnte helfen das Telefon auszuschalten und dann wieder einzuschalten. Eventuell ist auch der Protokollspeicher für SMS voll. Sie sollten evtl. auch mal ausprobieren die SMS manuel direkt vom Mobiltelefon aus zu versenden?

8. Nov. 2007German

Chipkarte mit Display

Gibt es inzwischen auch Chipkarten mit Display?

Chipkarten mit Display sind immer noch eine Seltenheit und werden bislang nur in kleinen Stückzahlen (d.h. einige hundert bzw. tausend) in Feldversuchen verwendet. Ein Hinderungsgrund ist der im Vergleich zu konventionellen Chipkarten immer noch hohe Preis, die Hauptgründe aber sind die technisch ziemlich aufwendige Herstellung und die Zuverlässigkeit über die Zeit. Immerhin muss man dabei eine Batterie, ein Display und mindestens einen Taster zusätzlich zum Chipmodul in einen 0,8 mm dicken Kartenkörper einbauen. Das Ganze muss dann mehrere Jahre Benutzung trotz hoher Beanspruchung (z.B. Aufbewahrung in der Geldbörse) überstehen.

7. Nov. 2007German

Chipkarten mit Display

Gibt es inzwischen auch Chipkarten mit Display?

Chipkarten mit Display sind immer noch eine Seltenheit und werden bisher
nur in kleinen Stückzahlen (d.h. einige hundert oder tausend) in
Feldversuchen verwendet. Ein Hinderungsgrund ist der im Vergleich zu
konventionellen Chipkarten immer noch hohe Preis, die Hauptgründe aber
die technisch ziemlich aufwendige Herstellung und die Zuverlässigkeit
über die Zeit. Immerhin muss man dabei eine Batterie, ein Display und
mindestens einen Taster zusätzlich zum Chipmodul in einen 0,8 mm dicken
Kartenkörper einbauen. Das Ganze muss dann mehrere Jahre Benutzung trotz
hoher Beanspruchung (z.B. Aufbewahrung in Geldbörse) überstehen.

7. Nov. 2007German

Anschalten des Terminals

In welcher Reihenfolge sollte man ein Terminal anschalten, dass verschiedene Spannungen für Chipkarten unterstützt?

Grundsätzlich kann eine Spannung von 5 Volt auch eine 1,8 Volt Karte nicht zerstören. Mann kann also eigentlich in einer beliebigen Reihenfolge mit den typischen Spannungen 5 Volt, 3 Volt, und 1,8 Volt verfahrten. Typischerweise wird man jedoch mit der geringsten Spannung beginnen und dann nur bei Bedarf schrittweise die höheren verwenden. Sobald das Terminal einen vollständigen und korrekten ATR empfängt wird die Chipkarte mit einer korrekten Spannung versorgt.

5. Nov. 2007German

asymmetrische Authentisierung

Ich habe viel über die Infineon SLE66 X Microcontroller Familie gelesen, welche auf Grund des Kryptoprozessors auf den ersten Blick sehr günstig für meine Anwendung scheint. Ist es überhaupt möglich, in kleinen Auflagen (200-400 Stück) Smartcards die z.B. mit dem CardOS Betriebssystem ausgeliefert werden zu entwickeln und zu programmieren?

Ist von einer gegenseitigen dynamischen asymmetrischen Authentisierung maximale Sicherheit in Bezug zu anderen Authentisierungsverfahren (wie z.B. einseitiger Symmetrischer) zu erwarten? Wenn ja, könnten Sie mir vielleicht ein einfaches mögliches Ablaufbeispiel einer Authentisierung geben oder, falls es das gibt eine Quelle bei der ich danach lesen könnte?

Authentisierungen mit asymetrischen Kryptoalgos werden bei Chipkarten höchst selten eingesetzt und die meisten Chipkarten-Betriebssysteme unterstüzen diese Funktionalität auch nicht. Bei der Authentisierung zwischen Chipkarte und äußerer Welt würde ich deshalb auch keine komplizierten asymmetrischen Verfahren verwenden sondern eine (solide und übliche) gegenseitige Authentisierung mit dem Kommando MUTUAL AUTHENTICATE. Je nach Chipkarten-Betriebssystem kann man dazu den AES einsetzen, dies ist dann auch von ziemlich hoher Sicherheit. Der Kommandoablauf dazu findet sich im Handbuch der Chipkarten bei der Beschreibung der Kommandos oder einfach nach MUTUAL AUTHENTICATE im Sachverzeichnis (Index) suchen.

17. September 2007German

H3G UICC

Auf einer SIM-Karte von H3G konnte ich keine IMSI finden.

H3G-Karten sind reine USIMs, d.h. es gibt keine SIM-Funktionen und SIM-Dateien auf so einer Karte. Die ist der Grund für die "fehlende" IMSI. Das EF IMSI befindet sich in diesem Fall nämlich im USIM ADF.

10. Sept. 2007 German

Auszüge aus Handbuch der Chipkarten

Wir bauen in unserer Firma gerade ein Wiki zum Thema Chipkarten auf. Die ideale Grundlage für das Wiki wäre, wenn man aus der englischen Version Ihres "Handbuchs der Chipkarten" einige Kapitel dort veröffentlichen könnte. Beginnen würde ich gerne mit dem Glossar, so daß die Definition der wichtigsten Begriffe festgelegt ist. Aber auch andere Kapitel wie z.B. die Protokolle T=0 und T=1 oder Informationen über kontaktlose Chipkarten wären aus meiner Sicht interessant.

Ich verstehe Ihr Anliegen vollkommen und kann die Argumente auch durchaus nachvollziehen. Allerdings ist es so dass man als Autor die Rechte an seinem Text an den Verlag gibt, der damit alle Rechte, d.h. das Copyright, hat. Aus dem Grund kann ich Ihnen leider keine Freigabe für Ihr Vorhaben geben.

Das Glossar gibt es übrigends frei verfügbar u.a. auch von meiner Homepage www.wrankl.de und die 4. Auflage Handbuchs der Chipkarten gibt es als 50 MByte PDF auf CD in neuen Buch über Chipkarten-Anwendungen.

7. Sept. 2007 German

Anwendung für Passwörter

Ich habe eine spezielle Software in xbase++ (Windows) (vormals Clipper (DOS)) geschrieben. Nun verlangt die Luftfahrtbehörde eine Zugangsberechtigung beim Ändern der Daten. Die Eingabe von Passwörtern ist ungeschickt, da ich gemerkt habe, daß diese sich recht schnell rumsprechen. Daher habe ich an ein Kartensystem gedacht. Von meiner Anwendung muß ich nur Paßwörter auf die Karte und diese während der Anwendung wieder lesen.

Ich hätte die Frage ob ein solches System mit Chipkarten für meine Anwendung überhaupt möglich ist. Falls ja, vielleicht hätten Sie einen Tipp wie ich das anstellen kann.

Ich denke so etwas würde man mit wenig Aufwand ganz gut hinbekommen. Die einfachste und sicherlich etwas primitive Lösung wäre die Ablage der Passwörter auf einer Speicherkarte im Klartext. Ihr PC-Programm könnte dann die Passwörter lesen und an die PC-Anwendung weiterreichen. Ein Angreifer könnte die Speicehrkarte einfach auslesen, was mit dem entsprechenden Terminal überhaupt kein Problem ist und dann sich auch ohne Karte gegenüber der PC-Anwendung authentisieren. Alternativ kann man den Inhalt so einer Karte natürlich auch leicht kopieren.

Eine kleine Verbesserung wäre die verschlüsselte Ablage der Passwörter auf der Speicherkarte. Das schütz zwar nicht gegen das Kopieren der Daten aber ein einfaches Auslesen und manuelle Eingabe wäre dann schon nicht mehr möglich. Man müßte dazu nämlich den geheimen Schlüssel aus dem Schnittstellenprogramm auf dem PC destilieren und den Inhalt der Speicherkarte damit entschlüsseln.

Die beste Lösung wäre sicherlich der Einsatz einer Prozessorkarte. Dort könnten Sie Ihre Passwörter in einer Datei ablegen, die als Zugriffsrecht die gegenseitige Authentisierung zwischen PC und Chipkarte hat. Die Passwörter würde ich trotzdem auf der Karte verschlüsselt ablegen, damit kann man sich gegen das Abhören der Verbindung schützen. Alternativ könnten Sie auch Secure Messaging benutzen, was jedoch verhältnismäßig kompliziert ist.

3. August 2007 German

Guthabenkarte

Wir möchten so etwas wie ein Gutscheinsystem auf Speicherkarte einführen und haben uns dabei auf eine Speicherkarte des Typs SLE 4406 eingeschossen, da diese Karte nach Abarbeitung des Guthabens unbrauchbar ist, und damit auch keine Manipulationen am Guthaben vorgenommen werden können.

Gibt es Anwendungen, die Sie uns empfehlen können, mit denen wir die Karten beschreiben können? Wir möchten die Karten nicht personalisieren oder ähnliches, sondern generell Guthabenkarten erzeugen. Vieleicht können Sie uns ja noch den ein oder anderen Tip geben, was wir beachten müssen.

Es hängt davon ab ob Sie alles selber bauen möchten oder bereits fertige Systeme einsetzen wollen. Bei den Fertigsystemen gibt es eine Reihe von Automatenherstellern, die inklusive der Karten alles anbieten. Darunter auch Terminals die man mit eigenen Funktionen erweitern kann. Dies könnte die Anbindung an eine vorhandene Kasse sein.

Will man so ein System selber bauen, so ist im einfachsten Fall nicht sonderlich aufwendig. Muss man allerdings Schnittstellen zu Geräten oder Kassen bedienen, dann kann dies sehr leicht zu Schwierigkeiten führen, da die Dokumentation oft nicht zur Verfügung steht.

Zur Ausgabe der Karten reicht ein PC mit einem Terminal sowie einer Software um die Speicherkarten auf den gewünschten Ausgabebetrag herunterzuzählen.

21. Juli 2007German

SMST: Senden von Wap-Push SMS im deutschen Mobilfunknetz

Ich wollte fragen, ob Sie eventuell wissen, ob es möglich ist, im deutschen Mobilfunknetz WAP-Push SMS anhand Ihres Transceivers zu versenden?

Ich habe mich vor einiger Zeit mal mit WAP beschäftigt. Nach Studium der diversen Spezifikationen und Dokumente habe ich mich aber entschlossen, das Thema nicht mehr weiterzuverfolgen. Dafür gab es zwei Gründe: a) WAP führt mittlerweile nur noch ein Nischendasein und die technische Entwicklung geht klar in Richtung Internettechnologien (auch am Mobiltelefon) und b) ich finde WAP (und auch MMS) viel zu umständlich und zu kompliziert.

Für eine nächsten Version des SMST wollte ich bei erkannter Bewegung nur noch eine SMS versenden und der Benutzer kann dann über seinen Internetbrowser auf dem Mobiltelefon auf das entsprechende Foto auf einer Internetseite zugreifen. Vorab muss natürlich das Foto auf die Seite geladen mit FTP werden. Dies alles kann man dann nämlich größtenteils mit Standart PC-Software realisieren.

16. Mai 2007German

EF ARR

Ich beschäftige mich gerade mit SmartCards und lese dabei Ihre Bücher Handbuch der Chipkarten und Chipkarten Anwendungen. Dazu möchte ich JavaCard Applets und eine dazugehörige PC-Terminalanwendung erstellen, mit der ich auf die Karte zugreifen kann (ändern, beschreiben, lesen, administrieren).

Der Aufbau der APDU etc. ist mir klar, allerdings brauche ich Beispiele, wie ein EF ARR aufgebaut wird, bzw. wie ich die Regeln für bestimmte EF, DF erstelle. Könnten Sie mir vielleicht helfen, wie so etwas im Code auszusehen hat?

EF ARRs sind leider ziemlich kompliziert aufgebaut und die möglichen Optionen hängen auch stark vom jeweiligen Chipkarten-Betriebssystem ab. Ein gutes Beispiel für ein EF ARR findet sich in der Beschreibung der Java Karte von G&D die meinem Buch über Anwendungen beiliegt. Dieses Beispiel sollte eigentlich auch 1:1 für die meisten Chipkarten im Telekommunikationsumfeld einsetzbar sein. Eine exakte Beschreibung zum Aufbau befindet sich in der ETSI Norm TS 102 221.

9. Mai 2007 German

Unterschied Pässe und ID-Karten zu Zahlungskarten

Wo liegt der Unterschied der zukünftigen ID-Karten und Pässe im Zahlungsverkehr (Sicherheit, Zertifizierung)?

Hinsichtlich der Angriffssicherheit sehe ich diese staatlichen Anwendungen auf dem Niveau von Zahlungskarten. Eine Common Criteria-Evaluierung und FIPS 140-2 sind absolut üblich in diesem Umfeld. Ich könnte mir hier sogar vorstellen, das in Zukunft bereits während der Entwicklung bestimmte Prozessmodele wie SPICE oder CMMI eingehalten werden müssen.

9. Mai 2007German

Multifunktion für Pässe und ID-Karten

Welche Art von Funktion sollen die zukünftigen ID-Karten und Pässe übernehmen (z.B. Ausweis und Führerschein kombiniert)?

Von multifunktionalen Karten sind wir bei diesen Anwendungen noch ziemlich weit entfernt. Ich sehe hier für die nächsten Jahre separate Anwendungen, die vieleicht irgendwann einmal auf einer Karte vereint sind. Der Abstimmungsaufwand ist bei den aktuellen Anwendungen bereits so groß, das er bei mehreren Anwendungen völlig aus dem Ruder läufen würde.

9. Mai 2007German

Chipkarten für Pässe und ID-Karten

Welche Art von Chipkarten werden für ID-Karten und Pässe benutzt (Speicherkarten,
Mikroprozessorkarten, kontaktbehaftet, kontaktlos)

Bei den Reisepässen haben sich wg. den ICAO Standards die kontaktlosen Prozessorchips fest etabliert. Im Bereich ID-Karten und Führerscheine sind aus meiner Sicht immer noch die kontaktbehafteten Prozessorkarten stark im rennen. Speicherchips können sich nur bei einfachen ID-Karten für Firmen etablieren. Im staatlichem Umfeld reicht die Funktionalität einfach nicht aus.

3. April 2007German

SMST4PIC V6

I would to build SMST4PIC v6. I have small wine-cellar, and I would install this alarm, because seems very smart!I also need temperature, water sensor and PIR to avoid intrusion. Because I'm not a programmer, I want only code for PIC. Is possible to get this code?

SMST4PIC V6 requires beside the hardware also some software knowledge. If you do not want to go into the assembler function of the software I think you should not start with SMST4PIC for your wine-cellar. There might be better solution on the market.

3. April 2007German

TSCS

I am trying to use your simulator. I know its been a while since you probably last used it too. But is it possible to port it to a more recent version of windows. I am using XP and i tried upgrading the project using VB 2005 but it failed. So I was wondering if is there anyway you could build a more recent version of the simulator and post it. But if you can or suggest a way to use it on a more current windows os. Or how to port it to another version of VB.

I'm not very familiar with the newest versions of VB but I used for TSCS no OS specific functionality. I'm quite sure that a portation to the actual Windows with the actual Visual Basic should be possible in one or two days. I think you simply should invest a few hours and look to the progress.

15. März 2007 German

Tachograph

Wir entwickeln unter anderem Software für den digitalen Tachographen. Der digitale Tachograph, welcher per 01. Mai 2006 in der ganzen EU eingeführt wurde, setzt ja zum Speichern der Daten auch auf die Chipkartentechnik. Wir haben mittlerweile bereits diverse Lösungen erfolgreich installiert. Das Auslesen der Chipkarten funktionierte bis anhin eigentlich immer wunderbar. Nun haben wir das erste Mal eine Fahrerkarte aus Frankreich erhalten und prompt funktioniert diese nicht mehr. Folglich eine Beschreibung des

Wir lesen die Daten von der Karte mit dem Befehl „Read Binary“. Und zwar beim ersten Mal „00B0000000“ und bei jedem weiteren Mal mit „00B0XXXX00“. Die zwei „00“ am Schluss stehen einfach für soviel lesen wie möglich. Dies funktionierte bisher wirklich tadellos. Nun kommt aber bei der französischen Karte der Fehler „6700“ zurück, was soviel wie falsche Länge bedeutet. Einerseits verstehe ich nun nicht, warum dies bei dieser Karte aus Frankreich wieder anders sein soll? Und anderseits verstehe ich nicht, wenn ich nun immer die Länge mitgeben muss damit es funktioniert, wie es dann bei den Segmenten mit variabler Länge funktionieren soll / kann, da ich ja nicht weiss, wie lange die Länge des letzten zu lesenden Blocks ist? Ich konnte das zwar nun so lösen, dass ich falls der Fehler 6700 auftritt eine Schlaufe von X = 255 TO 1 durchlaufe und jeweils mit der Länge X nochmals lese. Aber einerseits dünkt mich diese Lösung ziemlich unelegant und anderseits dauert das Auslesen diese Karte nun um ein *mehrfaches* länger.

Haben Sie eventuell eine Idee, wo da das Problem liegen könnte und wie man das anders lösen kann?

Meiner Meinung nach ist dies ein Interpretationsproblem der entsprechenden Spezifikationen. '00' kann man durchaus auch als Länge null interpretieren, wenn gleich auch viele Chipkarten-Spezifikationen dies als maximal mögliche Rückgabelänge bei READ BINARY festlegen. Ich kenne aus meiner Praxis beide Varianten. Es hängt letzten Ende von dem jeweiligen Chipkarten-Betriebssystem ab, das für die Anwendung eingesetzt wird. Leider habe ich die Spezifikation für die Chipkarte im Tachographen nicht griffbereit, denn da müßte es eindeutig festgelegt sein. Aus Gründen der Robustheit würde ich aber in Zukunft mit der jeweiligen Länge der gewünschten Daten auf die Datei zugrifen, da Sie nicht sicher sein können, dass nicht noch mehr Chipkarten in Verwendung sind, die ein solches Verhalten zeigen.

5. Jan. 2007German

COS für Mitarbeiterausweis

Ich beschäftige mich z.Zt. mit der Auswahl eines geeigneten COS (chip operating system) für unseren geplanten multifunktionalen Mitarbeiterausweis. Im Prinzip steht die Frage im Raum, ob wir auf eine "Java Card" oder auf eine der gängigen proprietären COS setzen sollen?

Eine konkrete Antwort auf Ihre Frage ist schwierig, da es darauf ankommt welche Funktionen Ihr Mitarbeiterausweis haben soll. Benätigen Sie den Ausweis nur zur Zeiterfassung und Zugangskontrolle, dann kommen sie mit einem nativen Chipkarten-Betriebssystem (d.h. ohne Java bzw. nachladbaren ausführbaren Programmcode) recht weit. Der große Vorteil ist, dass die Anwendungserstellung recht einfach ist. In diesem Falle würde sich auch eine Chipkarte mit kontaktloser Schnittstelle anbieten.

Falls Sie jedoch mit dem Ausweis noch zusätzliche Funktionen wie beispielsweise Single-Sign-On am PC machen wollen, dann hat eine Java Card einige Vorteile, da sie beliebige Kommandos auf der Chipkarte implementieren können. Allerdings muss man dazu wissen, wie man Java Chipkarten programmiert, was zumindest ein paar Tage Einarbeitung erfordert. Falls Sie eine Hochsicherheitsanwendung benötigen, bei der Sie von harten Angriffen ausgehen, dann sollten Sie auf jeden Fall den Rat eines der etablierten Chipkartenhersteller einholen, da es sowohl bei nativen Betriebssystemen als auch bei Java Card Betriebssystemen viele Fallstricke gibt, die man, das entsprechende Wissen vorausgesetzt, leicht umgehen kann.

Ich persönlich rate davon ab, einfache Speicherkarten als Firmenausweis zu verwenden, da es dabei einem Angreifer normalerweise zu leicht gemacht wird.

FAQ 2006

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

14. Dez. 2006German

SIM vs. USIM

Ich schreibe ein Programm welches die Kartenummer ausliesst, und auch die PIN ändern soll. Das ganze mit VC++ und PC/SC SCard Api von Microsoft.Mit SIM Karten geht das auch einwandfrei, aber mit einer USIM funktioniert es nicht. Ich bekomme den Fehler SCARD_E_COMM_DATA_LOST bei einem SCardTransmit. Wenn ich das CLA von 0x0A nach 0x00 ändere bekomme ich den Fehler 87 (falscher Parameter). Gibt es noch etwas anderes das ich bei USIMs beachten muss?

Eigentlich verhalten sich SIMs und USIMs identisch. Lediglich das Class-Byte ist bei den USIMs 0xA0. Ich schlage vor Sie besorgen sich den entsprechenden ETSI-Standard und verwenden die Kodierung, die dort beschrieben ist. Dann wird es ohne Probleme funktionieren.

4. Dez. 2006German

Dateien mit CT-API erzeugen

Ich habe ihr Buch über Smartcards gekauft und finde das Buch sehr gut. Leider finde ich kein Beispiel, mit der CT-API Dateien zu erzeugen. Ich habe eine einfache Anwendung mit Kobil Kaan base DF-File: Information über die Anwendung, EF-File: Information über Karteninhaber (ohne PIN) und EF-File: Record mit Datum und Uhrzeit.

Um Dateien auf einer Chipkarte zu erzeugen benötigen Sie die entsprechenden Kommandos des Chipkarten-Betriebssystems. Diese Kommandos übertragen Sie dann mit CT-API zur Chipkarte und dort werden dann die gewünschten Dateien mit den entsprechenden Zugriffsbedingungen erzeugt.

3. Dez. 2006German

KVK-Karte lesen

Nachdem ich mir Ihr Buch "Chipkarten-Anwendungen" erworben habe, habe ich in einem ersten Beispiel versucht die Daten meiner Versichertenkarte auszulesen. Dazu habe ich den Cyberjack biometric von Reiner SCT mit der ct-api verwendet. Im Internet habe ich ein Dokument gefunden, welches den Zugriff auf die Daten des Versicherten beschreibt (http://www.panstruga.de/ctapi/spec/mkta1v09.doc.gz). Hier wird beschrieben, dass der Zugriff auf das VDT mittels AID "D27600000101" über den "SELECT FILE"-Befehl erfolgen soll.

Die APDU hat dabei den folgenden Aufbau: "0x00 0xA4 0x04 0x00 0x06 0xD2 0x76 0x00 0x00 0x01 0x01".

Nach einem erfolgreichen Versand (0x9000) des Befehls mittels CT_data erhalte ich in der RAPDU immer den Fehlercode 0x6700 - also "wrong length". Ich habe schon etliche Versuche unternommen den "SELECT FILE"-Befehl zum Laufen zu bekommen - leider im Falle der KVK immer ohne Erfolg. Auch die Längenangaben im Le-Feld habe ich variiert. Aber auch damit konnte ich keine Verbesserung erzielen. Ein "READ BINARY"-Befehl hingegen liefert mir ausgehend vom vorselektierten MF einige Daten - darunter auch meine Versichertendaten. Allerdings bekomme ich hier auch ATR, DIR usw. mit geliefert - Daten, die ich für meinen Anwendungsfall nicht benötige.

In dem FAQ auf Ihrer Homepage habe ich gelesen, dass der Zugriff auf die KVK mittels "SELECT FILE"-Befehl nicht möglich sei. Bei einem testweisen Selektieren des MFs mittels FID bekomme ich jedoch keinen Fehler. Wie kann das sein?

Wozu wird der im oben genannten Dokument beschriebene AID verwendet? Für den Zugriff mittels "SELECT FILE"-Befehl wäre dieser dann eigentlich unbrauchbar. Wie wird in der Praxis der Datensatz zum Versicherten ausgelesen? Wird hierbei nur der "READ BINARY"-Befehl ohne vorherigen "SELECT FILE"-Befehl verwendet?

Für einen Rat beziehungsweise eine Erläuterung des Sachverhalts, warum ich immer den Code 0x6700 erhalte, wäre ich Ihnen sehr dankbar.

Die aktuelle deutsche Versichertenkarte (KVK) ist eine Speicherkarte, d.h. ohne Prozessor. Die kommunikation geschieht üblicherweise mit dem I²C-Bus, der vom Kartenterminal unterstützt werden muss. Zum auslesen der Daten genügt dann ein READ BINARY Kommando mit der entsprechenden Länge (z.B. 200 Byte) an das Terminal. Dieses "übersetzt" den READ BINARY in die entsprechenden I²C-Befehlsfolge, sendet diese zur KVK. Diese sendet die angeforderten Daten in I²C zum Terminal zurück und Sie erhalten auf CT-API-Ebene eine Antwort auf Ihr READ BINARY Kommando.

29. Nov. 2006German

Java and SIM card

Actually I’m trying to develop a simple java application (with java 6) to read the IMSI form a SIM CARD. At the moment I’ve done the part to access to the smartcard, but I’ve no idea how could read the imsi from the card. I think that I’ve to use the right ADPU command, but, I googled a lot, and I’ve not found any info.

There is a section on my home page called "useful things". At this section you can find a lot of Java programms for accessing a smart card from a PC.

21. Nov. 2006German

EF.DIR

Eine Kleinigkeit verstehe ich bei den DF Namen nicht. Wenn ich einer Datei einen DF Namen gebe, woher weiß dann das SELECT, wenn ich eben diesen DF Namen selektieren möchte, welches Verzeichnis dahinter steht? Wird das automatisch vom Betriebssystem verwaltet? Und wenn man dann mal einen AID verwenden möchte, dann wird dieser entweder über die EF.DIR/EF.ATR Datei verwaltet oder eben als DF Name interpretiert und vom System verwaltet.

Im Standard ist die Möglichkeit gegeben, in der EF.DIR Datei zu einem AID keinen Pfad sondern eine Menge von APDUs anzugeben, die ausgeführt werden müssen, um diese Applikation zu "aktivieren". Hier wäre meine Frage auch gleich. Muss die Applikation all diese APDU Datenobjekte lesen und diese danach ausführen, oder macht dies das OS von selbst. Ich würde jetzt auch darauf tippen, dass das Anwendungsprogramm die EF.DIR liest, nachsieht ob ein Pfad gegeben ist, und ansonsten die angegebenen APDUs ausführt.

Der DF Name wird als Teil des Datei-Headers im Dateisystem gespeichert und vom Betriebssystem der Chipkarte verwaltet. Empfängt die Chipkarte ein SELECT Kommando mit einem DF Name oder auch mit einem FID dann sucht es im aktuell selektiertem Verzeichnis alle DFs durch. Wird ein passendes DF mit dem DF Name gefunden, dann wird dieses selektiert, ansonsten gibt es einen entsprechenden Returncode. Das EF DIR ist üblicherweise eine reine Datendatei die nicht vom Betriebssystem verwaltet wird, da es ja auch sein kann, dass bestimmte DFs zwar in der Chipkarte vorkommen, jedoch im EF DIR nicht aufgeführt werden sollen.

20. Nov. 2006German

EF.DIR

Das EF.DIR ist keine Betriebssystemdatei, d.h.man kann sie direkt verändern. Wenn eine AID ausgewählt werden soll, sucht dann das Betriebssystem den dazugehörigen Pfad aus der EF.DIR oder muss dies das Anwendungsprogramm übernehmen? Also ist die EF.DIR vollkommen unabhängig vom OS oder nur ein wenig integriert?

Das EF.DIR ist nur eine Datei von vielen und wird i.d.R.vom Betriebssystem nicht interpretiert. Ich schreibe "i.d.R.", da so etwas nicht durch eine Norm geregelt ist und es durchaus Implementierungen geben kann die es anders machen. Typischerweise liest das Terminal das EF.DIR und wenn die benötigte Anwendung dort registriert ist kann es diese mit dem entsprechenden SELECT Kommando oder der dort angegebenen Kommandosequenz selektieren.

18. Nov. 2006German

Delphi und Chipkarten

Ich möchte für ein Studienprojekt geschrieben mit Delphi 2006 einen PC/SC-fähigen Smartcardreader ansteuern. Damit möchte ich lediglich einen Schreib- und Lese-Zugriff auf mein Delphi-Programm steuern.

Man könnte dazu das Delphi Interface von Chzsoft (www.chzsoft.com.ar) zu verwenden, dasy man auch über Zeitcontrol downloaden kann. Ich habe es selber nicht ausprobiert, aber die Beschreibung sieht ganz vielversprechend aus. Ich denke dass man damit beliebige APDUs senden und empfangen kann. Das reicht für alle Anwendungen aus. Eine BasicCard und auch eine Java Card mit u.a. bereits existierenden Testdateien gibts bei meinem Buch "Chipkarten-Anwendungen" dazu.

10. Nov. 2006German

EF DIR und DF Name

Eine Kleinigkeit verstehe ich bei den DF Namen nicht. Wenn ich einer Datei einen DF Namen gebe, woher weiß dann das SELECT, wenn ich eben diesen DF Namen selektieren möchte, welches Verzeichnis dahinter steht?

Wird dies über die EF.DIR verwaltet?

Der DF Name wird als Teil des Datei-Headers im Dateisystem gespeichert und vom Betriebssystem der Chipkarte verwaltet. Empfängt die Chipkarte ein SELECT Kommando mit einem DF Name oder auch mit einem FID dann sucht es im aktuell selektiertem Verzeichnis alle DFs durch. Wird ein passendes DF mit dem DF Name gefunden, dann wird dieses selektiert, ansonsten gibt es einen entsprechenden Returncode. Das EF DIR ist üblicherweise eine reine Datendatei die nicht vom Betriebssystem verwaltet wird, da es ja auch sein kann, dass bestimmte DFs zwar in der Chipkarte vorkommen, jedoch im EF DIR nicht aufgeführt werden sollen.

9. Nov. 2006German

EF ARR und Security Environment

Wo werden die Security Environment (SE) gespeichert? Ich habe im Standard kein Wort dazu gefunden, wie dies geschehen soll - nur dass mit GET und PUT DATA darauf zugriffen werden kann.

Die ISO/IEC 7816-4, in der die Security Environments beschrieben sind, ist eine echte Schnittstellennorm, die nicht die Implementierung beschreibt sondern nur das Verhalten auf der Schnittstelle zwischen Terminal und Chipkarte. Dasraus folgt, dass man die Implementierung so gestalten kann wie man will, Hauptsache das Verhalten zur äußeren Welt ist korrekt. Typischerweise speichert man die Daten TLV-codiert im EF ARR, aber man könnte es auch anders machen, z.B. in Datenobjekten des Betriebssystems.

9. Nov. 2006German

EF ARR und Security Environment

In EF ARR Dateien kann man über den Tag 9F ein Security Environment (SEID) referenzieren. Welche Sinn hat dies? Können Sie mir erklären, für was man das SE in Bezug auf das EF ARR braucht? Hat das was mit Secure Messaging zu tun?

Das Security Environment (SE) dient normalerweise als Umschalter für verschiedene Umgebungen. Eine typische Anwendung für das SE ist beispielsweise die Produktion einer Chipkarte und die Nutzung beim Endkunden. Durch zwei SEs kann man hier für die verschiedenen Dateien gänzlich unterschiedliche "Sicherheitsumgebungen" setzen. Man könnte dies auch durch eine geschickte Kombination von UND- und ODER-Verknüpfungen bei den Zugriffsbedingungen realisieren, mit den SEs ist es jedoch ein bischen strukturierter.

Die ganzen regelbasierten Zugriffsbedingungen nach ISO/IEC 7816-4 mit den SEs und den anderen Bedingungen sind selbst für Profis oftmals schwer zu durchschauen. Man muss dabei ziemlich aufpassen, dass man bei den Zugriffsfestlegungen auf Dateien nicht versehentlich eine falsche Zugriffsbedingung setzt, die dann zur Kompromettierung einer Anwendung führen kann.

15. Nov. 2006German

SMST4PIC

For my final exam I must build a SMS alarm. I am beginner with PIC. I build program for PIC 16F876 with USART but it doesn't work. I was reading on your's pages how to build alarm but I don't understand many things. Can you write for me small routine that sends SMS?

If it is your first PIC project start with the 12F629 controller. This project is less complex and much more easier to handle. If it is your first PIC project at all you have to learn first to wirte software for a PIC processer - thats the essential first step. Unfortunately I have no time to write software for you.

30. Oct. 2006German

card manufacturers

Can you send me a detail list of all SIM card Manufacturers?

You can get a quite good overview on my link list.

25. Okt. 2006German

Reset einer Chipkarte

Mit welchem APDU-Kommando kann ich eine Java Card zurücksetzen (reset)?

Es gibt kein APDU-Kommando zum Rücksetzen einer Chipkarte. Der Reset kann entweder ein Kaltreset sein (d.h. Ab- und Anschalten der Chipkarte) oder ein Warmreset (d.h. Reset über die Resetleitung der Chipkarte). Dies sind die beiden einzigen vorgesehenen Arten eine Chipkarte zu reseten.

21. Okt. 2006German

Kommunikationsprotokolle von Geldausgabeautomaten

Ich programmiere Kassensoftware und möchte von der aus verschiedene Bankomatkassenterminals ansteuern. Einige solche Zahlungssysteme haben serielle (RS232) andere wiederum Ethernet (RJ45) Anschlüsse. Kennen Sie die verwendeten Übertragungsprotokolle dazu?

Das einzige was mir zu Deiner Anfrage einfällt ist die folgende Norm: ISO 8583 : 1993 Financial transaction card originated messages - Interchange message specifications. Dort ist die Kommunikation mit Zahlungsverkehrsterminals und dem Hintergrundsystem geregelt. Ich bin mir aber fast sicher, dass bei Geldausgabeautomaten mindestens erweiterte Protokolle zum Einsatz kommen. Da es in diesem Bereich aber nur eine Handvoll Hersteller gibt könnte aber durchaus auch sein, dass hier firmenspezischische Protokolle gefahren werden. Zumindest im POS-Berech ist dies nicht unüblich.

29. Sept. 2006German

KVK mit OCF

Zum Auslesen der deutschen Krankenversichertenkarte verwende ich die CT-API, um auf die normale Speicherchipkarte zuzugrifen. Ist es möglich mit OCF und einem beliebigen Kartenlesegerät welches PC/SC kompatibel ist, auf die deutsche KVK zuzugrifen? Was wäre alles notwendig, damit über OCF auf die deutsche KVK zugegriffen werden kann?

Sofern das Terminal PC/SC unterstützt, dann kann man auch über OCF darauf zugreifen, da es einen Treiber für die Verbindung PC/SC und OCF gibt. Die aktuelle deutsche KVK ist jedoch eine Speicherkarte und keine Prozessorkarte. Das Terminal muss deshalb die Kommandos READ BINARY und UPDATE BINARY, die es über OCF erhält, in die entsprechenden Befehle für den I²C-Bus bzw. 2- oder 3-wire-Bus der KVK umsetzen. Falls dies der Fall ist, können Sie mit den beiden vorgenannten Kommandos Daten in die Chipkarte schreiben (evtl. PIN-Prüfung vorab notwendig!) und auch lesen.

28. Sept. 06German

comparison between Java Cards and Multos Cards

Is there any technical comparison available between Java Cards and Multos Cards?

There are for sure some technical comparisons between Java Cards and Multos Cards, but as I know there is no public available detailed comparison. A problem migth be that most of the Multos specifications are confidential.

28. Sept. 06German

smart card security

How is a Basic card compared to a Java card from the security point of view? Is there any measurable way to evaluate the level of security in these various products?

Security is a quite difficult thing. Java Card and Basic Card are just two specification which describe the functionality of the smart card operating system and applications on the operating system. The specifications say nothing about the security. An other point is that the security is not only a matter of the operating system (= software) it is also very important that the hardware (= microcontroller) is secure. A secure software helps you nothing if it runs on a insecure hardware, e.g. a software running on a PC. Even CC (common criteria) evaluation will be not enough to come to a clear impression about security.

In real life you have to make a dedicated security evaluation including attack trials to check if a specific smart card type is secure enough for your application. But in general you can be sure that usual smart cards, if they use the typical smart card microcontrollers and not PIC controllers, are secure enough against most of the usual attacks.

24. Sept. 2006German

direct or inverse convention in ATR

Reading your handbook concerning the ATR I understand that the initial character TS serves for two things: direct/inverse convention in addition to its indication whether the MSB is leading in the character frame or the LSB. How can the terminal know before receiving TS what convention to use in order to receive this byte TS?

If you look at the of the two possible codings of the TS character 0x3B = 0011 1011 and 0x3F = 0011 1111 you see that the bit pattern is in such a way different that the terminal could recognise for sure the direct or inverse convention, even if the terminal assumes in a first trial the wrong one.

By the way another property of TS is that the bit pattern can be used quite easily for measurement the time of one etu.

15. Sept. 2006German

ETSI Standards

Ich habe ein paar ETSI Standards gesucht, um sie zu referenzieren und ihre Einsatzgebiete zu beschreiben. Ich komme aber ein wenig durcheinander.

131.101 - physikalische Eigenschaften (erweitert 102.221, warum, die Überschrift ist ja fast gleich!)

151.011 - physikalische Eigenschaften, Befehle, Dateien der SIM (Nachfolger von GSM11.11?)

zu 131.101: Dies ist lediglich eine Erweiterung von 102.221 zu Spannungsklassen u.ä. (siehe Kapitel 5 in diesem Dokument). Man wollte dies nicht noch in 102.221 unterbringen und schuf deshalb ein eigenes Dokument.

zu 151.011: Dies ist die GSM 11.11 im neuen ETSI Nummernsystem. Diese Norm ist für GSM im Gegensatz zu 102.221 u.a., die alle für UMTS sind.

Man hat nach Erstellung der der 11.11 eingeführt, dass man Plattform (= das OS, d.h. die UICC) von der Anwendung (= USIM u.a.) trennt. Deshalb ist das Ganze etwas kompliziert geraten aber eigentlich meistens recht logisch.

14. Sept. 2006German

Build problem with SMST4PIC

There is some error when I try to compile the all SMST4PIC 5 source using the MPLAB IDE software.

You have to start first the project wizard in MPLAB and generate a new project. Then you have to include the files with the correct file name extensions (= *.asm) and build the project.

13. Sept. 2006German

SELECT auf USIM mit AID

Ich wollte mir einmal meine UMTS-Karte, also USIM genauer ansehen. Dabei ist folgendes Problem aufgetreten: Ich lese im MF das EF_DIR aus und erhalte so die AID des einzigen ADF der Karte. Dieses soll 16 Byte lang sein und fängt natuerlich mit A0 00 00 00 87 an. Wenn ich versuche in dieses Verzeichnis zu wechseln um die dortigen Dateien auszulesen bekomme ich den Returncode '6B 00'.

'6B00' deutet zwar auf einen falschen Parameter in P1/P2 hin, allerdings finde ich 'A0' als Class Byte bereits problematisch. Wenn es sich um eine echte USIM handelt, dann sollte eigentlich das Classbyte immer '00' sein. 'A0' als Classbyte wird nur bei SIMs verwendet. Da ein EF DIR existiert gehe ich auch stark von eine USIM aus. Schlage deshalb vor dass Sie mal als Classbyte '00' verwenden, denn der Rest sieht korrekt aus.

'6B00' deutet zwar auf einen falschen Parameter in P1/P2 hin, allerdings finde ich 'A0' als Class Byte bereits problematisch. Wenn es sich um eine echte USIM handelt, dann sollte eigentlich das Classbyte immer '00' sein. 'A0' als Classbyte wird nur bei SIMs verwendet. Da ein EF DIR existiert gehe ich auch stark von eine USIM aus. Schlage deshalb vor dass Sie mal als Classbyte '00' verwenden, denn der Rest sieht korrekt aus.

13. Sept. 2006German

unknown card

I have a smart card that works ok with your Java application (so OCF installation I think that is ok) but I don´t have the file system of the card, so I can´t access to the FID of the file and I can´t read data of the file. Do you know how I can know the file system of the card?

It should at least be possible to select the MF. If this works well than you have a quite good position for the next steps. If you do really nothing about the card you can try the procedure I had described in the Smart Card Handbook about unknown cards. This will help you. If you think that you have a SIM for mobile phones you can look for the specifications at the ETSI-Server (www.etsi.org) and use this information to read and write files.

13. Sept. 2006German

Speicherkarte zur Passwortablage

Ich hab einen Chipkartenleser von Chipdrive. Nun möchte ich alle Passwörter auf Chipkarte speichern. Mit der Original-Karte sowie Versicherungskarten geht es. Nur mit ganz leeren Rohlingen nicht. Die Karte wird zwar erkannt aber nicht als Passwortkarte akzeptiert.

Ich gehe davon aus, dass Sie Ihre Passwörter jeweils auf Speicherkarten ablegen, z.B. solche mit I²C-Bus, und nicht auf den deutlich komplexeren Prozessorkarten. Wenn die neuen leeren Karten erkannt werden, dann ist zumindest eine Kommunikation mit ihnen möglich. Haben Sie schon mal versucht Daten aus diesen Karten zu lesen und sind Sie sicher, dass der Datenbereich dieser Speicherkarten nicht mit einem Passwort geschützt ist?

13. Sept. 2006German

What OS should I choose?

I am trying to select a programmable card and open COS, but I don't know how to choose between the available Operating systems (JavaCard , MultOS-, BasicCard or other standard open OS). Can you show me any applicational benchmark comparing different aspects of smart cards such as OS and hardware security issues and ease of use or guide me somehow to identify differences and advantages of available programmable smart cards?

It is difficulte to give you an advice, because the best smart card OS for a specific application depends stronly on the application itself. But I can give you a few general hints: If you want to develop in a cheap and easy way an application than is BasciCard probably the best solution. If you need more than one source for the OS and if you want to develop an interoperable application you should choose a Java Card OS. But it is difficult to get cards in low quantities and the tools are not for free. Multos is a Smart Card OS for the payment area and as I know it is very difficult to get cards as a single person.

24. Aug. 2006German

SMST4PIC: USART feature

Why did you select a PIC with not USART? It shouldn't be easier using a PIC with USART feature?

The reason was that I want to use for SMST4PIC Version 5 a very simple and cheap microcontroller. There is a realease (Version 6) on a 16F876 with a USART.

23. Aug. 2006German

text editor

Could you recommend a simple java text editor?

My favorite editor is UltraEdit. I use this editor for many different programming languages since years and it does all what I want.

23. Aug. 2006German

SMST with SQL

Could you add SQL functionality to store details of SMS's received?

I have not planed to store the received and processed SMSs into a SQL database. This extension might be not so difficult. A simplieer way could be to store the SMS just in a pure text file. This should be sufficiant exept you want to store thousands of SMSs.

23. Aug. 2006German

SMST - recognition of a SMS

How does your program listen for SMS's and know when an SMS has been received?

I suggest to run AT+CMGL regulary. This is the best and easiest way. For my other project SMST4PIC I suggest the following:

Recognition if a SMS is received:

There are many ways to recognize from SMST4PIC that the mobile phone had received a SMS. There is a specific AT command (at+cnmi) which informs in the mobile phone over the serial line that a SMS is received. This is the easiest way but the parameter of the AT command are quite complex. An other way is to put a ligth sensor on the display of the mobile phone. SMST4PIC can than measure if the ligth of the mobile phone is on and can fetch via AT command all received messages. This is simple but needs the extra light sensor on the mobile phone. It works because most of the mobile phone switch on the light of this display for some seconds if a SMS is received. An advantage is that this methode recognize also an incomming call. This can be used to send a status SMS to a specific mobile phone without an extra status request SMS.

An alternative to the ligth sensor i a microphone connected with SMST4PIC. If a ring tone occurs because of a received SMS or a incomming call SMST4PIC can recognize this and look via AT command for new SMSs.

31. Juli 2006German

Auslegung von ISO-Normen

Die Verwendung des Returncodes '6700' ist mir oftmals nicht klar. Ich habe mich deshalb an den STARCOS Karten orientiert. Ist das in Ordnung oder gibt es einen besseren Weg den richtigen Returncode zum jeweiligen Ereignis herauszufinden?

Das Verhalten von STARCOS ist die G&D Interpretation der ISO/IEC 7816 Norm. Da kann man sich an manchen Stellen immer noch streiten und die französischen Kartenhersteller haben an manchen Punkten ganz gewiß eine andere Auslegung. STARCOS dürfte jedoch das wohl am bekannteste Chipkarten-OS sein und hat damit auf jeden Fall eine ziemlich Relevanz was die Auslegung von Normen betrifft.

21. July 2006German

OCF with different Smart Cards

I have seen SimpleOCF.java application and I think that it is a very useful application for write and read from a smart card. What type of smart card I have to use? What types of smart card support OCF?

My OCF application works with all smart cards (= card with a microcontroller chip and NOT with a memory chip) if they use T=0 or T=1. This means it should work with the usual SIM cards. If not you should check if there is a problem with the OCF installation. This installation is quite difficult and you need sometimes a quite big portion of magic that it works. But if it work then you can communicate from Java with a smart card over a PC/SC terminal.

In my OCF application I use only the APDU command channel from OCF and not the other (quite generic) features. Thus it should work with all smart cards.

20. Juli 2006German

Tastatur und Display eines Handys steuern

1. Kann man mit SIM-Karten eine Tastatur und Display eines Handys steuern auch unabhängig von einem handy?

2. Ich möchte irgend ein externes Display an einem Handydisplay anschliessen und wenn ich mit dem Handy-Tastatur irgendwas einwähle dann wird es am Handy-Display angezeigt sollte es aber auch am externen display angezeigt werden. Ist dies möglich?

Mit dem SIM Application Toolkit kann man von einer SIM aus viele Funktionen des Mobiltelefons steuern, wie beispielsweise Tastaturabfrage, Ausgaben auf das Display, SMS versenden usw. Genormt ist dies in der ETSI TS 102 223 (CAT - Card Application Toolkit) Dazu muss man jedoch eine Anwendung (= Programmcode) auf der SIM haben. Dies ist in der Regel nur den Netzbetreibern möglich, da nur diese die geheimen Ladeschlüssel für den Programmcode besitzen.

17. Juli 2006German

Performance von Terminals

Ich min momentan dabei, verschiedene Terminals auf deren Performance zu testen. Mich würde mal interessieren, ob es Chipkarten gibt, die mit einem Teiler von 8 bei 5 MHz arbeiten.

Seitens der Hardware ist zur zur Zeit der kleinste (in der Praxis verwendbare) mögliche Teiler 8, d.h. Takfrequernz 5 MHz/Teiler = 625 000 bit/s Bruttoübertragungsrate (d.h. ohne Verwaltungsdaten für das Protokoll). Die Kartenhersteller sind jedoch vorsichtig bei der Freischaltung dieses Teilers, da es immer wieder zu Problemen mit Terminals kommt. Es ist nämlich ziemlich schwierig bei dieser Übertragungsrate u.a. noch eine vernünftige Flankensteilheit, insbesondere bei 1,8 Volt, zu gewährleisten.

16. Juni 2006German

SIM auslesen

Mein Ziel ist es, die Daten aus der SIM auszulesen. Sie haben bei ihren FAQ geschrieben, dass man sich ein Java Card Entwicklungs-Kit besorgen müsste. Können Sie bitte mir Links dazu schicken, wo man sich diese Sachen kaufen könnte.

Wenn Sie die Daten einer Chipkarte (z.B. SIM) von einem PC aus auslesen wollen, dann finden sich dazu auf meiner Homepage (www.wrankl.de) jede Menge Beispiele. Falls Sie eine Chipkarte programmieren wollen, d.h. Programmcode schreiben wollen, der dann auf der Chipkarte ausgeführt wird, dann brauchen Sie die besagten Entwicklungstools. Von meiner Homepage kann der Java Card Simulator von G&D downgeloaded werden. Mit dem läßt sich schon einiges ausprobieren.

Es gibt von mir ein neues Buch namens "Chipkarten-Anwendungen", dem eine Basic und eine Java Karte beiliegen inkl. Entwicklungsumgebungen. Näheres ebenfalls auf meiner Hompage. Damit kann man ebenfalls erste Versuche machen. Ansosnten benötigen Sie ein Entwickungskit eines Kartenherstellers für ca. 200 - 500 Euro.

16. Juni 2006German

OCF mit KVK

Für mein Diplom muss ich eine Anwendung entwickeln. Dazu ist es nötig, dass Kankenkarten in das Programm eingelesen werden. Ich habe im Internet Ihre Seite schon aufmerksam studiert. Ich verwende einen Chipdrive Towitoko Extern mit serieller Schnittstelle. Gibt es bei der Installation von OCF einen Trick? Wo müssen denn die dll's genau liegen, die das OCF mitbringt? Da ich nun schon seit drei Tagen versuche dieses Problem zu lösen und nicht die passende Lösung finde, hoffe ich, dass Sie einen guten Tipp für mich haben.

Die Installation von OCF ist schwierig, da man in die unterschiedlichsten Verzeichnisse Daten kopieren muss. Irgendwann funktioniert es dann und man weiss nicht mal genau warum das so ist! Ich kann da tatsächlich nur herumprobieren empfehlen.

Falls Sie Krankenversichertenkarten mit OCF lesen wollen, dann wird dies nicht funktionieren, da dies in der Regel Speicherkarten (d.h. ohne Mikrocontroller) mit I²C-Bus-Schnittstelle sind und OCF dies nicht unterstützt. Soweit ich weiss hat Towitoko jedoch auf seiner Homepage einige Treiber, die es ermöglichen auf KV-Karten zuzugreifen, allerdings nicht via OCF.

16. June 2006German

TSCS

Can I use your software to write an OS for smart card and then test it?

You can write an OS from the TSCS source codeit, but you have to portate TSCS from Basic into C or Java. This depends on your plattform for your OS.

16. Juni 2006German

SIM selber programmieren

Ich hab es mir überlegt eine leere Handy Simkarte zu programmieren. Wo kann ich mir informationen über die Schnittstelle zwischen Handy und die Simkarte erhalten. Ist es überhaupt möglich?

Alle Spezifikationen für GSM sind öffentlich und können kostenlos über die ETSI-Webseite (www.etsi.org) heruntergeladen werden. Die betreffende Spezifikation für die SIM ist die TS 51.011 bzw. GSM 11.11 (alte Bezeichnung). Sie können mit dieser Information eine vollständige SIM entwickeln. Allerdings wird sich diese SIM nicht ins GSM-Netz einbuchen lassen, da Sie nicht den Kryptoalgorithmus kennen (bei manchen Netzbetreibern geheim, bei manchen öffentlich d.h. i.d.R. dann einer der COMP128 oder Millenage). Weitrhin kennen Sie auch nicht die geheimen kartenindividuellen Authentisierungsschlüssel, so dass das GSM-Netz feststellen kann ob Ihre SIM echt ist.

14. June 2006German

SMST4PIC - switch of mobile phone via AT commands

I suppose that the phone can be switched on/off via the RS232 cable as well, for power consumption reduction?

It is not possible to switch the mobile phone on or off via AT commands.

14. June 2006German

SMST4PIC - power for the mobile phone

When you use the SMST4PIC with a mobile phone, does the mobile phone require a standard mobile phone battery, or does it use the power supply from the cable (from the SMST4PIC)?

The mobile phone gets its power from the mobile phone batterie/or the mobile phone power supply and not from SMST4PIC.

24. Mai 2006German

Installation von OCF

Bei der Verwendung von OCF bin ich auf gravierende Probleme gestoßen. Ich bin jetzt an einem Punkt, an dem das OCF (scheinbar) korrekt auf meinem Rechner eingerichtet ist, aber die Ausführung aller Beispielprogramme des OCF zu Laufzeitfehlern des Typs "ArrayIndexOutOfBoundsException" führt.

Ich habe mir ihre Installtionsbeschreibung angeschaut und kann auf den ersten Blick keinen Fehler entdecken. Hinsichtlich der Erfahrungen mit OCF ist es mir vor einiger Zeit ähnlich ergangen. Ich habe tagelang herumkonfiguriert und OCF-Datei in alle möglichen Verzeichnisse kopiert. Irgendwann hat es dann funktioniert, es war jedoch nicht nachvollziehbar was die Ursache für das Problem war. Die von Ihnen aufgezeigte Fehlermeldung macht mir auch den Eindruck, als wenn Jave eine Datei nicht findet. Dies ist aber nur eine Vermutung. Falls Ihr Terminal auch PC/SC unterstützt könten sie evtl. mal diesen Weg in Verbindung mit OCF probieren.

22. Mai 2006German

TP-Service-Centre-Time-Stamp (TP-SCTS) in SMS

Ich habe ein Problem, einen TP-SCTS mit bestimmten time zone offsets zu dekodieren. Da steht zwar schon was in der Spec (3GPP 23.040 version 5.4.0) habe aber trotzdem ein Problem.

Das ist aus einer echten empfangenen Nachricht. Ich habe sie aus dem Iran erhalten. Iran hat GMT+03:30 (Teheran), aber einer der verwendeten SMSC's hat im sms-deliver eben besagtes '0C' zurückgeliefert.

Normale positive offsets sind kein Problem, z.B.: '60 40 32 70 70 05 41' => 23.4.2006 07:07:50 GMT+03:30

Aber was kommt z.B. bei dem hier raus: '60 40 32 70 52 51 0C' => 23.4.2006 07:25:15 GMT +/-?

Ich würde behaupten die TP-Service-Centre-Time-Stamp (TP-SCTS) ist in diesem Fall schlichtweg falsch. Dies ist allerdings kein Einzelfall. Es kommt verhältnismäßig oft vor, dass Daten vom SMSC (short message service center) falsch kodiert sind.

Eine TP-SCTS mit negativem Offset, z.B. eine SMS aus Amerika mit GMT -6 Stunden sieht demnach folgendermaßen aus: Da die Halbbytes bei TP-SCTS vertauscht sind stellt demnach bit 3 im 7 Byte das Vorzeichen dar. Wenn man nun -6 h angeben möchte rechnet man 6 * 4 = 24dez = 0001 1000bin. Nun vertauscht man die beiden Halbbytes (= 1000 0001bin) und setzt Bit 3 auf 1 was 1000 1001bin = 89hex ergibt.

8. May 2006German

SMST- error during compilations

I get some errors when compiling SMST. I've tested my phone with a serial cable and it works perfectly (AT Commands).

This looks like that you have not included the "comm.jar" package!

25. April 2006German

Chipkarten mit viel Speicher

Werden die als erste Prototypen vorgesetllten Chipkarten mit viel Speicher nur die "klassischen" Übertragungsprotokolle T=0 und T=1 unterstützen?

Die Lage der Dinge bei den schnellen Protokollen ist ziemlich unübersichtlich, da es mehrere technische Möglichkeiten gibt und bislang keine eindeutige Richtung sichtbar ist. Sicher ist, nur dass schnelle Protokolle kommen werden. Mittelfristig werden dies wohl USB und evtl. auch MMC sein, unter Umständen sogar noch ein synchrones Protokoll ähnlich T=1 mit Teiler (CRCF) 1.

24. April 2006German

Open Card Framework (OCF)

Can it be that Open Card Framework (OCF) silently passed away?

OCF is still in use, because it is more or less the only way to communicate from a Java programm to a smart card. Your are rigth there is no development going on on OCF side, because there is still no need. All the high level functions are not used and the people use usually only the send and receive APDU functionality. An other point is that the Java hype is gone.

The only really standard and broadly used interface to smart cards from PC software is PC/SC.

21. April 2006German

Chaining und extended APDUs

Wie arbeiten eine "extended length" APDU (3 Bytes für das Len-Feld) und "chaining" (T=1) zusammen?

Ein T=1 Protokoll überträgt bei Erhalt einer solchen großen APDU automatisch über chaining die Daten oder meldet einen Fehler, wenn chaining nicht unterstützt wird. Eine extended length APDU, die länger ist als die maximale Länge einer einzelnen APDU führt zwangsläufig zu einem Chaining bei T=1. Bei T=0 müßte man mit dem Kommando ENVELOPE eine Art chaining machen. Meines Wissen hat dies in aller seiner Vielfältigkeit bislang noch nicht auf einer Chipkarte implementiert, allerdings dürfte es aber nicht mehr allzu lange dauern.

21. April 2006German

ROM-Mask

How to transform the Chip operating system routines to electronic circuits built in ROM through the masks?

The process on the software side is quite simple. The basis is a source code (assembler or C) which is compiled and linked. The result of this is a programmcode for a specific CPU (e.g. 8051, ARM). This programmcode (called object code) will be given to a semiconductor manufactorer for translation into a mask programmable ROM. Every bit of information of the programm code results in connection or in a not-connection of a bit line in the ROM. The ROM is still the standard programm memory for most of the smart card operating systems.

20. April 2006German

falsches Le-Byte

Wenn die Chipkarte ein GET CHANLLENGE mit einem bestimmten Wert für Le erwartet, dieser jedoch nicht stimmt, was muß die Chipkarte dann als Response zurückgeben?

Wenn Sie ein Kommando mit einer Längenangabe an die Chipkarte senden, welche nicht der erwarteten Länge entspricht sollte die Chipkarte eine entsprechende Fehlermeldung zurückgeben. Die auskunftsfreudige Karte würde im Fall eines falschen Le-Bytes ein '6Cxx' mit xx als korrekter Längeangabe für Le zurückgeben. Die zurückhaltende Chipkarte würde nur '6C00' als Returncode zurückgeben. Alles andere ist zu kompliziert und auch unüblich.

20. April 2006German

SMST, first step

I am a Java beginner, I working on a SMS project now, i have download your program. but it doesn't work on my Jbuilder.

A good starting point would be to try as afirst step the application called "Mini" for testing your deveopment environment.

20. April 2006German

Magnetic Stripe Cards

I want to ask you if the magnetic stripe of a banking card has 2 tracks or like now 3 tracks, and in which application they used only 2 tracks?

The application of a mag stripe card is in the terminal and not on the card. The card is only the carrier of the data. This means that the application can realise every neccessary functionality, but it have to use the data from the card (except it is an online application). Track 1 and 2 are read only tracks and track 3 can also be written by the application.

If your application wants to write some data on the mag stripe card you have to use track 3, because it is forbidden to write on track 1 or 2 in the field. There are a few unsecure application where the error counter of the PIN is a data element of track 3, but this is completely unsecure. If there is no need to write data on the card in the field track 1 and 2 are enough.

The content of the data of the 2 or 3 tracks depends on the application. There is the ISO 7813 standard which defines track 1 and 2 but there are many cards in the field which have a complete other content of the tracks. ISO 4909 defines the track 3 data.

A typical track 1 content of a payment card is:
- PAN: primary account number (max. 19 digits)
- Name: 2 to 26 alphanumeric characters
- Expiration Date (year and month)
- LRC: Longitudinal Redundancy Check

17. April 2006German

MAC und Authentisierung

MACs sind Prüfsummen wie sie in ihrem Buch schreiben. Sie sind dafür zuständig für die Überprüfung ob die Nachricht während der Übertragung manipuliert wurde. Sie schreiben aber auch, dass MACs für die Authentizität zuständig seien. Meiner Vorstellung nach ist die Authentizität aber für die Echtheit zuständig und die Integrität für die Unbescholtenheit der Nachricht. Also bürgt doch MAC für die Integrität der Nachricht.

Ein MAC hat gegenüber einer XOR- oder CRC-Prüfsumme noch eine weitere Eigenschaft. Man benötigt zur Berechnung eines MACs einen geheimen Schlüssel. Diese Eigenschaft kann man nutzen um zu prüfen ob der Gegenüber ebenfalls das Geheimnis kennt. Ist dies der Fall, dann ist damit nicht nur die Nachricht unverändert, sondern auch der Kommunikationspartner authentisiert. Bei elektronischen Geldbörse wird dieses Verfahren im übrigen ziemlich intensiv genutzt, was auch im Abschnitt über Geldbörsen nach EN1546 aufgezeigt ist. Der Grund dafür ist die Reduktion und auch Vereinfachung von Kommandosequenzen.

3. April 2006German

KVK

Ich versuche mit einer Delphi-Komponente eine deutsche Krankenversicherungskarte auszulesen. Das Auswählen des Lesers und die Herstellung der Verbindung zur Karte funktionieren. Leider scheine ich ein falsches ADPU-Kommando an die Karte zu senden.

Laut der MKT-Spezifikation müßte ich doch eigentlich das Kommando "00 A4 04 00 02 3F 00" an die Karte schicken, um den esamten Speicher anzusprechen. Mit "00 B0 00 00 00" müßte ich ihn dann ja auslesen können. Leider bekomme ich schon beim ersten Befehl eine Fehlermeldung.

Die KVK hat kein ISO-Dateisystem sondern ist eine "dumme" Speicherkarte, weshalb der SELECT MF fehlschlägt. Probieren Sie doch mal ein einfaches READ BINARY ohne Offset, z.B. '00 B0 00 00 05'. Das sollte eigentlich funktionieren. Dieses Kommando wird vom Terminal in eine entsprechende Sequenz für den I²C-Bus übersetzt und sie bekommen bei diesem Beispiel 5 Byte Daten zurück.

10. April 2006German

Smartcafe Java Karte

Ich habe eine Smartcafe Java Karte und versuche schon seit geraumer Zeit ein Applet zu installieren. Im Internet findet man aber diesbezüglich wenig Information. Können Sie mir vielleicht Informationen zukommen lassen, welche APDUs ich benötige, um ein Applet auf die Karte zu laden. Ich schaffe es ja nicht einmal mich auf der Karte anzumelden (Instruction not supported und ähnliches).

Ein Applet manuell auf einer Java Card zu installieren ist eine Tätigkeit, die ziemlich zeitintensiv, kompliziert und fehlerträchtig ist. Sie könnten doch dafür einfach den JLoad von G&D benutzen. Für die G&D-Karten funktioniert der prima und er hat außerdem noch ein paar andere praktische Funktionen.

10. April 2006German

PIN bei Testkarten

Gibt es eigentlich auch Testkarten ohne PINs?

Üblicherweise sind auch bei Testkarten die PINs immer aktiviert, auch wenn diese manchmal trivial (1234) sind. Der Grund dafür ist, dass man die Software auf dem PC nicht ändern muss, wenn man irgendwann einmal Chipkarten mit richtigen PINs verwendet.

28. März 2006German

Greif

Was bedeutet das geflügelte Tier auf dem Umschlag?

Es handelt sich bei dem Tier um einen Greif. Er ist ein seit dem Altertum bekanntes Fabelwesen mit dem Körper eines Löwen. Kopf, Flügel und Krallen stammen hingegen vom Adler. Mit dem Greif verbindet man neben Klugkeit und Stärke auch die Bewachung von Schätzen. Dies alles sind Eigenschaften die natürlich auch auf Chipkarten zutreffen. Der Greif auf dem Buch "Chipkarten-Anwendungen" schaut nach links um damit im Sinne der Wappenkunde Mut und nicht Feigheit auszudrücken.

Näheres zu Greifen (engl. griffin) findet man bei der Wikipedia (www.wikipedia.de).

28. March 2006German

Buch schreiben

Welche Tools verwenden Sie zum Schreiben eines Buchs?

Für das Handbuch der Chipkarten hatte ich bislang Word für den Text und Corel Draw für die Illustrationen benutzt. Allerdings gab es mit steigendem Umfang des Buches mit Word immer mehr Probleme und der Aufwand für das Layout stieg beinahe ins unermessliche an (mehr als 2 Monate Aufwand). Mit dem Buch "Chipkarten-Anwendungen" bin ich auf Latex umgestiegen und bin sehr zufrieden damit, so dass ich es mittlerweile immer einsetze. So habe ich das endgültige Layout des Buches "Chipkarten-Anwendungen" an einem einzigen Sonntag Nachmittag gemacht. Corel Draw bin ich seit 1993 in immer zwei Versionen hinter der aktuellen treu geblieben.

21. März 2006German

EXTERNAL AUTHENTICATE

Ich habe ein Problem bei der Authentifizierung. Das Problem liegt bei der Authentifizierung. Nach erfolgreichem GET CHALLENGE, werden die Daten für die Antwort berechnet, und das Kommando EXTERNAL AUTHENTICATE, mit einem gesetzten Le abgeschickt. Dies sind die Daten: 00 82 00 00 28 45 59 ... 28. Die Antwort bleibt leider 6A88 (No referenced data found). Ich würde mir 0x28, also 40 Byte an Daten erwarten.

Die Karte ist ISO7816 kompatibel, verwendet das Protokoll T1 und kann nach Protokolldefinition das Kommando MUTUAL AUTHENTICATE beantworten. Kann es nun an der Windows-Implementierung von PC/SC liegen? Ist der Fehler überhaupt auf PC/SC Ebene zu suchen oder könnte es noch andere Ursachen geben?

Dies sieht überhaupt nicht nach einem Problem mit PC/SC aus, da so ein Returncode typischerweise direkt von der Kommandoabarbeitung kommt. 0x6A sagt nach ISO/IEC 7816-4 aus, dass einer der Parameter P1 oder P2 falsch sind. Das 0x88 deutet aus meiner Sicht darauf hin, dass die Chipkarte in P1 und/oder P2 genauere Informationen zu dem zu benutzendem Schlüssel möchte. Dies wäre üblicherweise ein Key-ID, also die Identifikationsnummer der Schlüssel, der verwendet werden sollte. Mein Vorschlag wäre, nochmal die Spezifikation der benutzten Chipkarte zu schmökern und nachzuschauen, was diese bei einem EXTERNAL AUTHENTICATE in P1 bzw. P2 erwartet.

Nachtrag: Das Problem lag schlußendlich daran, dass die entsprechende Anwendung nicht vorab mit dem Kommando SELECT selektiert wurde. Damit wurden dann die richtigen Schlüssel für diese Anwendung vom Chipkarten-Betriebssystem ausgewkorrekt durchgeführt werden.

10. March 2006German

Hardware-Interface to Smart Card

Do you know hardware interface components for the connection between a microcontroller and a smart card?

Linear Technology (www.linear.com) offers such an interface component. The name is LTC4555.

10. March 2006German

inductive card

Was ist eine "inductive card"?

"Inductive card" ist ein vor allem im asiatischen Raum gebäuchlicher Ausdruck für eine Chipkarte mit induktiver Energie- und Datenübertragung. Im üblichen Sprachgebrauch ist dies eine ganz normale kontaktlose Chipkarte.

9. March 2006German

SMST4PIC - no connection between SMST4PIC and mobile phone

I got no connection between SMST4PIC and mobile phone. What can I do?

You have to establish first a working connection between you mobile phone and hyperterm on the PC. This is much more easier than working with the real microcontroller hardware. Then you connect the phone with SMST4PIC. If there are communication problems you should look with a oszilloscope on the communication.

9. March 2006German

SMST4PIC - OSCAL

When we load the program to our pic12f629, the programmer told us that there are some problem with the RTLW command and also with the OSCAL value. These problem was not found during the compilation if the firmware only during our loading process.

The two lines

CALL 0x3FF ;get calibration value
MOVWF OSCCAL ;set calibration value

are for the timing calibration of the chip. if you have problem with this you can delete this line, but in some cases you will get problem with the RS232 communication timing. Every 12F629 PIC have an individual timing value in its flash memory and with the above line of code you read this and store it in the appropriate register.

8. March 2006German

SMST4PIC - connection cable

We would just like to know if what kind of connectors did you used in building your SMST4PIC.

You have to use a cable with a connector to the mobile on one side and a RS232 connector on the other side.

Please be absolutely sure that you phone support the RS232 interface. In most of the cases you have to use a special connector with integrated electronic for this. If you connect a mobile phone without RS232 ability to the MAX232 you might destroy the interface hardware of the phone.

6. March 2006German

semiconductor technology

I have read in your smart card handbook the following: "with 0.8-um technology, around 700 microcontrollers will fit on a 6-inch wafer." My question is: 0.8-um refers to what? Is it the wafer thickness!!

The 0,8 um refers to the technology of the semiconductor process. This is more or less the size of the smallest structure on the chip.

2. März 2006German

SMST4PIC - Rx, Tx, GND

I would like to ask what output pins in the mobile phone I will use? I have already connected only the Rx, Tx and the ground. I tried the project but it did not work.

Please use an oszilloscope to look at the serial RS232 lines before you change the software. You have to ensure that the bits and bytes are comming correct over the serial lines. Please consider also the text "Mobile Phones and RS 232" on the SMST4PIC side.

2. März 2006German

SMST4PIC - RS232 an Mobile Phones

I have already connsructed the SMST4PIC. When I tested the project, i have a measured a -9v on the rx out of max232. I would like to ask why we have attained a higher voltage than our supply voltage? Is it not dangerous to feed a -9v on your mobile phone?

The RS232 Interface is a -12 Volt to +12 Volt Interface. The one and only reason of the MAX232 is to generate the +/-12 Volt. If you have a mobile phone which have a RS232 interface you will have no problem. I suggest to make first some trials with the mobile phone on the RS232 of a PC with Hyperterm. This is quite good to get a feeling about the communication.

1. März 2006German

Terminals für KVK-Karten

Meine Aufgabe ist für ein Gerät die Dateneingabe von KVK-Karte aus zu ermöglichen. Wie ich Ihren FAQs entnehme, bieten die Hersteller von Lesegeräten Bibliotheken bzw. Toolkits als Programmierschnittstelle dafür an. Ist das Interface/die API soweit standardisiert, dass damit auch beliebig andere Lesegeräte beim Arzt eingesetzt werden könnten, oder bin ich damit an diesen Typ gebunden. Prinzipiell muss man ja davon ausgehen, dass ein Arzt schon einen bestimmten Typus besitzt.

Da es sich bei KVK-Karten (zur Zeit noch) um Speicherkarten handelt kann man beispielsweise OCF oder die PC/SC Biblotheken nicht verwenden. In Deutschland würde sich deshalb für so einen Einsatzzweck die CT-API-Schnittstelle anbieten, die vom Prinzip her auch mit Speicherkarten zurechtkommt. Wie ich aus persönlicher Erfahrung weis ist die Infrastruktur in Arztpraxen allerdings ziemlich heterogen so dass ich mir nicht recht vorstellen kann, dass man auf ein einheitliches API aufsetzen kann. Der beste Weg dürfte sein, die am häufigst benutzten Terminals herauszufinden und dann zu versuchen mit allen dafür erhältlichen Treibern eine Kommunikation aufzubauen, auch wenn dies eine ziemliche Strafarbeit werden wird. Evtl. wird es jedoch mit dem neuen Gesundheitskartensystem besser, da dann Prozessorkarten eingesetzt werden und die dort üblicherweise benutzten Terminals fast alle mit PC/SC können.

1. March. 2006German

communication errors

You have a personalization equipment and you send some APDU to the smartcard according ISO 7816. Is it ensured that the data, which was being sent to smartcard are really stored to the smartcard and could not being changed during transfer because of terminal device error, for example bad contact? Or must we read data back from the smartcard by READ RECORD and compare them?

The communication between a terminal and a smart card is quite stable. This means if you can communicate with the card the propability for a data transmission error is very low. Nevertheless it is possible that an transmission error occurs and is not detected by the transmission protocoll. In T=0 only a parity check for every byte is done and in T=1 additionally a XOR over the transmitted block is calculated. This is usually sufficant to ensure an error free transmission.

If you want to be absolutely sure that no error had occured during transmission you should read the data back. But this cost quite much transmission time and makes the software more complex. An other way could be to make only statistical tests, e.g. read only every tenth card.

21. Feb. 2006German

Speicherkarten lesen

Ich versuche im Rahmen eines Projektversuches auf ein Speicherkarte zuzugreifen. Ich benutze hierfür die CT-API einen externen USB Kartenleser und eine Chipkarte vom Typ I²C 2 bBit. Leider ist es mir bisher nicht gelungen Daten von dieser Karte zu lesen.

Beim Zugriff auf eine Speicherkarte muss normalerweise der Kartenleser die Umsetzung des I²C Protokolls in die üblichen Chipkarten-Kommandos macht. Deshalb wird der Speicher einer I²C Karte üblicherweise mit einem READ BINARY gelesen und einem UPDATE BINARY geschrieben.

20. Feb. 2006German

SMST4PIC - receive SMS

Is it possible for the SMST4PIC to receive SMS without changing the hardware?

It is possible to receive SMS without changing the SMST4PIC hardware.

20. Feb. 2006German

ICC data transfer speed

I designed a SIM Card reader circuit for PC serial port. Clock frequency for the SIM IC is provided with a 3.579545 Mhz crystal. Along the ATR state I set the baud rate as 9600 bits/sec (3579545/372=9622) and I received the correct ATR frame, then in the command phase (using APDU commands) I set the baud rate as 56000 bits/sec (3579545/64=55930) but I could not achive to communicate with SIM.

You have to do a PTS-sequence bevore you change the protocol parameters. I suggest that you keep for the first trials the data transfer speed at 9600 bit/s. If this work well with the first command- and response APDUs then change the clock divider with a PTS.

19. Feb. 2006German

Überwachung Datenaustausch zwischen Terminal und Chipkarte

Ich suche schon seit langem nach einer Schaltung mit der man den Datenaustausch zwischen Terminal und Chipkarte überwachen kann um mehr über die Funktionsweise von Chipkarten zu erfahren.

Auf meiner Homepage gibt es bereits so einen Schaltplan als Skizze. Er sollte eigentlich funktionieren. Ich habe das Ganze mal in fliegender Verdrahtung aufgebaut und da gab es keine Probleme. Normalerweise benutze ich für so etwas ein professionelles Tool aber das definitiv ist zu teuer für einen Hobbyisten. Meine Bitte wäre, dass Sie sich den Schaltplan einmal anschauen und wenn Sie etwas damit anfangen können, dann wäre die Sache gelöst. Falls nicht wollte ich ohnehin im Q2/06 so etwas korrwekt aufbauen. Bis dahin bin ich leider mit Buch schreiben ziemlich beschäftigt.

19. Feb. 2006German

JCVM

How JCVM works?

A Java Card Virtual Machine (JCVM) fetches byte code for byte code from a byte code array and interpretes every single byte code in software of the processors it runs.

19. Feb. 2006German

SMST4PIC - project file

Could if you please put the project file of the smst4pic instead of the *.asm files i need *.mcp file.

You have to create your own project file because there are absolute file references in the project file and there it is not tranbsferable to an other PC.

16. Feb. 2006German

Impressum

Darf Ihr Impressum "abschreiben" um es für meine privaten Webseiten einzusetzen ? Welche Erfahrungen haben Sie mit "abmahnwütigen" Zeitgenossen schon gemacht und sind Sie sich sicher, daß Ihr Impressum Sie gut genug schützt ?

Natürlich dürfen Sie mein Impressum für Ihre Zwecke verwenden. Bisher bin ich von Abmahnern verschont geblieben, doch man kann sich da nie sicher sein, ob man nicht irgendwann ins Visier von solchen Menschen gerät. Mein Impressum habe ich mit einer Anwältin durchgesprochen, die der Meinung ist, das es in dieser Form ganz in Ordnung ist und auch schützt. Da ich die Anwältin näher kenne, war die Prüfung umsonst.

16. Feb. 2006German

Telefonkarte

Ich habe eine längst abgelaufene Telefonkarte noch rumliegen und möchte sie komplett löschen und dann ein paar Daten, die nicht jeder sehen darf draufspeichern, ich weiß, dass der Speicher sehr begrenzt ist, aber ein paar Byte sind ausreichend. Wie kann ich dann die Karte bearbeiten?

Auf einer normalen Telefonkarte befindet sich ein irreversibler Abwärtszähler und ein paar wenige weitere Byte für ATR und Konfiguration. Die Karte kann deshalb leider nicht als einfacher Datenspeicher benutzt werden. Dies kann man mit bestimmten Krankenversichertenkarten, bei denen der Schreib-/Lesezugriff nicht durch eine PIN gesichert ist. Dazu benötigt man ein Kartenterminal, dass das Protokoll der Speicherkarte unterstützt (z.B. I²C-Bus) und ein Programm auf dem PC, das wiederum mit dem Kartenterminal kommuniziert. Diese Art von Terminals kann oftmal mit den üblichen Chipkarten-Kommandos READ BINARY und UPDATE BINARY angesprochen werden. Das Terminal übersetzt dann die Kommandos in das Protokoll der Speicherkarte.

14. Feb. 2006German

SMST4PIC - how to build it

I have tried to simulate the codes that are provided in your SMST4PIC project using MPLAB sim and there are some errors. Can you give me the steps in simulating the software?

The best way with MPLAB is to create a new project with the PIC12F629 as the hardware - this is also called a new workspace. Then you copy all the SMST4PIC files into one directory and include the SMST4PIC.asm file as a source file. Do not include the other source files because they are includeed automatically by SMST4PIC.asm file. Then you press enter and it should work.

14. Feb. 2006German

SMST4PIC - selling it

I just wanna know if you have an available prototype SMST4PIC that you're willing to sell it.

I have an available prototyp which I use daily for transmitting environment measurements. I don't can sell it because I need it. From my position it would be good if you can build up your own experiance in programming and loading code into a PIC because it offers you much better possibilities than just buy it.

14. Feb. 2006German

SMST mit Siemens M20 Terminal

Wenn ich das Programm starte und auf ein Button klicke dann schliesst die Applikation. Kannst du mir vielleicht weiter helfen? Da ich keinen Serial Port in meinen Laptop habe benutze ich den USB Port mit passenden Treiber (USB to Serial Treiber). Liegt vieleicht dort das Problem? Ich benutze Windows XP, Eclipse 1.3.1 und das Siemens M20 Terminal.

Den Absturz Deines Programm kann ich leider nicht nachvollziehen, ich vermute aber, dass es tatsächlich etwas mit dem USB nach RS232 Konverter zu tun haben könnte. Ich setzte nämlich bei SMST auf ziemlich hardwarenahe Schichten auf. Ich kann hier nur empfehlen das Programm mal auf einem PC mit echter serieller Schnittstelle auszuprobieren. Das funktioniert normalerweise tadellos.

14. Feb. 2006German

SMST mit Siemens M20 Terminal

Ich will Deinen Code benutzen um SMS Messages in eine Datenbank zu speichern. Wird dein Programm auch mit das Siemens M20 Terminal (GSM Modem) arbeiten?

Das Siemens M20 sollte funktionieren, da SMST auf die durch ETSI normierten aufsetzt.

14. Feb. 2006German

SMST

I have problems with the remark you gave: "Before starting the programm you have to adopt SMSDIALNO, EMAILDIALNO, EMAILADR to your personal values." How to set those variables, are there any other things to do before running the program?

You have to look into the source code of SMST to see the way it works. You have to adopt SMSDIALNO, EMAILDIALNO and EMAILADR to your personal values from your network operator, e.g. the telephone number of the subscriber you want to send a SMS.

14. Feb. 2006German

SMST4PIC

I think of using any Nokia phones as my GSM module that connected with any microcontroller that can be able serially interfaced and be programmed with AT commands. The problem is that I'm new in this programming of microcontrollers. I want to unlock a door remotely.

The SMS4PIC is not a very difficult assember program but you have to have a little bit experiance about the basics. If you really want to build your own door unlocking application based on SMST4PIC I suggest that you start to learn the assembler for PICs. There are many web sidesabout PIC. You need also a simple PIC programming tools which can be also build based on the ideas in the web. The reason for me to use PIC was that there most of the tools are available for free and that there are many information about the assembler and the hardware also availbale for free.

10. Feb. 2006German

SMST4PIC - receive SMS

I would like to inquire if it is possible for the SMST4PIC to recieve SMS? Is there any modifications to be made in the hardware?

SMST4PIC can receive SMS without changes in the hardware. You can see the way how this works in SMST.

9. Feb. 2006German SMST4PIC - different PIC Can we use the PIC12F672 in the project with changing the firmware that you have provided? It should be possible to use the PIC12F672 only with a few changes instead of the PIC12F629. I always pay attention to avoid chip specific functionality.

25. Jan. 2006German

SMST4PIC - RS232

I saw that you have used a MAX232 as interface between the phone and the PIC. This is due to the fact that the cable of the phone has already an RS232 adapter inside, so you need to re-trasform the signals. Now, I would like to know if you think that is possible to connect directly the TTL pins of the PIC to the IN/OUT pins of the phone thinking to use the cable without the onboard RS232 adapter.

You are completely rigth. In a usual RS232 cable for the mobile phine a RS232 converter is included and this means that between the PIC and the mobile are two RS232 conversions. It is possible to connect the PIC direct to a mobile phone, but you have to be check first the voltage from the mobile.

10. Jan. 2006German

USIM lesen

Gibt eine Möglichkeit, die Daten von UMTS 'SIM' Karten auszulesen, vor allem die Einträge im Telefonbuch?

Die USIMs verhalten sich ziehmlich ähnlich wie die SIMs. Es gibt ein, allerdings ziemlich umfangreiches, Dateisystem und alle Telefonnummern und sonstige Daten sind in entsprechenden EFs gespeichert. Dies ist alles in der Norm 3GPP TS 31.102 spezifiziert die man bei ETSI (www.etsi.org) umsonst downloaden kann. Leider sind die Kurzfurnummern nicht wie bei der SIM in einem einfachen EF ADN abgelegt sondern in einer relativ komplizierten Konstrukt, dass aus über Zeiger verknüpften Dateien besteht. Auch dies ist in der oben genannten Norm beschrieben.

Und an dieser Stelle fängt nun die Arbeit an! Man kann mit dem Protokoll T=0 alle Dateien lesen, sofern man die Zugriffsrechte dazu hat. Bei den Kurzrufnummern benötigt man also die PIN. Wenn man nun die Dateien gelesen hat, muss man die erhaltenen Daten noch menschenlesbar aufbereiten, was etwas Arbeit voraussetzt.

8. Jan. 2006German

GSM tracking device

I am planning to make a tracking device out of the GSM phone. Could you help me.

Without a GPS device you will get no exact position data. The only thing you can do is to fetch periodically the cell ID with the command AT+CREG? With this information you will get the actual used identifier of the GSM cell. The problem ist that the cell IDs are not public and you have find out the position of the corresponding GSM base station by your own. This will work for sure but you will get no exact position of the phone, especially in rural areas where the cell are quite big. If you poll the cell ID with a microcontroller you can send the postions via SMS to an other device on which it can be displayed on a map.

A professional solution would be the usage of a GPS device. Most of the GPS devices have a serial RS232 interface which is on the logical level based on standalized AT commands. If you have a programmable device like a single chip microcontroller or a contraller board with two serial ports you can fetch the actual position data from the GPS device and send them periodically via SMS to a email addess. On the email receiver PC you can prepare the data into the Google Earth format and display it on a map or the satelite picture in Google Earth.

Please note that simple GPS devices without person maschine interface can be buyed for less than 100 Euros. This are just simple modules for usage in systems like you want to build.

8. Jan. 2006German

neue Auflage Handbuch der Chipkarten

Arbeiten Sie an einer neuen Auflage und wann erscheint diese gegebenenfalls?

Ich arbeite an einer neuen Auflage des Handbuchs der Chipkarten. Bis es jedoch im Buchhandel erscheint wird es wohl noch einige Zeit dauern. Ich rechne zur Zeit mit Anfang 2007 damit. Das Handbuch der Chipkarten ist jedoch immer noch ziemlich aktuell und vor diesem Hintergrund habe ich mich entschieden in 2005 ein Buch über Chipkarten-Anwendungen zu schreiben anstelle das Handbuch zu überarbeiten. Das neue Buch wird im März 2006 im Hanser Verlag erscheinen und behandelt Entwurfsmuster und Hinweise zur Erstellung von Chipkarten-Anwendungen.

FAQ 2005

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

Referenz

Schlagwort/
Catchword

Frage/
Question

Antwort/
Answer

31. Nov. 2005German

USB for SMST

Can I use SMST for USB?

SMST supports the sending and receiving of AT commands via serial line (RS232). The serial communication can go over IrDA, Bluetooth, USB or other bearers. For this you need specific drivers which a available usually for free in the web. This drivers establish the communication between the serial sended AT commands to the used communication path.

30. Nov. 2005German

SMST in foreign counties?

Can I use SMST in Mexico?

There is no problem to run SMST in other countries, because the communication between SMST and a mobile phone is worldwide standalized by ETSI. You have to ensure to use a GSM or 3G/UMTS mobile phone because SMST will not work with CDMA or TDMA phones because they have an different AT-interface.

25. Nov. 2005German

Abhören der Kommunikation mit einer Chipkarte

Kennen Sie eine Schaltung dafür mit einem PC-Programm um den Datenaustausch zwischen Terminal und Chipkarte abzuhören?

Auf meiner Homepage unter Intercept the Communication between Terminal and Smart Card gibt es bereits so einen Schaltplan als Skizze. Er sollte eigentlich funktionieren. Ich habe das Ganze in fliegender Verdrahtung aufgebaut und da gab es keine Probleme. Normalerweise benutze ich für so etwas ein professionelles Tool z.B. von Comprion (www.comprion.com) aber das ist definitiv ist zu teuer für einen Hobbyisten.

22. Nov. 2005German

EMV Spezifikationen

Gelten die EMV Spezifikationen auch für Debitkarten?

Debit- und Kreditanwendungen unterscheiden sich auf der Karte nur marginal, der eigentliche Unterschied besteht im Hintergrundsystem, da es hierbei nur darum geht, wann der Bezahlbetrag vom Konto des Karteninhabers abgebucht wird.

18. Oct. 2005German

strange names

Why do you use such strange names as TSCS, SOS, SMST and SMST4PIC for your project?

I want to ensure that the names are more or less worldwide unique and to ensure not to come into trouble with registered names.

10. Okt. 2005German

Kostenanalyse einer Chipkarte

Können Sie mir Informationen bzgl. Fertigungsprozesse, Materialien, Kosten und Hersteller zwecks Kostenteilanalyse von SIM-Karten zukommen lassen?

Dies ist ein sehr interessantes Thema. Sie müssen dabei jedoch bedenken, dass die Preise von Chips und den anderen Materialen enorm von der Menge und von den Verhandlungen mit den jeweiligen Lieferanten abhängig sind. Es gibt da eigentlich keine "Katalogpreise" sondern nur Verhandlungen. Die Hauptkomponente aus preislicher Sicht bei einer Chipkarte ist natürlich der Mikrocontroller, dessen Ausgangspreis sich vor allem durch die Chipfläche und die Technologiegröße bestimmt. Eine wichtige Rolle spielt dann natürlich die Stückzahl und die Attraktivität des Marktes in dem der Chipkarten-Controller eingesetzt wird. Konkrete Zahlen kann ich Ihnen nicht nennen, da diese in der gesamten Branche als streng vertraulich behandelt werden.

20. Sept. 2005German

EF Key

Wie sind die Schlüssel für das Secure Messaging abgespeichert?

Den Schlüssel für Secure Messaging würde ich in einem EF Key mit Key-ID unter dem MF ablegen. Da kann er dann auch sauber administriert werden, da sich die Zugriffsrechte für das EF Key über das dazugehörige EF ARR passend setzen lassen.

19. Sept. 2005German

T=0

Beim T=0 Protokoll gibt es das GET RESPONSE Kommando, wenn gleichzeitig Daten gesendet bzw empfangen werden. Dies gibt es beim T=1 nicht. Das T=0 Protkoll ist ja quasi Schichtübergreifend. Es muss dann ja auf der Chipkarte dieses GET RESPONSE implementiert werden. Dieses liefert dann eigentlich nur die Daten, die nicht gesendet werden konnten. Wie implementiere ich dieses GET RESPONSE auf einer Chipkarte?

GET RESPONSE ist kritisch, da es nahe an der Übertragungsschicht ist. Man kann allerdings so vorgehen: Wenn die (GSM/UMTS) Chipkarte auf ein Kommando die Antwort '9Fxx' zurücksendet, dann muss die Antwort vom Terminal explizit mit der Länge xx abgeholt werden. Dies muss eine Art Zwischenschutz im Terminal gewährleisten, damit die dortigen Programme nicht abhängig vom Übertragungsprotokoll werden. In der Praxis sieht es so aus, dass man im Terminal bei der Abarbeitung der APDU Sequenzen prüft, welches Protokoll gerade läuft und bei T=0 die GET RESPONSE einschleust.

11. Sept. 2005German

Java Card security

Some specialists say that java card is not secured like the card with native OS, what do you think?

The difference between java smart cards and native smart cards is more or less the java virtual machine and its runtime environment and many APIs. With native smart cards you have no possibility to load your own programm code into the card and this means that you have only the features from the smart card OS for your application. The smart card OS is made usually by quite experianced people from a smart card companie and very secure and stable. If you write your own java card application you need quite lot experiance in programming and application design for a secure application. If you make something wrong at this step you will get earlier a security hole in your application than with an native smart card. From the OS point of view both card types should be have a similar security.

If you have a well designed application and java card programm code their is in my opinion no significant difference between a java card OS and a native OS.

6. Sept 2005German

SMST4PIC - voice call

I need a specific command for a voice call set up.

You have to use the AT commands for mobile telephone for your work. Please look at the ETSI TS 07.07 standard "AT command set for GSM Mobile Equipment (ME)" for the details (www.etsi.org). Your approach should be possible.

4. Sept. 2005German

Gewicht des Chips

Wie schwer ist ein Geldkarte-Chip und aus welchen Material wird der Chip hergestellt?

Ich bin mir nicht sicher was in diesem Fall mit "Chip" gemeint ist. Es könnte der eigentliche Mikrocontroller sein oder auch das Modul, das umgangssprachlich oft "Geldkarte-Chip" genannt wird. Im Abschnitt Recycling des Handbuchs der Chipkarten gibt es einige Meßwerte. Ein Mikrocontroller (10 mm2) besteht aus Silizium mit verschiedenen Dotierungen und wiegt 0,009 g. Ein Modul mit 8 Kontaktflächen besteht aus Epoxidharz, Glasfaser, Nickel, Aluminium, Gold und wiegt 0,180 g.

19. Aug. 2005German

Standard für Chipkartenterminals

Ich beabsichtige eine Chipkarten-Applikation für den Einzelhandel zu schreiben. Ich versuche zur Zeit herauszubekommen, ob ich dafür auch einen eigenen Kartenleser mit meiner Softwarte anbieten sollte oder ob es nicht auch möglich wäre, die vorhandene Terminal Infrastruktur des Einzelhandels zu nutzen.

Die meisten Kassen haben mittlerweile ein direkt angebundenes Terminal. Dieses ist, sofern es sich um eine PC-Kasse handelt, in der Regel mittels PC/SC ins Betriebssystem eingebunden. OCF spielt in der Praxis keine so große Rolle.

Allerdings gibt es keinen allgemein verwendeten Standard zur Einbindung von Chipkarten-Terminals in Kassen. Da existieren die verschiedensten Varianten und man muß sich immer den jeweiligen Einzelfall anschauen. Es wird deshalb wohl nicht möglich sein, eine Software zu schreiben, die dann auf allen Kassen mit dem jeweils angebundenen Terminal funktioniert. Bedenken Sie auch, dass viele Kassen mit Linux als OS arbeiten und da zum Teil wiederum spezielle Treiber zur Anbindung von Chipkarten-Terminals eingesetzt werden.

19. Aug. 2005German

SMST

I connected a Nokia 6560 to my PC via infra red. Hyperterminal started ok and AT got back a response of OK. But, for any other AT commands like "at+cbc" etc., the phone always responds ERROR. Do you happen to know what this might be due to?

This behaviour is quite unusual. I suggest to try this again with another phone to check if the PC - IrDA - Mobile connection is stable. Addendum: I just found that my phone is on TDMA instead of GSM. Do you think that might be the reason? I'm quite sure that this is the reason. As I know there is no common public standardisation for TDMA phones and it is quite difficult to get the specidfications. Try to use a GSM or UMTS/3G phone.

19. Aug. 2005German

Java Cards

Is it possible to purchase blank contactless cards (no OS) and install JavaCard J RE in the card? Is this what people usually do?

It is usually not possible to get high performance white cards, because of security reasons. It is not possible to load a Java VM and a JRE on a smart card because there is not enough memory space on it. Java on a smart card means a very specific subset of the PC Java with dedicated features. You can get such a card only from a few companies because the development of a Java Card is quite complicated and expensive.

19. Aug. 2005German

Java Cards

Would you know any website from which I can order a handful of contactless Java cards?

It is quite difficult to get in small quantities Java Card because the Card Manufactorer sells usually this card only in huge quantities. But from most of the card manufactoerer are demonstration kits available with Java Card Simulator, CAP File Loader and all the necessary tools to develop your own applications. As an example look at the webside of the manufactorers (e.g. Giesecke & Devirent, www.gi-de.com) for more informations about this kits.

16. Aug. 2005German

Kontaktkopf

Ich bin auf der Suche nach einem Kontaktkopf um Smartcards zu beschreiben/testen/lesen. In Ihrem Buch haben Sie einen 16-fach arbeitenden Wareneingangstester abgebildet. Könnten Sie mir einen/mehrer Hersteller solcher oder kleinerer Kontaktköpfe nennen?

Diese Art von Vielfachkontaktköpfen werden meist von den Kartenherstellern selber entwickelt und dann in Auftrag gegeben. Sie werden jedoch nicht vertrieben, da praktisch kein Markt dafür existiert. Sie könnten jedoch mal z.B. bei der Fa. Mühlbauer nachfragen ob die so etwas anbieten oder selber so einen Kopf bauen lassen. Das teure ist dabei nicht der eigentliche Kontaktkopf, sondern die Terminals die an diesem angeschlossen sind.

16. Aug. 2005German

EF ARR

Hat das EF ARR eine fixe FID?

Die FID für das EF ARR ist variabel und nicht fest vorgegeben. Sie können auch die Zugriffsbedingungen für das EF ARR in einem Record des EF ARR festlegen. Dies ist manchmal aus Verwaltungsgründen des Systembetreibers ganz praktisch.

16. Aug. 2005German

Dateien für Schlüssel

Das File mit den Keys bzw. PINs kann ja ein EF Working bzw EF Internal sein. Wenn man es als Working macht, kann man PINs bzw Schlüssel eventuell ändern. Dann kann man aber wieder nicht festlegen, welche Zeilen man in dieser Datei ändern kann. Dann kann man mit eineR PIN alle Schlüssel ändern. Oder ist das gewollt?

In der Regel sind die PINs und Schlüssel in einem EF Working abgelegt, dessen Zugriffsbedingungen für lesen und schreiben auf "never" stehen. Mit CHANGE PIN kann ja z.B. immer noch die PIN ändern, da das Kommando von den Zugriffsbedingungen auf Dateien unberührt ist. Funktionen wie PIN ändern u.ä. gehen direkt über das OS und werden im Programmcode des Kommando abgedeckt. Dabei spielt die Zugriffsverwaltung auf das Dateisystem keine Rolle! Diese ist nur für von außen kommende Kommandos wie READ, UPDATE, DELETE, ... von belang. Für ein CHANGE PIN benötigt man die aktuelle PIN und übergibt zusätzlich die neue PIN, so dass dieses Kommando kein Sicherheitsrisiko ist, selbst wenn ein Unbefugter an eine aktivierte Chipkarte mit bereits eingegebener PIN Zugriffs erhält.

16. Aug. 2005German

Zugriffsbedingungen

Ich bin dabei mir zu überlegen, wie ich die Zugriffsbedingungen auf Dateien lösen werde. Es gibt ja die Möglichkeit des EFARR, in dem die Bedingungen stehen. Im Small-OS sind Sie den Weg gegangen, im Header jeder Datei einen Zustand zu definieren, der Voraussetzung für den Zugriff auf diese Datei ist. Der aktuelle Zustand wird im dazugehörigen DF gesetzt. Dies ist dann ja die zustandsorientierte Variante. Die Variante aus den EFARRs ist ja die von ISO7816-9. An welche soll ich mich anlehnen? Ich würde schon gerne diese machen, die zukunftssicherer ist.

Bei Small-OS habe ich die Vorgängerversion der üblichen Zugriffsbedingungen benutzt, wie in den ersten STARCOS Betriebssystemene und auch heute noch bei den SIM-Karten üblich. Zugriffsbedingungen über ein EF ARR sind jedoch mittlerweile der internationale Standard und alle anderen Mechanismen sind eigentlich technisch überholt. Nehmen Sie das EF ARR als Vorlage, alles andere ist veraltet und noch dazu auch recht unflexibel.

11. Aug. 2005German

CRC bei T=1

Ich bin dabei ein Terminal auf einem Atmel Controller zu entwickeln, wobei sich einige Probeme mit T=1 ergeben. Sind Ihnen Karten bekannt, die mit einem CRC arbeiten.

CRC bei T=1 war eine interessante Idee Anfang der neunziger, hat aber meines Wissens nach nie den Prototypenstand in einem Chipkarten-Betriebssystem verlassen. Der Grund ist, dass ein CRC keine deutlich bessere Kommunikationssicherheit gegenüber XOR bei der Datenübertragung zwischen IFD und ICC bringt. Zudem sind aus meiner Sicht nicht alle Parameter für den CRC in der ISO/IEC 7816 exakt spezifiziert, so dass es aller Voraussicht nach zu Kompatibilitätsproblemen führen würde.

10. Aug. 2005German

EF ARR

Ist es spezifiziert, in welchem Verzeichnis diese EF ARRs liegen müssen? Oder kann man sie irgendwohin geben? Wie werden diese EF ARRs von einem anderen File referenziert? Durch die FID? Muss jedes File eine Referenz zu einem EF ARR haben?

Das EF ARR befindet sich dem Verzeichnis dessen Zugriffsrechte es steuert. Die Datei dessen Zugriffsrechte das EF ARR bestimmt referiert anhand der FID auf das EF ARR. Jede Datei benötigt deshalb zur Festlegung der Zugriffsrechte eine Referenz auf das EF ARR. Nebenbei bemerkt kann man darauf einen ganz interessanten Angriff durchführen, indem man das EF ARR löscht und schaut, ob denn nun plötzlich die darauf referierenden EF keine Zugriffsrechte mehr haben und man alles lesen kann. Für die einzelnen Zugriffsrechte wie lesen oder schreiben wird die entsprechende Recordnummer im EF ARR referiert, der den Regelsatz mit den Zugriffsrechten enthält.

31. Juli 2005German

ISO 7816

Es gibt ja das ISO7816 Dateisystem. Gibt es auch andere? Mit anderen Dateitypen bzw anderen Attributen.

Das ISO/IEC 7816-4 Dateisystem hat sich fest etabliert und bis auf einige Spezialfälle ist dies der weltweite Standard. Wichtig ist dabei jedoch, dass auch Datenobjekte unterstützt werden, was nicht alle Chipkarten-Betriebssysteme leisten.

31. Juli 2005German

APDUs

Gibt es auch Chipkarten, die nicht über APDU's kommunizieren sondern über ein anderes Format?

Es gibt einige wenige Sonderanwendungen (z.B. manche Pay-TV Systeme ) die eine Kommunikation neben dem APDU Format nutzen, doch ist dies eine echte Ausnahme.

26. Juli 2005German

Datenaustausch zwischen SIM und ME

Kennen Sie ein Programm, welches den Datenaustausch zwischen SIM und ME, eingespeist z.B. über die RS232-Schnittstelle des Rechners in den selben, am PC-Bildschirm so darstellt, dass unkompliziert zu erkennen ist, welche Datensätze von welchem Modul geschickt werden?

Solche Programme gibt es, z.B. IT3 MOVE von Orga Test, allerdings bewegen sich die Preise solcher Programme in einer Größenordnung, die "Heimwerker" normalerweise nicht ausgeben wollen. Einen beispielhaften Mitschnitt einer Kommunikation (trace) mit dem genannten Tool finden Sie unter "Useful Things for Smart Card Users" auf meiner Homepage. Falls Sie etwas basteln wollen, dann finden Sie ebenfalls unter "Useful Things for Smart Card Users" eine Skizze, wie man die Kommunikation zwischen Terminal und Karte abhören und mit einem Terminalprogramm auf einem PC mitschneiden kann.

19. July 2005German

plug-in cutter

Do you know where I could buy a tool that cuts SIM size plug-ins from a full-size smart-card?

There are some electrical powered tools in the market, but they are quite expensive. I personally use a crow bar (Stemmeisen). This is a little bit dangerous but works quite well.

12. Juli 2005German

SIM-Kartenhalter

Kennen Sie auch Hersteller von SIM-Kartenhaltern? Da scheint es wohl nur ganz wenige zu geben, oder?

Soweit mir bekannt ist hat Amphenol mal welche gemacht. Es gibt da schon einige Hersteller die so etwas immer noch machen. Da müßte man am besten mal mit einer Suchmaschine recherchieren.

8. July 2005German

SIM plug-in cutter

Do you know where I could buy a tool for the lab that cuts SIM size plug-ins from a full-size smart-card?

There are professional tool for this purpose, but they cost more than 2000 Euros. I personally use instead of a high end cutter a crowbar! This is not a good solution but it works!

29. Juni 2005German

Smart Card Current leakage test

I have not found in your book yet about Smart Card Current leakage test, may be you know about some knowledge source about this topic.

There is a paragraph in the security chapter in the 3rd english edition about leakage test. Leakage analysis is more or less power analysis (SPA, DPA) with a resistor between smart card terminal and Vcc or ground of the smart card. An other possibility is the measure the high frequency emission with a very tiny coil on the chip. With both of them you can collect quite much informations about smart card internal work if the smart card have no hardware and software countermeasures.

26. June 2005German

SMST

I am using ur SMST, which is very good and very much help-full for me. it is working good with nokia 3230 on 9600 baud-rate via IR. but it is giving me the problem with anycom gs320 modem. i am able to connect with the modem on 115200, some commands it run very good and in some commands it is not giving me proper read status of the AT-command. like sending SMS. is there any problem with the highest baud-rate like 115200.

There is no limitation concerning the connection speed, but 115200 ist quite fast and if the multitasking on your PC is not smooth enougth this could case communication problems. I suggest to reduce the speed.

8. Juni 2005German

Kartenleser mit PC/SC und OCF

So wie ich verstanden habe, braucht man doch nur einen OCF konformen Kartenleser, um OCF benutzen zu können? Sie haben in Ihrem Code geschrieben, dass Ihr Code ReadSIM.java mit dem Towitoko Chipdrive micro getestet wurde. Heißt es, dass dieser Kartenleser alle gängige SIM bzw. USIM Karte mittels des mitgelieferten Mini-Sim-Adapters lesen kann, egal von welchen Mobilfunkbetreibern die Karte ausgestellt wurde? Da die Homapage von Towitoko automatisch an neue Adresse www.chipdrive.de weitergeleitet wird, gehe ich auch davon aus, dass der dort angebotene Kartenleser CHIPDRIVE micro pro(USB) genau derselbe ist, ist das richtig?

Es reicht sogar ein PC/SC konformer Kartenleser, da es einen Treiber gibt, der OCF darauf aufbaut. Dies mache ich im übrigen genauso. Eine USIM kann mit jedem handelsübliche Kartenterminal gelesen werden, die ist völlig unabhängig vom Netzbetreiber, da die USIM von ETSI global spezifiziert ist. Towitoko wurde von SCM aufgekauft, deshalb die Umleitung auf die andere Homepage. Die Towitoko/SCM Terminals sind durchaus gebrauchsfähig, wenn man sich auch von einem 10 oder 30 Euro billigen Gerät keine Wunder erwarten darf.

4. Juni 2005German

API zum lesen von USIM-Karten

Gibt es ein API für PC-Software dass Schnittstellen zum Lesen von IMSI, MSISDN u.ä. bietet?

So etwas gibt es nur fest eingebaut in Tools von Netzbetreibern und Kartenherstellern. Als API Schnittstelle habe ich zumindest so etwas noch nie gesehen. Mit meiner Softwaresammlung ist es aber leicht möglich sein so etwas zu machen.

2. Juni 2005German

SMST4PIC, higher transmission rate

Manche Mobiltelefone benötigen eine Datenübertragungsrate von 19,2 kBit/s anstelle von 9600 kBit/s. Ist dies mit SMST4PIC möglich?

Hinsichtlich der Werte für 19,2 kBit/s müßte man die Sende- und Empfangsroutine entsprechend anpassen. Die genauen Werte kenne ich leider auch nicht, doch bin ich mir sicher, dass der PIC die hinsichtlich seiner Taktfrequenz ohne weiteres schaffen kann.

2. Juni 2005German

USIM-Karte lesen

Ich möchte die Daten aus einer vom Mobilfunkbetreiber ausgestellten USIM-Karte lesen.

Die für die Interpretation der Daten notwendingen einschlägigen Spezifikationen kann mann über ETSI (www.etsi.org) kostenlos bekommen. Auf meiner Homepage gibt es einen Bereich der sich "PC as Smart Card Terminal" nennt und da befinden sich div. Programmbeispiele, wie man mit Java und einem PC/SC Terminal Daten von einer Chipkarte ließt.

31. Mai 2006German

SMST4PIC

Ich würde gerne Ihre Schaltung für einen Artikel in einer Zeitschrift verwenden. Ist das möglich?

Es würde mich sehr freuen wenn Sie die Schaltung veröffentlichen würden, wenn auch noch ein Hinweis auf meine Webseite da wäre ist es umso besser. Ich unterstütze wo immer möglich die Ideen frei verfügbarer Soft- und Hardware.

24. Mai 2005German

Begriff Smart Card

Smartcard ist ein von Groupmark geschützter Begriff. Wissen Sie ob die Verwendung von "Smart Card" unproblematisch ist?

Groupmark hat den Begriff "Smartcard" Anfang der 90er für sich schützen lassen, obwohl er auch damals schon weit verbreitet war. Mir ist zumindest nichts bekannt dass es jemals Streitigkeiten zu diesem Begriff gab. "Smart Card" ist natürlich sehr nahe an "Smartcard", wird aber in der englischsprachigen Chipkartenwelt seit vielen Jahren anstelle von "chipcard" benutzt. Auch viele Normen und Standards verwenden den Begriff seit langer Zeit. Ich bin kein Experte und vor Gericht kann man nie sicher sein, dass es so ausgeht wie man glaubt, aber ich fände es schon merkwürdig wenn "Smart Card" nun plötzlich auch geschützt wäre. Zumindest müsste da fast eine ganze Industrie die Bezeichnung für ihre Produkte ändern.

23. May 2005German

SMST4PIC, more I/O

I'm thinking of using either PIC16C65A or PIC16F74 as they both have 33 I/Opins and serial port, may please advise on this choice and help me on assember code to do as stated before.

I suggest to use the PIC16F74 because it is a Flash-based controller and it is much easier to develop software on such a chip. It is also a quite common used PIC.

21. May 2005German

SMST4PIC, different microcontroller

I want to use an other microcontroller. Is this possible?

My PIC assember program is quite good documented, so that it should be quite easy to portate it to the typical standard microcontrollers. You can use nearly all typical 8 bit microcontrollers on the market. I prefer PIC because they are cheap and all tools (compiler, linker, simulator) are available for free. You can use also 8051 derivate, e.g. from Philips or AVR from Atmel.

17. Mai 2005German

EX-Schutz bei Smart Cards

Wir entwickeln elektronische Messgeräte zum Normieren von Gasvolumina mit einer die Smart Card zum Signieren von Datensätzen. Diese Geräte werden natürlich manchmal auch in einer explosionsgefährdeten Umgebung eingesetzt. Dazu wird von der entsprechenden Zulassungsbehörde (z.B. TÜV oder BASEFA) eine Eigensicherheit der Geräte gefordert: Kein Bauteil der elektronischen Schaltung darf sich (weder im Betriebs- noch in einem Fehlerfall) so stark erhitzen, dass es zum Zünden eines brennbaren Gasgemisches kommen kann. Der Nachweis dafür kann praktisch oder theoretisch erfolgen. Der praktische Nachweis erfolgt mittels Wärmebildkamera, der Prüfling wird dabei eine gewisse Zeit mit der größtmöglichen elektrischen Leistung beaufschlagt. Mit welcher APDU-Sequenz usw. muss ich den Prüfling ansteuern, damit er die maximale Leistung verbraucht?

Zur praktischen Ermittlung müsste man das Chipkartenkommando mit dem höchsten Stromverbrauch herausfinden und dieses dann ununterbrochen von aussen an die Chipkarte senden. Ich vermute, dass es ein Kommando sein dürfte, das asymetrische Kryptografie benutzt. Falls asymetrische Kryptografie vom Chipkarten-Betriebssystem nicht unterstützt wird, wird es wohl das UPDATE BINARY Kommando sein, das Daten ins EEPROM schreibt (d.h. die Ladungspumpe ist eingeschaltet) und aus diesem Grund mehr Strom als andere Kommando benötigt. Man sollte dies aber auf jedem Falle messtechnisch untersuchen. Wichtig ist sicherlich auch noch die maximale mögliche Taktfrequenz und die höchste mögliche Spannung dabei zu verwenden.

16. Mai 2005German

Datenblatt

Können Sie uns bitte ein detailliertes Datenblatt für den Mikrocontroller X zur Verfügung stellen?

Leider darf ich Ihnen kein derartiges Datenblatt geben, da dies den branchenüblichen Vertrauchlichkeitsvereinbarungen unterliegt. Sie können so ein Dokument jedoch bei konkretem Bedarf von den jeweiligen Halbleiterherstellern erhalten.

16. Mai 2005German

digitaler Personalausweis

Ich schreibe eine Seminararbeit über das Thema des digitalen Personalausweises. Bei allen meinen Recherchen, habe ich keine konkreten Aussagen über den Aufbau und die mögliche Konzeption eines solchen Ausweises gefunden. Sicherlich lassen sich Mutmaßungen anstellen, anhand schon bestehender Kartenmodelle der Bundesdruckerei.

Das wichtigste Dokument bei Personalausweisen ist das ICAO Dokument Doc 9303-3 zu MRTD (machine readable travel documents). Der Rest sind landsspezfische Normen wie DIN-Normen bzw. auch so etwas wie das Personalausweisgesetz das es in Deutschland gibt. Als Einstieg in die Recherche kann ich Ihnen auch noch die aktuelle Diskussion mit RFID-Karten empfehlen, in der c't finden sich darüber z.B. ziemlich viele Artikel.

28. April 2005German

Secure Messaging

I just wanted to set up a very basic program that does the PIN verification in such a way to send the 00 20 00 ... VERIFY command with secure messaging. That is a requirement of the European law. My problem is that to set up this secure channel I must do authentication and session key establishment, namely I have thought to use the MUTUAL AUTHENTICATE command.

Secure Messaging is a quite difficult thing, because you need to address the rigth keys on the smart card, use the rigth TLV-structure for the messages and do the quite complex preparation to start secure messaging.

I really suggest that you try to get some sample APDU with explanation from the manufactorer of your smart card. This is from my point of view the fastest and easiest way to get result. With try and error it is nearly impossible to find the correct parameter and command sequences.

27. April 2005German

PC/SC driver to program a Funcard

I have recently purchased a dell USB keyboard with a smart card reader incorporated. This card reader/writer works using a PC/SC driver. I was wondering if there is any way to use this card reader to program a funcard and if you could suggest any software that would allow me to perform such a task.

You will find under ???????? "PC as Smart Card Terminal" on my homepage some information about using a Java program to send and receive data via OCF based on PC/SC to a smart card. If your version of funcard support T=0 or T=1 this should work quite well. If you want to program the PIC inside the funcard withoout a standard smart card protocoll you need a PIC programmer. You will find my PIC programmer equipment under "SMST4PIC". The mentioned equiptment support direct programming of PIC microcontroller in a smart card.

14. April 2005German

Java und KVK Karten

Wir versuchen mit Java die Daten einer KVK auszulesen, d.h. unter Windows mit Java normale I²C-Speicherkarten (mit einem AT24C32 EEPROM) zu lesen. Können Sie uns hier weiterhelfen?

Bei Speicherkarten hängt es davon ab, ob I2C-Bus oder 2-/3-wire-Bus zum Einsatz kommt und ob der Kartenleser dies auch unterstützt. Die angelegte Taktfrequenz wird dabei auch ja zum Takten der ausgetauschten Daten benutzt. Dann muss der Terminaltreiber auch noch ein entsprechendes API zur Verfügung stellen, so dass man von Java aus zugreifen kann. Ist das alles gegeben, dann benutzt man üblicherweise READ BINARY zum lesen und UPDATE BINARY zum schreiben der Daten. Eine generelle Lösung die für alle Terminals gilt es meines Wissens nicht.

Ich kann Ihnen nur raten in der Dokumentation des jeweiligen Terminals oder beim Hersteller nachzuforschen ob das Terminal das Lesen von Speicherkarten unterstützt und ob ein ein API von Java aus gibt.

4. April 2005German

Identification card testing

Which certification bodies (third party) carry out the testing prescribed by the standard ISO/IEC 10373:1997 of identification cards in banking and finance activities?

There are only a few from card manufactorer independend labs who makes such kind of testing. The only test lab we know is http://www.fogra.org. ?????

29. März 2005German

COMP128

Stimmt es, dass bei dem im GSM System eingesetzten Authentisierungsalgorithmus COMP128 die Anzahl der möglichen Authentisierungsanfragen begrenzt ist?

Es ist tatsächlich so, dass manche Chipkarten-Betriebssysteme beim GSM Authentisierungsalgorithmus Comp 128-1 (und nur bei dem!) einen Authentisierungszähler mitführen mit dem die maximale Anzahl der Authentisierungen begrenzt wird. Die Maximalzahl kann frei gewählt werden, wird aber aufgrund der typischen Angriffe auf Comp 128-1 üblicherweise auf 30 000 bis 60 000 eingestellt. Der Grund für dieses Vorgehen ist darin begründet, dass der Comp 128-1 sehr verbreitet ist und viele Netzbetreiber den Austausch der SIMs bzw. Änderungen im AuC scheuen. Öffentliche Dokumente dazu habe ich nicht zur Hand, es gibt aber einige (auch deutsche) Patentanmeldungen dazu, die man über die einschlägigen Patentdatenbanken sicher findet.

25. März 2005German

SmartCard Oberthur CosmopollC - Seriennummer

Ich scheitere an einem scheinbar trivialen Problem, die Seriennummer der Chipkarte auszulesen. Nach tagelangem "Googlen" habe ich herausbekommen, dass ich per APDU auf das EF-File mit der FID = 0002 zugreifen muß (8 Byte Return code = Serial Number). Leider bekommen ich die Beispiele wie "SimpleOCF" nicht richtig zum Laufen.

Es ist auf jeden Fall gut, wenn Sie eine Kommunikation mit der Chipkarte haben. Darauf kann man dann aufbauen. Versuchen Sie doch mal eine SELECT APDU mit P2=00. Das wäre ein SELECT nach GSM 11.11. Ein weiterer Versuch wäre noch die Class auf den GSM 11.11 Standard zu setzen, das wäre CLA=A0.

Versuch 1: Command-APDU: 00 A4 00 00 02 3F 00

Versuch 2: Command-APDU: A0 A4 00 00 02 3F 00

Wichtig ist, dass Sie einen SELECT auf das MF durchführen können. Auf dem kann man dann die weiteren SELECTs aufbauen.

Sind Sie sicher, dass es sich um eine personalisierte Karte handelt? Es könnte nämlich auch sein, dass in Ihre Karte noch kein Dateisystem geladen ist. Den Fehlermeldungen wie '6A86' kann man nämlich nur bedingt trauen.

Das mit der Doku ist so eine Sache. Diese sind in aller Regel vertraulich und man bekommt nur nach einer unterschriebenen Vertraulichkeitsvereinbarung darauf Zugriff. Wichtig ist herauszufinden ob es sich um welche Art von Karte es sich handelt (GSM - SIM, UMTS - USIM, EMV, Geldkarte, allgemeines ISO/IEC 7816 Betriebssystem, ID-Karte, ...). Wenn Sie das wissen kann man sich nämlich die entsprechenden Spezifikationen besorden, die sind nämlich meistens öffentlich!

9. March 2005German

SIM Toolkit and Java Card

I'm going to write an Application in C++ (Borland) to upload SIM Toolkit files (CAPs) into the SIM Card. But I can not find how I can do this!

The usual way to load (SIM Toolkit) Java Card Applications in a smart card is to use the Global Platform commands (www.globalplatform.org). But you have to consider that you need a Java Card who supports SIM Toolkit

18. Feb. 2005German

SMST4PIC - message text

We need the unit to send daily SMS Status Messages to a minimum of 2 different numbers, and report in that all systems are OK. A message sent every 8 hours to say STATUS OK. Maybe we can program the times to send the messages.

You can customize the SMS text like you want, but at the moment the text is static: If you want to send measurement values via SMS you have the implement the simple packing algorithm of GSM (packs 1 character in a 7 bit string).

18. Feb. 2005German

SMST4PIC - 440 Hz tone

Can you explain a little better the 400 Hz tone output?

The 440 Hz tone is generated if a motion is detected. I used it to detect via walkie talkie if the dog wake up in the night and came out of his room.

18. Feb. 2005German

SMST4PIC - mobile phones

What mobile phone can I use with SMST4PIC?

You can uses nearly all GSM phones with RS232 connection, because the used AT commands are part of a mandatoty ETSI standard.

17. Feb. 2005German

KVK Karte

Woran ist die KVK-Karte als solche erkennbar und wie berechnet sich die dazugehörige Prüfsumme?

Die KVK-Karte ist an ihrer eindeutigen AID ('D2' '76' '00' '00' '01' '01') erkennbar. Diese steht TLV kodiert mit dem Tag = '4F' immer ziemlich weit vorne im Speicher. Die Prüfsumme ist ein XOR über das gesamte Template.

15. Feb 2005German

SMST4PIC

We have some transmitters on top of mountain sites and have had some robbery. We would need to have 2-4 inputs to trigger alarm, and it must call about 4 phone numbers to send the SMS messages.

Your requirements should be no problem for SMST4PIC, but you need a PIC with more ports. I suggest to use the PIC 16F876, because it have more ports and also more memory.

31. Jan. 2005German

Postgiro-Karte

Vor einiger Zeit habe ich die Postgiro-Karte verloren. Jemand fand diese Karte und hob das ganze auf dem Konto liegende Geld ab. Die PIN war sicher nicht auf der Karte notiert.

Vorab möchte ich auf jeden Fall anmerken, dass ich mich hier keinesfalls gutachterlich äußern will, sondern nur einige Dinge als Privatmensch anmerken möchte: Auf dem Magnetstreifen ist die PIN weder im Klartext noch verschlüsselt gespeichert, so dass es bei Diebstahl der Karte nicht möglich ist nur aus den Kartendaten die PIN zu berechnen. In der Praxis wird die PIN meistens bei der Benutzung der Karte ausgespäht und anschließend die Karte gestohlen. Damit hat der Dieb alle Möglichkeiten die er braucht. Wenn Sie die Orte und die Zeitpunkte der Transaktionen kennen, dann sollten Sie mal aufmerksam prüfen ob diese nicht evtl. videoüberwacht sind. Es würde bei so einem Fall sicherlich schon ausreichen, wenn nur ein einziger der betreffenden Orte überwacht wäre. Bei vielen Geldausgabeautomaten ist dies übrigends auch der Fall. Anschließend muß man nur noch an die Videoaufzeichnung zum richtigen Zeitpunkt herankommen, was aber für die Polizei kein Problem sein sollte. Sie sollten sich dabei aber beeilen, da die Aufzeichnungen meistens nicht allzu lange archiviert werden.

20. Jan. 2005German

cell info with AT commands

Is it posible to read out cell info display from a mobile phone with an AT command?

There is no mandatory AT commands in the standalized AT command set for retrieving the cell ID, but there are two optional AT commands (Network registration +CREG and GPRS network registration status +CGREG) which can be used to get the 2 byte cell ID. For details of this command see 3GPP TS 27.007 from ETSI (www.etsi.org).

8. Jan. 2005German

FIB

Wie funktioniert ein FIB? Wieso könnte man mit ihm den Schlüssel auslesen?

Mit einem FIB kann man Material auf einem Halbleiter ab- oder auftragen, d.h. man kann z.B. neue Leiterbahnen auf dem Chip erzeugen und z.B. Kontaktpads für Nadeladapter zum Abhören einer Leitung auf dem Chip aufbauen.

8. Jan. 2005German

Bus abhören

Mit welchem Equipment soll das eigentlich möglich sein? Bieten die physischen Schutzschichten nicht schon genug Schutz?

Einen ungeschützten Bus kann man mit üblichen Nadeladaptern und entsprechenden Datenerfassungsgeräten abhören. Liegen die Bus-Leitungen aufeinander oder sind durch eine Mäanderschicht geschütz so ist dies nicht mehr möglich.

8. Jan. 2005German

Laser-Cutter

Wie funktioniert ein Laser-Cutter? Warum kann er den passivation Layer durchdringen, ohne dass die Karte die Arbeit einstellt?

Ein Laser Cutter ist nichts anderes als eine Vorrichtung die mit einem Laser feine Löcher in einen Chip bohren oder auf einem Chip Material abtragen kann. Dabei ist es möglich die Leistung des Lasers zu regulieren, so dass die Tiefe des Materialabtrags variiert werden kann. Eine nicht geschützte Passivierung kann man damit durchbohren ohne die Funktion des Chips zu beeinflussen.

8. Jan. 2005German

Angriff mit Licht

Angriff mit Licht und Licht-Sensoren als Gegenmaßnahme. Wie funktionieren die Sensoren? Welche Schutzmaßnahme bieten sie?

Lichtsensoren auf Chipkarten funktionieren wie Fototransistoren bzw. Fotodioden. Fällt Licht darauf wird Strom geleitet und dieser kann gemessen werden bzw. bewirkt einen Interrupt im Prozessor. Sie schützen gegen typische Angriffe mit Licht indem der von ihnen verursachte Interrupt von der Software auf dem Chip benutzt wird die aktuelle Operation abzubrechen und den Mikrocontroller in einen sicheren Zustand zu bringen.

4. Jan. 2005German

Omnikey Cardman Dongle

The SimpleOCF.java has been tested with Omnikey Cardman Dongle 6020. With what smart cards has it been tested with? Where can I get these smart cards?

I have tested the Cardman Dongle 6020 with smart cards (SIM, USIM, multiapplications cards like STARCOS) from Giesecke & Devrient and also some of the other main smart card manufactorers. This terminal works quite well. It is really quite difficult to get smart cards in small quantities. Some of the big smart card manufactorer sell so called smart card development toolkit with 10 cards and a whole java card development toolkit. This is usually the best way to get some cards.

4. Jan. 2005German

Smart Card Reader

Which Smart Card Reader do you recommend?

Most of the smart card terminals work quite well if you use standard APDUs with T=0/1. If you want to go into the deep of the data transfer (e.g. measurement of bit timing, command with an smart card execution time of minutes) you need special terminal but these are very expensive (1000 Euro and more). I use Towitoco, SCM and Omnikey terminals and they are quite similar from a technical point of view. I think it is importand to have a terminal with USB because RS232 is slow and outdated.

4. Jan. 2005German

Write and Read from Smart Card

What do I need for write and read from Smart Card from an applications running on PC?

For write and read smart card from PC you need the free available OCF and a PC/SC driver for your smart card terminal. Thats all!

FAQ 2004

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

30. Dec. 2004German

Windows for smart cards

I found the title named Windows for smart card. What's your opinion about it?

Windows for smart card was canceled completely by Microsoft and it seems that there is no successor within the next years. The only specifications for a smart cards OS with executable code is Java Card.

30. Dec. 2004German

logical channels and USIM

The USIM card will be a real multiple applications card, but I don't know how does it support the multiple application and the logical channels. According to 3GPP 31.101/ETSI102.221, an application can be accessed by more than one logical channel. But I think that the logical channel is put to solve the multiple applications running "at the same time" in macro view (of course, they run one by one in micro view). So it puzzled me, why an application needs to be accessed by several logical channels? I know java card can support multiple applications and logical channels. But it seems difficult for native card OS to implement the multiplications and logical channels. I think the USIM card maybe need a real multiple task RTOS which can provide task management, memory management, file system and communication between the tasks, such as semaphore, mailbox, message queue. I know the card process and memory ability is too limited, but I think it is a trend to introduce multiple task OS into the smart card.

The reason for logical channels are that it should be possible that more than one application have access to data on a smart card at the same time. An example from the telecommunication smart card world a GSM session in parallel to a WIM session. In the GSM session the authentication of the SIM could be done and maybe the user edits the abbreviated dialing numbers in the EF ADN on the smart card. In parallel to this the WIM session is used to verify a message comming over the air to the mobile phone. Parallel means in this sense that the smart card can hold the reached security states (e.g. PIN verified, network authenticated) for each of this sessions separately. This have nothing to do with real time OS because there is still the master-slave behaviour of the smart card. There is no really need for a real time smart card OS at the moment. There are implementation of logical channels both on native OS and Java Card OS. It is not so difficult on the OS side to implement logicla channels. You have to store the selected file, selected record, the security states and a few other thing dependend of the logical channel.

26. Dez. 2004German

Authentifizierung an einer Website

Ich würde gerne ein Chipcard-Terminal zur Authentifizierung an einer Website verwenden. Die Idee war, den Website-Username/Passwort im gesicherten Bereich einer Chipcard zu speichern und eine PIN-Chipcard zu verwenden. Nach eingabe der PIN wird Username/Passwort ausgelesen und per SSL verschlüsselt an die Website übermittelt. Würde mir für das ganze die CT-API reichen oder müsste ich für dieses Vorhaben PC/SC verwenden oder gar die Karte selbst programmieren?

Die Realisierung Ihre Idee erfordert einiges an Aufwand. Sie sollten auf jeden Fall PC/SC verwenden, da dies der wichtigste Standard zur Anbindung von Chipkarten an PCs ist. Dann sollte auch einfach sein ein entsprechendes Terminal zu bekommen. Die Anwendung auf der Chipkarte ist leider nichts von der Stange. Ich würde mir eine kleine Java Anwendung für die Karte schreiben die nach Eingabe einer PIN den Benutzernamen mit dazugehörigem Passwort an den PC überträgt. Dazu muss man sich leider erst in die Java Card Entwicklung einarbeiten und man benötigt alle dazu notwendigen Tools. Falls Ihnen dies zu aufwändig ist, könnten Sie Benutzernamen mit dazugehörigem Passwort auch in einer I²C-Bus Karte ablegen. Ich bin nicht sicher ob diese auch mit Leseschutz über PIN erhältlich sind. Da müsste man sich mal bei den Chipherstellern umhören. Dies ist zwar technisch nicht gerade elegant, sollte aber funktionieren, sofern das Terminal I²C-Bus Karten unterstützt. I²C-Bus Karten sind auch problemlos einzeln zu vernünftigen Preisen zu bekommen.

Es wäre auch denkbar den Benutzernamen mit dazugehörigem Passwort auf einem USB-Token verschlüsselt zu speichern und die Daten bei Bedarf zu entschlüsseln und per SSL zum Server zu übertragen. Da hat man dann allerdings keine Chipkarten genutzt aber es wäre einfach!

22. Dec. 2004German

IMEI Tracking

Was macht eine IMEI Tracking Anwendung auf einer (U)SIM?

Dies ist eine Anwendung auf einer (U)SIM, welche die IMEI (International Mobile Equipment Identity = Endgerätekennung) des Mobiltelefons ermittelt und an den Netzbetreiber übermittelt. Um die Netzlast niedrig zu halten wird die IMEI nur bei Änderung übertragen, d.h. wenn die (U)SIM in ein neues Mobiltelefon gesteckt wird. Die Übertragung der IMEI findet typischerweise mit einer SMS direkt von der U(SIM) aus statt. Anhand der IMEI kann der Netzbetreiber den Typ des Mobiltelefons fetstellen und ggf. verschiedene Parameter im Mobilfunknetz darauf abstimmen oder schlichtweg damit erfassen welche Telefone in seinem Netz verwendet werden.

20. Dec. 2004German

mobile phones for SMS Transceiver

I am testing your code, it is great. But when I try to find a mobile phone nokia 6210 in the shops, i don’t find it, I am writing you to ask from another model to test your code. You kown a particulary model, that can help me.

SMS Transceiver should work with all standard mobile phone communicating over RS232 with the PC. It works also via the IrDA port if you use IrCOMM2k. In theory all the main mobile phone manufactorer supports the standard AT commands, because it is an mandatory feature in the standard. Siemens and Nokia phones should work in a reasonaly way.

17. Dec. 2004German

SMST4PIC different PIC

I would like to build a circuit with PIC. But I need 10 input signals, and 3 outputs to controll with SMS. But your project controll just 1 input and 1 output. What PIC type should I use?

I suggest to use only Flash PICs because it is much more easier to develop software on the erasable Flash Microcontrollers. My personal favorite is the PIC 16F876 because it have quite much I/O capabilities and also two PWM which might be quite interesting if you want to control one or two motors.

8. Dez. 2004German

Lasercutter

Wie funktioniert ein Lasercutter? Warum kann er die passivation layer durchdringen, ohne dass die Karte die Arbeit einstellt?

Ein Lasercutter ist nichts anderes als eine Vorrichtung die mit einem Laser feine Löcher in einen Chip bohren oder auf einem Chip Material abtragen kann. Dabei ist es möglich die Leistung des Lasers zu regulieren, so dass die Tiefe des Materialabtrags variiert werden kann. Eine nicht geschützte Passivierung kann man damit durchbohren ohne die Funktion des Chips zu beeinflussen.

8. Dez. 2004German

FIB

Wie funktioniert ein FIB? Wieso könnte man mit ihm den Schlüssel auslesen?

Mit einem FIB kann man Material auf einem Halbleiter ab- oder auftragen, d.h. man kann z.B. neue Leiterbahnen auf dem Chip erzeugen und z.B. Kontaktpads für Nadeladapter zum Abhören einer Leitung auf dem Chip aufbauen.

8. Dez. 2004German

Bus abhören

Mit welchem Equipment kan man den Bus auf dem Mikrocontroller abhören?

Einen ungeschützten Bus kann man mit üblichen Nadeladaptern (z.B. von Carl Süß www.suss.com) und entsprechenden Datenerfassungsgeräten abhören. Liegen die Bus-Leitungen aufeinander oder sind durch eine Mäanderschicht geschütz so ist dies nicht mehr möglich.

8. Dez. 2004German

Lichtsensoren

Wie funktionieren die Lichtsensoren auf einem Chipkarten-Mikrocontroller? Welche Schutzmaßnahme bieten sie?

Lichtsensoren auf Chipkarten funktionieren wie Fototransistoren bzw. Fotodioden. Fällt Licht darauf wird Strom geleitet und dieser kann gemessen werden bzw. bewirkt einen Interrupt im Prozessor. Sie schützen gegen typische Angriffe mit Licht indem der von ihnen verursachte Interrupt von der Software auf dem Chip benutzt wird die aktuelle Operation abzubrechen und den Mikrocontroller in einen sicheren Zustand zu bringen.

29. Nov. 2004German

JSR 177, AT+CSIM

Do you know which handsets support JSR-177 or AT command "CSIM"?

As I know there is at the moment no 3G mobile phone available which implements a full working CSIM or JSR-177. I saw only mobile phones with test software but not with a standard released software. I think it is still too early for this functionality.

11. Nov. 2004German

Zufallszahlengenerator

Ich suche eine Methode um auf einen Chip eines Zufallsgenerators zugreifen zu können. Das Problem liegt darin, das der Chip mit einer Kunstharz Schicht überdeck ist. Um auf den Chip zugreifen zu können müsste diese vorerst "gewaltfrei" entfernt werden. Grund für diesen Aufwand ist das Feststellen der Funktionsweise dieses Zufallsgenerators im Kontext mit Chipkarten-Sicherheit.

Falls Sie die Zufallszahlen von einer Chipkarte analysieren wollen wäre dies ziemlich einfach. Man nehme eine Java Karte baue sich ein Kommando zum Lesen von Zufallszahlen und sammle damit eine entsprechende Anzahl von Zufallszahlen. Im Java Teil meiner Homepage gibt es ein entsprechendes Beispiel mit Zufallszahlen und OCF auf dem PC.

Falls Sie aber herausfinden wollen wie der Hardwarezufallszahlengenerator auf dem Chipkarten-Mikrocontroller technisch realisiert ist wird es ziemlich schwierig. Das einfachste dabei ist noch die Kunstharzschicht, mit der richtigen Säure kann man diese recht schnell und mit geringem Aufwand entfernen. Anschließend müßten sie mit einem Elektronenstrahlmikroskop und div. anderen Halbleiteranalysegerätschaften herausfinden wo der Zufallszahlengenerator auf dem Chip ist und dann kommt das schwierigste, nämlich zu analysieren wie er funktioniert! Da dieser Generator je nach Anwendung durchaus sicherheitskritisch sein kann ist er auch entsprechend geschützt. Dies bedeutet u.a., dass er auf eine ziemlich große Chipfläche mit völlig anderen Funktionen verschmischt realisiert ist. Die Halbleiterhersteller veröffentlichen zu diesem Thema im übrigen keine Informationen.

Für eine technische Analyse schlage ich vor Sie besorgen sich öffentlich zugängliche Beschreibungen von Zufallszahlengeneratoren (im Handbuch der Chipkarten gibt es z.B. einen ganzen Abschnitt mit diversen Verweisen auf weitere Veröffentlichungen dazu) und machen darüber eine Analyse.

4. Nov. 2004German

Authentisierungsverfahren von Smart Cards

Ich bin auf der Suche nach real existierenden Kartenanwendungen / Projekten, die dynamische gegenseitige asymmetrische Authentisierung nutzen. Vielleicht können Sie mir einige Referenzen nennen?

Asymmetrische Authentisierungen sind nicht mal so selten bei Chipkarten-Systemen anzutreffen. Die Verfahren sind seit langer Zeit bekannt und ganz gut praktisch einsetzbar. Eine statische einseitige asymmetrische Authentisierung wird beispielsweise bei Chipkarten nach den EMV-Spezifikation (www.emvco.com) benutzt. Das Ganze firmiert dort unter dem Namen SDA (static data authentication) bzw. DDA (dynamic data authentication). Die deutsche SECCOS Karte unterstützt dies im übrigen auch. Bei den typischen Signaturkarten ist es oftmals ebenfalls vorgesehen eine dynamische asymmetrische Authentisierung zu benutzen.

28. Okt. 2004German

Terminal von PC aus ansprechen

Ich habe auf ihrer Homepage Terminalanbindung mit OCF und PC/SC gelesen und würde gerne eine Lese-/Schreibmöglichkeit mittels des externen COM-Kartenlesers unter Java realisieren. Ich habe das Towitoko Tool Kit von Towitoko. U.a. ist dort eine Scard32.dll dabei, die es ermöglichen soll einfach auf den Chipkartenleser zuzugreifen. Ist es möglich diese DLL auch unter Java aufzurufen? Welche Lösung DLL oder Opencard halten sie für einfacher?

Wenn Sie ein Terminal mit Java ansprechen wollen eignet sich OCF mit PC/SC eigentlich ganz gut. Die Installation ist allerding schlichtweg eine Krankheit. Ich habe bei meinem letzten Rechnerwechsel mehrere Tage dafür benötigt und am Schluß - als es schließlich funktionierte - war mir überhaupt nicht klar, warum es nun funktioniert! Sie sollten mal zumindest versuchen OCF zum laufen zu bringen. Mit XP und Towitiko hat es bei mir vor einiger Zeit immer gut geklappt. Prinzipiell kann man die Towitoko DLL auch unter Java einbinden, Beispiel habe ich dafür leider keines.

12. Okt. 2004German

SMST, SMS confirmation

I have developed my application in such a way that as the mobile receives a message, it is pulled by my application, processed it and sends a response back to the sender's mobile number. It is working fine, but the issue which I have is I want to make sure that the response has been sent properly, if not I need to give a retry for a maxmimum of 3 times at some frequency intervals. Can you help me with this?

Some GSM networks supports for SMS a confirmation of receive. This is a SMS generated by the GSM network that the previous send SMS is deliverend to the receiver. In the German D1 GSM net this could be done by *T# at the beginning of a SMS. I suggest that you send the message from SMST to the receiver with the confirmation of receive ant the beginning of the message and poll from the SMST side to get this confirmation SMS. If confirmation message could be received you know that your message was delivered.

12. Okt. 2004German

unbekante Applikationen

Wie kann man Applikationen ohne Kenntnis der AIDs auf einer Chipkarte herausfinden?

Die einfachste Lösung ist man analysiert den Inhalt des EF DIR. Leider wird ein EF DIR in der Praxis selten benutzt. Die nationalen RIDs in Deutschland sind beginnend bei 'D2 76 00 00 00' aufsteigend durchnummeriert, so dass man sie in kurzer Zeit durchprobieren kann. Damit kann man sicherlich einige Anwendungen herausfinden, allerdings benutzen viele Anwendungen eine internationale RID. Eine internationale RID läßt sich durch einfaches durchprobieren nicht so leicht herausfinden, da diese nicht zwingend in aufsteigender Reihenfolge vergeben werden. Nach ISO/IEC 7816-4 gibt es im Kommando SELECT by DF Name die Option P1='04' und damit könnte man dann mit einem verkürzten DF Name ein vorhandenes DF nach dem anderen durchselektieren. Diese Option wird jedoch nicht von allen Chipkarten-Betriebssystemen unterstützt. Das Durchprobieren aller möglichen RIDs bei einer Chipkarte ist in vertretbaren Zeitrahmen nicht möglich, da der Namensraum für RIDs (= 3 Byte) zu groß dafür ist.

7. Okt. 2004German

SMS Transceiver, Mobiltelefon einschalten

Setzt der SMS Transceiver ein eingeschaltetes Handy mit eingegebener PIN voraus?

Der SMS Transceiver setzt ein eingeschaltetes Mobiltelefon voraus. Ein elektrisches Einschalten des Telefons von PC aus ist leider ohne etwas Bastelei (vom PC ansteuerbarer Magnet um den Einschaltknopf zu drücken) nicht zu bewerkstelligen. Die PIN-Eingabe vom PC aus ist jedoch auch per AT-Kommando (d.h. auch mit dem SMS Transceiver) möglich. Alternativ kann man auch die PIN-Eingabe bei der Konfiguration des Mobiltelefons deaktivieren, so dass sich das Mobiltelefon nach dem Anschalten ohne weitere Benutzeraktivität ins Netz einbucht.

6. Okt. 2004German

Terminal und Java Card

Welches Karten Lese/Schreib-Gerät benötige ich für Java Cards?

Grundsätzlich ist eigentlich jedes Chipkartenterminal geeignet, dass das Übertragungsprotokoll T=0 bzw. T=1 unterstützt.

28. Sept. 2004German

Datenelement TS im ATR

Wie kommt ein TS beim ATR einer ICC zustande der weder 0x3F noch 0x3B ist? Mir war aufgefallen, dass mehrere ICCs (z.B. KVK) ein TS von z.B. 0x82, 0x92, oder 0xA2 haben.

Für das TS Datenelement im ATR sind tatsächlich nur '3B' und '3F' erlaubt, sofern es sich um eine Chipkarte handelt, die das Übertragungsprotokolle T=0 oder T=1 benutzt. Diese Übertragungsprotokolle werden jedoch ausschließlich bei Chipkarten mit Microcontroller verwendet. Sie haben den ATR einer Speicherkarte gelesen und da sind die von Ihnen genannten Werte durchaus möglich.

23. Sept. 2004German

OCF, read keys

I am using OpenCard to generate a keypair in the smart card and I need to export the keypair to a CA (OpenSSL) so that the CA will generate a certificate (X.509 format) to be stored inside the smart card.How can I export the public key out?

It depends on the access conditions of the smart card file system if you can read the key pair from a smart card terminal. If you can reach the rigth access condition of the corresponding key file(s) it is possible to read out the generated keys by standard ISO/IEC 7816-4 commands.

17. Aug. 2004German

EF ADN

If you could give me the details of EF ADN Alpha Identifier (in GSM SIM Card) it will be very usful to me. GSM 11.11 is not clear about this.

Look under the section Smart Card Handbook to the chapter "Extraction "The SIM"". This explanation could be quite useful for you.

10. Aug. 2004German

Microcontroller with GSM mobile phone

I want to make a microcontroller based hardware device with a GSM mobile phone connectivity. How should i start and what books should i refer to.

It seems to me that the Siemens modules (like MC35i / MC35i) are one of the best. On the other hand they is not very cheap. I personally like to use an old mobile from the bargain counter. There are some companies who had developed microcontroller application which work together with a gsm mobile, e.g. www.engelmann-schrader.de.

There is also a interesting book about the use of SMS and microcontroller, but as I know only in German: Fernsteuern über SMS, Elektor Verlag Aachen 2002, B. v. Berg, J. Engelmann, P. Grappe

For the standards you should organize the following ones:

- TS 27.005 Data Circuit terminating Equipment (DTE - DCE) interface for
- Short Message Service (SMS) and Cell Broadcast Service (CBS)
- TS 07.07 AT command set for GSM Mobile Equipment (ME)- TS 27.007 AT command set for 3G User Equipment (UE)- TS 23.040 coding of PDUs

For testing the application it makes sense to build a spy tool for checking the RS232 communication between microcontroller and mobile phone.

9. Aug. 2004German

SIM phone book entries

I have been asked to make a java based program which will read/write data from SIM, I mean Reading SMS and Phone Book entries and store it to a Access Database. Is it possible to use OCF based framework to connect your card simulator to send and receive data?

For this task it is the best you use my example "Reading abbreviated dialling numbers and short messages from a SIM" in the Java development area. This is exact what you want to do.

3. Aug. 2004German

SMSTransceiver and MMS

Is it possible to send / receive MMS messages on my Sony Ericsson T68i using the AT command set?

Are you planning to write a a software similar to SMSTranceiver for the MMS world?

It is not possible to send MMS via the actual SMS Transceievr.

I will write for sure a SMS Transceiver for MMS (I think I will change the name to xMS Transceiver) if an AT command set is available for a MMS mobile telefone. But today I don't know any mobile phone with AT commands for MMS and it seems to me that there is also no standardisation group at ETSI, who work on corresponding standard.

28. Juli 2004German

Auswertung von Returncodes

Muß ein Terminal die ganzen Returncodes auswerten?

Ein "normales" Terminal wertet eigentlich ziemlich wenige Returncodes aus. 0x9000 muß erkannt werden, dies bedeutet bekanntermaßen, es ist bei der Kommandoabarbeitung kein Fehler aufgetrreten. 0x9Fxx (bei GSM) bedeutet, das mit GET RESPONSE optional noch xx Daten von der Chipkarte abgeholt werden können. Zusätzlich sollte das Terminal noch den Returncode für eine fehlergeschlagene PIN Prüfung kennen (i.d.R. 0x9840), damit es dem Benutzer eine entsprechende Meldung bei falscher PIN-Eingabemachen kann. Ansonsten ist es üblich mit der Fehlermeldung "Kartenfehler" abzubrechen. Ich persönlich finde dies zwar äußerst primitiv, da man mit intelligenter Returncodeauswertung die Robustheit der Anwendung ziemlich erhöhen könnte, aber in der Praxis wird hier leider ein anderer Weg gegangen.

28. Juli 2004German

Chipkarte für T=0

Ich programmiere ein T=0 Protokoll auf einem terminal und bräcuhte eine dazu passende Chipkarte.

Nehmen Sie doch die SIM aus Ihrem Telefon, die kann T=0 und ist so ziemlich die beste Referenz für das Übertragungsprotokoll die Sie bekommen können.

25. Juli 2004German

T=0

Ich bin gerade dabei das T=0 Protokoll terminalseitig in Software zu implementieren. Ich habe dazu mein Lesegeraet mit Pins des PC Parallel Ports verbunden. Die Kommunikation funktioniert grundsaetzlich. Die ATR und das PTS habe ich genau so gemacht wie bei meiner GSM Karte, also die gleich Bytefolge verwendet. Ich habe Probleme mit case 5 Kommandos und GET RESPONSE.

Ihr Problem hat etwas mit dem "case" eines Kommnados zu tun. Ein GET RESPONSE ist nur bei einem case4 Kommando notwendig und die Karte muß auch explizit in SW1||SW2 anzeigen ob Daten vorhanden sind, die abgeholt werden können.

case 4 Kommando:
IFD -> ICC: CLA INS P1 P2 P3
ICC -> IFD: P1'
IFD -> ICC: DATA

ICC -> IFD: SW1 || SW2 (n Daten vorhanden, d.h. SW1=0x9F und SW2 = n)
IFD -> ICC: GET RESPONSE Kommando mit n Daten
ICC -> IFD: DATA (n Byte) || SW1 || SW2

Unter Kommunikation mit einer SIM ist es auch im Detail dargestellt.

24. Juni 2004German

2G SIM/ 3G USIM

Can you please provide me with some information on 3G SIMs/USIMs. I would like to know the differences between 2G SIMs and 3G USIMs.

There are some differencies between a SIM for 2G and a USIM for 3G. A USIM have much more files and data elements for all the new 3G parameter in the mobile phone. A USIM can optionally support the T=1 protocol beside the mandatory T=0 protocoll. For the file access management the USIM uses the (complex) rule based mechanism from ISO/IEC 7816-9 and a USIM have also a much more powerful phonebook for dialing numbers as the simple approach from the SIM. There are some other differencies but this are more or less the most important. To see the differencies in detail you should download and read the USIM specifications from ETSI. By the way it is possible to use a SIM in a 3G mobile phone (a few nework operator do this when starting their 3G services).

22. Juni 2004German

Schichtentrennung T=0 und T=1

T=0 überträgt die Daten byteweise, T=1 blockweise. Laut Ihrem Buch (Abschhnitt 6.4.2 - 3. Auflage) können die Kommunikationsschichten bei T=0 nicht klar getrennt werden. Bei T=1 ist das sehr wohl so. Bei T=1 wird die gesamte APDU verschickt. Wie genau ist das bei T=0? Wird hier ebenfalls die gesamte APDU unverändert versendet oder wird sie von der unteren Schicht interpretiert und die T=0 Protokollnachricht dementsprechend aufgebaut?

Bei T=1 werden bei einem Kommando an die Chipkarten die Kommando-APDU und die dazugehörigen Antwort-APDU als unzerstückelt zwischen Terminal und Chipkarte ausgetauscht. Die ist unabhängig von der Anwendung die diese Kommandos verwendet. Bei T=0 kann das Terminal zwar eine Kommando-APDU mit Daten zur Chipkarte in einem Rutsch senden, aber die Karte darf laut Protokoll nur mit SW1 || SW2 antworten, d.h. keine Daten zurücksenden. Möchte oder muss die Chipkarte nun Daten an das Terminal zurücksenden, so antwortet die Chipkarte mit '9Fxx' wobei xx die Länge der mit einem GET RESPONSE Kommando abzuholenden Daten angibt. Konkret bedeutet dies, dass ein case 4 Kommando immer ein zusätzliches GET RESPONSE benötigt und dies entspricht keiner sauberen Schichtentrennung. Grundsätzlich kann man aber mit beiden Protokollen alle Applikationen bedienen, technisch gesehen ist T=1 jedoch einfach durchgängiger.

9. Juni 2004German

PIN lesen

Kennen sie vielleicht ein Programm mit dem man den PIN u. PUK auslesen kann?

Prinzipiell lassen sich Geheimnisse wie PIN oder PUK nicht aus einer Chipkarte auslesen. Sofern man PIN oder PUK kennt können sie geändert aber niemals gelesen werden. Dies ist Teil der üblichen Sicherheitspolitik bei Chipkarten.

8. Juni 2004German

SIM/USIM und OTA

Kann man eigentlich über die APDU Schnittstelle herausfinden ob eine SIM über OTA kommunizieren oder angesprochen werden kann?

Dies ist nicht möglich, falls man die genaue OTA Implementierung kennt, kann man nach einer entsprechender Personalisierung suchen. Ein erster Hinweis kann auch sein ob Envelope SMS-PP Download in der SST gesetzt ist. Ein APDU Kommando 'Bist du OTA fähig' gibt es nicht.

8. June 2004German

SMS Transceiver and GPL

Do i violate rules if i use your lib in my application, i mean, i work in a software company, and i use your lib in an application that's part of a bigger commercial web application?

Don't be worried about GPL license of the SMS Transceiver. The only thing I don't want is that someone uses the source code and sell it. If you can use it for your own applications I'm quite happy, because it helps me also to come to a better and more stable version.

7. June 2004German

Java Card development

I have developed some interest recently on java card technology. I have just started playing around the software and I would like to write my own code now. I am interested in putting up a small database on a java card with my personal information and may be my photo too. I am just stuck on how to start writing the applet to do this. It seems I just can’t “start the car”.

First you need a Java Card development environment like Java Card Application Studio from G&D or something similar. You can download a trial version of this software from my web side. The next step should be to look into the different Java Card applets on my web side, maybe look into "Mini" first because it is the simplest one. There are also some demo appletts within the Java Card Application Studio. You can go within the Java Card simulation step by step through the programm code. This helps quite much to understand the functionality of a Java Card applet. The next step is a bigger one: You have to look for a Java compiler, I suggest to use the compiler from Sun, it's free and quite good. You need also some Java Cards, a CAP file converter, a CAP file loader and a suitable smart card terminal. With this equipment you can write your own appletts, load it into a Java Card and do some trials. From my experiance the main problem would be to get a cheap Java Card development environment and a few cards, because the card manufacturer usually sell cards only in quite big quantities.

2. June 2004 German

TSCS

Do you know other project like TSCS, especially on 7816-4 smartcard emulation?

Unfortunatelly I don't know any specific project, but there are for sure other projects on universities (e.g. diploma thesis). Maybe most of them are not public.

1. June 2004German

SMS Transceiver, communication with mobile phone

I tried some of the communication parameters what you suggested, but it still doesnt work. Now i'm beginning to think that there's a hardware damage/failure on my mobile phone.

You can check your mobile phone using a terminal software like Hyperterm and send a pure "AT" command to the mobile. If you get a response the hardware is ok! This is also a quite good method to try in an easy way some different AT-commands.

29. Mai 2004 German

PIN herausfinden

Ich besitze 2 alte Chipkarten die PIN-Code geschützt sind. Ich finde kein Programm und auch keine Lösung wie man den alten PIN-Code löschen kann. Wissen Sie wie das geht ?

Es ist nicht möglich auf PIN-geschützte Bereiche einer Chipkarte ohne Kenntniss der PIN zuzugreifen. Das ist ja gerade der Vorteil von Chipkarten, dass dies nicht funktioniert, auch nicht wenn man ziemlich hohen Aufwand betreibt.

21. Mai 2004German

SIM Klone u.ä.

Es wurden mittlerweile Mobiltelefone bis ins kleineste zerlegt und die API dazu offen gelegt. Ebenfalls gibt es inzwischen Bootblöcke womit sich z.B. ein Logger starten läßt der im Klartext jeglichen Traffic zur Basisstation protokolliert. Damit könnte man nun doch die IMSI und den Ki herausfinden.

Die IMSI kann man auch direkt aus der SIM auslesen, da benötigt man nur ein Kartenterminal dafür. Die Kommunikation mit der Karte läßt sich prima mit etwas Bastelgeschick und einem dazwischengehängten Rechner mit Terminalsoftware abhören. Man bekommt da alle Daten, die zwischen Karte und Telefon ausgetauscht werden. Der Ki alleine nutzt im übrigen gar nicht so viel, denn man muss auch noch den dazugehörigen geheimen Kryptoalgorithmus und dessen diverse Parameter kennen. Zudem sind alle SIMs im Hintergrundsystem bekannt, weshalb sich bei GSM nur Klone im Netz einbuchen können aber niemals selbst erzeugte und dem System damit unbekannte neue SIMs.

18. Mai 2004German

Nachladen von Anwendungen auf SIMs

Ist es möglich, dass nach Ausgabe einer SIM durch den Mobilfunknetzbetreiber Anwendungen auf diese Karte nachträglich installiert werden können ohne dass der Mobilfunknetzbetreiber hierzu sein Einverständnis gibt ?

Die SIM Karte ist Eigentum des Netzbetreibers und ohne dessen Einverständnis dürfen und können (wg. der dazu notwendigen Schlüssel) keine zusätzlichen Applikationen installiert werden.

18. Mai 2004German

I²C Chipkarten

Ein Gerät soll alle gängigen I2C Chipkarten Speicherkarten (keine Prozessorkarten) verarbeiten können. Gibt es auf den Speicherkarten Informationen über die Kartengrösse und sonstiges und wenn ja wie komme ich an diese? Und gibt es für die Karten eine Funktion mit der ich die Karten löschen kann.

Es hängt hier stark vom Hersteller der I²C Karten ab. In der Regel gibt es aber keine entsprechende Information. Bei manchen Herstellern ist die Speichergröße im EEPROM jedoch hinterlegt. Eine Möglichkeit zur Ermittlung der Speichergröße wäre, iterativ von kleinen zu immer höheren Speicheradressen zu adressieren. Da der Speicher linear durchadressiert ist würde man außerhalb des oberen Speicherbereiches eine Fehlermeldung bekommen. Bei der Adressierung höherer als gegebener Speicherplätze kommt es aber bei manchen Bauteilen leider nicht immer zu einer Fehlermeldung, sondern zu einem Überlauf und damit Neubeginn bei 0x00.

Am einfachsten ist aber aber sich die entsprechende Hardwarespezifikation des Hersteller zu besorgen, denn diese enthält in der Regel konkrete Angaben zum Speicher und zur Adressierung. Das Löschen des Speichers geschieht automatisch beim Überschreiben mit einem Wert.

16. Mai 2004German

GSM PIN Verify

Muß eigentlich vorher noch irgendwas geschickt werden oder ist das PIN Prüfen die erste APDU?

Die PIN Prüfung kann man als erste APDU senden.

16. Mai 2004German

GSM PIN Verify

Sie verwenden zum PIN prüfen:

static final byte[] CMD_VERIFY_CHV = {(byte)0xA0, (byte)0x20, (byte)0x00, (byte)0x01, (byte)0x08, (byte)0x31, (byte)0x32, (byte)0x33, (byte)0x34, (byte)0xFF, (byte)0xFF, (byte)0xFF, (byte)0xFF };

Ich verstehe die Codierung nicht ganz. Die PIN ist 0x31 0x32 0x33 0x34. Das ist ja dezimal 49 50 51 52. Eine PIN hat doch vier Ziffern z.B. 0934 wie ist das für die APDU umzurechnen?

In meinem Beispiel ist die 4-stellige PIN in ASCII codiert und da entspricht 0x31 der Zahl "1" und 0xFF wird als Padding am Ende benutzt. Dies ist die übliche Konvention bei GSM. Grundsätzlich macht die Chipkarte jedoch einen reinen Vergleich der übergebenen 8 Bytes zu den gespeicherten 8 Bytes der PIN. Insofern könnte man prinzipiell die Daten codieren wie man will, bei GSM hat man sich einfach auf obiges Schema geeinigt.

18. March 2004German

FCOS

What is FCOS?

FCOS is a technique to electrically contact the chip with the module without bond wires by gluing the chip with its face direct to the bottom of the module. The FCOS technology uses a glue and for the electrical connection some specific chip bumps.

18. March 2004German

Einbauort der SIM

Warum ist die SIM in einem Mobiltelefon oftmals hinter der Batterie eingebaut?

Ein Mobiltelefon ist ein bis zu etwa 3 Watt starker Sender im Bereich 900, 1800, 1900 und/oder 2000 MHz. Die SIM ist wie jeder Mikrocontroller empfindlich gegen starke elektromagnetsiche Wellen. Werden diese auf eine ungeschützte Chipkarte abgestraht, so kann es zu Fehlfunktionen oder zum Absturz des Prozessors führen. Aus diesem Grund wird die SIM üblicherweise im Mobiltelefon so eingebaut, dass um sie herum eine Art faradayischer Käfig ist und dieser sie vor der abgestrahlten Hochfrequenz schützt.

15. March 2004German

SIM Toolkit application

Is is difficult to write a SIM Application Toolkit application on a Java SIM and where can I get in detail informations?

The whole SIM toolkit works with proactive commands, this means that the mobile phone sends regulary messages (APDUs) to the SIM and try to fetch a command from the SIM to the mobile phone. This is the only possible way because the mobile phone is always the master in the transport protocol.

SIM toolkit is not very difficult if you had understood the basics because it offers a quite simple text based user interface and the possibility to set some triggers in the mobile phone. But if you want to create a really good application you need much experiance.

I don't know any webside in the web about SIM toolkit but there is a book "Mobile Application Development with SMS and the SIM Toolkit" from Scott B. Guthery and Mary J. Cronin which describes SIM toolkit more in detail. My personal comment for your project is, to write only a requirement specification and ask the application development of a card manufactorer to develop the SIM toolkit application.

15. March 2004German

cell info display

In many mobile phones there is a setting called as cell info display.

Cell info display means that the mobile phone shows you the received cell broadcast messages (exact: SMSCB - short message service cell broadcast). This is a similar service to SMS, but the cell broadcast messages can only be received by the mobile phone when it is in idle mode. Cell broadcast messages are send only for a local part of the GSM net and have a maximum length of 93 characters.

12. März 2004German

I²C und Java

Ich habe versucht Java-Programme auf einer handelsüblichen Speicherkarte mit I²C Protokoll zum laufen zu bekommen. Jedoch ohne Erfolg.

I²C Karten sind reine Speicherkarten und können technisch gesehen ganz gut mit den bekannten USB-Sticks verglichen werden, wenngleich sie auch viel weniger Speicher haben (typ. 256 Byte EEPROM) . Wenn Sie einen entsprechenden Treiber auf dem PC haben, dann können Sie diese Karten mit Java vom PC aus ansprechen, doch es ist nicht möglich in einer I²C Karte ein Programm auszuführen. Unter einer Java Karte versteht man im Gegensatz dazu eine Chipkarte mit Mikrocontroller in die ein Java Programm geladen und dort auch ausgeführt werden kann.

12. März 2004German

Java Card Entwicklungskit

Wo bekomme ich eine Smartcard zu günstigen Konditionen her, die ihre Programme wie z.B. die SimpleOCF.java die auf ihrer Homepage zu finden sind, benutzen können bzw. wie lautet dessen Bezeichnung? Bei der Vielzahl der verschiedenen Karten, verliert man schnell den Überblick.

Sie sprechen ein probelmatischen Punkt in der ganzen Java Card Welt an. Man könnte so tolle Sachen mit diesen Chipkarten machen, wenn man diese nur bekommen könnte!

Mit ein paar Java Karten alleine ist es leider überhaupt nicht getan. Sie benötigen eine Java Entwicklungsumgebung (z.B. JBuilder oder besser Eclipse), einen Konverter um die Java Classdatei in ein chipkartenkonformes Format zu transformieren, ein Ladeprogramm um Ihr Applet dann in die Karte zu bekommen und zum debuggen einen Simulator. Insbesondere letzteren lassen sich die Hersteller teuer bezahlen. Ich bin zur Zeit am überlegen ob es denn nicht Sinn machen würde ein kleines Entwicklungskit für wenig Geld für Java Card auf die Beine zu stellen, bin mir aber noch nicht ganz im klaren ob dafür überhaupt genügend Kunden vorhanden wären.

9. March 2004German

Java Card Crypto-API

Do you know of a text book or other reference that describes smart card crypto-APIs in detail?

The only public available document is the Sun crypto API specification.

9. März 2004German

Listen von Kommandos

Gibt es Listen von Kommandos inkl. Kodierung für Chipkarten, die öffentlich zugänglich sind?

Leider gibt es keine öffentlich verfügbaren Listen von Kommandos für Chipkarten, da viele der entsprechenden Spezifikationen geheim sind. Eine der wenigen Ausnahmen sind die Spezifikationen von EMV und ETSI, die im Internet umsonst downloadbar sind.

9. März 2004German

SimpleOCF

In Ihrem Beispiel SimpleOCF wird in allen 3 Kommandos der Parameter 2 auf "0C" gesetzt. Was hat dieser zu bedeuten?

Bei SELECT FILE bedeutet '0C' , dass die Datei selektiert wird, die als erstes vorkommt und die Chipkarte keine Antwort ausser SW1 || SW2 zurücksenden muss. Bei READ BINARY bedeutet das '0C' einen Offset von 12 Bytes. Das alles steht in der ISO/IEC 7816-4, die leider nicht umsonst zu haben ist.

10. März 2004German

FMD-Templates

Um mich mit Chipkarten vertraut zu machen, habe ich ein SELECT FILE (MF) Kommando zum Lesegerät gesendet und folgende Antwort erhalten (FMD-Template). Wie habe ich dieses zu interpretieren? Kann ich daraus auf mögliche DF/EF schliessen?
Kommando APDU: 00 A4 00 08 02 3F 00

Response: 64 1 85 03 XX XX XX

Wie ist XX XX XX zu interpretieren?

Ich vermute anhand Ihrer Beschreibung, dass Sie eine Geldkarte in Ihrem Terminal haben. Nach der ZKA-Spezifikation ist XX der "SFI des AEF mit Pfad des AEF ADFs", d.h. Sie haben eine Liste der vorhandenen EFs mit dazugehörigen SFI erhalten. Am besten ist es sicherlich die Details in dem Dokument "Schnittstellenspezifikation für die ZKA-Chipkarte, Secure Chip Card Operating System (SECCOS)" nachzuschauen. Das gibt es allerdings nicht frei verfügbar, sondern nur über das ZKA. Alle EFs, DFs auf einer Karte ausfindig zu machen oftmals nur über durchprobieren der FIDs möglich, da ein "DIR" Befehl für Chipkarten nicht normiert ist. Wie man dies machen kann findet man beispielhaft im Java Abschnitt meiner Homepage.

7. März 2004German

5. Auflage HdC

Gibt es demnächst eine 5.Auflage "Handbuch der Chipkarten" ?

Die 5. Auflage ist frühestens Mitte 2006 im Buchhandel erhältlich. Es lohnt sich also durchaus die 4. Auflage zu kaufen ;-)

4. March 2004German

send APDU to SIM via mobile phone

I want to know is there a way to send APDU's to my SIM card through my cell phone connected to my laptop?

There is no possibility (at the moment) for sending APDUs from a PC via mobile phone to the SIM. I like this idea too, because this would bring a card terminal to every mobile user.

For 3 G mobile phone it is possible to send via AT commands APDUs to the SIM. You can find further informations in the following standard: 3GPP TS 27.007. There is the possibility for "Generic SIM access" (AT command AT+CSIM) (you can send all commands to the SIM) and for "Restricted SIM access" (AT command AT+CRSM), which means you can use only the following commands: READ BINARY, READ RECORD, GET RESPONSE, UPDATE BINARY, UPDATE RECORD, STATUS.

4. März 2004German

OCF

Ist es möglich eine Anwendung für den PC mit OCF zu schreiben um eine "normale Chipkarte" anzusteuern? Konkret eine Chipkarte, die nicht Javafähig ist (z.B. EMV-Karte).

OCF hat überhaupt nichts mit Java Card zu tun, es ist lediglich eine Softwareschicht auf dem PC um von einem PC Java Programm aus auf eine Chipkarte mit Mikroprozessor auf APDU- und funktionaler Ebene zugreifen zu können. Die meisten meiner OCF Beispiele benutzen im übrigen keine Java Card.

3. March 2004

German

load application on SIM

How can I load a application on a SIM?

Technically it is possible to load Java Card and Browser based applications (not native applications) over the air on the card. But it is in these days not usual, because there are too many problems with air traffic and the management of such applications in the background systems. The usual way is that all the applications are stored during card manufactoring on the card.

3. March 2004

German

applications for SIMs

How can I write applications for SIMs?

here are some possible ways to write applications for SIMs, each with some advantages and also some disadvantages.

1. Applications based on so called native smart card OS. This can be done only by the OS manufactorers (which are for 98 % smart card manufactorer). Native applications gives you maximum flexibility but you need in detail know how of the OS.

2. Applications on Java Card SIM. This is quite easy because of the open Java Card APIs and Java Cards are quite well introduced in the GSM world.

3. Applications based on a Browser on the SIM. This is the most easiest way but there are some restrictions on functionality. There are two types of browser in the GSM world: the browser from Smarttrust and the S@T browser, both have more or less the same functionality.

I personally think that the most open and easiest way is to write the application on a Java Card. To load an application you need some secret keys from the network operator. It is not possible to write your own applications and load this to a real SIM without this keys!

3. Feb. 2004

German

Zugriff auf SIM von Java Mobiltelefonen,

Nach meinen bisherigen Recherchen ist ein Zugriff von einem J2ME Midlet aus auf die SIM standardmäßig nicht möglich und wird erst im Zuge des JSR 177 Prozesses spezifiziert.

Ist ihnen ein anderer, möglicherweise proprietärer Weg bekannt, dieses Problem zu lösen?

Kann man eventuell vom Midlet aus auf die MMC zugreifen?

Ist Ihnen ein Zeitplan für die Referenzimplementierung und das Final Release von JSR 177 bekannt?

Das große Problem von J2ME-Middlets ist zur Zeit, dass es tatsächlich keine Zugriffsmöglichkeit auf die SIM Karte gibt. Mir ist auch kein Sonderweg, z.B. über spezielle Firmwareversion von Mobiltelefonen" bekannt, mit dem auf die SIM von einer Java Applikation aus dem Mobiltelefon heraus zugegriffen werden kann.

Hinsichtlich MMC (multi media card) glaube ich dass im Rahmen des normalen Dateiverwaltungssystems und dessen APIs ein Zugriff möglich ist.

Bezüglich der Umsetzung von JSR177 auf Mobiltelefonen legen sich die Hersteller nicht allzu genau fest, wobei es so scheint, dass bis Ende dieses Jahres erste Geräte ausgeliefert werden könnten (Orginalaussage eines Mobiltelefonherstellers). Ob diese nur den reinen APDU Zugriff auf die SIM oder bereits auch den RMI Zugriff auf Java Card SIMs (nach JC Spezifikation 2.2) unterstützen ist wohl auch noch offen. Evtl. gibt es dazu aber auf der 3GSM Messe in Cannes Ende Februar Neuigkeiten.

8. Jan. 2004

German

Datenspeicherung auf Chipkarten

Ich möchte für unsere Mitarbeiter einen Gerätepass in Form einer Chipkarte erstellen. Auf dieser Karte sollen die Personendaten und Daten über Einweisungen in die Handhabung für Geräte die wir betreiben gespeichert werden. Ich habe bereits Listen mit diesen Daten in Excel erstellt und würde gerne über eine Datenbank in Access dies auf der Chipkarte realisieren. Gibt es Programme bzw. wie kann ich eine Schnittstelle zwischen Access und dem Chipkartenleser erstellen.

Es gibt von Towitoko eine ganz passable Anleitung mit einigen Codeschnipsel wie man mit Visual Basic aus Daten aus einer Chipkarte liest bzw. auch in eine Chipkarte schreiben kann. Von Visual Basic aus kann man auch ganz gut auf Access zugreifen so dass es eigentlich mit überschaubaren Aufwand möglich ist die Daten in Chipkarten zu schreiben. Alternativ dazu könnten Sie auch über die OCF Schnittstelle gehen und über ein kleines Java Programm die Daten aus einer Datei lesen und dann in die Chipkarten schreiben. Hinsichtlich der OCF Ansteuerung von einem PC aus gibt es auf meiner Homepage eine Reihe von Beispielen. Der Zugriff von Java auf Access dürfte etwas diffiziler sein, läßt sich jedoch sicherlich über eine zwischengeschaltete ASCII Datei lösen.

FAQ 2003

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

Referenz

Schlagwort/
Catchword

Frage/
Question

Antwort/
Answer

29.12.2003German

Global Platform und Open Platform

Sollte es anstelle von Open Platform nicht generell Global Platform heißen?

Global Platform ist die Organisation und Open Platform die Spezifikation. Dies sieht man auch ganz deutlich im Vorwort der OP-Spezifikation: "GlobalPlatform is an organization that has been established by leading companies from the payments and ... . Open Platform defines a flexible and powerful specification for Card Issuers to create multi-Application chip card systems to meet the evolution of their business needs. ..."

24.12.2003German

unknown Smart Card specification

Recently I bought a book called "Smart Card Application Development using Java", which contains and IBM MFC 4.1 card. When I ran some of your sample programs like SimpleOCF, I noticed that the APDU commands were accepted by the IBM MFC 4.1 card, but I received an invalid class command when I ran SimpleOCF with the ACOS1 card. After researching the ACOS1 manual, I found the correct APDU commands for the ACOS1 smart card. My question is: Where did you get a list of APDU commands that are compatible with the IBM MFC 4.1 card? Is there a complete list of APDU commands publicly available? Your ScanCmds program listed all available commands for the IBM MFC 4.1 card, but I do not know what all the commands do.

Unfortunatelly I have also no specification about the IBM smart card. You should try to get more information about this card from the IBM web server or from the authors of the book. I'm quite sure that the IBM card uses Open Platform for loading Java Card applets. You can download this specification from www.globalplatform.com. The ISO/IEC 7816-4 standalized most of the relevant smart card commands, but this standard is unfortunatelly quite expensive. The SIM/USIM specifications are available for free (www.etsi.org) and use a subset of the ISO/IEC commands. This migth be a first approach.

5.12.2003German

Chipkarten mit USB Schnittstelle

Obwohl ich mehrfach in Ihrem Buch die Beschreibung zu T=0 gelesen habe, fehlt mir noch die letzte Gewissheit für folgende Schlußfolgerungen, die ich aus Ihren Darlegungen gezogen habe. Das Protokoll T=0 existiert nur in Verbindung mit seriellen Schnittstellen, da Sie mitteilen, daß das Protokoll nicht vollständig vom phys. Kommunikationslayer getrennt ist (z.B. Byte-Wiederholung im Fehlerfall). Zukünftige USB-Schnittstellen-Applikationen können deshalb T=0 nicht verwenden, da die USB-Treiber (z.B. auf der Terminalseite) vom Applikationsprogrammierer nicht so kontrolliert werden können wie die seriellen COM ports. Ist das so korrekt?

Die Normung von Chipkarten-Mikrocontrollern mit USB-Schnittstelle ist noch nicht vollständig abgeschlossen, jedoch schon sehr weit gediehen. Deshalb sind die folgenden Aussagen etwas mit Vorsicht zu bewerten, denn es kann sich immer noch etwas ändern. USB auf Chipkarten wird ziemlich sicher dahingehend spezifiziert werden, dass es drei verschiedene Arten der Übertragung von Daten geben wird. Um TPDU Modus werden Daten nach einem der Protokolle T=0 oder T=1 übertragen, dabei wird die USB Schnittstelle sozusagen logisch unter T=0/T=1 angebaut. Für die Übertragungsprotokolle in der Chipkarte ändert sich dabei wenig das USB als reines physikalisches Übertragungsmedium verwendet wird. Der Hintergrund für diesen Modus waren bestehende Chipkarten Mikrocontroller mit mit einem separaten USB Konverterbaustein einfach erweitert werden konnten. Technisch elegant ist das allerdings nicht. Im APDU Modus werden mit USB die Kommando- und Antwort-APDUs übertragen, völlig unabhängig von einem der bisher üblichen Übertragungsprotokolle. Dieser Modus wird sich wahrscheinlich (hoffentlich) als eine Art Mittelweg zwischen bisherigen Übertragungsprotokollen und reinen IP-bassierten Lösungen etablieren. Im noch nicht endgültig ausspezifizierten IP Modus wird mit der Chipkarte eine Kommunikation mit IP (Internet Protocol) aufgebaut, so dass die Chipkarte einfach in die kommunikationsmechanismen des Internets (TCP/IP) eingebunden werden kann.

03.12.2003German

SMS Absender-rufnummer

Ist bekannt, wie sich eine Absenderrufnummer einer SMS verändern lässt, ohne auf die SIM zu schreiben?

Dies ist in der GSM 23.040 (gibt es umsonst bei www.etsi.org) spezifiziert. Die Rufnummer des Absenders einer SMS wird vom GSM-Netzwerk eingetragen und ist somit vom Absender eigentlich nicht zu manipulieren. Sie kann jedoch beim Empfänger auf der SIM im EF SMS verändert werden wenn man die PIN kennt. Dazu muss man der SIM mit VERIFY CHV die korrekte PIN übergeben und kann dann das EF SMS mit UPDATE RECORD beliebig ändern.

03.12.2003German

SMS Kodierung

Wie muss ich den Eintrag „Zeitzone“ im Header einer SMS interpretieren? (Eintrag: „00“ bzw. „04“ bzw. „08“ bzw. „28“)

Dies ist in der GSM 23.040 (gibt es umsonst bei www.etsi.org) spezifiziert. Die Zeitzone ist bei "9.2.3.11 TP-Service-Centre-Time-Stamp (TP-SCTS)" spezifiziert und ist als +/- Viertelstunden Versatz zur GMD festgelegt. U.a. steht dort "The Time Zone indicates the difference, expressed in quarters of an hour, between the local time and GMT. In the first of the two semi-octets, the first bit (bit 3 of the seventh octet of the TP-Service-Centre-Time-Stamp field) represents the algebraic sign of this difference (0: positive, 1: negative)."

03.12.2003German

SMS Kodierung

Welche Aussage enthält das Datenfeld „Steuerungs-information“ im Header einer SMS, konkret wenn dort steht „04“?

Die Steuerungsinformation ist das TP-Protocol-Identifier (TP-PID) Byte das bei "9.2.3.9 TP-Protocol-Identifier (TP-PID)" beschrieben ist. Es zeigt schlichtweg an um welche Endgerät es sich handelt an das die Kurznachricht gesendet wird, '04' ist dabei ein normales Mobiltelefon.. Eine Aufstellung der möglichen Kodierungen findet man bei GSM 23.040.

21.11.2003 German

Side Channel Attacks

Ist Ihnen bekannt, ob es geeignete Hardware gibt mit der man Side Channel Attacks simulieren kann?

Eine wesentliche Eigenschaft von Side Channel Attacks sind in der Regel (größtenteils ungewollte) physikalische Effekte im Zusammenhang mit der benutzten Chiphardware. Man misst Zeitverhalten, Stromverbrauch, elektromagnetische Abstrahlung o.ä. um dadurch zusätzliche Informationen über Daten oder Programmabläufe im Mikrocontroller zu gewinnen und korreliert diese Informationen mit bekannten Daten. Dies ist stark vom jeweiligen Chiptyp abhängig und würde sich nur mit großen Aufwand simulieren lassen. Meines Wissens gibt es für Mikrocontroller keine derartige Simulationen.

Für die Demonstration von Angriffen auf Mikrocontroller werden oftmals PIC Bausteine benutzt, da diese stark verbreitet sind und sich auch einfach programmieren lassen. Allerdings haben PIC Mikrocontroller keinerlei Angriffsschutz und sind damit überhaupt nicht mit echten Chipkarten-Mikrocontrollern zu vergleichen.

21. Oct. 2003German

J2ME Zugriff auf SIM

Wir möchten auf einem Mobiltelefon auf ein Java Card Applet zugreifen, welches auf der SIM-Karte des Handys installiert ist.

Innerhalb des Java Community Process bei J2ME gibt es eine Gruppe namens JSR 177 welche ein "Security and Trust Services API for J2ME" spezifiziert. Innerhalb dieses APIs wird es möglich sein über RMI von einer J2ME Anwendung aus auf eine SIM/USIM zuzugreifen.

10. Oct. 2003
German

Smart Card Programming

Is there a easy and cheap way to develop my own smart card operating system?

There are some free available smart cards with microcontroller and memory in ID-1 size available via some internet shops. The name of this cards are Funcard, PICCard, Gold Wafer card or Silver Wafer card. Basis of these cards is the Atmel AT90S microcontroller or the PIC 16F84/PIC 16F877 microcontrollers and a serial EEPROM with different memory size. This are typical two chips solution is a ISO/IEC 7816 standard module size. The Atmel microcontroller is more powerful than the PIC microcontroller, but for the PIC microcontrollers all development tools are free available. All of this smart cards could be programmend in assember or C.

Typical configurations are:

Atmel AT90S Microcontroller with 24C64 EEPROM (8 kByte EEPROM)

Atmel AT90S Microcontroller with 24C256 EEPROM (32 kByte EEPROM)

Atmel AT90S Microcontroller with 24C512 EEPROM (64 kByte EEPROM)

Atmel AT90S Microcontroller with 24C1024 EEPROM (128 kByte EEPROM)

PIC 16F84 Microcontroller with 24C16 EEPROM (2 kByte EEPROM)

PIC 16F877 Microcontroller with 24C64 EEPROM (8 kByte EEPROM)

27.8.2003German

Fertigungsdaten

Die Herstellung einer Chipkarte verläuft in mehreren Schritten. Dabei werden sowohl die Komponenten (ICs) als auch die fertigen Karten jeweils zahlreichen Tests unterzogen.

Speichern Hersteller diese Prüfergebnisse temporär (für die weiteren Produktionsschritte) oder sogar dauerhaft auf der Karte ab? Können diese Testergebnisse (z.B. vom Hersteller) später noch ausgelesen werden um beispielsweise zu belegen, dass die Karte beim Verlassen der Produktionsstätte in einem einwandfreien Zustand war? Bei den heutigen EEPROM-Speichern sollte das ja kein Problem darstellen.

Angefangen vom Halbleiterhersteller, über Kartenhersteller bis hin zum Personalisierer fallen eine große Menge Protokolldaten an. Die EEPROM Speicher der Chipkarten haben mittlerweile auch eine Größe erreicht, bei denen durchaus unterschiedlichste Fertigungsdaten im Speicher abgelegt werden könnten. Es gibt bei diesen Daten sogar einige Normen die mögliche Inhalte und auch das Datenformat dazu festlegen, diese haben sich diese Normen jedoch bislang in der Praxis nicht etabliert.

In der Praxis sieht es so aus, dass die Kartenherausgeber individuelle Vorgaben machen oder bei fehlenden Vorgaben die jeweiligen Chiphersteller bzw. Kartenhersteller ihre präferierten Schemata für Protokolldaten verwenden. Gemeinsam ist jedoch, dass im Regelfall nicht die eigentlichen Protokolldaten in den Chip gespeichert werden sondern lediglich eindeutige Referenzen, so dass im Reklamationsfall dann auf die entsprechenden (ausführlichen) Daten in der Fertigungsdatenbank zugegriffen werden kann. Beispielsweise wird bei der Personalisierung die eindeutige Nummer der Personalisierungsmaschine und ggf. eine Kennung des Personalisierers im Chip gespeichert. Die bei dem Personalisierungsvorgang entstehenden Daten werden in einer Datenbank abgelegt und können bei Bedarf weiterverwendet werden. Dies ist im übrigen eine durchaus übliche Vorgehensweise in der Industrie.

Die oben genannten Referenzdaten werden oftmals nicht in Dateien in der Chipkarte abgelegt sondern intern vom Betriebssystem verwaltet. Diese können dann mit GET DATA wieder ausgelesen werden. Der Hintergrund dazu ist, dass in den frühen Schritten der Chipkartenfertigung (z.B. bei der Komplettierung) die Dateiverwaltung der Chipkarte noch nicht aktiv ist und demach keine Möglichkeit besteht auf Dateien schreibend oder lesend zuzugreifen.

28.5.2003German

Probleme mit OCF Installation

Meine OCF Installation führt bei Verwendung immer wieder zu seltsamen Fehlermeldungen und Exceptions!

Bei Problemen mit OCF Installationen ist es nach meiner Erfahrung am besten und vor allem am schnellsten sich die aktuelle Version von www.opencard.org zu besorgen und eine Neuinstallation vorzunehmen.

28.5.2003German

Ansteuerung von Speicherkarten

Welche Möglichkeiten gibt es eine Speicherkarten vom PC aus anzusprechen ?

Wenn Sie vom PC aus Speicherkarten verwenden möchten, so ist es am einfachsten die entsprechenden Bibliotheken von div. Terminalherstellen (z.B. Towitoko) zu benutzen. Diese findet man zum kostelosen Download i.d.R. auf den entsprechenden Webseiten dieser Hersteller.

28.5.2003German

OCF und Speicherkarten

Ist es überhaupt möglich über OCF eine Memorycard (sprich: I2C) zu verwenden?

OCF sieht eine Unterstützung von Speicherkarten nicht vor. Es wäre sicherlich möglich durch Änderung von unteren Schichten bei OCF auch Speicherkarten zu unterstützen, doch war und ist dies nicht das eigentlich Ziel von OCF. Das ist nämlich eine einfache Anbindung und Verwendung von Chipkarten mit Mikrocontroller an PCs.

16.5.2003German

ECC used in Smart Cards

I am building an embedded smart card reader, that is to be attached via other devices to a pc. I would like to use ECC as my crypto system on the smart card. The smart card I have does support ECC. I would however like to verify my results on the computer. Is there some means I could obtain the exact algorithm used within the smart card, to verify my results. The smart card I am using is SLE66CX320P.

Many smart card microcontroller offer ECC (elliptic curve cryptosystem) functionality, but ECC is not like the DES, which is a well defined cryptoalgorithm with (nearly) no options for usage. There are many possibilities to use ECCs in smart cards and there are also many parameters of EECs you have to know first, e.g. the type of curve which is used by your specific ECC implementation in the card and the used key length. All the parameters are configured by the smart card operating system which "sits" on top of the microcontroller. To obtain the excat algorithm you need the specification of the smart card operating system. There is no other way to get this information out of an unknown smart card.

16.5.2003German

Magnetstreifenkarten und PIN

In ihrem Buch steht, dass Magnetstreifenkarten geheime Informationen(Z.B.: PIN) nicht sicher speichern können und deshalb die Authentifizierung immer online durchgeführt werden muss. Aber herkömmliche Kreditkarten sind ja auch mit einem Magnetstreifen ausgestattet bzw. ich habe gelesen, dass es doch möglich ist bei Magnetstreifenkarten den PIN sicher zu speichern bzw. den PIN zu verschlüsseln. Stimmt dass bzw. mit welchem Verfahren kann dies realisiert werden? Und kann deswegen jetzt eine komventionelle Bankomatkarte somit auch offline-Transaktionen durchführen bzw. wird bei den jetzigen Bankomatkarten die offline-Transaktion verwendet?

Es ist natürlich möglich auf einem Magnetstreifen eine PIN verschlüsselt zu speichern, so man zur Ermittlung der PIN einen geheimen Schlüssel benötigt. Gibt nun ein Kartenbenutzer die PIN am Terminal ein, so muss das Terminal den Magnetstreifen lesen und unter Kentniss des geheimen Schlüssels die PIN vom Magnetstreifen entschlüsseln und mit der eingegebenen vergleichen. Allerdings können Sie mit diesem Verfahren nicht verhindern, dass der Magnetstreifen einfach 1:1 auf eine andere Karte kopiert und somit ein Klon hergestellt wird. Dann hätten Sie zwei gültige und funktionsfähige Karten. Kritisch ist bei diesem Verfahren auch, dass man in jedem Terminal, dass einen PIN-Vergleich durchführen muss, den geheimen Schlüssel zur Entschlüsselung der PIN benötigt. Wird auch nur ein einziges Terminal kompromittiert, so ist das gesamte System gebrochen.

In Deutschland schützt man sich vor dem unbefungten Kopieren des Magnetstreifens im übrigen durch ein geheimes Sicherheitsmerkmal (MM-Merkmal), dessen Prinzip auch im Handbuch der Chipkarten beschrieben ist.

Bei den herkömlichen Kreditkarten ist es i.d.R. möglich mit einem geheimen Algorithmus und entsprechenden geheimen Daten die dazugehörige PIN zu errechen und somit eine offline Transaktion mit PIN Eingabe durchzuführen. Es gibt allerdings an diversen Stellen im Internet Programme mit denen man angeblich aus vorhandenen Magnetstreifendaten die PIN errechnen kann.

13.5.2003German

Chipkarten als transportabler Datenspeicher

In meinem Beruf gibt es diverse Geräte, die seriell an PC`s angeschlossen werden und ab und zu Messdaten am ComPort bereitstellen. Häufig reichen die Comports eines PC`s nicht aus, um alle Geräte anzuschliessen oder der PC steht nicht da, wo die Daten bereitgestellt werden. Gibt es eine Möglichkeit diese Daten , welche am seriellen Anschluß bereitgestellt werden, auszulesen und evtl. direkt auf eine Chipkarte zu speichern ? Dann könnte man die Chipkarte zu einem PC mit Chipkartenleser und dort die Daten weiterverwerten, als ob das Gerät angeschlossen wäre.

Wenn ich es richtig verstehe möchtest Du Chipkarten als transporttables Speichermedium verwenden. Prinzipiell ginge das, man muß jedoch dabei berücksichtigen, dass eine Chipkarte nicht direkt an einen RS232/USB-Port angeschlossen werden kann, sondern immer ein Chipkartenterminal dazwischen sein muß. Ein normales Terminal kann auch nicht einfach die seriellen Daten lesen vom Port und an die Chipkarte weiterreichen, sondern muß mit bestimmten Kommandos angesteuert werden. Daneben könnte noch kritisch sein, dass die typische Speicherkapazität von Chipkarten nur einige zehn kByte (z.Zt. max. 64 kByte) beträgt. Unter diesen Gesichtspunkten betrachtet dürften Chipkarten aus meiner Sicht wohl nicht die ideale Lösung für Dein Problem darstellen. Könnte man nicht einen Mikrocontroller (PIC o.ä.) entsprechend programmieren und diesen dann als transportablen Speicher verwenden.

14.4.2003German

Begriffe: Normen und Standards

Mir ist nicht ganz klar, wo der Unterschied zwischen einer Norm und einem Standard ist! ISO beschäftige sich mit der Normung von Chipkarten. Der Unterschied zu einem Standard ist nur, dass der Standart nicht rechtskräftig ist bzw. dass sich die Hersteller nicht unbedingt an den Standart halten müssen. Stimmt diese Aussage bzw. ist dass der einzige Unterschied?

Sie schneiden Sie einen wunden Punkt beim Eindeutschen an. Im Grunde genommen herscht hier babylonische Sprachverwirrung. Ich habe versucht mich im Handbuch der Chipkarten an die Definitionen des Glossars zu halten. Norm wäre damit ein Dokument, dass von einer in irgendeiner Weise staatlichen legitimierten Normungsorganisation herausgegeben wird. Das beste Beispiel sind hier sicherlich ISO oder DIN Normen. Als Standard habe ich den Rest von normähnlichen Dokumenten bezeichnet, wie dies beispiesweise die Dokumente zur Java Card vom Java Card Forum darstellen. Der (aus etwas der Mode gekommene) Ausdruck "Industriestandard" würde hier auch ganz gut passen. Im englischen ist das alles schlichtweg ein "standard".

Ob eine Normen oder ein Standard eingehalten werden muss hängt von vielen Randbedingungen ab. Es kann mich niemand daran hindern eine M2,9 Schraube herzustellen. Baue ich jedoch ein Balkongeländer niedriger als die Mindesthöhe der entsprechenden DIN-Norm so kann der Kunde sicherlich mindestens kostenlose Nachbesserung verlangen und falls wegen dem zu niedrigen Geländer jemand vom Balkon fällt würde mich vermutlich jedes Gericht wegen Nichteinhaltung des Standes der Technik verurteilen. Ich würde es vorsichtig so formulieren: ein Fachkundiger hat die relevanten Normen und Standards zu kennen und diese in seinen Produkten zu berücksichtigen, alle signifikanten Abweichungen davon sind mindestens ausdrücklich zu erwähnen.

Ein erwähnenswerter Punkt bei (Chipkarten-) Normen ist sicherlich noch das diese oftmals eine sehr grosse Bandbreite abdecken und erst durch Spezifikationen soweit konkretisiert werden dass sie auch bei einem konkreten Produkt realisiert werden können.

Auszug aus dem Glossar:

Norm: Dokument, das technische Beschreibungen und/oder genaue Kriterien enthalt, die als Regeln und/oder Definition von Eigenschaften verwendet werden, um dadurch sicherzustellen, dass Materialien, Produkte, Prozesse oder Leistungen für ihren Zweck verwendet werden konnen. In diesem Buch wird der Ausdruck Norm durchgehend im Zusammenhang mit einen nationalen oder internationalen Normungsgremium (z. B. ISO, CEN, ANSI, ETSI) benutzt. Der deutsche Begriff Norm ist nicht mit dem deutschen Begriff Standard gleichzusetzen.

Standard: Damit werden in diesem Buch und in der Regel alle normungsahnlichen Dokumente bezeichnet, die beispielsweise von Firmen oder im industriellen Umfeld publiziert werden und nicht von einem nationalen oder internationalen Normungsgremium erstellt bzw. veroffentlicht worden sind. Verwirrenderweise werden in Deutschland die beiden Begriffe Norm und Standard oft gleichwertig verwendet, was streng genommen nicht korrekt ist.

Spezifikation: Eindeutige, vollständige und redundanzfreie Beschreibung einer Software. Ihr Inhalt darf keine auslegungsfähigen Teile enthalten und muss von allen Lesergruppen mit unterschiedlicher Funktion (Entwickler, Tester, Qualitätssicherer, . . .) in vertretbarer Zeit verstanden werden können.

30.4.2003German

Softwareentwicklung auf Chipkarten

Angeregt durch Ihr Buch habe ich eine Anwendung entwickelt, die Mikroprozessorkarten einsetzen wird. Der Code zur Anwendung liegt als Source Code in C vor. Wie kann ich diesen Code auf eine Karte bringen? Gibt es (nicht zu teure)Simulationssysteme, die mit der Programmiersprache C "umgehen" können?

Entwicklungssysteme für Chipkarten sind relativ teuer (ca. 2000 - 10000 Euro) da sie mehr oder minder für einen kleinen Benutzerkreis massgeschneidert werden. Sie würden bei den heute üblichen Chipkarten zusätzlich zum Entwicklungssystem auch noch einen Chipkarten-Betriebssystem Hersteller benötigen, von dem Sie Module oder Karten beziehen können und der Ihnen entsprechende Beschreibungen zu seinem im ROM (maskenprogrammiert !) befindlichen Schnittstellen zur Verfügung stellt. Diese Schnittstellen werden im allgemeinen als vertraulich behandelt und es ist als Privatperson oder auch als kleinere Firma praktisch unmöglich die entsprechende Dokumentation zu erhalten.

Aus meiner Sicht gibt es zur Lösung Ihrer Anforderungen vier Möglichkeiten: Sie beschaffen sich über div. Internetverkäufer einen PIC-Controller der mit etwas Speicher in ein übliches Modul eingebettet ist. Diese Chipkarte können Sie frei programmieren, haben allerdings keine Bibliotheksroutinen zum Beispiel für T=0/1 zur Verfügung. Im Handbuch der Chipkarten findet sich im Abschnitt über Angriffe ein entsprechendes Foto und die dazugehörige Schaltung. Die Händler findet man oftmals unter dem Stichwort "Gold Wafer" oder "Silver Wafer" über die div. Suchmaschinen. Als Alternative dazu können Sie auch eine Java Card verwenden die von allen größeren Kartenherstellern angeboten wird. Allerdings müssen Sie dann Ihr Programm auf Java portieren, haben aber dafür eine Reihe von sinnvollen Bibliotheksroutinen bereits zur Verfügung. Einen kostenlosen Simulator zum Ausprobieren findet sich auf meiner Homepage. Alternativ wäre auch noch der Einsatz der Basic Card von der Fa. Zeitcontrol möglich, dies ist eine Chipkarte die sich in Basic programieren läßt, aber ansonsten ähnliche Funktionen wie eine Java Card aufweist. Der Simulator bzw. die Entwicklungsumgebung dazu gibt es auf der Homepage von Zeitcontrol. Die letzte Möglichkeit ist es, direkt von einem Halbleiterhersteller eine Chips mit einer sogenannte Smart Mask zu besorgen. Dies sind Mikrocontroller die eine ROM-Maske vom Halbleiterhersteller haben und die es erlaubt beliebigen Programmcode ins EEPROM oder RAM nachzuladen. Verwendet werde diese Chips oftmals für die ersten Produktionschargen um Halbleiterproduktion die Funktion des Mikrocontrollers zu testen.

15.4.2003German

03.48 Sicherheit, Handbuch der Chipkarten 4. Auflage

Wir besitzen Ihr Buch "Handbuch der Chipkarten" 4. Ausgabe als Nachschlagewerk. Bei uns herrscht grosse Unklarheit beim Thema Ende-zu-Ende-Sicherheit, wie Sie sie in Ihrem Buch auf Seite 806 beschrieben haben.

Das was Sie auf Bild 13.26 als "Sicherheitsmechanismen bei SMS" beschrieben haben, ist damit die GSM A5 Verschlüsselung auf der Luftschnittstelle gemeint ? Eine weitere Unklarheit betrifft die Sicherheitmechanismen nach GSM 03.48 und der Anwendung. Reicht die Sicherheit nach GSM 03.48 nicht von der sendenden bis zur empfangenden Anwendung, sprich stellt die eigentliche Ende-zu-Ende-Sicherheit mittels 3DES zur Verfügung ? Wenn nein, wie kann die Anwendung auf der SIM - Karte von allen chipkartenspezifischen Schutzmassnahmen profitieren um eine Ende-zu-Ende Sicherheit mittels 3DES zu gewährleisten wenn GSM 03.48 nur bis zum Gateway reicht ? Wieso braucht es vom Gateway zum Anwendungsserver eine Kommunikationssicherung mittels SSL, TSL ?

Die in Bild 13.26 dargestellten Sicherheitsmechanismen sind völlig unabhängig von der Verschlüsselung auf der Luftschnittstelle. Diese kommt additiv zu den beschriebenen Sicherheitsmechanismen dazu.

Das Bild mag zum Teil etwa missverständlich sein, da ich dabei davon ausgegangen bin, dass Inhalte aus dem Internet über ein Gateway sicher zur SIM übertragen werden. Das Gateway (das i.d.R. beim Netzbetreiber steht) muss dabei natürlich eine sichere Instanz sein, sonst bringt das 03.48 Protokoll nichts. Die 03.48 Sicherheit reicht natürlich vom Sender der 03.48 Nachricht bis zum Empfänger (d.h. der SIM). Werden aber Daten aus einem weiteren Netz oder einer anderen Instanz geholt sind natürlich die dort üblichen Sicherheitsmechanismen (wie z.B. SSL, TSL) zu verwenden, da 03.48 in diesem Umfeld nicht bekannt ist. Wäre das in der Zeichnung dargestellte Gateway ein Contentserver, dann hätte man eine durchgängige Ende-zu-Ende Sicherheit nur mit 03.48. Grundsätzlich sind die 03.48 Sicherheitsmechanismen für eine sichere Verbindung von einem Server zur SIM vorgesehen, wobei der Server die geheimen Schlüssel benötigt, die i.d.R. nur der Netzbetreiber kennt. Nebenbei bemerkt ist die 03.48 eine sehr offene Spezifikation mit vielen Optionen von denen der Netzbetreiber/Kartenhersteller i.d.R. nicht alle unterstützt.

Im Falle einer typischen Mobile-Banking-Anwendung steht der Server im Bild 13.26 bei der Bank und das Gateway beim Netzbetreiber. Beide benutzen zur Sicherung der Daten jeweils nur die Ihnen bekannten Schlüssel. Die SIM kennt als einzige Instanz alle Schlüssel und kann die Nachricht wieder entsprechend entschlüsseln. Eine durchgängige Ende-zu-Ende Sicherheit ist dabei gewährleistet. Sie haben recht. 03.48 benutzt symmetrische Schlüssel für eine sichere Ende-zu-Ende-Verbindung.

14.4.2003German

Manipulationsschutz Telefonkarte

In ihrem Buche steht, dass 1984/85 ein Pilotversuch mit verschiedenen Telefonkarten durchgeführt wurde und die Chipkarte als Sieger hervorging. Als Vorteil ist hier u.a. auch ein hoher Manipulationsschutz angeführt. Aber eine Telefonkarte hat doch eigentlich überhaupt keinen Manipulationsschutz?

Die Telefonkarte besteht im wesentlichen aus einem nicht reversiblen Abwärtszähler und einer Authentisierungseinheit. Konkret ist dies ein Einheitenzähler der von einem bei Ausgabe der Telefonkarte festgelegten Wert nach Null zählt und nicht mehr rückgesetzt werden kann. Die Authentisierung ist mittlerweile ein Challenge-Response-Verfahren, d.h. das Hintergrundsystem/Telefon in Telefonzelle kann feststellen ob die Karte echt ist. Früher war es anstelle des geheimen Schlüssels ein geheimes Sicherheitsmerkmal in der Karte. Gegenüber Magnetstreifenkarten oder Karten bei denen ein metallisierter Streifen elektrisch geschwärzt ist dies ein ziemlich guter Manipulationsschutz.

3.4.2003German

I²C-Schnittstelle, KVK-Karte

Ich beschäftige mich im Informatik-Leistungskurs mit Chipkarten. Bei meiner Recherche habe ich ein Buch über Telefonkarten gefunden und eine einfache Softwarelösung über die serielle Schnittstelle in Basic. Ich kann also die einzelnen Steuerleitungen ansprechen und somit den Speicher der Telefonkarte auslesen. Ist es damit möglich Krankenversicherungskarten auszulesen?

Nach der Lektüre ihres Buches habe ich aber noch nicht herausgefunden, welcher Chip denn auf der Karte ist und ob dies generell möglich ist. Für den I2C-Chip habe ich ein Programm über die serielle Schnittstelle. Ist vielleicht zufällig dieser Chip auf der KV-Karte?

Bei den deutschen KVK-Karten gibt es sowohl Chips mit 2-Wire, 3-Wire und als auch ziemlich häufig I²C-Bus Schnittstelle. Sie können mit Ihrer I²C-Schnittstelle einfach mal die Ansteuerung einer KVK-Karte ausprobieren, kaputtgehen sollte diese eigentlich nicht, selbst wenn es keine I²C-Karte wäre.

Sie können sich aber auch einen der preisgünstigen einfachen Kartenleser beschaffen, die schalten automatisch auf das richtige Protokoll um und nebenbei können Sie auch noch die aus IT-Sicht viel interessanteren Prozessorkarten (Geldkarte, SIM im Mobiltelefon) lesen. Dafür gibts wiederum eine Reihe von Beispielen auf meiner Homepage (Java). Allerdings kann man dann keine Hardware löten, was einen gewissen Charme hat. ;-)

15.2.2003German

ID-00 Karten

Welchen Verbreitungsgrad haben Chipkarten im ID-00 Format?

ID-00 Karten sind meines Wissens bisher in keinem großen Projekt eingesetzt worden. Sie sind auch in einer ETSI Norm (DAM) standardisiert, die über www.etsi.org kostenlos downloadbar sind.

FAQ 2002

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

Referenz

Schlagwort/Catchword

Frage/
Question

Antwort/
Answer

22. Dez. 2002

German

Halbleiterhersteller bei SIMs

Gibt es auf der SIM Informationen zum Halbleiterhersteller?

Bei aktuellen Stand der Telekommunikationsnormung ist es (noch) nicht vorgesehen dass sich auf der SIM Informationen über den Hersteller des Mikrocontrollers befinden. Zur Zeit gehen hier die einzelnen Kartenhersteller unabhängig von der Normung eigene Wege, die jedoch nicht in öffentlichen Spezifikationen beschrieben werden. Langfristig könnte sich hier die ISO/IEC 7816-6 etablieren, in der über ein TLV-Datenformat Kennungen für Halbleiterhersteller vergeben sind (siehe dazu auch: Handbuch der Chipkarten, 4. Auflage, S. 1004). Gekennzeichnet sind die Daten durch das Tag '5F4D'. Sie können beispielsweise Bestandteil des ATRs sein oder mit dem Kommando GET DATA bei selektiertem MF von der Chipkarte angefordert werden. Zusammenfassend kann man feststellen, dass es bei einer normalen SIM in der Regel nicht ohne Analyse des Chips im Modul möglich ist, den Chiphersteller herauszufinden.

18. Dez. 2002

German

große Dateien ins SIMs

Welchen Zweck haben die großen Dateien, die man in manchen SIMs findet und die nicht in der GSM 11.11 beschrieben sind?

Große Dateien in SIMs können mehrere Gründe haben:
1. Speicherung von Zertifikaten im Rahmen der WIM
2. Ablage von Scripten für auf der SIM enthaltene Microbrowser
3. Blocken von Dateifreispeicher, wenn beispielsweise einem Netzbetreiber eine 64 kByte EEPROM SIM für den Preis einer 32 kByte EEPROM SIM verkauft wurde. Der Kartenhersteller legt dann beispielweise eine 32 kByte große Datei an, die nicht mehr gelöscht werden kann, so dass der Netzbetreiber nur die bezahlten 32 kByte EEPROM nutzen kann. Dateien dieser Art haben oft eine Größe von von 4, 8, 16, 32, 64 kByte.

4. Nov. 2002

German

Adapter für Chipkarten

Sie beschreiben in Kapitel 8.2 "Sicherheit einer Chipkarte", das Abhören von Datenübertragungen mittels eines Adapters (4. Auflage, Bild 8.39), der zu Messzwecken die Datenleitungen verlängert. Nun habe ich versucht, zwecks Experimenten mit meinem Kartenleser mehr Informationen zu einem solchen Adapter zu bekommen. Leider habe ich weder mehr Informationen über die Technik, noch über Anbieter und Preise herausfinden können.

Bezüglich des Adapters muß ich Ihnen leider mitteilen, dass es sich dabei um eine nicht gerade billige Spezialanfertigung handelt, die in dieser Form nicht vertrieben wird. Allerdings ist es mit etwas handwerklichem Geschick, Lötkolben und einigen Bauteilen (u.a. Kontaktiereinheit für Chipkarten) aus dem Elektronikhandel (z.B. Conrad) mit geringem zeitlichen und finanziellem Aufwand möglich sich so einen Adapter selber zu basteln.

30. Okt. 2002

German

Bezahlen mit Chipkarten, Ergänzung zur Frage vom 28. Okt. 2002

Wäre es nicht mit geringem Aufwand möglich den Code zu der Karte irgendwie zu knacken, da ich nicht glaubedass die bei uns die Essenskarten grossartig verschlüsseln, zudem sieht auch das System ziemlich billig. Das Aufladegerät ist nicht größer als eine Packung Milch und an der elektronischen Kasse an der abgebucht wird hängt nur Kartenterminal. Ich wollte mir evtl. einen Towitoko MicroDrive holen als Lesegerät. Ist das gut oder eher nicht? Hatte auch noch die Alternative zu einem Kobil oder Siemens B1 Gerät. Was wäre denn da besser?

Ein billiges Aussehen ist noch kein Garant, dass das System völlig ohne Sicherheit gestaltet wurde. Im einfachsten Fall reicht ein einziger DES-Schlüssel und das System ist gegen alle Hobby-Angriffer gefeit! Ich benutzte selber unter anderem auch einen Towitoko Microdrive Leser mit USB-Anschluß und bin, was die Hardware betrifft, ganz zufrieden. Lediglich die Treiber können bei manchen Versionen und bestimmten MS-Betriebssystemen etwas hakelig sein. Auf meiner Homepage gibt es mittlerweile auch einiges an Quellcode zur Ansteuerung und Programmierung von PC/SC konformen Lesern wie beispielsweise dem Towitoko.

28. Okt. 2002

German

Bezahlen mit Chipkarten

Bei uns in der Mensa kann man mit Chipkarten bezahlen welche man an so einem Gerät gegen Bargeld aufladen kann. Nun habe ich mir überlegt, wenn dieses kleine Gerät das kann müsste ich das doch auch mit meinem Rechner können. Brauche ich da einen speziellen Kartenleser/schreiber oder klappt das mit allen? Ich dachte ich lese die Karte einfach mal aus bei einem bestimmten Betrag und schreibe diesen dann später einfach wieder drauf, so dass es praktisch wie aufladen ist. Da es sich ja nicht um eine Karte handelt welche nur abgeladen werden kann(wie eine Telefonkarte) müsste das ja gehen oder?

Das übliche Design bei diesen Bezahlsystemen sieht so aus, das auf jeden Fall eine einseitige oder gegenseitige Authentisierung dem Aufladevorgang vorausgeschaltet ist. Der Aufladevorgang selber ist normalerweise ebenfalls über eine kryptografische Prüfsumme (MAC) geschützt. Damit wird verhindert, dass man nach der (echten) Authentisierung auf ein anderes Terminal umschaltet und unautorisiert eigene Kommandos zur Chipkarte senden kann. Das wäre groß skizziert eine einigermaßen saubere Systemgestaltung und sollte sich auch in der Praxis so in etwa wiederfinden. Alles andere wäre sträflicher Leichtsinn, denn dann könnte man den von Dir beschriebenen Ansatz durchaus erfolgreich durchführen. Es nutzt also nichts sich einen 20 Euro Leser von Conrad zu kaufen und dann mit etwas selbstgeschriebener Software den Saldo auf der Karte wieder auf den Ursprungswerts vor dem Abbuchen zu setzen.

16. Sept. 2002

German

TSCS unter GPL

Was sind die Erfahrungen mit TSCS unter GPL?

Meine Erfahrungen mit Software unter GPL (GNU Public Licence) sind sehr zwiespältig und decken sich so überhaupt nicht, was man immer pressewirksam über Linux u.ä. hört. Ich habe bisher praktisch keinerlei Anfragen zur Projektmitarbeit aus Deutschland bekommen, obwohl Deutschland eine Hochburg der Chipkartenwelt ist. Es gibt verhältnissmäßig viele Anfragen aus dem asiatischen Raum, von Leuten die mitmachen wollen, meist Studenten. Vielen Firmen ziehen sich den Source vom Server und basteln daraus etwas eigenes, dass aber nicht mehr zurückfließt. Ich bekomme das deshalb immer mit wenn ein Entwickler direkt bei mir wg. ganz speziellen Details von TSCS nachfrägt.

Rückblickend würde ich TSCS auf jeden Fall wieder unter GPL stellen, da ich denke, dass man möglichst viel Wissen der Allgemeinheit zur verfügung stellen soll. Das ist ja das Tolle am Internet. Es ist auf jeden Fall allemal besser als wenn die Programme auf einer Diskette im Keller verstauben. Eine vernünfige Weiterentwicklung auf diesem Wege halte ich für praktisch unmöglich, außer man hat das Glück einige engagierte fachlich gute Leute mit viel Zeit zu finden. Ich würde mittlerweile eine Weiterentwicklung über Diplomarbeiten oder Praktikanten bevorzugen, das ist nicht allzu teuer (oder kostet evtl. nichts) und erfüllt in der Regel die vorangehenden Kriterien.

9. Sept. 2002

German

externer Takt von Chipkarten

Gibt es Chipkarten die auch mit 6 oder 8 oder 12 MHz funktionieren?

Es gibt Chipkarten die mit 6 und 8 MHz externen Takt arbeiten können. Vereinzelt existieren auch Chipkarten, die bis 10 MHz funktionieren, dabei kommt jedoch oftmals ein Taktteiler (in Hardware) auf dem Mikrocontroller zum Einsatz, der die externe Taktfrequenz von 10 MHz auf die übliche (interne) Taktfrequenz von 5 MHz reduziert. Chipkarten mit 12 MHz externen Takt sind selten, da dies in der Regel von den üblichen Chipkarten-Mikrocontrollern nicht unterstützt wird.

18. Juli 2002

German

Lesen von Speicherkarten, Krankenversichertenkarte

Ich interessiere mich besonders für die Handhabung der Krankenversichertenkarte. Ich möchte gerne die Krankenversichertenkarte auslesen. Dazu möchte ich gerne ein Programm in Java schreiben, welches die Patientendaten auslesen kann. Haben Sie eventuell ein Beispielprogramm (bevorzugt in Java)? Oder können Sie mir die grundsätzliche Vorgehensweise beim Auslesen erläutern?

Schauen Sie beispielsweise einfach mal auf der Homepage von Towitoko vorbei, da gibt es einen Treiber für die Towitoko Leser mit dem man von Java/Visual Basic/C ... aus Speicherkarten ohne großen Aufwand lesen kann.

3. June 2002

German

CICC, batterie

While you talked about Energy Transfer in Contactless Cards, you have mentioned that there's no battery embedded in Smartcard till then. Is that still true now ? Moreover, how about embedded battery in contact card? I found some websites of the battery company they claimed that they produce special battery for smartcard, but I can't find any smartcard with battery in market.

Contactless Smart Cards don't use batteries and up till now batteries are only used for some kind of "super smart cards" with display and button(s). This types of cards are not produced at the moment in large quantitities. Anyway for the radio transmission of data by contactless Smart Cards the use of batteries would be no good solutions because the energy content of a smart card batterie would be not large enough for an acceptable life time of the card.

3. June 2002

German

EEPROM

If the power supply is removed during an update to a file on a smart card, is it possible for the data to become corrupted or only partially modified?
The "Data Integrity" section on p.196 of the 2nd edition of "Smart Card Handbook", talks about checksums and redundancy to guard against EEPROM aging, for example, but doesn't consider the possibility of power being removed whilst the EEPROM is being updated.
What happens if a checksum fails and the data cannot be recovered? Will the smart card respond with an error indication?
Presumably it is possible to guard against such data corruption, but do you know whether there is anything in the specifications about this, or whether it is (currently) an implementation issue, i.e. it depends on how the card was designed. (Whether it does some kind of transaction processing inside the card).
I suppose that the checksums would be likely (though not guaranteed) to catch such data corruption. If they didn't, a partly-modified file could be returned by the smart card as valid data. I suppose this is extremely unlikely and just as likely to happen due to EEPROM aging. But, again, "exremely unlikely" depends on the level of redundancy implemented in the card ... is the minimum level of redundancy specified anywhere, or is it purely implementation-specific?

There are many different possibilities if the power is removed during an EEPROM operation. First possibility: the content of the EEPROM has not changed because there was not enough time to delete the EEPROM page. Second possibility: there was enough time for deletion of the EEPROM page and the EEPROM page is now deletet but the new value was not written in the EEPROM. Third possibility: deletion was going well and there was enough time to write the new content but not enough for a long data retension, then it could be that the conent of the EEPROM page change within some hours, day months depenting on some environment parameters. As a summarize it is nearly impossible to know what happens with the EEPROM conent if the power is removed during EEPROM operation.
One of the tasks of an smart card operating system is the memory management. If an EEPROM delete/write operation faild it depends on the smart card operating system what happend next. It could be that the concerned file is invalidated or that there are some error messages (SW1 || SW2) after SELECT/READ of this file. Maybe there are some error correction mechanismen implemented and you will get some valid data reading this file. This all depends on the smart card operating system.
Due to restriction of memeory space data redundancy is used very carefully within smart cards. There are some OS which even don't uses checksums over the file data. For the actual smart card applications EEPROM aging is not a big problem, because the semiconductior manufactorer guaraties at leat 10 years and this is enough for nearly all applications.

12. May 2002

German

compilation problems with TSCS

I wanted to download your simulator app and I succeeded to download, but at loading time of the VB project, I encounter a message that the activeex.dll could not be found.

Due to restrictions of time I stopped all activities on TSCS in 2000. I know that there are some problems with the activeex, but there is not enough time at the moment to analyse/solve it.

8. März 2002

German

mehrere Module auf einer Chipkarte

Ist es möglich eine Karte mit zwei kontaktbehafteten Chipmodulen und einem zusätzlichem dritten kontaktlosen Chipmodul herzustellen?

Grundsätzlich kann man auch Karten mit mehreren Chipmodulen herstellen, doch ist dies für die jeweilige Kartenfertigung in jedem Fall eine Sonderaktion. Im konkreten Fall ist es auf jeden Fall empfehlenswert diesbezügliche Sonderwünsche mit dem entsprechenden Kartenhersteller abzusprechen.

8. März 2002

German

Anzahl Module auf einer Chipkarte

Gibt es eine Aussage in der Normung wie viele Chipmodule auf eine Chipkarte aufgebracht werden dürfen?

Nach meinem Kenntnisstand gibt es keine Norm, die die Anzahl der Chipmodule auf einer Chipkarte einschränkt. Bedenken Sie aber in diesem Zusammenhang, daß die Unterbringung von zwei Chipmodulen auf einer Karte dazu führen kann, daß u.U. nicht mehr genügend Platz für andere von der Position her genormte Kartenelemente wie Hologramm oder Unterschriftsstreifen vorhanden ist.

12. Jan. 2002

German

Anschaltsequenz

Kann ich an eine Karte einfach mal einen Takt anlegen und bekomme ich dann automatich die answer to reset Bytes ausgelesen?

Sie sollten nicht nur einen Takt anlegen, sondern die gesamte Anschaltsequenz durchführen. Können Sie diese nicht genau einhalten so haben Sie das Risiko das die Karte kaputtgeht. Ansonsten sendet die Chipkarte nach der Anschaltsequenz automatisch den ATR aus.

12. Jan. 2002

German

Programmieren von Chipkarten

Gibt es eine API fuer das Programmieren von Chipkarten unter C oder C++?

C/C++ APIs gibt es auf Chipkarten, diese sind jedoch nur den OS-Herstellern zugänglich bzw. bekannt. Ich kann da nur Java Card oder Basic Card empfehlen, da es hierbei sehr gute Spezifikationen, Treiber und mittlerweile auch div. Entwicklungsumgebungen gibt.

FAQ 2001

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

Referenz

Schlagwort/
Catchword

Frage/
Question

Antwort/
Answer

24. Nov. 2001

German

Cases of Commands

Do any of the command set has more than one case?

There are some commands which have more than one case. Most of the simple commands like READ BINARY have only one case, you send a header to the card and get data back -> case 3. The more sophisticated commands like MUTUAL AUTHENTICATE could have two possible cases: typical you send data with MUTUAL AUTHENTICATE to the card and get data back -> case 4 BUT if something does not fit with your input data in that command you will get only an error message from the card -> case 3! UUPS: similar things can also happen with the READ BINARY e.g. if you try to request too many data you will get only SW1/2 with an erro code -> case 1 instead of case 3 !

5. Nov. 2001

German

Secure Messaging

In the book, What do you mean that T=1 is the currently only international Smart Card protocol that allows secure data transfer in all its variations, without any problems or compromises?

The secure messaging with T=0 is much more complex than with T=1 because in T=1 there is a quite clear separation of the transmission layers (e.g. no GET RESPONSE necessary). From a technical point of view: T=1 is technically more elegance than T=0. In fact it is possible to send and receive secure messaging data with both of the 2 protocolls.

5. Nov. 2001

German

PTS

Why there is a need for two type of PTS (Negotiable / Specific)?

This was not a technical decission. Due two different interpretations of a misunderstanding paragraph in the 1st edition of ISO/IEC 7816-3 two different implementations were introduced in the market in huge amount of cards. The Negotiable / Specific mode is now the compromise to solve this problem.

8. Okt. 2001

German

Programmieren von Chipkarten

Ich bin auf der Suche nach einer günstigen Chipkarte mit C Compiler und einem Simulator,um die ermittelten Kentnisse aus ihrem Buch "Handbuch der Chipkarten" in der Realität umzusetzen.

Wenn Sie selber programmieren wollen kann ich Ihnen nur Java Karten oder Basic Card empfehlen, da es hierbei sehr gute Spezifikationen, Treiber und mittlerweile auch div. Entwicklungsumgebungen gibt.

FAQ 2000

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

12.5.2000

German

Rote Preiselbeere

Welche Intention verbirgt sich hinter der Verwendung des Titelbildes Rote Preiselbeere aus Friedrich/Petzhold, Obstsorten in Kombination mit einer Chipkarte.

Die Beantwortung dieser Frage ist reichlich schwierig, obwohl sie uns schon öfter gestellt wurde. Eigentlich war dieses Bild eine Idee des Verlags, da bei Hanser zu dieser Zeit alle Bücher im Computerbereich als einheitliches Erkennungszeichen Bilder von Früchten oder Steinen auf dem Umschlag hatten. Die Auswahl des Titelbilder geschah dann mehr oder minder zufällig. Soweit ich weiss sind aber diese Beeren (oder eine beinahe gleich aussehende Beerengattung) mit vielen kleinen Stacheln besetzt. Und genau aus diesem Grund paßt das Bild dann doch wieder sehr gut, denn das Schreiben und Layouten des Buches war doch eine sehr langwierige und zeitweise auch sehr stachelige Angelegenheit.

17.2.2000

German

Chipkarten selber programmieren

Ich bin auf der Suche nach einem Programm um in leere Chipkarten ein Betriebssystem zu schreiben. Zumindestens möchte ich es mal versuchen. Ich bin kein Profi. Da wo ich die Karten gekauft habe, kann und darf man mir keine Auskunft geben, Sie haben mir nur empfohlen im Internet zu suchen.

Ich muß Dich leider ziemlich enttäuschen. Das was Du willst geht z.Zt. nur mit Java-Karten. Bei den heute üblichen in Assembler und C programmierten Chipkarten können praktisch nur die Chipkarten-Hersteller OS und Anwendungen in Chipkarten einbringen (ROM-Maske!). Die Halbleiter-Hersteller sind da auch relativ restriktiv, so das Du von diesen auch keine Entwicklungswerkzeuge erhältst. Falls Du Interesse an Chipkarten-Software hast, hätte ich evtl. doch was interessantes. Ich werde meinen Simulator demnächst unter GPL stellen, so daß ihn jeder weiterentwickeln kann und falls du Zeit hast ...

4.2.2000

German

Programmbeispiele

Vielfach werden heute Programmbeispiele in Form von CDs mitgeliefert. Gibt es keine Bespiele z.B. zum Lesen und Schreiben von Daten ? z.B. dll um von Visual Basic aus über ct-api o.ä. mit der Karte zu kommunizieren?

Das wäre allerdings eine gute Idee. Wir haben zwar im Anhang einige Beispiele für Kommando-Codierungen aufgeführt, aber so ganz konkret gibt es dazu nichts. Falls ich in nächster Zeit einmal dazu komme werde ich diesbezüglioch einige Kommandosequenzen mit Codierung auf meiner Web-Site veröffentlichen.

4.2.2000

German

CT-API

Von Autoren der Deutschen Telekom gibt es ein Papier über die CT-API Schnittstelle zur Kommunikation mit Chipkarten. Eine Zuordnung oder gar Beschreibung habe ich im Buch noch nicht gefunden. Ist dieses Absicht ?

CT-API ist ein Quasi-Standard in Deutschland, allerdings hat er international praktisch keine Bedeutung und wird wohl langfristig aus meiner Sicht durch PC/SC, OCF und ähnliches restlos "substituiert" werden. Das war der Grund warum wir nichts dazu geschrieben haben. Allerdings wird evtl. auch hier der Spruch "nichts ist so beständig wie das Provisorium bzw. das todgesagte" wieder 'mal zu treffen, so daß wir u.U. in der nächsten Auflage uns nicht mehr um das Thema drücken können. ;-)

4.2.2000

German

neue Version TSCS

Auf der Homepage des Hanser Verlags wird ein Smartcard-Simulator angeboten, der den Namen eines der Autoren trägt. Diese Version ist zeitlich überholt. Gibt es eine neue - ähnlich zum Buch - überarbeitete Version? Wie zu beziehen ?

Ich arbeite an einer neuen Version, die sich aber immer noch in einem frühen Alpha-Stadium befindet. Ich beabsichtige die gesamte Software unter GPL zu stellen und damit auch den Source-Code zu veröffentlichen. Dies wird aber noch ein, zwei Monate dauern.

30.1.2000

German

Smart Card Emulation/Simulation

Say I want to emulate/simulate a Geldkarte using only software: Do you know of a company that has a solution for this?

As I know there are some simulations for the Geldkarte system, but there is no simulation public available or "sellable". Maybe you can write your own on the basis of my smart card simulator.

26.1.2000

German

TSCS mit Kartenterminal

Ihr Smart Card Simulator geht mit dem in Schaltung beiliegenden Kartenleser/Schreiber nicht. Bitte werfen Sie einen Blick drauf und sagen Sie mir bitte, was ich an demselben modifizieren muß. Ihrem Buch kann ich dies nicht entnehmen. Anschluß am COM-Port erfolgt mit einem 1:1- Kabel.

Mein Simulator unterstützt bisher keine externen Kartenleser, obwohl diese Anbindung technisch ohne großes Aufhebens möglich wäre. Leider bin ich aber noch nicht dazu gekommen. Ich werde aber in den nächsten ein bis zwei Monaten den Source Code des Simulators veröffentlichen, so daß jeder, falls er Zeit und Lust dazu hat, das Programm ergänzen kann. Evtl. haben sie ja Interesse daran!?

24.1.2000

German

Smart Card Handbook

A friend of mine is looking for a english version of your book in Germany. Do you know of any bookshops (that are on line or that he can contact ) in the Stuttgart area. Any help would be appreciated.

I buy most of my english books in Germany via Amazon, buecher.de or simular internet book stores. I know that they also sell the smart card handbook within 2 or 3 days. The smart card handbook in english will be published in a completely new edition within the next 3 or 4 months (it is the 1:1 translation of the actual german edition).

26.1.2000

German

Kurzrufnummern in der SIM

Was passiert mit den Daten (Name, Rufnummer), wenn ich eine Kurzrufnummer in der SIM lösche?

Im EF ADN wird der entsprechende Record mit den Rufnummerndaten vollständig mit 'FF' überschrieben. Es wird also nicht nur für den gelöschten Eintrag/Record eine Kennung gesetzt oder nur das erste Byte im Record gelöscht.

FAQ 1999

Referenz Schlagwort/
Catchword
Frage/
Question
Antwort/
Answer

30.12.1999

German

Chipkarten selber programmieren

Ich interessiere mich für die Signierung digitaler Dokumente mit Hilfe einer SmartCard. Da ich allerdings ohne kartenspezifische Grundkenntnisse an die Sache herangehe, bin ich im Moment von der Informationsvielfalt ein wenig erschlagen. Zu meinem eigentlichen Problem: Können Sie mir einige 'Startwerte' für meine Arbeit benennen? Mir würden Angaben helfen wie "Verwenden Sie das Lesegerät X, die Karte Y und die Software Z." Ich programmiere selbst seit einigen Jahren, habe auch - leicht angestaubte - Assemblerkenntnisse.

Falls Sie Karten programmieren wollen, müssen Sie sich ein Java Card Entwicklungs-Kit besorgen. Das wird von mehreren Firmen angeboten. Sehr gut ist das von G+D und das behaupte ich nicht nur, weil ich bei dieser Firma beschäftigt bin. Falls Sie nur Daten aus Karten lesen wollen, reichen die typischen Kartenleser, wie sie z.B. Conrad anbietet. In Assember oder C können Sie die heutigen Chipkarten nicht programmieren, da Sie dafür a) eine komplette Entwicklungsumgebung benötigen, die so um die 50 TDM kostet und b) freien Zugriff auf eines der üblichen Chipkarten-Betriebssystem brauchen, den jedoch die Betriebssystemhersteller i.d.R. nicht gewähren.

1.11.1999

German

Chipkarten kopieren

Sehr geehrte Herren,
ich habe mir Ihr Buch gekauft, weil meine vorherigen Bemühungen, meine GSM-Karte zu kopieren bis dato erfolglos blieben. Ich hatte Kontakt zu Firma X, Hersteller von Terminal Y. Diese teilten mir mit, deren Schreiblesegerät kann die speziellen Chip-Bereiche nicht bearbeiten die notwendigerweise für eine Kopie zu beeinflussen wären. Sicherheitshalber möchte ich an dieser Stelle versichern, daß ich keine betrügerischen Absichten hege, sondern weil ....
So bitte ich Sie freundlich, mir einen Tip zu geben, wo ich ein technisch ausreichendes Leseschreibgerät mit Software für meinen Win 98 PC erwerben kann. Mit meinen ca. 8-jährigen umfangreichen Computerkenntnissen, meinem Elektronikberuf und Ihrem Buch, so denke ich, werde ich mich dann schon soweit spezialisieren, daß ich meine GSM-Vertragskarte bearbeiten kann. Besten Dank im voraus.

Eine wesentliche Eigenschaft von Mikroprozessor-Chipkarten ist es, daß sie sich nicht kopieren lassen. Dies ist einer der wesentlichen Gründe, warum man diese Art von Chipkarten einsetzt. Auch ein noch so tolles Kartenterminal ist nicht in der Lage alle Daten aus einer Chipkarte zu lesen, wenn diese einen Lesezugriff darauf verweigert. Deshalb können Mikroprozessor-Chipkarten, im Gegensatz zu manchen Magnetstreifenkarten, nicht kopiert werden.

Copyright © 2008 Wolfgang Rankl - created: 5. July 2008 - last modified: Tuesday, December 14, 2010