DE102009041924A1 - Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger - Google Patents

Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger Download PDF

Info

Publication number
DE102009041924A1
DE102009041924A1 DE200910041924 DE102009041924A DE102009041924A1 DE 102009041924 A1 DE102009041924 A1 DE 102009041924A1 DE 200910041924 DE200910041924 DE 200910041924 DE 102009041924 A DE102009041924 A DE 102009041924A DE 102009041924 A1 DE102009041924 A1 DE 102009041924A1
Authority
DE
Germany
Prior art keywords
application
applications
privileged
app
privileged application
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.)
Ceased
Application number
DE200910041924
Other languages
English (en)
Inventor
Claus Jarnik
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.)
Giesecke and Devrient Mobile Security GmbH
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Priority to DE200910041924 priority Critical patent/DE102009041924A1/de
Priority to EP10759608A priority patent/EP2478435A1/de
Priority to PCT/EP2010/063632 priority patent/WO2011033030A1/de
Publication of DE102009041924A1 publication Critical patent/DE102009041924A1/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Abstract

In einem Verfahren zum Installieren (IS1; IS2) und Konfigurieren (KS1; KS2; KS3) von Applikationen (SD2; App) in einem portablen Datenträger (10) wird aufgrund lediglich eines Aufrufs (S3) eines Installationskommandos eine der Applikationen (SD2; App) installiert (IS1; IS2) und konfiguriert (KS1; KS2; KS3) oder eine Mehrzahl der Applikationen SD2; App) installiert und/oder konfiguriert (IS1; IS2; KS1; KS2; KS3).

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger sowie einen entsprechend eingerichteten Datenträger.
  • Portable Datenträger, die zumindest einen Speicher und einen Prozessor zum Ausführen von in dem Speicher gespeicherten Applikationen besitzen, sind vorwiegend derart eingerichtet, dass auf dem Datenträger Applikationen mehrerer Dienstanbieter installiert werden können. Um die jeweiligen Applikationen und die von diesen Applikationen bearbeiteten Daten vor unbefugtem Zugriff zu schützen, sind spezielle, privilegierte Applikationen, so genannte „Security Domains” vorgesehen, die für die herkömmlichen, nicht privilegierten Applikationen eines Dienstanbieters eine Art Sicherheitsumgebung bereitstellen. Die privilegierten Applikationen können untereinander nochmals nach dem Grad ihrer Privilegierung unterschieden werden, wobei die Security Domain des Kartenausgebers in der Regel die höchsten Privilegien aufweist.
  • Eine solche privilegierte Applikation umfasst eine eigene Schlüsselinfrastruktur und unterstützt die Datenkommunikation der in der Security Domain installierten nicht privilegierten Applikation mit Dritten über gesicherte Datenkommunikationskanäle. Nicht privilegierte Applikationen sind in der Regel herkömmliche Anwendungen, beispielsweise zum Abwickeln eines Bezahlvorgangs oder dergleichen. Eine Datenträgerinfrastruktur der skizzierten Art ist beispielsweise in der „GlobalPlatform Card Specification, Version 2.2” detailliert beschrieben.
  • Auf dem Datenträger ausführbare Applikationen werden in einem ersten Schritt in Form ausführbaren Codes, als so genannte „executable load files”, in einem Speicher des Datenträgers bereitgestellt. Dies kann bereits bei der Herstellung des Datenträgers geschehen, aber auch dann, wenn der Datenträger bereits in Benutzung genommen worden ist, beispielsweise durch späteres Nachladen von Applikationen. Um eine als „executable load file” bereitgestellte Applikation auf dem Datenträger ausführbar zu machen, bedarf es eines weiteren Installationsschritts, welcher im Wesentlichen durch eine Laufzeitumgebung des Datenträgers durchgeführt wird. Dabei wird beispielsweise geprüft, ob der Dienstanbieter, für den bzw. in dessen Security Domain die Applikation installiert werden soll, die Applikation dafür vorgesehen hat, d. h. die Applikation wird authentisiert. Weiterhin stellt die Laufzeitumgebung der Applikation die notwendigen Ressourcen, beispielsweise Speicherplatz für Applikationsdaten, zur Verfügung und trägt eine die Applikation in dem Datenträger identifizierende Information in ein entsprechendes Datenträgerregister ein.
  • In einem oder mehreren weiteren Schritten kann es notwendig sein, die Applikation zu konfigurieren, beispielsweise auf einen Nutzer zu personalisieren oder einer bestimmten Security Domain zuzuweisen.
  • Jede Installation und jeder einzelne Konfigurationsschritt erfordert ein Installationskommando, das an die Laufzeitumgebung des Datenträgers übermittelt und von dieser verarbeitet wird, sowie in vielen Fällen entsprechende Antwortkommandos des Datenträgers.
  • Während der Produktion des Datenträgers werden die Installationskommandos von einer Produktionsmaschine kontaktbehaftet an den Datenträger übertragen. Aufgrund der Vielzahl von erforderlichen Installationskommandos zum Installieren und Konfigurieren einer Anzahl von Applikationen ist ein solcher Produktionsschritt sehr zeitaufwändig und teuer, da die Produktionsmaschine jeweils unbeschäftigt warten muss, bis der Datenträger ein Installationskommando verarbeitet und beantwortet hat.
  • Werden neue Applikationen in dem Datenträger installiert, wenn dieser bereits an einen Nutzer ausgeliefert und in Betrieb genommen worden ist, beispielsweise bei einer (U)SIM-Mobilfunkkarte, werden die Installationskommandos, z. B. mittels SMS oder GPRS, als Träger über eine Luftschnittstelle („over the air”, OTA) an den Datenträger übermittelt. Müssen beispielsweise eine große Anzahl oder gar alle Mobilfunkkarten eines Dienstanbieters mit einigen neuen Applikationen ausgestattet und diese geeignet für den jeweiligen Nutzer konfiguriert werden, erfordert dies ein hohes Datenaufkommen, z. B. eine sehr große Anzahl auszutauschender SMS-Nachrichten, mit der Folge einer enormen Netzbelastung.
  • Aufgabe der vorliegenden Erfindung ist es demnach, ein Verfahren zum Vereinfachen der Installation und Konfiguration von Applikationen auf einem portablen Datenträger vorzuschlagen.
  • Diese Aufgabe wird durch ein Verfahren und einen Datenträger mit den Merkmalen der unabhängigen Ansprüche gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen sind in den abhängigen Ansprüchen angegeben.
  • Ein erfindungsgemäßes Verfahren zum Installieren und Konfigurieren von Applikationen in einem portablen Datenträger zeichnet sich dadurch aus, dass mit lediglich einem Aufruf eines Installationskommandos eine der Applikationen installiert und konfiguriert wird oder eine Mehrzahl der Applikationen installiert und/oder konfiguriert wird. Es ist auch möglich, mittels eines Aufrufs des Installationskommandos mehrere eine Applikation betreffende Konfigurationsschritte durchzuführen.
  • Ein erfindungsgemäßer portabler Datenträger, der zum Ausführen von auf dem Datenträger installierten und konfigurierten Applikationen eingerichtet ist, umfasst eine Steuereinrichtung zum Empfangen von Installationskommandos zum Installieren und Konfigurieren der Applikationen auf dem Datenträger. Erfindungsgemäß ist die Steuereinrichtung eingerichtet, aufgrund lediglich eines empfangenen Installationskommandos eine der Applikationen zu installieren und zu konfigurieren oder eine Mehrzahl der Applikationen zu installieren und/oder zu konfigurieren.
  • Erfindungsgemäß ist es also vorgesehen, ein entsprechend erweitertes oder angepasstes Installationskommando an den Datenträger zu senden, um durch dieses eine Installationskommando das Installieren mehrerer Applikationen oder das Installieren und Konfigurieren einer Applikation oder das mehrfache Konfigurieren einer Applikation oder eine Kombination aus diesen Schritten zu veranlassen. Entsprechend verringert sich das an den Datenträger zu übertragende Datenvolumen aufgrund des reduzierten Protokolloverheads. Weiterhin reduziert sich die Anzahl der eventuell notwendigen Antwortkommandos des Datenträgers, wodurch neben dem zu übertragenden Datenvolumen die Anzahl zu übertragender und verarbeitender Kommandos und damit der gesamte Installation- und Konfigurationsaufwand weiter verringert wird. Des Weiteren kann der Gesamtaufwand dadurch reduziert werden, dass bei miteinander verwandten Installation- oder Konfigurationsschritten, beispielsweise beim Installieren und nachfolgenden Konfigurieren derselben Applikation, bisher mehrfach identisch anfallende Verfahrensschritte, beispielsweise eine spezifische Überprüfung der Applikation, nur noch einmalig durchzuführen sind. Im Zusammenhang mit der Herstellung des Datenträgers durch eine Produktionsmaschine kann das einmal empfangene Installationskommando durch den Datenträger verarbeitet werden, während dieser lediglich mit Strom und Takt versorgt wird, jedoch von der Produktionsmaschine getrennt ist. Diese kann somit effizienter ausgelastet werden, indem während dieser Zeit, in der der erste Datenträger das empfangene Installationskommando verarbeitet, bereits ein weiterer Datenträger in Bearbeitung genommen wird. Sind bisher während einer Folge von Installation- und Konfigurationskommandos an einer Stelle Fehler aufgetreten, so mussten alle diese Kommandos in einem aufwändigen Verfahren rückgängig gemacht werden, bevor die Kommandos erneut ausgeführt werden konnten. Nun ist es allenfalls erforderlich, das eine Installationskommando rückgängig zu machen und erneut auszuführen. Insgesamt wird somit die Installation und Konfiguration von Applikationen auf einem portablen Datenträger vereinfacht und effizienter durchführbar.
  • Mittels des erfindungsgemäßen Verfahrens kann sowohl eine Security Domain als privilegierte Applikation als auch eine herkömmliche Anwendung als nicht privilegierte Applikation installiert und/oder konfiguriert werden. Es ist auch möglich, dass mehrere privilegierte Applikationen oder mehrere nicht privilegierte Applikationen oder eine Mischung aus einer oder mehreren privilegierten und einer oder mehrerer nicht privilegierter Applikationen durch das Verfahren installiert und/oder konfiguriert werden. Die privilegierten Applikationen können dabei gleiche oder verschiedene Privilegien besitzen.
  • Eine privilegierte Applikation kann konfiguriert werden, indem sie sich selbst oder einer bereits installierten privilegierten Applikation mittels Extradition zugewiesen wird. Auf diese Weise kann eine Hierarchie von privilegierten Applikationen aufgebaut werden, wobei eine privilegierte Applikation, die sich selbst zugewiesen wird, eine Wurzel eines neuen Baums in der Hierarchie bildet und eine privilegierte Applikation, welche einer bereits installierten privilegierten Applikation zugewiesen wird, dieser hierarchisch untergeordnet wird. In der Regel besitzt die untergeordnete Applikation geringere Privilegien als die privilegierte Applikation, der sie zugewiesen wird. Eine zugewiesene Applikation kann dabei beispielsweise die Dienste einer übergeordneten Applikation in Anspruch nehmen, wenn die zugewiesene Applikation selbst keine entsprechenden Dienste bereitstellt oder bereitstellen kann. Das erfindungsgemäße Verfahren ermöglicht es also beispielsweise, dass eine privilegierte Applikation durch einen Aufruf eines entsprechend erweiterten Installationskommandos einerseits installiert und nachfolgend einer bereits installierten weiteren privilegierten Applikation zugewiesen wird.
  • Umgekehrt kann es als Konfigurationsschritt an einer privilegierten Applikation angesehen werden, dass innerhalb dieser privilegierten Applikation, d. h. innerhalb der Umgebung, die durch diese Applikation bereitgestellt wird, eine oder mehrere weitere Applikationen, seien es privilegierte oder nicht privilegierte Applikationen, installiert werden. Dazu muss die privilegierte Applikation über entsprechende Privilegien verfügen, welche von der Laufzeitumgebung des Datenträgers vor dem Installieren der weiteren Applikationen geprüft werden.
  • In einer privilegierten Applikation installierte weitere Applikationen können dann dieser Applikation zugewiesen werden. Dadurch wird sowohl die privilegierte Applikation als auch die zugewiesene Applikation konfiguriert. Es ist allerdings auch möglich, eine in einer privilegierten Applikation installierte Applikation nachfolgend einer anderen privilegierten Applikation zuzuweisen, beispielsweise dann, wenn die andere privilegierte Applikation nicht genügend Privilegien besitzt, um darin eine Applikation zu installieren, wohl aber genügend Privilegien, um ihr eine andernorts installierte Applikation zuzuweisen. Auch hier wird die zugewiesene Applikation als auch die privilegierte Applikation, der zugewiesen wird, durch den Schritt des Zuweisens konfiguriert.
  • Eine privilegierte Applikation kann weiterhin dadurch konfiguriert werden, dass Schlüsseldaten, welche kryptographische Schlüssel betreffen, datenträgerintern generiert und der privilegierten Applikation zugeordnet werden. Die Schlüsseldaten können dabei kryptographische Schlüssel zur Verwendung in symmetrischen oder asymmetrischen Verschlüsselungsverfahren umfassen. Die Schlüssel dienen der privilegierten Applikation dazu, den der Applikation zugewiesenen weiteren Applikationen eine Sicherheitsinfrastruktur bereitzustellen, um beispielsweise gesichert Daten zu übertragen oder zu empfangen sowie gespeicherte Daten gesichert abzulegen.
  • Eine nicht privilegierte Applikation kann zudem konfiguriert werden, indem diese mit Personalisierungsdaten personalisiert wird. Personalisierungsdaten können jede Art von nutzerspezifischen Daten sein, um die Applikation für einen Nutzer einzurichten oder an diesen anzupassen.
  • Jede in dem Datenträger installierte Applikation muss eindeutige Identifikationsdaten besitzen, um innerhalb des Datenträgers adressiert werden zu können. Solche Identifikationsdaten sind beispielsweise ein so genannter „Application Identifier” (AID) im Zusammenhang mit einer kontaktbehafteten Datenkommunikation mit dem Datenträger oder eine „Toolkit Application Reference” (TAR) zur kontaktlosen Datenkommunikation. Gemäß einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens erzeugt eine Steuereinrichtung des Datenträgers datenträgerintern entsprechende Identifikationsdaten und weist diese den zu installierenden oder zu konfigurierenden Applikationen zu. Die Steuereinrichtung kann dazu beispielsweise durch eine Zähleranwendung unterstützt werden, welche einen ersten Identifikationsdatensatz, der als Parameter des Installationskommandos übergeben wird, für jede weitere zu installierende oder zu konfigurierende Applikation geeignet inkrementiert.
  • Der Datenträger kann das erweiterte oder angepasste Installationskommando über eine zur Datenkommunikation eingerichtete Datenkommunikationschnittstelle oder alternativ oder zusätzlich über eine zur kontaktlosen Datenkommunikation eingerichtete Datenkommunikationsschnittstelle empfangen.
  • Das empfangene, erweiterte oder angepasste Installationskommando kann dabei verschiedene Informationen umfassen, beispielsweise in Form geeigneter Parameter, insbesondere über die Anzahl zu installierender Applikationen und/oder über die Anzahl zu konfigurierender Applikationen und/oder darüber, in welcher Weise eine Applikation konfiguriert werden soll. Diese Konfigurationsinformation kann also insbesondere weitere Informationen darüber umfassen, welcher privilegierten Applikation eine Applikation zuzuweisen ist. Weiterhin kann diejenige privilegierte Applikation angegeben werden, innerhalb derer eine andere Applikation zu installieren ist, sowie alle diejenigen Applikation, welche der privilegierten Applikation zuzuweisen sind. Die Konfigurationsinformation kann weiterhin Angaben über zu generierende Schlüssel, insbesondere über Schlüsseltyp, Schlüssellänge, Schlüsselversion oder Schlüsselidentifikation, umfassen. Schließlich kann eine Konfigurationsinformation Personalisierungsdaten für eine nicht privilegierte Applikation betreffen oder umfassen. Ein entsprechendes Installationskommando kann somit für verschiedenste Anwendungsfälle angepasst und eingerichtet werden. Im Wesentlichen kann dabei die herkömmliche Syntax bekannter Installationskommandos zumindest teilweise beibehalten werden. Einige geeignete so genannte „Tags” können neu eingeführt werden, um entsprechende Installation- oder Konfigurationsschritte innerhalb des erweiterten Installationskommandos geeignet zu kodieren. Die Steuereinrichtung des erfindungsgemäßen Datenträgers ist eingerichtet, das auf diese Weise erweiterte Installationskommando auszuwerten und zu verarbeiten.
  • Die vorliegende Erfindung wird im Folgenden mit Bezug auf die beiliegenden Zeichnungen beispielhaft beschrieben. Darin zeigen:
  • 1 einen portablen Datenträger gemäß einer bevorzugten Ausführungsform der Erfindung und
  • 2 Verfahrensschritte zur Installation und Konfiguration einer Mehrzahl von Applikationen auf dem Datenträger aus 1.
  • Ein portabler Datenträger 10, der mit Bezug auf 1 als Chipkarte dargestellt ist, umfasst eine Datenkommunikationsschnittstelle 20, einen Prozessor (CPU) 30 und verschiedene Speicher 40, 50 und 60. Die Bauform des Datenträgers 10 kann variieren, beispielsweise kann er auch als (U)SIM-Mobilfunkkarte, als Speicherkarte, als USB-Token oder dergleichen ausgebildet sein.
  • Die Datenkommunikationsschnittstelle 20 ist als Kontaktfeld ausgebildet. Darüber kann der Datenträger 10 über ein entsprechendes Lesegerät kontaktiert werden. Alternativ oder zusätzlich kann eine Datenkommunikationsschnittstelle zur kontaktlosen Datenkommunikation, beispielsweise in Form einer Antennenspule (nicht gezeigt), vorgesehen sein.
  • Ein nicht wiederbeschreibbarer, nicht flüchtiger ROM-Speicher 40 speichert ein den Datenträger 10 steuerndes Betriebssystem (OS) 42 sowie eine Applikation 44, welche nach einer nachstehend mit Bezug auf 2 beschriebenen Installation auf dem Datenträger 10 ausführbar ist.
  • In dem wiederbeschreibbaren, nicht flüchtigen Speicher 50, z. B. ein Flash oder EEPROM, sind eine Steuereinrichtung 52 sowie eine weitere Applikation 54 gespeichert. Die Steuereinrichtung 52, welche auch in dem ROM-Speicher 40 gespeichert sein könnte, ist eingerichtet, von dem Datenträger 10 über die Datenkommunikationsschnittstelle 20 empfangene Installationskommandos zum Installieren und Konfigurieren der Applikationen 44, 54 sowie weiterer, über die Datenkommunikationsschnittstelle 20 nachladbarer Applikationen auszuführen, wie dies mit Bezug auf 2 nachfolgend genauer beschrieben wird.
  • Der wiederbeschreibbare, flüchtige RAM-Speicher 60 dient dem Datenträger 10 als Arbeitsspeicher.
  • Auf dem Datenträger 10 ausführbare Applikationen, wie beispielsweise die in den Speichern 40 und 50 gespeicherten Applikationen 44 und 54, können verschiedenen Klassen zugeordnet werden. Eine erste Klasse bilden so genannte „Security Domains”. Dies sind privilegierte Applikationen, welche derart eingerichtet werden können, dass sie für andere, nicht privilegierte, herkömmliche Applikationen, welche die zweite Klasse bilden, eine Sicherheitsumgebung bereitstellen. Mit Hilfe dieser Sicherheitsumgebung können die nicht privilegierten Applikationen, welche in der entsprechenden Umgebung installiert oder dieser nach einer Installation zugewiesen werden, über sichere Kanäle Daten austauschen und erzeugte oder empfangene Daten gesichert speichern. Zu diesem Zweck umfasst eine privilegierte Applikation eine eigene Schlüsselinfrastruktur, d. h. kryptographische Schlüssel und Funktionalitäten zum Durchführen von symmetrischen oder asymmetrischen Verschlüsselungsverfahren.
  • In der Regel ist eine privilegierte Applikation je einem Dienstanbieter zugeordnet, so dass herkömmliche, nicht privilegierte Applikationen des Dienstanbieters geschützt durch die privilegierte Applikation und abgeschirmt von Applikationen und Diensten anderer Anbieter auf demselben Datenträger 10 agieren können. Privilegierte Applikationen können verschiedene Privilegien besitzen. Die privilegierte Applikation des Kartenausgebers, die so genannte „Issuer Security Domain”, ISD, besitzt in der Regel die höchsten Prioritäten und wird als erste Applikation auf dem Datenträger 10 installiert. Weitere privilegierte Applikationen können nachfolgend auf dem Datenträger 10 eingerichtet, d. h. installiert und konfiguriert, werden.
  • Die privilegierten Applikationen können eine Hierarchie bilden, indem eine privilegierte Applikation einer anderen privilegierten Applikation zugewiesen (extradiert) und damit untergeordnet wird. Die zugewiesene Applikation kann dann Dienste der privilegierten Applikation, der sie zugeordnet worden ist, nutzen, beispielsweise wenn die zugewiesene Applikation nicht selbst entsprechende Privilegien besitzt.
  • Eine nicht privilegierte Applikation muss innerhalb einer privilegierten Applikation installiert werden. Verfügt die entsprechende privilegierte Applikation dazu nicht über genügend Privilegien, so kann die nicht privilegierte Applikation in einer höher privilegierten Applikation installiert und danach der nieder privilegierten Applikation mittels Extradition zugewiesen werden.
  • Bei einer Installation einer Applikation 44, 54 auf dem Datenträger 10 durch die Steuereinrichtung 52 wird die Applikation zuerst authentisiert, d. h. es wird geprüft, ob eine Installation auf dem Datenträger 10 an der entsprechenden Stelle vorgesehen ist. Danach wird durch die Steuereinrichtung 52, welche eine Laufzeitumgebung des Datenträgers 10 umfasst, der Applikation 44, 54 zugeordneter Speicherplatz reserviert und die Applikation 44, 54 identifizierende Daten werden in ein Register des Datenträgers 10 eingetragen. Erst nach einer solchen Installation ist eine Applikation 44, 54, welche zuvor bereits als ausführbarer Code in Form eines so genannten „executable load files” in einem Speicher 40, 50 des Datenträger 10 gespeichert war oder über die Datenkommunikationsschnittstelle 20 nachgeladen worden ist, auf dem Prozessor 30 des Datenträgers 10 ausführbar.
  • Es kann erforderlich sein, dass eine Applikation 44, 54, bevor sie ausführbar ist, zusätzlich noch konfiguriert werden muss. Eine privilegierte Applikation 44, 54 beispielsweise muss notwendigerweise vorgegebene kryptographische Schlüssel umfassen, bevor sie ausgeführt werden kann. Diese Schlüssel müssen in einem oder mehreren Konfigurationsschritten der Applikation 44, 54 zugeordnet werden. Erst danach kann diese Applikation 44, 54 als personalisiert („PERSONALIZED”) und damit vollständig einsetzbar angesehen werden. Weitere Konfigurationsschritte sind das Extradieren, also das Zuweisen einer Applikation 44, 54 zu einer privilegierten Applikation 44, 54. Wie erwähnt, können sowohl nicht privilegierte Applikationen 44, 54 als auch privilegierte Applikationen 44, 54 anderen privilegierten Applikationen 44, 54 zugewiesen werden. Eine privilegierte Applikation 44, 54 kann auch sich selbst zugewiesen werden und bildet damit eine neue Wurzel in der Hierarchiestruktur der privilegierten Applikationen 44, 54 auf dem Datenträger 10. Eine nicht privilegierte Applikation 44, 54 kann auch dadurch konfiguriert werden, dass der Applikation Personalisierungsdaten zugeordnet werden, die einen späteren Nutzer der Applikation 44, 54 betreffen.
  • Mit Bezug auf 2 werden einige Verfahrensschritte beim Installieren und Konfigurieren von Applikationen 44, 54 auf dem Datenträger 10 veranschaulicht.
  • Der Datenträger 10 wird dabei über ein geeignetes Lesegerät mit einer Datenverarbeitungseinrichtung (nicht gezeigt) verbunden, beispielsweise einer Chipkartenproduktionsmaschine bei der Herstellung des Datenträgers 10 oder mit einem PC zum nachträglichen Nachladen und Installieren von weiteren Applikationen 44, 54 auf dem Datenträger 10. Eine entsprechende Datenkommunikation mit dem Datenträger 10 zum Installieren und Konfigurieren von Applikationen kann auch über eine Luftschnittstelle (OTA) durchgeführt werden. Als Träger für die entsprechenden Kommandos dienen dann z. B. SMS-Nachrichten, GPRS.
  • In einem ersten Schritt S1 wird eine bereits auf dem Datenträger 10 installierte privilegierte Applikation in Form einer Security Domain, SD1, ausgewählt, z. B. mittels eines SELECT-Kommandos, und es wird in einem zweiten Schritt S2 ein gesicherter Datenkanal zu der privilegierten Applikation aufgebaut. Über diesen gesicherten Kanal wird in einem dritten Schritt S3 ein erweitertes Installationskommando INSTALL an die privilegierte Applikation SD 1 gesendet. Nach einer Prüfung des Kommandos durch die privilegierte Applikation SD 1 wird dieses Kommando durch die Steuereinrichtung 52 wie im Folgenden beschrieben verarbeitet.
  • In einem ersten Installationsschritt IS1 wird innerhalb der privilegierten Applikation SD 1 eine weitere privilegierte Applikation SD 2 installiert.
  • Für diese neu installierte privilegierte Applikation SD 2 werden in einem ersten Konfigurationsschritt KS1 vorgegebene kryptographische Schlüssel generiert. Die generierten Schlüsseldaten können, soweit erforderlich, über den gesicherten Kanal an die Datenverarbeitungseinrichtung übertragen werden. Sobald generierte Schlüssel in der Applikation SD 2 geeignet eingerichtet sind, kann diese auf den Status „PERSONALIZED” gesetzt werden. In einem weiteren Konfigurationsschritt KS2 wird die privilegierte Applikation SD 2 sich selbst zugewiesen (extradiert) und bildet somit die Wurzel eines eigenen Baums in der Hierarchie der privilegierten Applikationen auf dem Datenträger 10.
  • In einem zweiten durch das eine erweiterte INSTALL-Kommando definierten Installationsschritt IS2 wird eine nicht privilegierte Applikation App innerhalb der privilegierten Applikation SD 1 installiert und anschließend, in einem dritten Konfigurationsschritt KS3, auf die neu installierte und extradierte privilegierte Applikation SD 2 extradiert.
  • Mittels des beschriebenen Verfahrens sind also durch Verarbeitung lediglich eines erweiterten Installationskommandos zwei Installationsschritte und drei Konfigurationsschritte durchgeführt worden. Das erweiterte Installationskommando kann in beliebiger Weise angepasst werden, um Kombinationen der beschriebenen Installations- und Konfigurationsschritte zu kodieren.
  • Die Syntax des erweiterten Installationskommandos verwendet weitgehend die Syntax herkömmlicher, bekannter Installationskommandos. Es kann notwendig sein, einige Syntaxbestandteile neu zu definieren. Dabei wird die bekannte Art der Kodierung, beispielsweise im TLV-Format, beibehalten.
  • Um beispielsweise zu kodieren, wie viele Applikationen durch das erweiterte Installationskommando installiert und/oder konfiguriert werden sollen, kann ein neues „Tag” der Länge ein Byte eingeführt werden, gefolgt von einem Byte, das die Länge des nachfolgenden Kommandos angibt, sowie ein Byte, welches die Anzahl der zu installierenden/konfigurierenden Applikationen definiert. Es genügen also drei Byte, um in dem erweiterten Installationskommando die entsprechende Information zu kodieren. In gleicher Weise kann beispielsweise kodiert werden, dass eine vorgegebene Applikation installiert und extradiert werden soll. Ein ersten Byte definiert ein entsprechendes, neues „Tag”, ein zweites Byte die Länge und die n folgenden Byte identifizieren die Applikation über einen „Application Identifier” (AID). Der Konfigurationsschritt des Generierens von Schlüsseln kann durch 2 + 4·n Byte kodiert werden (Tag, Länge, 4·(Schlüsseltyp, Schlüssellänge, Versionsnummer, ID)). Analog oder auf ähnliche Weise können vorstehend beschriebene Installation- und Konfigurationsschritte in dem erweiterten Installationskommando kodiert werden.
  • Dadurch, dass zum Installieren und Konfigurieren einer Mehrzahl von Installationen auf dem Datenträger 10 lediglich noch ein erweitertes Installationskommando erforderlich ist, wird der Protokolloverhead im Vergleich zum herkömmlichen Verfahren, bei dem jeder Installations-IS1, IS2 und jeder Konfigurationsschritt KS1, KS2, KS3 ein eigenes Installationskommando erfordert, deutlich verringert. Daneben können eine effiziente Kodierung im Zusammenhang mit dem erweiterten Installationskommando sowie das Wegfallen einer Vielzahl von Antwortkommandos des Datenträgers 10 auf vormals empfangene Installationskommandos den Datenübertragungsaufwand zwischen Datenverarbeitungsendgerät und Datenträger 10 nochmals reduzieren. Werden schließlich die Schlüssel für neu installierte privilegierte Applikationen SD 2 datenträgerintern generiert (KS1), kann die zwischen Datenverarbeitungseinrichtung und Datenträger 10 zu übertragende Datenmenge nochmals deutlich herabgesetzt werden. Dies wirkt sich insbesondere in dem Fall der kontaktlosen Datenübertragung z. B. mittels SMS-Nachrichten positiv aus, da eine entsprechende Netzbelastung deutlich reduziert werden kann, wenn beispielsweise eine große Anzahl von (U)SIM-Mobilfunkkarten eines Providers mit neu zu installierenden und zu konfigurierenden Applikationen aktualisiert werden muss.
  • Im Falle einer Installation von zehn privilegierten Applikationen und je einer nicht privilegierten Applikation mittels des beschriebenen Verfahrens kann die Menge zu übertragender Daten – im Falle einer kontaktbehafteten Datenkommunikation – von der Datenverarbeitungseinrichtung zum Datenträger um ca. 45% und von dem Datenträger zur Datenverarbeitungseinrichtung um ca. 30% reduziert werden (gemessen in Byte zu übertragender Daten). Werden zusätzlich noch die Schüssel für die zu installierenden privilegierten Applikationen datenträgerintern generiert, beträgt die Reduktion sogar ca. 95% bzw. 53%. Im Falle einer kontaktlosen Datenübertragung ergeben sich noch deutlichere Verbesserungen (nun gemessen in der Anzahl der erforderlichen SMS-Nachrichten), nämlich 58% und 58% (ohne Schlüsselerzeugung) bzw. 98% und 93% (mit Schlüsselerzeugung).

Claims (14)

  1. Verfahren zum Installieren (IS1; IS2) und Konfigurieren (KS1; KS2; KS3) von Applikationen (SD 2; App) in einem portablen Datenträger (10), dadurch gekennzeichnet, dass mit lediglich einem Aufruf (S3) eines Installationskommandos eine der Applikationen (SD 2) installiert (IS1) und konfiguriert (KS1) wird oder eine Mehrzahl der Applikationen (SD 2; App) installiert (IS1; IS2) und/oder konfiguriert (KS1; KS2; KS3) wird.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass eine Security Domain als privilegierte Applikation (SD 2) und/oder eine herkömmliche Anwendung als nicht privilegierte Applikation (App) installiert und/oder konfiguriert wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die privilegierte Applikation (SD 2) konfiguriert wird, indem sie sich selbst oder einer bereits installierten privilegierten Applikation (SD 1) zugewiesen wird (KS2).
  4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, dass die privilegierte Applikation (SD 1) konfiguriert wird, indem eine weitere privilegierte Applikation (SD 2) oder eine nicht privilegierte Applikation (App) innerhalb der privilegierten Applikation (SD 1) installiert wird (IS1; IS2).
  5. Verfahren nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, dass die privilegierte Applikation (SD 1) konfiguriert wird, indem eine weitere privilegierte Applikation (SD 2) oder eine nicht privilegierte Applikation (App) der privilegierten Applikation (SD 1) zugewiesen wird.
  6. Verfahren nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, dass die privilegierte Applikation (SD 2) konfiguriert wird, indem Schlüsseldaten datenträgerintern generiert (KS1) und der privilegierten Applikation (SD 2) zugeordnet werden.
  7. Verfahren nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, dass die nicht privilegierte Applikation (App) konfiguriert wird, indem sie einer bereits installierten privilegierten Applikation (SD 2) zugewiesen wird (KS3).
  8. Verfahren nach einem der Ansprüche 2 bis 7, dadurch gekennzeichnet, dass die nicht privilegierte Applikation (App) konfiguriert wird, indem sie mittels Personalisierungsdaten personalisiert wird.
  9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass in dem Datenträger (10) eindeutige Identifikationsdaten derart generiert werden, dass mit den Identifikationsdaten jede der Mehrzahl der installierten und/oder konfigurierten Applikationen (SD 2; App) in dem Datenträger (10) eindeutig adressiert werden kann.
  10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass der Datenträger (10) das Installationskommando über eine zur kontaktbehafteten Datenkommunikation eingerichtete Datenkommunikationsschnittstelle (20) empfängt.
  11. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass der Datenträger (10) das Installationskommando über eine zur kontaktlosen Datenkommunikation eingerichtete Datenkommunikationsschnittstelle empfängt.
  12. Verfahren nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass der Datenträger (10) ein Installationskommando empfängt, welches Informationen umfasst – über eine Anzahl zu installierender Applikationen (SD 2; App) und/oder – über eine Anzahl zu konfigurierender Applikationen (SD 2; App) und/oder – darüber, auf welche Weise eine Applikation (SD 2; App) konfiguriert werden soll, wobei diese Informationen insbesondere weitere Informationen umfassen, – darüber, welcher privilegierten Applikation (SD 1) eine Applikation zuzuweisen ist, und/oder – über eine Applikation (App), die in einer privilegierten Applikation (SD 1) zu installieren ist, und/oder – über eine Applikation (App), die einer privilegierten Applikation (SD 2) zuzuweisen ist, und/oder – über einen zu generierenden Schlüssel für eine privilegierte Applikation (SD 2), insbesondere Schlüsseltyp, Schlüssellänge, Schlüsselversion und Schlüsselidentifikation, und/oder – betreffend Personalisierungsdaten für eine nicht privilegierte Applikation (App).
  13. Portabler Datenträger (10), eingerichtet zum Ausführen von auf dem Datenträger (10) installierten und konfigurierten Applikationen (SD 1; SD 2; App), umfassend eine Steuereinrichtung (52) zum Empfang von Installationskommandos zum Installieren und Konfigurieren der Applikationen (SD 2; App) auf dem Datenträger (10), dadurch gekennzeichnet, dass die Steuereinrichtung (52) eingerichtet ist, aufgrund lediglich eines empfangenen Installationskommandos eine der Applikationen (SD 2; App) zu installieren und zu konfigurieren oder eine Mehrzahl der Applikationen (SD 2; App) zu installieren und/oder zu konfigurieren.
  14. Datenträger (10) nach Anspruch 13, dadurch gekennzeichnet, dass die Steuereinrichtung (52) eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 12 auszuführen.
DE200910041924 2009-09-17 2009-09-17 Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger Ceased DE102009041924A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE200910041924 DE102009041924A1 (de) 2009-09-17 2009-09-17 Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger
EP10759608A EP2478435A1 (de) 2009-09-17 2010-09-16 Verfahren zum installieren und konfigurieren von applikationen auf einem portablen datenträger
PCT/EP2010/063632 WO2011033030A1 (de) 2009-09-17 2010-09-16 Verfahren zum installieren und konfigurieren von applikationen auf einem portablen datenträger

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200910041924 DE102009041924A1 (de) 2009-09-17 2009-09-17 Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger

Publications (1)

Publication Number Publication Date
DE102009041924A1 true DE102009041924A1 (de) 2011-04-07

Family

ID=43048855

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200910041924 Ceased DE102009041924A1 (de) 2009-09-17 2009-09-17 Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger

Country Status (3)

Country Link
EP (1) EP2478435A1 (de)
DE (1) DE102009041924A1 (de)
WO (1) WO2011033030A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010012496A1 (de) 2010-03-24 2011-09-29 Giesecke & Devrient Gmbh Datenträgerinterne Schlüsselerzeugung
WO2016030110A1 (de) 2014-08-28 2016-03-03 Bundesdruckerei Gmbh Zugriffsschutz für fremddaten im nichtflüchtigen speicher eines tokens
DE102014112304A1 (de) 2014-08-27 2016-03-03 Bundesdruckerei Gmbh Verfahren zur Installation einer zusätzlichen Applikation in einem nicht-flüchtigen Speicher einer Chipkarte

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236680A1 (en) * 2003-05-22 2004-11-25 International Business Machines Corporation Method and apparatus for displaying embedded chip states and embedded chip end-user application states
US20080148277A1 (en) * 2006-12-18 2008-06-19 Nokia Corporation Optimizing calls from a managed runtime environment to microkernel extended functionality

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010012496A1 (de) 2010-03-24 2011-09-29 Giesecke & Devrient Gmbh Datenträgerinterne Schlüsselerzeugung
DE102014112304A1 (de) 2014-08-27 2016-03-03 Bundesdruckerei Gmbh Verfahren zur Installation einer zusätzlichen Applikation in einem nicht-flüchtigen Speicher einer Chipkarte
WO2016030110A1 (de) 2014-08-28 2016-03-03 Bundesdruckerei Gmbh Zugriffsschutz für fremddaten im nichtflüchtigen speicher eines tokens
DE102014112347A1 (de) 2014-08-28 2016-03-03 Bundesdruckerei Gmbh Zugriffsschutz für Fremddaten im nichtflüchtigen Speicher einer Chipkarte

Also Published As

Publication number Publication date
WO2011033030A1 (de) 2011-03-24
EP2478435A1 (de) 2012-07-25

Similar Documents

Publication Publication Date Title
DE69730712T2 (de) Kommunikationssystem mit gesicherter, unabhängiger verwaltung mehrerer anwendungen pro gebraucherkarte, gebraucherkarte und verwaltungsverfahren dafür
DE60211071T2 (de) System zum herunterladen eines programms an das teilnehmeridentifikationsmodul
EP2910039B1 (de) Verfahren zum einbringen von teilnehmeridentitätsdaten in ein teilnehmeridentitätsmodul
EP2318921B1 (de) Laden und aktualisieren einer personalisierungsbedürftigen applikation
DE112014006112T5 (de) Applet-Migration in einem sicheren Element
EP2289225B1 (de) Verfahren zum personalisieren eines sicherheitselements eines mobilen endgeräts
DE102011103740A1 (de) Verfahren und Anordnung zum Bereitstellen und Verwalten von mit RFID-Datenträgern verknüpften Informationen in einem Netzwerk
DE602005005853T2 (de) Verfahren, system und mikrocontrollerkarte zur kommunikation von anwendungsdiensten von einer mikrocontrollerkarte zu einem endgerät
EP1196902B1 (de) Verfahren zum betreiben eines zur ausführung von nachladbaren funktionsprogrammen ausgebildeten datenträgers
DE102009041924A1 (de) Verfahren zum Installieren und Konfigurieren von Applikationen auf einem portablen Datenträger
EP2064682A2 (de) Chipkarte und verfahren zur softwarebasierten modifikation einer chipkarte
EP3452946A1 (de) Verfahren zur erstmaligen inbetriebnahme eines nicht vollständig personalisierten sicheren elements
DE102010004446A1 (de) Verfahren zum Bereitstellen eines sicheren Zählers auf einem Endgerät
DE10234158A1 (de) Einrichten eines Dateisystems in einem Datenträger
DE102021004912A1 (de) Universal integrated chip card, uicc, zum verwalten von profilen, sowie verfahren
DE102021005325A1 (de) Verfahren zur rechnergestützten Erzeugung eines Speicherabbilds für ein sicheres Element
EP1999731A2 (de) Speicherverwaltung von chipkarten
DE102022001094A1 (de) Verfahren zur Verwaltung einer Anwendung zur elektronischen Identifizierung eines Nutzers
DE102021000077A1 (de) Integriertes Teilnehmeridentitätsmodul mit Anti-Rollback-Mechanismus
DE102021001850A1 (de) Verfahren zum Personalisieren eines sicheren Elementes
DE102023110415A1 (de) Ein Verfahren zum Bereitstellen von Daten für ein Abonnementenprofil für ein Secure Element
DE102021004158A1 (de) Verfahren zum Betreiben einer universal integrated Circuit Card, UICC, und UICC
EP2659349B1 (de) Verfahren zum zurücksetzen eines dateisystems
EP3293912A1 (de) Teilnehmeridentifikationssystem
EP3831110A1 (de) Sicherheitselement, verfahren zum betreiben eines sicherheitselements und verfahren zum installieren eines allgemeinen anwendungsprogramms

Legal Events

Date Code Title Description
OR8 Request for search as to paragraph 43 lit. 1 sentence 1 patent law
R163 Identified publications notified
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, DE

Free format text: FORMER OWNER: GIESECKE & DEVRIENT GMBH, 81677 MUENCHEN, DE

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final