DE102009041924A1 - Method for installing and configuring applications on a portable data carrier - Google Patents
Method for installing and configuring applications on a portable data carrier Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software 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).In a method for installing (IS1; IS2) and configuring (KS1; KS2; KS3) applications (SD2; App) in a portable data carrier (10), one of the applications (SD2; App ) installed (IS1; IS2) and configured (KS1; KS2; KS3) or a plurality of the applications SD2; App) installed and / or configured (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.The present invention relates to a method for installing and configuring applications on a portable data carrier as well as a correspondingly established data carrier.
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.Portable data carriers, which have at least one memory and a processor for executing applications stored in the memory, are predominantly set up such that applications of a plurality of service providers can be installed on the data carrier. In order to protect the respective applications and the data processed by these applications from unauthorized access, special, privileged applications, so-called "security domains" are provided, which provide a kind of security environment for the traditional, non-privileged applications of a service provider. The privileged applications can be differentiated among themselves according to the degree of their privilege, the security domain of the card issuer usually has the highest privileges.
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.Such a privileged application comprises its own key infrastructure and supports the data communication of the non-privileged application installed in the security domain with third parties via secure data communication channels. Non-privileged applications are typically conventional applications, for example, to handle a payment transaction or the like. For example, a disk infrastructure of the type outlined is described in detail in the "GlobalPlatform Card Specification, Version 2.2".
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.On the disk executable applications are provided in a first step in the form of executable code, as so-called "executable load files" in a memory of the disk. This can already happen in the production of the data carrier, but also if the data carrier has already been put into use, for example by later reloading of applications. In order to make an application that is provided as "executable load file" executable on the data carrier, a further installation step is required, which is essentially carried out by a runtime environment of the data carrier. In this case, for example, it is checked whether the service provider for whom or in whose security domain the application is to be installed has provided the application for this, d. H. the application is authenticated. Furthermore, the runtime environment of the application provides the necessary resources, for example memory space for application data, and enters an information identifying the application in the data carrier into a corresponding data carrier register.
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.In one or more further steps, it may be necessary to configure the application, for example to personalize a user or assign it to a specific security domain.
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.Each installation and each configuration step requires an installation command that is sent to and processed by the runtime environment of the disk, as well as, in many cases, corresponding disk response responses.
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.During the production of the data carrier, the installation commands are transmitted from a production machine contact-related to the disk. Due to the multitude of installation commands required to install and configure a number of applications, such a production step is very time consuming and expensive, since the production machine must wait idly each time until the volume has processed and responded to an installation command.
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.If new applications installed in the disk when it has already been delivered to a user and put into operation, for example, in a (U) SIM mobile card, the installation commands, z. B. by SMS or GPRS, as a carrier over an air interface ("over the air", OTA) transmitted to the disk. If, for example, a large number or even all of the mobile communication cards of a service provider have to be equipped with a few new applications and these are suitably configured for the respective user, this requires a high volume of data, eg. B. a very large number exchanged SMS messages, with the result of a huge network load.
Aufgabe der vorliegenden Erfindung ist es demnach, ein Verfahren zum Vereinfachen der Installation und Konfiguration von Applikationen auf einem portablen Datenträger vorzuschlagen.The object of the present invention is therefore to propose a method for simplifying the installation and configuration of applications on a portable data carrier.
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.This object is achieved by a method and a data carrier having the features of the independent claims. Advantageous embodiments and further developments are specified in the dependent claims.
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.A method according to the invention for installing and configuring applications in a portable data carrier is characterized in that one of the applications is installed and configured with only one call of an installation command, or a majority of the applications are installed and / or configured. It is also possible, by means of a call of the installation command, to carry out a number of configuration steps relating to an application.
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. A portable data carrier according to the invention, which is set up to execute applications installed and configured on the data carrier, comprises a control device for receiving installation commands for installing and configuring the applications on the data carrier. According to the invention, the control device is set up to install and configure one of the applications based on only one received installation command, or to install and / or configure a majority of the applications.
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.According to the invention, it is thus provided to send a correspondingly extended or adapted installation command to the data carrier in order to arrange for this by an installation command the installation of several applications or the installation and configuration of an application or the multiple configuration of an application or a combination of these steps. Accordingly, the data volume to be transferred to the data carrier is reduced due to the reduced protocol overhead. Furthermore, reduces the number of possibly necessary response commands of the disk, which in addition to the data volume to be transmitted, the number to be transferred and processed commands and thus the entire installation and configuration costs is further reduced. Furthermore, the total cost can be reduced by the fact that in mutually related installation or configuration steps, for example, when installing and subsequent configuration of the same application, previously identical identical method steps, such as a specific review of the application, only once to perform. In connection with the production of the data carrier by a production machine, the installation command once received can be processed by the data carrier, while it is supplied only with power and clock, but is separated from the production machine. This can thus be utilized more efficiently by already another volume is being processed during this time in which the first volume processes the received installation command. So far, errors have occurred during a sequence of installation and configuration commands in one place, so all these commands had to be undone in a complex process before the commands could be executed again. Now it is necessary to undo the one installation command and execute it again. Overall, the installation and configuration of applications on a portable data carrier is thus simplified and made more efficient.
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.Both a security domain as a privileged application and a conventional application as a non-privileged application can be installed and / or configured by means of the method according to the invention. It is also possible for multiple privileged applications or multiple non-privileged applications or a mixture of one or more privileged and one or more non-privileged applications to be installed and / or configured by the method. The privileged applications can have the same or different privileges.
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.A privileged application can be configured by assigning itself or an already installed privileged application by means of extradition. In this way, a hierarchy of privileged applications can be established, with a privileged application being self-assigned forming a root of a new tree in the hierarchy, and hierarchically subordinated to a privileged application assigned to an already-installed privileged application , As a rule, the child application has lower privileges than the privileged application to which it is assigned. An assigned application can, for example, make use of the services of a higher-level application if the assigned application itself can not provide or provide corresponding services. The method according to the invention therefore makes it possible, for example, for a privileged application to be installed by a call to a correspondingly expanded installation command, and subsequently assigned to an already installed further privileged application.
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.Conversely, it may be considered as a configuration step on a privileged application that is within that privileged application, i. H. Within the environment provided by this application, one or more other applications, be they privileged or non-privileged applications, are installed. For this purpose, the privileged application must have corresponding privileges, which are checked by the runtime environment of the data carrier before installing the other applications.
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.Additional applications installed in a privileged application can then be assigned to this application. This configures both the privileged application and the assigned application. However, it is also possible to subsequently assign an application installed in a privileged application to another privileged application, for example if the other privileged application does not have enough privileges to include an application therein but have enough privileges to assign an application installed elsewhere. Again, the assigned application as well as the privileged application being assigned is configured through the assigning step.
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.A privileged application can furthermore be configured by generating key data, which relates to cryptographic keys, within the data carrier and assigning it to the privileged application. The key data may include cryptographic keys for use in symmetric or asymmetric encryption techniques. The keys are used by the privileged application to provide the application assigned further applications with a security infrastructure, for example, to securely transmit or receive data and store stored data secured.
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.A non-privileged application can also be configured by personalizing it with personalization data. Personalization data can be any type of user-specific data to set up or adapt the application to a user.
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.Each application installed in the data carrier must have unique identification data in order to be addressed within the data carrier. Such identification data are for example a so-called "Application Identifier" (AID) in connection with a contact-type data communication with the data carrier or a "Toolkit Application Reference" (TAR) for contactless data communication. According to a preferred embodiment of the method according to the invention, a control device of the data medium generates corresponding data within the data carrier and assigns this to the applications to be installed or configured. For this purpose, the control device can be supported, for example, by a counter application which appropriately increments a first identification data record, which is transferred as a parameter of the installation command, for each additional application to be installed or configured.
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.The data carrier can receive the extended or adapted installation command via a data communication interface set up for data communication or alternatively or additionally via a data communication interface set up for contactless data communication.
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.The received, extended or adapted installation command can include various information, for example in the form of suitable parameters, in particular the number of applications to be installed and / or the number of applications to be configured and / or how an application should be configured. This configuration information can therefore in particular include further information about which privileged application an application is to be assigned. Furthermore, the privileged application can be specified, within which another application is to be installed, as well as all those applications which are to be assigned to the privileged application. The configuration information may further include information about keys to be generated, in particular about key type, key length, key version or key identification. Finally, configuration information may include or include personalization data for a non-privileged application. A corresponding installation command can thus be adapted and set up for a wide variety of applications. Essentially, the conventional syntax of known installation commands can be at least partially retained. Some suitable so-called "tags" can be re-introduced to properly encode appropriate installation or configuration steps within the extended installation command. The control device of the data carrier according to the invention is set up to evaluate and process the extended installation command in this way.
Die vorliegende Erfindung wird im Folgenden mit Bezug auf die beiliegenden Zeichnungen beispielhaft beschrieben. Darin zeigen:The present invention will be described by way of example with reference to the accompanying drawings. Show:
Ein portabler Datenträger
Die Datenkommunikationsschnittstelle
Ein nicht wiederbeschreibbarer, nicht flüchtiger ROM-Speicher
In dem wiederbeschreibbaren, nicht flüchtigen Speicher
Der wiederbeschreibbare, flüchtige RAM-Speicher
Auf dem Datenträger
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
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.The privileged applications can form a hierarchy by assigning a privileged application to another privileged application (extradited) and thus subordinate it. The assigned application can then use services of the privileged application to which it has been assigned, for example if the assigned application does not itself have corresponding privileges.
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.A non-privileged application must be installed within a privileged application. If the corresponding privileged application does not have sufficient privileges, the non-privileged application can be installed in a higher-privileged application and then assigned to the low-privileged application by means of extradition.
Bei einer Installation einer Applikation
Es kann erforderlich sein, dass eine Applikation
Mit Bezug auf
Der Datenträger
In einem ersten Schritt S1 wird eine bereits auf dem Datenträger
In einem ersten Installationsschritt IS1 wird innerhalb der privilegierten Applikation SD 1 eine weitere privilegierte Applikation SD 2 installiert.In a first installation step IS1, another
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
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.In a second installation step IS2 defined by the extended INSTALL command, a non-privileged application App is installed within the
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.By means of the described method, therefore, two installation steps and three configuration steps have been carried out by processing only one extended installation command. The extended installation command can be customized in any way to encode combinations of the installation and configuration steps described.
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.The syntax of the extended installation command largely follows the syntax of conventional, well-known installation commands. It may be necessary to redefine some syntax components. In this case, the known type of coding, for example in TLV format, maintained.
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.For example, to encode how many applications are to be installed and / or configured by the extended installation command, a new "tag" of length one byte may be introduced, followed by a byte indicating the length of the subsequent command, and a byte, which defines the number of applications to be installed / configured. Three bytes are enough to encode the corresponding information in the extended installation command. In the same way, for example, it can be coded that a given application should be installed and extradited. A first byte defines a corresponding, new "tag", a second byte defines the length and the following bytes identify the application via an "Application Identifier" (AID). The configuration step of generating keys can be coded by 2 + 4 * n bytes (day, length, 4 * (key type, key length, version number, ID)). Analogously or in a similar manner, the installation and configuration steps described above can be coded in the extended installation command.
Dadurch, dass zum Installieren und Konfigurieren einer Mehrzahl von Installationen auf dem Datenträger
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).In the case of an installation of ten privileged applications and one non-privileged application by means of the method described, the amount of data to be transferred - in the case of a contact-type data communication - from the data processing device to the disk by about 45% and from the disk to the data processing device by approx. 30% (measured in bytes of data to be transferred). If, in addition, the key for the privileged applications to be installed is generated internally, the reduction is even approximately 95% or 53%. In the case of contactless data transmission, there are even more significant improvements (now measured in the number of SMS messages required), namely 58% and 58% (excluding key generation), and 98% and 93% (with key generation).
Claims (14)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200910041924 DE102009041924A1 (en) | 2009-09-17 | 2009-09-17 | Method for installing and configuring applications on a portable data carrier |
EP10759608A EP2478435A1 (en) | 2009-09-17 | 2010-09-16 | Method for installing and configuring applications on a portable data carrier |
PCT/EP2010/063632 WO2011033030A1 (en) | 2009-09-17 | 2010-09-16 | Method for installing and configuring applications on a portable data carrier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200910041924 DE102009041924A1 (en) | 2009-09-17 | 2009-09-17 | Method for installing and configuring applications on a portable data carrier |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102009041924A1 true DE102009041924A1 (en) | 2011-04-07 |
Family
ID=43048855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE200910041924 Ceased DE102009041924A1 (en) | 2009-09-17 | 2009-09-17 | Method for installing and configuring applications on a portable data carrier |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP2478435A1 (en) |
DE (1) | DE102009041924A1 (en) |
WO (1) | WO2011033030A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010012496A1 (en) | 2010-03-24 | 2011-09-29 | Giesecke & Devrient Gmbh | Method for generating cryptographic keys in portable data carrier e.g. smart card, involves allocating requirement for request permission of key, and generating key by key generating unit based on request specification of application |
WO2016030110A1 (en) | 2014-08-28 | 2016-03-03 | Bundesdruckerei Gmbh | Access protection for external data in the non-volatile memory of a token |
DE102014112304A1 (en) | 2014-08-27 | 2016-03-03 | Bundesdruckerei Gmbh | Method for installing an additional application in a non-volatile memory of a chip card |
Family Cites Families (2)
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 |
-
2009
- 2009-09-17 DE DE200910041924 patent/DE102009041924A1/en not_active Ceased
-
2010
- 2010-09-16 EP EP10759608A patent/EP2478435A1/en not_active Withdrawn
- 2010-09-16 WO PCT/EP2010/063632 patent/WO2011033030A1/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102010012496A1 (en) | 2010-03-24 | 2011-09-29 | Giesecke & Devrient Gmbh | Method for generating cryptographic keys in portable data carrier e.g. smart card, involves allocating requirement for request permission of key, and generating key by key generating unit based on request specification of application |
DE102014112304A1 (en) | 2014-08-27 | 2016-03-03 | Bundesdruckerei Gmbh | Method for installing an additional application in a non-volatile memory of a chip card |
WO2016030110A1 (en) | 2014-08-28 | 2016-03-03 | Bundesdruckerei Gmbh | Access protection for external data in the non-volatile memory of a token |
DE102014112347A1 (en) | 2014-08-28 | 2016-03-03 | Bundesdruckerei Gmbh | Access protection for external data in the non-volatile memory of a chip card |
Also Published As
Publication number | Publication date |
---|---|
WO2011033030A1 (en) | 2011-03-24 |
EP2478435A1 (en) | 2012-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69730712T2 (en) | COMMUNICATION SYSTEM WITH SECURE, INDEPENDENT MANAGEMENT OF SEVERAL APPLICATIONS PER USER CARD, USER CARD AND ADMINISTRATIVE PROCEDURE THEREFOR | |
DE60211071T2 (en) | SYSTEM FOR DOWNLOADING A PROGRAM TO THE SUBSCRIBER IDENTIFICATION MODULE | |
EP2910039B1 (en) | Method for incorporating subscriber identity data into a subscriber identity module | |
EP2318921B1 (en) | Loading and updating an application requiring personalization | |
DE112014006112T5 (en) | Applet migration in a secure element | |
EP2289225B1 (en) | Method for personalizing a safety element of a mobile terminal device | |
DE602005005853T2 (en) | METHOD, SYSTEM AND MICROCONTROLLER CARD FOR COMMUNICATING APPLICATION SERVICES FROM A MICROCONTROLLER CARD TO A TERMINAL DEVICE | |
EP1196902B1 (en) | Method for operating a portable data carrier configured for executing reloadable functional programs | |
DE102009041924A1 (en) | Method for installing and configuring applications on a portable data carrier | |
EP2064682A2 (en) | Chip card, and method for the software-based modification of a chip card | |
EP3452946A1 (en) | Method for a first start-up operation of a secure element which is not fully customized | |
DE102010004446A1 (en) | Method for providing a secure counter on a terminal | |
DE10234158A1 (en) | Set up a file system on a disk | |
DE102021004912A1 (en) | UNIVERSAL INTEGRATED CHIP CARD, UICC, FOR MANAGING PROFILES, AND PROCEDURES | |
DE102021005325A1 (en) | Method for the computer-aided generation of a memory image for a secure element | |
EP1999731A2 (en) | Memory management of chip cards | |
DE102022001094A1 (en) | Method for managing an application for the electronic identification of a user | |
DE102021000077A1 (en) | Integrated subscriber identity module with anti-rollback mechanism | |
DE102021001850A1 (en) | Procedure for personalizing a secure element | |
DE102023110415A1 (en) | A method for providing data to a subscriber profile for a Secure Element | |
DE102021004158A1 (en) | Method of operating a universal integrated circuit card, UICC, and UICC | |
EP2659349B1 (en) | Method for resetting a file system | |
EP3293912A1 (en) | Subscriber identification system | |
EP3831110A1 (en) | Security element, method for operating a security element and method for installing a general application program | |
DE102010012496A1 (en) | Method for generating cryptographic keys in portable data carrier e.g. smart card, involves allocating requirement for request permission of key, and generating key by key generating unit based on request specification of application |
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 |