DE60131953T2 - Protokolleinheitenübertragung von tragbarem elektronischem gegenstand mit protokoll für mikrorechnerperipheriegeräte - Google Patents

Protokolleinheitenübertragung von tragbarem elektronischem gegenstand mit protokoll für mikrorechnerperipheriegeräte Download PDF

Info

Publication number
DE60131953T2
DE60131953T2 DE60131953T DE60131953T DE60131953T2 DE 60131953 T2 DE60131953 T2 DE 60131953T2 DE 60131953 T DE60131953 T DE 60131953T DE 60131953 T DE60131953 T DE 60131953T DE 60131953 T2 DE60131953 T2 DE 60131953T2
Authority
DE
Germany
Prior art keywords
data
terminal
transaction
portable electronic
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60131953T
Other languages
English (en)
Other versions
DE60131953D1 (de
Inventor
Charles Coulier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gemplus SA
Original Assignee
Gemplus SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gemplus SA filed Critical Gemplus SA
Publication of DE60131953D1 publication Critical patent/DE60131953D1/de
Application granted granted Critical
Publication of DE60131953T2 publication Critical patent/DE60131953T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • G06K19/0772Physical layout of the record carrier
    • G06K19/07733Physical layout of the record carrier the record carrier containing at least one further contact interface not conform ISO-7816
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • Diese Erfindung bezieht sich auf den Anschluß auf Applikationsebene zwischen einem Terminal von der Art eines Mikrocomputers und einem tragbaren elektronischen Objekt, wie zum Beispiel einer Chipkarte, der sogenannten Mikrocontroller-Karte oder IC-Karte als Peripheriegerät des Terminals.
  • Auf Applikationsebene wird der Austausch zwischen einer Empfangsstation einer Chipkarte, wie zum Beispiel einem Terminal, und der Chipkarte vermittels von Dateneinheiten eines Applikationsprotokolls APDU (Application Protocol Data Unit) hergestellt, die die Befehle sind, die das Terminal an die Karte übermittelt, und die Antworten, die die Karte an das Terminal übermittelt.
  • Das Format dieser Befehle und Antworten wird auf Applikationsebene durch die Norm ISO 7816-4 und ihre Anhänge A und B definiert, um Protokolleinheiten nach dem asynchronen Übertragungsprotokoll an den Halbduplexkanal mit den Zeichen „T = 0" zu schicken oder das asynchrone Übertragungsprotokoll mit „T = 1" Blöcken. Die Befehle werden immer vom Terminal ausgelöst, und die Karte muß von der Art proaktiv sein, um Daten auf ihre Initiative an das Terminal zu schicken.
  • Ferner wird in der Norm „Universal Serial Bus Specification" vom September 1998 ein genormter universaler Serienbus USB für den Anschluß eines Mikrocomputers PC an Peripheriegeräte definiert.
  • Alle Datenübertragungen zwischen dem Mikrocomputer und einem Peripheriegerät werden vom Mikrocomputer ausgelöst, wobei das Peripheriegerät immer der Sklave des Mikrocomputers ist, und dies im Gegensatz zu einer Chipkarte gegenüber dem Terminal. Alle über den USB Bus laufenden Transaktionen werden mit Paketen durchgeführt, deren Formate und Abfolgen sich von denjenigen der Befehle und Antworten unterscheiden, die in der Norm ISO 7816-4 für Chipkarten definiert werden.
  • Das Patentdokument WO-00/16255 A entspricht einem technischen Stand nach A54(3) und A54(4) CBE.
  • Im Dokument WO-00/16255 A wird ein tragbares elektronisches Objekt, wie zum Beispiel eine Chipkarte, beschrieben, in der eine ISO 7816 Schnittstelle und eine USB Schnittstelle nebeneinander vorhanden sind.
  • Diese Erfindung zielt darauf ab, ein tragbares elektronisches Objekt als Peripheriegerät eines Mikrocomputers anzupassen und genauer, Einheiten des APDU Protokolls in einem USB Bus zu leiten, damit das tragbare elektronische Objekt vom Mikrocomputer als ein Peripheriegerät erkannt wird.
  • Hierfür ein Verfahren für den Transport von Befehlen, die alle eine Kopfzeile und manche ein Datenfeld haben, von einem Terminal bis zu einem tragbaren elektronischen Objekt, und Antworten, von denen manche ein Datenfeld und alle eine Warteschlange haben, ab dem tragbaren elektronischen Objekt zum Terminal, dadurch gekennzeichnet, daß es folgende Schritte umfaßt:
    Einen Bus zwischen dem Terminal und dem Objekt stellen, um absteigende Transaktionen auszutauschen, die jeweils nacheinander ein vom Terminal an das Objekt übermitteltes Anfangspaket, ein vom Terminal an das Objekt übermitteltes Datenpaket und ein vom Objekt an das Terminal übermitteltes Endpaket umfassen, und aufsteigende Transaktionen, die jeweils ein vom Terminal an das Objekt übermitteltes Anfangspaket, ein vom Objekt an das Terminal übermitteltes Datenpaket und ein vom Terminal an das Objekt übermitteltes Endpaket umfassen;
    Die Kopfzeile und das Datenfeld, sofern vorhanden, jedes Befehls in die Datenfelder von Datenpaketen beziehungsweise einer absteigenden Transaktion einschließen und von mindestens einer absteigenden Transaktion;
    Das Datenfeld, sofern vorhanden, und die Warteschlange jeder Antwort in das Datenfeld des Datenpakets von mindestens einer aufsteigenden Transaktion einschließen.
  • Durch die Einschlüsse der Befehle und Antworten in Datenpakete von Transaktionen wird mit der Erfindung, wenn das tragbare elektronische Objekt eine Chipkarte ist, das Lesegerät der Karte abgeschafft, die jetzt an einen genormten universalen Serienbus (USB) nach der USB Norm angeschlossen ist, sie bietet eine hohe Datenrate über dem Megabit pro Sekunde für den Austausch zwischen dem Terminal und der Karte und ermöglicht den Anschluß mehrerer Chipkarten, oder allgemeiner von tragbaren elektronischen Objekten, an das Terminal durch einen gemeinsamen Bus.
  • Unter den vier Datentransfermodi nach der USB Norm zeigt die Erfindung, daß die Transaktionen nach dem Transfermodus „voluminös" (Bulk-Transfer) und dem Kontrolltransfermodus (Control Transfer) besonders gut für den Betrieb eines tragbaren elektronischen Objekts geeignet sind.
  • Die Erfindung sieht für jeden dieser beiden Modi vor, daß jedes Anfangspaket einen Identifikator umfassen kann, der die Transferrichtung des ihm folgenden Datenpakets in einer Transaktion ankündigt; Das Anfangspaket jeder absteigenden Transaktion bezüglich des Transfers von mindestens einem Teil des Datenfelds eines Befehls oder einer Antwort kann einen Identifikator umfassen, der die Transferrichtung des ihm folgenden Datenpakets in der besagten Transaktion ankündigt; Das Datenfeld eines Datenpakets in der absteigenden Transaktion, das die Kopfzeile eines Befehls enthält, kann ebenfalls die erwartete Länge des Datenfelds der Antwort enthalten, die auf den besagten Befehl folgt, und/oder die Länge des Datenfelds des besagten Befehls; Das Datenfeld eines Datenpakets einer aufsteigenden Transaktion, das den Anfang des Datenfeld einer Antwort enthält, kann auch die nützliche Länge des Datenfelds der besagten Antwort enthalten, und Füllbits in einer Anzahl im Verhältnis zur Differenz zwischen der erwarteten Länge des Datenfelds der besagten Antwort, die in einem vorherigen Befehl eingeschlossen war, und der nützlichen Länge können im Datenfeld des Datenpakets der zweiten aufsteigenden Transaktion enthalten sein, die die Warteschlange der besagten Antwort enthält.
  • Nach anderen Merkmalen der Erfindung für den Kontrolltransfermodus kann das Anfangspaket der ersten absteigenden Transaktion in einer Folge von mehreren Transaktionen nacheinander bezüglich eines Befehls oder einer Antwort einen Identifikator umfassen, der den Anfang der Folge ankündigt; Der Anfang des Datenfelds eines Datenpakets in der absteigenden Transaktion, das die Kopfzeile eines Befehl umfaßt, enthält einen Identifikator des Formats des Befehls; Und die aufsteigende Transaktion, die das Datenpaket enthält, in dem der Anfang der Antwort eingeschlossen ist, kann einer absteigenden Transaktion vorausgehen, deren Anfangspaket einen Identifikator enthält, der den Beginn einer Abfolge der aufsteigenden Transaktion ankündigt, und deren Datenpaket eine Struktur aufweist, die mit derjenigen des Datenpakets der absteigenden Transaktion identisch ist, das die Kopfzeile eines Befehls enthält und auch einen Identifikator des Formats der besagten Antwort und die erwartete Länge des Datenfelds der besagten Antwort enthält.
  • Weitere Merkmale und Vorteile dieser Erfindung werden sich beim Lesen der nachfolgenden Beschreibung mehrerer bevorzugter Ausführungen der Erfindung herausstellen, in der auf die entsprechenden Zeichnungen im Anhang verwiesen wird, und auf denen folgendes dargestellt ist:
  • Die 1 stellt ein schematisches Blockdiagramm einer Verbindung zwischen einem Terminal von der Art eines Mikrocomputers und einer Chipkarte durch einen erfindungsgemäßen USB Bus dar;
  • Die 2 stellt ein Diagramm mit vier bekannten Befehlsformaten nach der Norm ISO 7816-4 dar;
  • Die 3 stellt ein Diagramm mit zwei Formaten der Antwort der Karte dar, die nach der Norm ISO 7816-4 bekannt sind;
  • Die 4 stellt ein Diagramm mit drei bekannten Arten von USB Paketen dar;
  • Die 5 bis 8 stellen Transferdiagramme für Befehl-Antwort Paare nach den 2 beziehungsweise 3 zwischen dem Terminal und der Chipkarte vermittels von Transaktionen mit drei Paketen nach einer ersten Ausführung der Erfindung dar;
  • Die 9 und 10 stellen Transferdiagramme für Befehl-Antwort Paare vermittels von Transaktionen mit drei Paketen nach einer zweiten Ausführung der Erfindung dar.
  • Unter Bezugnahme auf die 1 ist ein Terminal TE, wie zum Beispiel ein Mikrocomputer (Personal Computer PC), an ein tragbares elektronisches Objekt angeschlossen, wie zum Beispiel eine Chipkarte CA, auch IC-Karte oder Mikrocontroller-Karte genannt, und dies durch einen Bus mit vier Drähten BU nach der USB Norm (Universal Serial Bus). Der Bus kann mit einem oder mehreren Anschlußmitteln (Hubs) an andere Peripheriegeräte angeschlossen sein, wie zum Beispiel Maus, Tastatur, Drucker, grafischer Tisch, usw.
  • Der Bus BU umfaßt zwei Versorgungsdrähte und zwei Drähte zur Übertragung von Paketen, die eine Datenrate von typischerweise gleich 1,5 Mbit oder 12 Mbit/sec. bieten.
  • Das in der weiteren Beschreibung mit TE bezeichnete „Terminal" umfaßt das System mit dem Host-Computer, der in der USB Norm mit „Host" bezeichnet wird und einen Hardware- und Software-Controller (Host Controller) umfaßt, der die Rolle einer Schnittstelle im Terminal mit dem Bus BU spielt.
  • Die Chipkarte CA ist ein logisches und physisches Peripheriegerät im Sinn von „Device" der USB Norm, das eine Schnittstelle (Device Endpoint) umfaßt, die eine Informationsquelle bildet und Funktionen erfüllt, die sich mit dem Bus BU schneiden.
  • In der Protokollschicht der Chipkarte CA ist auch eine Softwareeinheit eingeschlossen, die das genormte Protokoll von Befehl-Antwort nach der Norm ISO 7816 managt, und die in Beziehung zur Schnittstelle nach dem USB Protokoll in der Chipkarte steht.
  • Es wird daran erinnert, und wie auf der 2 gezeigt wird, daß eine Dateneinheit des Applikationsprotokolls APDU nach der Norm ISO 7816-4, die einen Befehl bildet, der vom Terminal TE erstellt wurde und an die Chipkarte CA geschickt werden soll, eine Kopfzeile EN mit 4 Bytes enthält: Ein Byte CLA bezeichnet eine Klasse der im nächsten Byte enthaltenen Anweisung, ein Byte INS bezeichnet einen Anweisungscode, der an einen Befehl des Betriebssystems im Mikrosteuerbaustein der Chipkarte CA gebunden ist, und zwei Bytes P1 und P2 bezeichnen Parameter bezüglich der Anweisung. Ein Befehl kann ferner mindestens eines der nächsten aufeinander folgenden Felder nach dem Parameter P2 umfassen: Ein Feld LC, das die Länge Lc des Datenfelds des Befehls enthält, die in einer Anzahl Bytes ausgedrückt ist, wobei ein Datenfeld DC mit variabler Länge 256 oder 65535 Bytes erreichen kann, oder ein Feld LE, das die Länge Le enthält, die in Anzahl Bytes ausgedrückt ist und im Datenfeld DR der Antwort RES2 auf den besagten Befehl erwartet wird.
  • Wie auf der 2 dargestellt ist, kann eine APDU Einheit von der Art Befehl eines der vier nachstehenden Formate aufweisen:
    • – Fall 1, Befehl C1: Die Karte erhält keinerlei ankommende Dateneinheit, und folglich ist die Länge Lc gleich 0, und sie schickt keinerlei abgehende Dateneinheit in einer Antwort RES1 zurück, und folglich ist die Länge Le gleich 0; Der Befehl C1 besteht dann nur noch aus der Kopfzeile EN;
    • – Fall 2, Befehl C2: Die Karte erhält keinerlei ankommende Dateneinheit, was die Länge Lc gleich 0 vorschreibt, sie schickt aber abgehende Daten in einer Antwort RES2 zurück, was eine andere Länge Le als gleich 0 vorschreibt; Somit umfaßt der Befehl C2 die Felder EN und LE;
    • – Fall 3, Befehl C3: Die Karte erhält ankommende Dateneinheiten, was vorschreibt, daß die Länge des Datenfeld Lc nicht gleich 0 ist, und also das Vorhandensein eines Datenfelds DC, und sie schickt keinerlei abgehende Dateneinheit in einer Antwort RES1 zurück, was die erwartete Länge Le gleich 0 vorschreibt; Der Befehl C3 umfaßt dann die Kopfzeile EN mit den nachfolgenden Feldern LC und DC;
    • – Fall 4, Befehl C4: Die Karte erhält ankommende Dateneinheiten, sie schickt aber auch abgehende Daten DR in einer Antwort RES2, und folglich sind die Längen Lc und Le nicht gleich 0; Der Befehl C4 umfaßt nacheinander die vier Felder EN, LC, DC und LE.
  • Wie auf der 3 gezeigt wird, weist eine von der Karte CA erstellte Antwort eines der beiden Formate REST oder RES2 auf. Das Format der Antwort RES1 enthält nur eine Warteschlange Q mit 2 Status-Bytes (Status Word) SW1 und SW2. Das Format der Antwort RES2 enthält zusätzlich ein Datenfeld DR variabler Länge, das einer Warteschlange Q vorausgeht. Wenn die Karte CA einen Befehl C1 oder C3 erhält, schickt sie eine Antwort RES1 zurück, die nur eine Warteschlange Q umfaßt; Wenn die Karte CA einen Befehl C2 oder C4 erhält, schickt sie eine Antwort zurück, die ein Datenfeld DR enthält, das der Warteschlange Q vorausgeht und eine Länge höchstens gleich der Länge Le hat, die im der besagten Antwort vorausgehenden Befehl C2 oder C4 angekündigt wurde.
  • Jetzt in Bezug auf die USB Norm des universalen Serienbusses BU, die drei Hauptarten von Paketen nach dieser Norm, die eine Transaktion zusammensetzen können, um Daten in der einen oder der anderen Richtung zwischen dem Terminal und der Chipkarte zu übertragen, sind auf der 4 dargestellt, wobei am Anfang jedes Pakets ein Synchronisierungsfeld (SYNC) ausgelassen wurde, das einen Paketanfangsbegrenzer (Start-of-Packet SOP) und einen Paketendebegrenzer (End-of-Packet EOP) umfaßt:
    • – Anfangspaket der Transaktion von der Art Marken TP (Token Packet), das einen Paket-Identifikator PID mit 1 Byte umfaßt, die Art „Token" des Pakets und dessen Namen, ein Adressenfeld mit 7 Bits ADDR, das die Quelle oder die Bestimmung eines auf das Anfangspaket folgenden Datenpakets identifiziert, ein Feld mit 4 Bits ENDP (Endpoint), das die Adresse der Funktion enthält, die in der Karte als Peripheriegerät insbesondere angesprochen wird, und ein Kontrollfeld mit zyklischer Redundanz CRC5 mit 5 Bits; Es gibt vier Anfangspakete TP: Ein OUT genanntes Paket zum Befehlen eines Transfers von ab dem Terminal TE zur Karte CA absteigenden Daten, ein IN genanntes Paket zum Befehlen eines Transfers von ab der Karte CA zum Terminal TE aufsteigenden Daten, ein SOF genanntes Paket (Start-of-Frame) zur Markierung und Angabe der Anzahl Pakete am Anfang eines Rasters mit mehreren Paketen, und ein SETUP genanntes Initialisierungspaket zum Initialisieren einer Synchronisierung zwischen dem Terminal und der Karte am Anfang einer Datentransaktion;
    • – Datenpaket DP (Data Packet), das zwischen einem Anfangspaket TP und einem Endpaket HP in einer Transaktion eingeschoben ist und ein Identifikatorfeld PID enthält, ein Datenfeld DATA, das höchstens 1023 Bytes enthält, und ein Kontrollfeld mit zyklischer Redundanz CRC16 mit 16 Bits; Zwei Arten von Datenpaketen DP werden von Identifikatoren DATA0 und DATA1 bezeichnet, und dies insbesondere, um die Datenpakete von geradzahligen Reihen beziehungsweise ungeradzahligen Reihen während der Datentransaktionen in einer Abfolge nach gewissen Transfermodi zu unterscheiden; Endpaket der Transaktion HP (Handshake Packet), das nur ein Identifikatorfeld PID enthält, um über den Status des Transfers vor den Daten zu berichten; Es gibt zwei Arten von HP Paketen: Ein Paket mit Eingangsbestätigung ACK, das angibt, daß ein vorheriges Datenpaket DP richtig eingegangen ist, und ein Paket ohne Eingangsbestätigung NAK, das angibt, daß der Empfänger, für den die im vorherigen Datenpaket enthaltenen Daten bestimmt sind, sie nicht akzeptiert hat, oder daß der Sender, der die Daten übermitteln muß, sie nicht schicken kann.
  • Es wird ebenfalls daran erinnert, daß ein Peripheriegerät nach der USB Norm, wie zum Beispiel die erfindungsgemäße Karte CA, nur unter Befehl des Terminals (Host) und nach Eingang eines Anfangspakets TP senden darf; Eine Transaktion, ob sie nun eine absteigende Transaktion für einen Befehl ist, oder ob sie nun eine aufsteigende Transaktion für eine Antwort ist, fängt mit einem Anfangspaket TP an, das vom Terminal TE an die Karte CA übermittelt wird. Wenn die vom Paket TP angeforderten Daten nicht verfügbar sind, antwortet das Peripheriegerät unter Benutzung eines Pakets NAK, das angibt, daß die im Peripheriegerät angesprochene Funktion nicht in der Lage war, die Daten anzunehmen, oder daß diese Funktion keine Daten zum Übermitteln hat.
  • Nach einer ersten Ausführung der Erfindung werden die Einheiten des APDU Protokolls nach dem Transfermodus „voluminös" (Bulk-Transfer) wie er nach der USB Norm definiert ist, zwischen dem Terminal TE und der Karte CA ausgetauscht. Der Transfermodus „voluminös" ist für Vorrichtungen konzipiert, die relativ große Datenmengen zu sehr variablen Zeitpunkten und mit Benutzung einer beliebigen verfügbaren Bandbreite übermitteln müssen. Ferner ist dieser Modus „voluminös" relativ einfach, denn er setzt keinerlei Struktur des Inhalts der Daten voraus und benutzt nur Anfangspakete der Transaktion TP von der Art OUT für den Transfer der Daten in absteigender Richtung vom Terminal TE zur Karte CA, und Anfangspakete der Transaktion von der Art IN für den Transfer der Daten in aufsteigender Richtung von der Karte CA zum Terminal TE.
  • Die vorstehenden Merkmale des Transfermodus „voluminös" machen ihn zu einem für den Austausch von Einheiten des APDU Protokolls gut geeigneten Modus, wie sich dies weiter unten in Bezug auf die 5 bis 8 herausstellen wird. Die Transaktionen nach dem „Bulk"-Modus haben drei Pakete, die ein Anfangspaket TP von der Art OUT oder IN, ein Datenpaket DATA0 oder DATA1 und ein Endpaket HP von der Art ACK oder NAK umfassen.
  • Auf den 5 bis 8 und auch auf den nachfolgenden 9 und 10 wird vorausgesetzt, daß das Endpaket HP nach einem vorherigen richtigen Dateneingang immer von der Art ACK ist.
  • Wenn ein Paar Befehl Ci-RES1 nach Fall 1 zwischen dem Terminal und der Karte ausgetauscht werden soll, werden sechs Pakete nacheinander in absteigenden und aufsteigenden Transaktionen ausgetauscht, wie auf der 5 gezeigt wird. Die absteigende Transaktion umfaßt ein Anfangspaket OUT, ein Datenpaket DATA0, das die Kopfzeile EN des Befehls C1 umfaßt, die vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das dem Terminal mitteilt, daß die Karte das Paket DATA0 richtig erhalten hat. Die aufsteigende Transaktion umfaßt ein Anfangspaket IN, ein Paket DATA1, dessen Datenfeld die Warteschlange Q mit 2 Bytes SW1 und SW2 der Antwort RES1 umfaßt, und das von der Karte an das Terminal übermittelt wird, und ein Endpaket ACK, das der Karte mitteilt, daß das Paket DATA1 beim Terminal richtig eingegangen ist.
  • Wenn ein Befehl C2 mit nachfolgender Antwort RES2 mit einem Feld ausgehender Daten nach Fall 2 der Norm ISO 7816-4 ausgetauscht wird, werden eine absteigende Transaktion und eine oder mehrere aufsteigende Transaktionen zwischen dem Terminal TE und der Karte CA ausgetauscht, wie auf der 6 gezeigt wird. Die Anzahl aufsteigender Transaktionen hängt von der Länge des Datenfelds DR in der Antwort RES2 im Vergleich zur maximalen Länge des Felds DATA des Pakets DP ab, die zum Beispiel vorher zwischen dem Terminal TE und der Karte CA auf 8, 16, 32 oder 64 Bytes festgelegt werden kann. Auf der 6 wird vorausgesetzt, daß das Feld DR in zwei Felder DATA aufgesplittert ist, sodaß die Abfolge insgesamt drei Transaktionen umfaßt.
  • Die absteigende Transaktion nach dem illustrierten Fall 2 umfaßt ein Anfangspaket OUT, ein Datenpaket DATA0, dessen Datenfeld die 4 Bytes der Kopfzeile EN mit einem anschließenden Byte LE umfaßt, die die Länge Le der Daten in der Antwort RES2 enthält, welches Datenpaket DATA0 vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das den richtigen Eingang des Pakets DATA0 bestätigt, und das von der Karte an das Terminal übermittelt wird. Die erste der beiden aufsteigenden Transaktionen umfaßt ein Anfangspaket IN, das vom Terminal übermittelt wird, ein Datenpaket DATA1, das von der Karte an das Terminal übermittelt wird, und dessen Datenfeld den Anfang des Datenfelds DR der Antwort RES2 enthält, und ein Endpaket ACK, das vom Terminal an die Karte übermittelt wird, wenn das Terminal das Paket DATA' richtig erhalten hat. Die zweite aufsteigende Transaktion umfaßt ein Anfangspaket IN, ein Datenpaket DATA1, das von der Karte an das Terminal übermittelt wird und ein Datenfeld DATA hat, das eventuell den Rest der Daten umfaßt, die im Feld DR der Antwort RES2 enthalten sind, das mit der Warteschlange Q mit 2 Bytes SW1 und SW2 der Antwort RES2 verkettet ist, und schließlich ein Endpaket ACK, das vom Terminal als Antwort auf das richtige Paket DATA1 an die Karte übermittelt wird.
  • Ein Austausch eines Befehls C3 mit einer Antwort RES1 ohne Daten umfaßt zum Beispiel zwei Transaktionen, um die Daten des Befehls DC zu übermitteln und umfaßt also drei absteigende Transaktionen und eine aufsteigende Transaktion, wie auf der 7 gezeigt wird. Die erste absteigende Transaktion ist analog zur ersten auf der 6 gezeigten Transaktion und umfaßt ein Anfangspaket OUT, ein Datenpaket DATA0 und ein Endpaket ACK, aber das Datenfeld im Paket DATA0 umfaßt die Kopfzeile EN und das Feld mit der Länge LC des Befehls C3. Die beiden anderen absteigenden Transaktionen sind von der gleichen Art und umfassen jeweils ein Paket OUT zum Befehlen des Transfers von Befehlsdaten ab dem Terminal TE zur Karte CA, ein Datenpaket DATA1, dessen Datenfeld den Anfang oder das Ende des Datenfelds DC des Befehls C3 umfaßt, der vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das von der Karte in Antwort auf ein vorheriges richtiges Datenfeld DATA1 an das Terminal übermittelt wird. Die letzte Transaktion ist ähnlich der letzten aufsteigenden Transaktion, die auf der 6 gezeigt wird, und sie umfaßt ein Anfangspaket IN, das vom Terminal an die Karte übermittelt wird, ein Datenpaket DATA1, dessen Datenfeld nur die 2 Bytes SW1 und SW2 der Warteschlange Q der Antwort RES1 umfaßt, und das von der Karte an das Terminal übermittelt wird, und ein Endpaket ACK, das vom Terminal übermittelt wird.
  • Wenn ein Befehl C4 vom Terminal an die Karte übermittelt werden muß, werden zum Beispiel drei absteigende Transaktionen und zwei aufsteigende Transaktionen zwischen dem Terminal und der Karte ausgetauscht, wie auf der 8 gezeigt wird. Bei der ersten Transaktion wird vom Terminal ein Datenpaket DATA0 nach einem Anfangspaket OUT an die Karte übermittelt, und es umfaßt in seinem Datenfeld DATA die Kopfzeile EN, das Feld der Länge des Befehls LC und das Feld der erwarteten Länge LE, die aus dem Befehl c4 entnommen wurden, und darauf folgt ein Endpaket ACK, das von der Karte an das Terminal übermittelt wird, wenn das vorherige Paket DATA0 richtig ist. Die beiden nächsten absteigenden Transaktionen bestehen jeweils aus einem Paket OUT zur Steuerung des Transfers von Teilen des Datenfelds DC des Befehls C4 ab dem Terminal zur Karte, einem Datenpaket DATA1, dessen Datenfeld DATA einen ersten Teil umfaßt, oder einem Zwischenteil oder einem Endteil des Datenfelds DC des Befehls C4, der vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das von der Karte an das Terminal übermittelt wird, wenn das vorherige Paket bei der Karte richtig eingegangen ist. Die beiden aufsteigenden Transaktionen betreffen den Transfer der Daten des Felds DR der Antwort RES2, die vom Befehl C2 angekündigt wurden. Die erste aufsteigende Transaktion umfaßt ein Anfangspaket IN, das vom Terminal übermittelt wird, dann ein Datenpaket DATA', das insbesondere den Anfang des Datenfelds DR der Antwort RES2 umfaßt, das von der Karte an das Terminal übertragen wird, und ein Endpaket ACK, das vom Terminal an die Karte übermittelt wird. Die zweite aufsteigende Transaktion umfaßt ein Anfangspaket IN, das vom Terminal übermittelt wird, ein Paket DATA1, dessen Datenfeld eventuell das Ende der aus der Karte kommenden Daten umfaßt, die im Feld DR der Antwort RES2 enthalten sind, sowie die Warteschlange Q mit 2 Bytes SW1 und SW2 der Antwort RES2, und ein Endpaket ACK, das vom Terminal an die Karte übermittelt wird.
  • Bei dem auf der 8 illustrierten Beispiel geben die Felder CH5 und CH6, die dem Anfang des Datenfelds DR der Antwort RES2 im Datenpaket DATA1 der ersten aufsteigenden Transaktion vorausgehen, die nützliche Länge Lu der Daten im Feld DR der Antwort RES2 an, die reell übermittelt werden, wobei Lu unter oder gleich der erwarteten Länge Le sein kann, die vom Befehl C4 angekündigt wurde. Wenn auch die Länge der in der erwarteten Antwort gefragten Daten schon bei Anfang der Abfolge gemeldet wird, und zwar im Feld LE des Pakets DATA0 während der vorherigen ersten absteigenden Transaktion, ist es bei Zwischenfall oder von der Karte CA entdecktem Fehler, die alle oder einen Teil der an das Terminal TE zu übermittelnden Daten ungültig machen, vorzuziehen, dem Terminal die Länge Lu der reell durch die Antwort RES2 übermittelten Daten mitzuteilen. Im Fall, wo Lu < Le, wird das Datenfeld DR der Länge Le durch bedeutungslose Bytes mit Füllbits BB abgeschlossen (Padding), deren Anzahl (Le-Lu) nur dazu bestimmt ist, Protokollregeln einzuhalten. Somit umfaßt das Feld DATA des Datenpakets DATA1 der ersten aufsteigenden Transaktion auf der 8 die nützliche Länge Lu und den Anfang des Datenfelds DC der Antwort RES2, und das Datenfeld DATA des Datenpakets DATA1 der zweiten aufsteigenden Transaktion umfaßt das Ende des Datenfelds DR der Antwort RES2 mit eventuell nachfolgenden (Le-Lu) Bytes mit Füllbits BB und den nachfolgenden beiden Bytes SW1 und SW2 der Warteschlange Q der Antwort RES2.
  • Die oben beschriebene Variante mit den Feldern CH5 und CH6 und Füllbits BB ist ebenfalls für diejenigen der aufsteigenden Transaktionen anwendbar, die eine Antwort RES2 auf den Befehl C2 nach dem Transfer der 6 enthalten.
  • Nach einer zweiten Ausführung werden die Befehl-Antwort Paare nach der Norm ISO 7816-4 zwischen der Karte CA und dem Terminal im Kontrolltransfermodus (Control Transfer) nach der USB Norm ausgetauscht.
  • Der Kontrolltransfermodus wird besonders für die Initialisierung der Peripheriegeräte nach der USB Norm benutzt. Dieser Modus wird somit von allen Controllern erkannt, was das Interesse daran geweckt hat, ihn erfindungsgemäß auf eine Chipkarte anzuwenden.
  • Wie beim vorher beschriebenen Transfermodus „voluminös" sind die Einheiten des Protokolls APDU, das heißt die Befehle und die Antworten, erfindungsgemäß in Datenpakete DP nach der USB Norm während der Transaktionen eingeschlossen. Jede absteigende Transaktion bezüglich des zumindest teilweisen Transfers eines Befehls C1 bis C4 oder jede aufsteigende Transaktion bezüglich des teilweisen Transfers einer Antwort RES1, RES2 umfaßt drei Pakete, ein Anfangspaket TP, das vom Terminal an die Karte übermittelt wird, dann ein Datenpaket DP, das vom Terminal für einen Befehl oder von der Karte für eine Antwort übermittelt wird, und ein Endpaket HP normalerweise von der Art ACK, das von der Gesamtheit, dem Terminal oder der Karte, übermittelt wird, die das vorherige Datenpaket DP richtig erhalten hat. Wie schon gesagt wurde, ist jede Transaktion nur an eine einzige Datentransferrichtung gebunden, nämlich entweder die absteigende Richtung ab dem Terminal zur Karte, was von einem Anfangspaket der Transaktion mit dem Identifikator OUT angegeben wird, oder in aufsteigender Richtung ab der Karte zum Terminal, was durch ein Anfangspaket der Transaktion mit dem Identifikator IN angegeben wird.
  • Im Kontrolltransfermodus ist eine Abfolge mehrerer Transaktionen durch drei Schritte (Stages) definiert, nämlich ein Schritt mit Einrichtung (Setup Stage), ein Schritt mit Daten (Data Stage) und ein Schritt des Status (Status Stage).
  • Der Schritt mit Einrichtung definiert die Transferrichtung und die Länge der zu übertragenden Daten, damit das Decodieren der Transaktionen beim nachfolgenden Schritt mit Daten vereinfacht wird. Mit der Bemühung um Optimierung des erfindungsgemäßen Austauschs ist beim Schritt mit Einrichtung die Kopfzeile EN eines Befehls C1 bis C4 im Datenpaket DP immer mit dem Identifikator DATA0 enthalten, wobei die von der USB Norm gebotenen Freiheiten der Codierung genutzt werden.
  • Sofern vorhanden, umfaßt der Schritt mit Daten eine oder mehrere Transaktionen OUT in absteigender Richtung für Daten, die zu einem Befehl C3 oder C4 gehören, oder eine oder mehrere Transaktionen IN in aufsteigender Richtung für Daten, die zu einer Antwort RES2 gehören. Die Datenmenge, die mit der Transferrichtung während des vorherigen Schritts mit Einrichtung spezifiziert ist, kann in mehreren Transaktionen je nach der vorher bestimmten Größe der Datenpakete verteilt werden, die im allgemeinen deutlich unter der maximalen Größe der Felder DC und DR ist. Somit entspricht jeder Schritt mit Daten einem Datentransfer in eine einzige Richtung.
  • Der Schritt Status des Kontrolltransfermodus schließt die Abfolge mit drei Schritten ab. Dabei wird immer ein Datenpaket DP von der Art DATA1 benutzt und die Änderung der Umlaufrichtung der Daten gegenüber dem vorhergehenden Schritt mitgeteilt; Wenn der vorherige Schritt mit Daten zum Beispiel aus einem Transfer OUT in absteigender Richtung besteht, betrifft der nächste Schritt mit Status eine Transaktion IN in aufsteigender Richtung.
  • Erfindungsgemäß für die Befehl-Antwort Paare nach der Norm ISO 7816-4:
    • – Die Kopfzeile eines Befehls oder eines simulierten Befehls zur Auslösung einer Antwort ist immer im Paket DATA0 eines Schritts mit Einrichtung eingeschlossen;
    • – Die absteigenden Daten DC in einem Befehl C3 oder C4 sind in mindestens einem Paket DP eines Zwischenschritts mit Daten eingeschlossen;
    • – Die aufsteigenden Daten DR in einer Antwort RES2 auf einen Befehl C2 oder C4 sind in mindestens einem Paket DP eines Zwischenschritts mit Daten eingeschlossen;
    • – Die aus den beiden Statusworten SW1 und SW2 einer Antwort RES1, RES2 gebildete Warteschlange Q ist in das Datenpaket einer letzten Transaktion des vorgenannten Zwischenschritts mit Daten eingeschlossen, der einem Statusschritt am Ende einer Abfolge vorausgeht.
  • Die den Befehlen C1 und C2 entsprechenden Fälle 1 und 2 umfassen dann eine einzige Abfolge mit einer oder mehreren aufsteigenden Transaktionen von der Art IN zum Einschließen einer Antwort ohne oder mit Daten, und die den Befehlen C3 und C4 entsprechenden Fälle 3 und 4 umfassen eine erste Abfolge SQ1 mit einer oder mehreren absteigenden Transaktionen von der Art OUT zum Einschließen des Datenfelds DC des Befehl C3 oder C4, und dann eine zweite Abfolge SQ2 mit einer aufsteigenden Transaktion von der Art IN zum Einschließen einer Antwort REST ohne Daten für den Fall 3, oder mit einer oder mehreren aufsteigenden Transaktionen zum Einschließen des Datenfelds DR der Antwort RES2 für den Fall 4.
  • Die 9 zeigt als Beispiel eine Abfolge im Kontrolltransfermodus für einen Befehl C2 mit einer Antwort RES2, deren Datenfeld DR in Datenpakete DP mit Identifikatoren DATA1 beziehungsweise DATA0 und DATA1 in drei aufsteigenden Transaktionen des Zwischenschritts mit Daten verteilt ist.
  • Der Schritt mit Einrichtung bildet eine erste aufsteigende Transaktion der Abfolge und umfaßt ein Paket SETUP und ein Paket DATA0, die vom Terminal an die Karte übermittelt werden, und ein Paket ACK, das von der Karte in Antwort auf das richtig eingegangene Paket DATA0 übermittelt wird. Das Paket DATA0 schließt nicht nur die 4 Bytes CLA, INS, P1 und P2 der Kopfzeile EN des Befehls C2 ein, sondern umfaßt auch zwei Felder CH1 und CH2, die dem Feld der Klasse CLA nach dem Feld des Identifikators PID von der Art SETUP vorausgehen, und zwei Felder CH3 und CH4, die auf das Feld des Parameters P2 vor dem Kontrollfeld CRC16 folgen.
  • Das Feld CH1 gibt der Karte an, daß die fünf nächsten Bytes CH2, CLA, INS, P1 und P2, die ihm im Datenfeld DATA des Pakets DATA0 nachfolgen, Eigentümer-Bytes sind. Das Feld CH2 enthält einen Identifikator des Formats, um der Karte das Format des Befehls oder der Antwort anzugeben, die die laufende Abfolge übermittelt.
  • Die Felder CH3 und CH4 umfassen die Länge Lc des Datenfelds DC des Befehls beziehungsweise die erwartete Länge Le des Datenfelds DR der mit 4 beaufschlagten Antwort, die in den Feldern LC beziehungsweise LE des zu übermittelnden Befehls gelesen werden, sofern vorhanden. In diesem Fall beim Befehl C2 ist Lc gleich 0, und Le ist ungleich 0. Die zur Länge Le hinzugefügte Zahl 4 erfaßt zwei Felder CH5 und CH6, die am Anfang des Datenfelds DATA des ersten Pakets DATA1 des nachfolgenden Schritts mit Daten eingeschlossen sind, und die dem Anfang des Datenfelds DR der Antwort RES2 vorausgehen, und die zwei Bytes SW1 und SW2 in der. Warteschlange Q der Antwort RES2.
  • Der Schritt mit Daten umfaßt drei aufsteigende Transaktionen nach dem auf der 9 illustrierten Beispiel. Jede Transaktion umfaßt ein Anfangspaket TP von der Art IN, um einen Datentransfer von der Karte CA zum Terminal TE zu initiieren, wobei ein Datenpaket DATA1 oder DATA0 einen Teil des Felds DR der Antwort RES2 umfaßt und von der Karte an das Terminal übermittelt wird, und ein Endpaket ACK, das der Karte bestätigt, daß das vorher von dieser übermittelte Datenpaket beim Terminal richtig eingegangen ist.
  • Die Felder CH5 und CH6, die dem Anfang des Datenfelds DR der Antwort RES2 im ersten Datenpaket DATA1 vorausgehen, geben, wie schon in Bezug auf die 8 gesagt wurde, die nützliche Länge Lu der Daten im Feld DR der Antwort RES2 an, die reell an das Terminal TE übermittelt werden, wobei Lu unter oder gleich Le sein kann. Im Fall, wo Lu < Le, wird das Datenfeld DR der Länge Le durch Bytes mit Füllbits BB ohne Bedeutung (Padding) in einer Anzahl (Le-Lu) abgeschlossen. Nach dem auf der 9 illustrierten Beispiel umfaßt somit die zweite aufsteigende Transaktion im Zwischenschritt mit Daten ein Paket IN, ein Datenpaket DATA0, dessen DATA einen Zwischenteil des Datenfelds DC der Antwort RES2 umfaßt, und ein Endpaket ACK; Die letzte Transaktion des Schritts mit Daten umfaßt nach einem Paket IN ein Datenpaket DATA1, dessen Datenfeld DATA das Ende des Datenfelds DR der Antwort RES2 umfaßt, auf die eventuell (Le-Lu) Bytes mit Füllbits BB folgen, und auf die die zwei Bytes SW1 und SW2 der Warteschlange Q der Antwort RES2 folgen, und ebenfalls ein Endpaket ACK.
  • Der die Abfolge der 9 abschließende Statusschritt besteht aus einer absteigenden Transaktion, die eine entgegengesetzte Richtung zu derjenigen der aufsteigenden Transaktionen mit vorher ausgeführten Daten IN aufweist. Diese absteigende Transaktion umfaßt ein Anfangspaket OUT, das vom Terminal TE an die Karte CA übermittelt wird, ein Paket DATA1 ohne Datenfeld, das vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das den richtigen Eingang des dem DATA1 vorausgehenden Pakets durch die Karte an das Terminal bestätigt.
  • Beim auf der 9 gezeigten Beispiel ist vorausgesetzt worden, daß die vom Befehl C2 beim Schritt mit Einrichtung geforderten Daten in der Karte verfügbar waren, und daß folglich die Karte sie in einer eingeschlossenen Antwort RES2 weiter übermitteln kann. Im gegenteiligen Fall antwortet die Karte schon ab der zweiten Transaktion mit einem Endpaket HP von der Art NAK auf das erste vom Terminal übermittelte Paket IN, um dem Terminal mitzuteilen, daß die angeforderten Daten nicht zur Übermittlung bereit sind.
  • Im Fall des Befehls C1 umfaßt die Abfolge den Schritt mit Einrichtung mit Anfangspaket SETUP nach der 9, einen Schritt mit Daten, der nur eine einzige Transaktion IN umfaßt mit einem Datenpaket DATA1, dessen Datenfeld nur die Bytes SW1 und SW2 der Antwort RES1 umfaßt, und den Statusschritt mit Anfangspaket OUT nach der 9.
  • Nun in Bezug auf die 10; Ein Austausch eines Befehl C4 und einer Antwort RES2 mit Daten im Kontrolltransfermodus umfaßt eine erste Abfolge SQ1 von der Art OUT mit einem Schritt mit Einrichtung, einen Schritt mit Daten, der mindestens eine absteigende Transaktion OUT hat, zum Beispiel drei absteigende Transaktionen nach der 10, und einen Statusschritt, und eine zweite Abfolge SQ2 von der Art IN mit einem Schritt mit Einrichtung, einem Schritt mit Daten, der mindestens eine aufsteigende Transaktion IN hat, zum Beispiel drei aufsteigende Transaktionen nach der 10, und einen abschließenden Statusschritt
  • In der ersten Abfolge SQ1 ist die erste absteigende Transaktion, die den Schritt mit Einrichtung SETUP bildet, analog zu derjenigen, die schon in Bezug auf die 9 beschrieben wurde, bis auf den Unterschied, daß am Anfang des Datenfelds des ersten Datenpakets DATA0 das Feld CH2 einen Identifikator des vierten Formats der APDU Einheit enthält, die dem gerade übermittelten Befehl C4 entspricht, und das Feld CH3 enthält die Länge Lc der Befehlsdaten, die im Feld LC des Befehls C4 enthalten ist. Ferner umfaßt jede der drei absteigenden Transaktionen des Schritts mit Daten in der ersten Abfolge ein Anfangspaket OUT, das vom Terminal an die Karte übermittelt wird, ein Datenpaket DATA1 oder DATA0, das vom Terminal an die Karte übermittelt wird, und ein Endpaket ACK, das von der Karte an das Terminal in Antwort auf das vorherige richtig eingegangene Datenpaket übermittelt wird. Die Daten DC des Befehls C4 erfüllen nach und nach und bis zu ihrer maximalen Länge die Datenfelder DATA in den abwechselnd übermittelten Datenpaketen DATA0 und DATA1; Wenn zum Beispiel die maximale Länge des Datenfelds DATA der Datenpakete DP mit 8 Bytes festgelegt worden ist, enthalten die Datenfelder der Pakete DATA1, DATA0 und DATA1 in der ersten Abfolge 8 Bytes beziehungsweise 8 Bytes und 6 Bytes für ein Datenfeld DC, das 22 Bytes enthält.
  • Da der vorherige Schritt mit Daten in der ersten Abfolge SQ1 Transaktionen von der Art OUT umfaßt, ist der Statusschritt, der die erste Abfolge abschließt, dann eine aufsteigende Transaktion IN und umfaßt ein Anfangspaket TP von der Art IN, das vom Terminal an die Karte übermittelt wird, ein Datenpaket DATA1 ohne Datenfeld, das von der Karte an das Terminal übermittelt wird, und ein Endpaket ACK, das vom Terminal an die Karte übertragen wird.
  • Die zweite Abfolge SQ2 des auf der 10 gezeigten Austauschs umfaßt, außer einem Schritt mit Einrichtung, einen Schritt mit Daten mit drei aufsteigenden Transaktionen von der Art IN, um die Antwort RES2 zu übermitteln, und einen Statusschritt analog zur auf der 9 illustrierten Abfolge.
  • Das Datenpaket DATA0 nach dem Anfangspaket SETUP in der absteigenden Transaktion, das den Schritt mit Einrichtung der zweiten Abfolge SQ2 darstellt, hat eine identische Struktur mit dem Paket DATA0 in der ersten absteigenden Transaktion der ersten Abfolge SQ1. Das Feld CH2 gibt das zweite Antwortformat mit Daten gemäß der Antwort RES2 an den Befehl C4 an, die Felder CLA, P1, P2 und CH3 enthalten Nullen, und das Feld CH4 enthält die Länge Le der Daten, die die Antwort RES2 enthalten muß, beaufschlagt mit der Zahl 4. Die letztgenannte Zahl 4 entspricht dem Feld CH5-CH6, hier mit zwei Bytes, für die nützliche Länge Lu der Antwort und der Warteschlange mit zwei Bytes SW1 und SW2. Wenn die nützliche Länge Lu, die in den Feldern CH5 und CH6 am Anfang des Datenfelds DATA des Datenpakets DATA1 der ersten Transaktion IN beim Schritt mit Daten der zweiten Abfolge SQ2 enthalten ist, unter der erwarteten Länge Le beträgt, enthält das Datenfeld DATA des Datenpakets DATA1 der letzten Transaktion IN beim Schritt mit Daten (Le-Lu) Bytes mit Füllbits BB vor den beiden Bytes SW1 und SW2 der Warteschlange Q der Antwort RES2.

Claims (8)

  1. Verfahren für den Austausch, zwischen einem Terminal (TE) und einem tragbaren elektronischen Objekt (CA), mindestens einer APDU genannten Dateneinheit des Applikationsprotokolls, definiert gemäß der Norm ISO 7816-4, gekennzeichnet durch die folgenden Schritte: – Verbindung des Terminals und des tragbaren elektronischen Objekts über einen universalen Serienbus (BU), dem so genannten Bus USB, um einem voluminösen Datentransfermodus, dem so genannten Bulk-Modus, entsprechende Transaktionen auszutauschen, wobei jede Transaktion ein Datenpaket (DP) umfasst, – Einschluss jeder ADPU in das Datenpaket (DP) der Transaktion (IN, OUT, DATA0, DATA1, ACK), das zwischen dem Terminal (TE) und dem tragbaren elektronischen Objekt (CA) übertragen werden soll.
  2. Verfahren gemäß Anspruch 1, bei dem: – ein Applikationsbefehl (C1 bis C4) mindestens eine APDU umfasst, – eine entsprechende Antwort mindestens eine Antwort ADPU umfasst, und jede von dem Terminal (TE) an das tragbare elektronische Objekt (CA) übertragene Transaktion ferner ein Anfangspaket (TP) enthält, wobei das Anfangspaket (TP) einen Identifikator (IN, OUT) aufweist, der die Transferrichtung des ihm innerhalb des laufenden Austausches folgenden Datenpakets (DP) angibt.
  3. Verfahren gemäß Anspruch 2, bei dem das Anfangspaket (TP) jeder von dem Terminal (TE) an das tragbare elektronische Objekt (CA) übertragenen Transaktion bezüglich des Transfers mindestens eines Teils eines Datenfelds (DC, DR) eines Applikationsbefehls (C1 bis C4) oder einer Antwort (RES1, RES2) einen Identifikator (OUT, IN) umfasst, der die Transferrichtung des ihm innerhalb des besagten Austausches folgenden Datenpakets (DP, DATA0 oder DATA1) anzeigt.
  4. Verfahren gemäß einem der Ansprüche 2 und 3, bei dem ein Datenfeld (DATA) eines Datenpakets (DP, DATA0 oder DATA1) innerhalb einer von dem Terminal (TE) an das tragbare elektronische Objekt (CA) übertragenen Transaktion (OUT, DATA0, ACK) mit einer Titelzeile (EN) eines Applikationsbefehls (C1 bis C4) ferner die erwartete Länge (Le) des Datenfelds (DR) der auf den genannten Applikationsbefehl folgenden Antwort (RES1, RES2) und/oder die Länge (Lc) des Datenfelds (DC) des genannten Applikationsbefehls umfasst.
  5. Verfahren gemäß einem der Ansprüche 2 bis 4, bei dem ein Datenfeld (DATA) eines Datenpakets (DP, DATA1) einer ersten, von dem tragbaren elektronischen Objekt (CA) an das Terminal (TE) übertragenden Transaktion mit dem Anfang des Datenfelds (DR) einer Antwort (RES) ebenfalls die nützliche Länge (Lu) der Antwort auf einen Applikationsbefehl (C2, C4) umfasst.
  6. Verfahren gemäß Anspruch 5, bei dem die nützliche Länge (Lu) innerhalb des Datenfelds (DATA) des Datenpakets (DP, DAT0 oder DATA1) der ersten, von dem tragbaren elektronischen Objekt (CA) zum Terminal (TE) übertragenen Transaktion enthalten ist, wobei die letzte Transaktion von dem tragbaren elektronischen Objekt (CA) zum Terminal (TE) einen Bericht (SW1, SW2) der genannten Antwort (RES2) umfasst.
  7. Tragbares elektronisches Objekt (CA) mit einer Kommunikationsschnittstelle geeignet für: – den Empfang vonseiten des Terminals (TE) mindestens einer APDU genannten Dateneinheit eines Applikationsprotokolls, definiert gemäß der Norm ISO 7816-4, – die Übertragung mindestens einer Antwort APDU an das Terminal (TE), dadurch gekennzeichnet, dass das Terminal und das tragbare elektronische Objekt über einen universalen Serienbus (BU), dem so genannten Bus USB, verbunden sind, um einem voluminösen Datentransfermodus, dem Bulk-Modus gemäß der Norm USB, entsprechende Transaktionen auszutauschen, wobei jede Transaktion ein Datenpaket (DP) umfasst, und dass das tragbare elektronische Objekt die folgenden Mittel enthält: – Mittel zum Extrahieren einer APDU, die innerhalb mindestens eines Datenpakets (DP) mindestens einer von dem tragbaren elektronischen Objekt (CA) empfangenen und von dem Terminal (TE) übertragenen Transaktion (OUT, DAT0, ACK) eingeschlossen und enthalten ist; und – Mittel zum Einschließen der genannten Antwort APDU innerhalb eines Datenpakets (DP) einer von dem tragbaren elektronischen Objekt (CA) zum Terminal (TE) zu übertragenden Transaktion (IN, OUT, DATA0, DATA1, ACK).
  8. Terminal (TE) mit einer Kommunikationsschnittstelle geeignet für: – die Übertragung mindestens einer APDU genannten Dateneinheit eines Applikationsprotokolls, definiert gemäß der Norm ISO 7816-4, an ein tragbares elektronisches Objekt (CA), – den Empfang mindestens einer Antwort APDU ab dem tragbaren elektronischen Objekt (CA), dadurch gekennzeichnet, dass das Terminal und das tragbare elektronische Objekt über einen universalen Serienbus (BU), dem so genannten Bus USB, verbunden sind, um einem voluminösen Datentransfermodus, dem Bulk-Modus gemäß der Norm USB, entsprechende Transaktionen auszutauschen, wobei jede Transaktion ein Datenpaket (DP) umfasst, und dass das Terminal (TE) die folgenden Mittel enthält: – Mittel zum Einschließen einer APDU innerhalb mindestens eines Datenpakets (DP) mindestens einer von dem Terminal (TE) zum tragbaren elektronischen Objekt (CA) zu übertragenden Transaktion (OUT, DATA0, ACK); und – Mittel zum Extrahieren der genannten Antwort APDU, die innerhalb eines Datenpakets (DP) mindestens einer von dem tragbaren elektronischen Objekt (CA) übertragenen und von dem Terminal (TE) empfangenen Transaktion (IN, OUT, DAT0, DATA1, ACK) eingeschlossen und enthalten ist.
DE60131953T 2000-02-03 2001-02-02 Protokolleinheitenübertragung von tragbarem elektronischem gegenstand mit protokoll für mikrorechnerperipheriegeräte Expired - Lifetime DE60131953T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0001399A FR2804816B1 (fr) 2000-02-03 2000-02-03 Transport d'unites de protocole d'objet electronique portable par protocole pour peripheriques de micro- ordinateur
FR0001399 2000-02-03
PCT/FR2001/000326 WO2001057684A1 (fr) 2000-02-03 2001-02-02 Transport d'unites de protocole d'objet electronique portable par protocole pour peripheriques de micro-ordinateur

Publications (2)

Publication Number Publication Date
DE60131953D1 DE60131953D1 (de) 2008-01-31
DE60131953T2 true DE60131953T2 (de) 2008-12-11

Family

ID=8846648

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60131953T Expired - Lifetime DE60131953T2 (de) 2000-02-03 2001-02-02 Protokolleinheitenübertragung von tragbarem elektronischem gegenstand mit protokoll für mikrorechnerperipheriegeräte

Country Status (8)

Country Link
US (2) US7042903B2 (de)
EP (1) EP1256062B1 (de)
CN (1) CN1397041A (de)
AU (1) AU2001231970A1 (de)
DE (1) DE60131953T2 (de)
ES (1) ES2301527T3 (de)
FR (1) FR2804816B1 (de)
WO (1) WO2001057684A1 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020162021A1 (en) * 2001-04-30 2002-10-31 Audebert Yves Louis Gabriel Method and system for establishing a remote connection to a personal security device
WO2002089444A1 (en) * 2001-04-30 2002-11-07 Activcard Ireland, Limited Method and system for authenticating a personal security device vis-a-vis at least one remote computer system
AU2002357266A1 (en) * 2002-11-12 2004-06-03 Zetera Corporation Communication protocols, systems and methods
US8005918B2 (en) * 2002-11-12 2011-08-23 Rateze Remote Mgmt. L.L.C. Data storage devices having IP capable partitions
US7742473B2 (en) * 2002-11-12 2010-06-22 Mark Adams Accelerator module
US7649880B2 (en) * 2002-11-12 2010-01-19 Mark Adams Systems and methods for deriving storage area commands
US7170890B2 (en) 2002-12-16 2007-01-30 Zetera Corporation Electrical devices with improved communication
ATE295643T1 (de) * 2003-03-11 2005-05-15 Cit Alcatel System zum automatischen konfigurieren eines sende-empfängers als entweder zentral- oder ferneinheit in einem kommunikationssystem
TWI296083B (en) * 2003-09-29 2008-04-21 Sharp Kk Communication controller, host-side controller, communication system, usb system, communication equipment, communication method, packet-based communication method, packet-based communication program, and storage medium
KR100562505B1 (ko) * 2003-10-09 2006-03-21 삼성전자주식회사 중앙 처리 장치의 개입없이 널 바이트 정보를 자동적으로전송할 수 있는 집적회로 카드
US8321923B2 (en) * 2004-03-04 2012-11-27 Gemalto Sa Secure sharing of resources between applications in independent execution environments in a retrievable token (e.g. smart card)
US7702850B2 (en) * 2005-03-14 2010-04-20 Thomas Earl Ludwig Topology independent storage arrays and methods
US7620981B2 (en) 2005-05-26 2009-11-17 Charles William Frank Virtual devices and virtual bus tunnels, modules and methods
CN1878055B (zh) * 2005-06-07 2010-11-03 北京握奇数据系统有限公司 一种分离式大数据量加/解密设备及实现方法
US8819092B2 (en) 2005-08-16 2014-08-26 Rateze Remote Mgmt. L.L.C. Disaggregated resources and access methods
US7743214B2 (en) 2005-08-16 2010-06-22 Mark Adams Generating storage system commands
US9270532B2 (en) 2005-10-06 2016-02-23 Rateze Remote Mgmt. L.L.C. Resource command messages and methods
TW200725494A (en) * 2005-12-23 2007-07-01 Ind Tech Res Inst Wireless remote control method
US7924881B2 (en) * 2006-04-10 2011-04-12 Rateze Remote Mgmt. L.L.C. Datagram identifier management
US20080005261A1 (en) * 2006-05-24 2008-01-03 Research In Motion Limited Grouping Application Protocol Data Units for Wireless Communication
WO2008003599A1 (en) * 2006-07-05 2008-01-10 Gemplus A multi-function peripheral device, corresponding method and electronic system having a peripheral and a host communicating via a single interface
CN100536797C (zh) * 2006-08-07 2009-09-09 深圳迈瑞生物医疗电子股份有限公司 医疗诊断系统及其控制面板
WO2008029206A2 (en) * 2006-09-05 2008-03-13 Nokia Corporation Device interface
US7555582B2 (en) * 2006-12-15 2009-06-30 Grady David Lambert Portable universal serial bus memory devices and methods for using such devices
US8391354B2 (en) * 2007-05-14 2013-03-05 Broadcom Corporation Method and system for transforming uncompressed video traffic to network-aware ethernet traffic with A/V bridging capabilities and A/V bridging extensions
US8078225B2 (en) * 2007-07-02 2011-12-13 Infineon Technologies Ag Communication device, mobile device and method of communication
EP2045992A1 (de) * 2007-10-04 2009-04-08 Gemplus Verfahren für den Zugriff auf eine tragbare Vorrichtung, entsprechende tragbare Vorrichtung und Hostvorrichtung und System
CN101159861B (zh) * 2007-11-14 2011-02-16 北京中星微电子有限公司 一种图像数据的批量传输方法
KR100872816B1 (ko) * 2008-05-02 2008-12-09 주식회사 스마트카드연구소 데이터 케이블을 이용한 가입자 인증카드의 데이터제어시스템 및 제어방법
GB0904877D0 (en) * 2009-03-20 2009-05-06 Global Refund Holdings Ab Interface module, system and method
JP2011150661A (ja) * 2010-01-25 2011-08-04 Toshiba Corp 携帯可能電子装置、及び携帯可能電子装置の制御方法
US8566934B2 (en) 2011-01-21 2013-10-22 Gigavation, Inc. Apparatus and method for enhancing security of data on a host computing device and a peripheral device
US8918797B2 (en) 2011-06-10 2014-12-23 International Business Machines Corporation Processing operator message commands
US8560737B2 (en) 2011-06-10 2013-10-15 International Business Machines Corporation Managing operator message buffers in a coupling facility
US8689240B2 (en) 2011-06-10 2014-04-01 International Business Machines Corporation Transmitting operator message commands to a coupling facility
US9037907B2 (en) 2011-06-10 2015-05-19 International Business Machines Corporation Operator message commands for testing a coupling facility
US8799522B2 (en) * 2011-06-10 2014-08-05 International Business Machines Corporation Executing a start operator message command
GB2506803B (en) 2011-08-10 2020-07-01 Srivastava Gita Apparatus and method for enhancing security of data on a host computing device and a peripheral device
DE102013200918A1 (de) 2013-01-22 2014-07-24 Siemens Aktiengesellschaft Schaltgeräteanordnung
CN104463304B (zh) * 2013-09-16 2018-03-27 华为终端有限公司 一种sim卡信号转换方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2686998B1 (fr) * 1992-01-30 1994-03-25 Gemplus Card International Carte a puce a plusieurs protocoles de communication.
ES2127231T3 (es) * 1992-06-29 1999-04-16 Thomson Multimedia Sa Bus serie de cuatro lineas.
US6219736B1 (en) * 1997-04-24 2001-04-17 Edwin E. Klingman Universal serial bus (USB) RAM architecture for use with microcomputers via an interface optimized for integrated services device network (ISDN)
US5987530A (en) * 1997-07-10 1999-11-16 National Instruments Coporation Method for caching data and generating only one read request to read the requested data and additional data in universal serial bus system
US6356968B1 (en) * 1997-09-03 2002-03-12 Cirrus Logic, Inc Apparatus and method for transparent USB-to-1394 bridging and video delivery between a host computer system and a remote peripheral device
US6058440A (en) * 1997-09-05 2000-05-02 Intel Corporation Programmable and adaptive resource allocation device and resource use recorder
US5983292A (en) * 1997-10-15 1999-11-09 International Business Machines Corporation Message transport mechanisms and methods
US6385729B1 (en) * 1998-05-26 2002-05-07 Sun Microsystems, Inc. Secure token device access to services provided by an internet service provider (ISP)
FR2783336B1 (fr) * 1998-09-11 2001-10-12 Schlumberger Ind Sa Procede de transmission de donnees et carte pour une telle transmission
US6168077B1 (en) * 1998-10-21 2001-01-02 Litronic, Inc. Apparatus and method of providing a dual mode card and reader
US6748541B1 (en) * 1999-10-05 2004-06-08 Aladdin Knowledge Systems, Ltd. User-computer interaction method for use by a population of flexibly connectable computer systems
US6389029B1 (en) * 1998-11-10 2002-05-14 Nortel Networks Limited Local area network incorporating universal serial bus protocol
US6389495B1 (en) * 1999-01-16 2002-05-14 Cypress Semiconductor Corp. Dedicated circuit and method for enumerating and operating a peripheral device on a universal serial bus
US6675243B1 (en) * 1999-03-17 2004-01-06 Adaptec, Inc. Methods and apparatus for implementing a device side advanced serial protocol
US6710893B1 (en) * 1999-11-02 2004-03-23 Ricoh Co., Ltd. Automated system and method of testing a facsimile machine
FR2806505A1 (fr) * 2000-03-15 2001-09-21 Schlumberger Systems & Service Procede de communication entre une carte a puce et une station hote

Also Published As

Publication number Publication date
WO2001057684A1 (fr) 2001-08-09
DE60131953D1 (de) 2008-01-31
AU2001231970A1 (en) 2001-08-14
US20010025882A1 (en) 2001-10-04
EP1256062A1 (de) 2002-11-13
US20060176903A1 (en) 2006-08-10
CN1397041A (zh) 2003-02-12
ES2301527T3 (es) 2008-07-01
FR2804816B1 (fr) 2003-10-31
EP1256062B1 (de) 2007-12-19
FR2804816A1 (fr) 2001-08-10
US7042903B2 (en) 2006-05-09
US7733902B2 (en) 2010-06-08

Similar Documents

Publication Publication Date Title
DE60131953T2 (de) Protokolleinheitenübertragung von tragbarem elektronischem gegenstand mit protokoll für mikrorechnerperipheriegeräte
DE69912017T2 (de) Peripheriegerät und Steuerverfahren dafür
DE69032366T2 (de) Datenübertragungsverfahren
DE69527948T2 (de) System und verfahren zur kommunikation mit einem entfernten netzwerk-apparatus
DE69433098T2 (de) Vorrichtung zur Übertragung von Daten
DE69130187T2 (de) Hochgeschwindigkeitsübertragungsprotokoll mit zwei Fenstern
DE3856569T2 (de) Nachrichtübertragungsanordnung mit gemeinsamer Datenübertragungs- und Sammel-Geräten
DE3586633T2 (de) Lokales netzwerk fuer numerisches datenverarbeitungssystem.
DE69829429T2 (de) Datenkommunikationssystem und in diesem verwendete elektronische Kontrolleinheit
DE102009030952A1 (de) Drahtloses Kommunikationsgerät und Paketübertragungsverfahren dafür
DE69617299T2 (de) Übertragungsverfahren mit Protokolländerung und Datenverarbeitungsgerät dafür
DE2953444T1 (de) Bus collision a voidance system for distributed network data processing communications systems
DE4129205A1 (de) Verfahren zum aufbau von botschaften fuer den datenaustausch und/oder fuer die synchronisation von prozessen in datenverarbeitungsanlagen
DE60204124T2 (de) Kontaktlose karte mit kommandoprotokollumsetzung
DE3829748A1 (de) Modem-system
DE112008000598T5 (de) Relaisschaltungseinheit für ein Fahrzeug
DE112004002544B4 (de) Verfahren, System und Programm zur Identifizierung von Datenüberlauf
DE69031015T2 (de) Zur Ausführung einer Wiederholungskontrolle pro Zeiteinheit fähiges Signalübertragungssystem
DE102005062575B4 (de) Verfahren und Vorrichtung zum Übertragen von Daten über eine Datenverbindung von einem Sender zu einem Empfänger mittels Pakete
EP1357707B1 (de) Verfahren zur Übertragung von Nachrichten auf einem Bussystem
DE60036121T2 (de) Hochgeschwindigkeitsverbindung für eingebettete Systeme in einem Rechnernetzwerk
EP1498836A1 (de) Verfahren zur Datenübertragung zwischen RFID Schreib/Lese-Station und dessen Funktionseinheit, Schreib/Lese-Station und Funktionseinheit
DE2415890C2 (de) Verfahren zum Übertragen von Daten und Anordnung zur Durchführung des Verfahrens
DE69900228T2 (de) System zur Erweiterung eines Parameterkodierungsfeldes zur Parametereinfügung unter Einhaltung von Kompatibilität mit bestehenden Parameterkodierungen
DE10065115A1 (de) Verfahren und Kommunikationssystem zum Datenaustausch zwischen mehreren über ein Bussystem miteinander in Verbindung stehenden Teilnehmern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
R082 Change of representative

Ref document number: 1256062

Country of ref document: EP

Representative=s name: HOFFMANN - EITLE, DE