WO2007118627A1 - Process for executing a program code - Google Patents

Process for executing a program code Download PDF

Info

Publication number
WO2007118627A1
WO2007118627A1 PCT/EP2007/003124 EP2007003124W WO2007118627A1 WO 2007118627 A1 WO2007118627 A1 WO 2007118627A1 EP 2007003124 W EP2007003124 W EP 2007003124W WO 2007118627 A1 WO2007118627 A1 WO 2007118627A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
program code
admissibility
execution
memory
Prior art date
Application number
PCT/EP2007/003124
Other languages
German (de)
French (fr)
Inventor
Michael Letterer
Original Assignee
Michael Letterer
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 Michael Letterer filed Critical Michael Letterer
Publication of WO2007118627A1 publication Critical patent/WO2007118627A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices

Definitions

  • the present invention relates to a method for executing a program code installed on a computer.
  • the program code is divided into a base part and one or more supplementary parts.
  • the supplementary parts may be implemented as subprograms, applets, parallel executable program routines or the like.
  • DE 101 19 549 A1 discloses a method for retrieving object-specific information.
  • identification data are read and an application released only in the presence of the identification data.
  • the invention is based on the technical object to provide a method which avoids reinstalling the program code especially if extensive program code, if additional program parts are to be executed, and at the same time with simple means a flexible and secure use and distribution of the program code, in particular of supplementary parts for the program code.
  • the method according to the invention relates to a method for executing a program code installed on a computer.
  • the program code comprises a base part and one or more supplementary parts.
  • the parts are designed, for example, as executable program code.
  • the method according to the invention comprises the step of a module determining which supplementary parts may be branched in the execution of the basic part of the program code.
  • Admissibility data are stored in a memory for this purpose.
  • the admissibility data indicates to the module whether the execution of a supplementary part is permissible or not.
  • inventive Procedure is branched in the execution of the program code in the supplementary part, if the branch was found to be permissible by the module.
  • the program continues with the execution of the program code.
  • it is thus checked for the base part of the program code whether the conditions for a branching into the program code of the supplementary parts are fulfilled or not.
  • it is thus possible to install in the installation of the program code in addition to the base part already more advanced program features and properties as supplementary parts with or added later.
  • advanced functions are initially installed but not released for execution by the program. If, during the execution of the program code, a function or feature is to be used which has been coded in an additional part of the software, it is determined whether the branching of the program code is permissible for this purpose.
  • the admission data may also include parts of a program code.
  • the method according to the invention makes it possible to also offer a complex software system in manageable portions.
  • the supplementary parts can be stored here already during the first installation of the basic version and then released, or they are offered at a later date, for example, for additional installation.
  • the latter variant offers the possibility that a complex software system develops over time and is supplemented in its features and possibilities.
  • the disadvantage that occurs during a complete reinstallation does not occur in a supplementary installation, as an executable program code remains installed.
  • the user also has the option of acquiring only individual parts of interest to him so as to expand the base part in the manner desired by him.
  • the manufacturer has the advantage of offering his software in a flexible and target group-specific manner.
  • the memory with the admissibility data is provided in a separate electronic device.
  • Electronic devices within the meaning of the application also include chip cards / smart cards and RFID transponders.
  • the spatial separation of the validity data from the program code has a number of advantages. This ensures, for example for the manufacturer and provider of the software, that no illegal use takes place.
  • the device-specific separation makes it easier to make changes and updates of the access authorization data.
  • the Memory with the admissibility data also completely or partially filed the program code to the supplementary parts. This approach is based on the already known technology, for safety reasons to distribute the program code across multiple devices.
  • a number of variants can occur when addressing the program code and the admissibility data.
  • the program code the most important variants are that the base part is stored on the PC and the supplementary parts are preinstalled on the PC or later saved on the PC.
  • the admissibility data a distinction must be made between the case in which the admissibility data contain parts of the program code of the supplementary parts or, as pure admissibility data, no program code. The described alternatives can be combined with one another as desired.
  • the step may suitably additionally be provided that the admissibility data is transferred from the memory into the computer.
  • the module checks after a transfer of the data, the admissibility of execution of the supplementary parts on the basis of the transmitted admissibility data.
  • This system allows a user who does not attach importance to "mobile" admissibility data to transfer them to the computer,
  • the accessibility data must be read from the external memory each time the supplementary parts are accessed basic structure of the invention The procedure to check before the execution of the supplementary parts their admissibility before the execution is maintained even with this procedure.
  • the permissibility data is deleted from the memory, so that one and the same permissibility data can not permit the execution of the supplementary parts in more than one computer.
  • the memory for the admissibility data is equipped with means which prevent a duplication of its data.
  • the admissibility data may also be duplicated for transmission to other external devices. In this case, however, it is then provided to obtain, for example, an external confirmation for the use of the copied admissibility data before using these data.
  • the memory for the admissibility data is provided in a portable device which receives and transmits data via radio.
  • the received data of the portable device is exchanged over an interface with the computer, wherein the portable device is preferably a mobile phone.
  • the admissibility data can be transmitted to the mobile telephone via a radio network.
  • the data is then read by the mobile phone in another way from the computer, for example via Bluetooth, infrared and cable interface or the like.
  • the special security aspect here is that after installation of the software on a computer corresponding permission data to the software are transmitted via wireless to a mobile phone. After verification, these then cause the Activation of certain program parts. Thus, it can be ensured, for example via the number of the mobile phone, that the assigned program code is only activated once.
  • a magnetic stripe card or an RFID transponder can also be provided as memory for the admissibility data, which are described accordingly.
  • the RFID transponders may have different designs, for example as an RFID tag, smart card / smart card or the like.
  • the corresponding admissibility data for the RFID transponder are downloaded via the Internet and then written by a PC, which may be different from the PC with the program code, to the RFID transponder.
  • the RFID transponder is then a mobile carrier of the admissibility data.
  • the admissibility data may have a limited validity.
  • a time-limited validity for the admissibility data can be defined, wherein the time begins to run with the first use of the admissibility data or with the transmission of the admissibility data.
  • the validity may also be limited to a certain number of calls of the admissibility data.
  • the present invention will be explained in more detail with reference to a diagram. Shown in the figure is the basic structure and the data flow, as it presents itself from the perspective of the program.
  • the area of the user is shown as 10.
  • the area of the user 10 includes a mobile phone 12 and a conventional PC 14.
  • the program code of the PC 14 is divided into a base part 16 and the supplementary parts 18.
  • the double arrow 20 in the area 10 indicates that between the mobile phone 12 and the PC 14 bidirectional data are exchanged.
  • the area 10 of the user is superordinate to an area 22 of a central administration 24 for the admissibility data.
  • the corresponding admissibility data are transmitted via the connection 26, for example encrypted, to the mobile telephone 12.
  • admissibility data 30 are generated as a function of the program code and transmitted to the administration 24 via connection 32.
  • the admissibility data may be generated by the central administration 24 and transmitted via connection 32 to a supply of admissibility data 30.
  • conventional licenses which include, for example, a 16-digit alphanumeric code
  • individual program parts, subroutines, applets or the like, provided with specific permission data so that a separate step in the generation (binding) of the program code is necessary.
  • the generated admissibility data are transmitted via the connection 32 to the central administration 24 of the admissibility data.
  • the program code is divided into a base part and several supplementary parts.
  • the corresponding admissibility data via connection 38 from the central administration 24 won.
  • the central administration 24 has the corresponding information as to which program parts have already been activated and are to be taken into account in the execution.
  • the subsequent transmission 26 can be omitted for the permissibility of these routines.
  • an executable program code is produced as a whole, which has the special feature that when the branch to a supplementary part, the execution of the program can always be continued, even if the branch to the supplementary part is not possible.
  • the thus completed program code possibly including several hundred megabytes, is sold in a conventional manner as shown by arrow 42 and installed on the PC 14 after purchase.
  • a mobile telephone 12 exchanges the data with a PC via a conventional interface 20-for example Blue Tooth, infrared, W-Lan or NFC (near field communication) or a data cable-it is It is also possible to replace the device 12 by a smart card or an RFID transponder (radio frequency identification).
  • the place of the mobile phone which receives its data via the telephone network, for example, another PC with a read and write unit for RFID transponder or a computer with a card interface for smart cards.
  • the credentials are also transmitted over the connection 26 and are available to the user.
  • the PC 14 can also be game consoles, PDAs (personal digital assistant) and so-called thin clients, i. flat displays with built-in computer, act.
  • PDAs personal digital assistant
  • thin clients i. flat displays with built-in computer
  • the system may also be extended to music and video content.
  • the extended program parts are, for example, additional video or audio data that can be played back to the consumer after being enabled by the admissibility data.

Abstract

Process for executing a program code installed on a computer, which incorporates a basic part and several supplementary parts, with the following steps: • one module specifies to which supplementary parts branching may occur during the execution of the basic part of the program code, • the authorization data are stored in a memory, • the authorization data indicate to the module in each case whether the execution of a supplementary part is permitted or not, and • the basic part branches during execution of the program code into the supplementary part, if its execution has been specified by the module as being permissible, otherwise the execution of the basic part will be continued without branching.

Description

Verfahren zum Ausführen eines Programmcodes Method for executing a program code
Die vorliegende Erfindung betrifft ein Verfahren zum Ausführen eines auf einem Computer installierten Programmcodes. Der Programmcode ist zerlegt in einen Basisteil und in einen oder mehrere Ergänzungsteile. Die Ergänzungsteile können je nach Aufbau des Programmcodes, der zugrundeliegenden Hardware sowie dem verwendeten Betriebssystem als Unterprogramme, Applets, parallel ausführbare Programmroutinen oder dergleichen ausgeführt sein.The present invention relates to a method for executing a program code installed on a computer. The program code is divided into a base part and one or more supplementary parts. Depending on the structure of the program code, the underlying hardware and the operating system used, the supplementary parts may be implemented as subprograms, applets, parallel executable program routines or the like.
Aus US 6,266,416 B l ist ein Softwareschutz gegen eine unberechtigte Benutzung der Software bekannt. Zum Schutz der Software wird diese mit einem symmetrischen oder unsymmetrischen Verschlüsselungsverfahren verschlüsselt. Zusätzlich ist beim unsymmetrischen Verschlüsselungsverfahren vorgesehen, den Schlüssel zur Entschlüsselung in einer externen Einheit zu speichern. Die externe Einheit ist derart ausgelegt, dass sie an den Computer, auf dem der zu schützende Programmcode ausgeführt wird, die entschlüsselten Daten zur weiteren Ausführung des entsprechenden Programms zurückliefert. Bei der Ausführung des Programmcodes auf dem Computer werden also - sobald die Ausführung auf verschlüsselte Daten stößt - die verschlüsselten Daten an die externe Einheit übertragen, wo diese unter Verwendung des zweiten Schlüssels entschlüsselt und als entschlüsselte Daten von der externen Einheit zurück zum Computer übertragen werden, um hier dem Programmcode für die weitere Ausführung zur Verfügung zu stehen.From US 6,266,416 B l software protection against unauthorized use of the software is known. To protect the software, it is encrypted with a symmetric or asymmetrical encryption method. In addition, the asymmetric encryption method is intended to store the key for decryption in an external unit. The external unit is designed to return to the computer on which the program code to be protected the decrypted data for further execution of the corresponding program. When executing the program code on the computer so - as soon as the execution encounters encrypted data - the encrypted data is transmitted to the external unit, where it decrypts using the second key and as decrypted data from the external unit back to the computer to be available here to the program code for further execution available.
Aus US 6,490,720 Bl ist ein Verfahren zur Sequenznummerierung bekannt, um die Ausführung von mehreren, untereinander abhängigen Smartcard- Anwendungen sicherzustellen. Hintergrund des Verfahrens ist, dass ein Programmcode auf einem Mehrprozessorcomputersystem ausgeführt werden soll. Hierzu wird ein Teil des Programmcodes in einem manipulationssicheren externen Gerät gespeichert, das mit dem Computer zum Austausch von Daten in Verbindung steht. Die auf dem externen Gerät gespeicherten Daten enthalten Sequenzdaten, die auf Vorgänger und Nachfolgerdaten verweisen. Anhand der Ablaufdaten verzweigt der Programmablauf abhängig von gesetzten Bedingungen zu den Datenblöcken in dem externen Gerät. Die Verzweigungsbedingungen auf dem Computer legen somit fest, ob die Ausführung eines Programmblocks auf dem externen Gerät erfolgen soll oder nicht.From US 6,490,720 Bl a method of sequence numbering is known to ensure the execution of multiple interdependent smartcard applications. Background of the method is that a program code is to be executed on a multiprocessor computer system. For this purpose, a part of the program code is stored in a tamper-proof external device, which communicates with the computer for exchanging data. The data stored on the external device contains sequence data that references predecessor and successor data. Based on the expiration dates, the program flow branches depending on set conditions to the data blocks in the external device. The branch conditions on the computer thus determine whether or not to execute a program block on the external device.
Aus DE 101 19 549 Al ist ein Verfahren zum Abrufen objektspezifischer Informationen bekannt. Bei dem Verfahren werden Identifikationsdaten gelesen und eine Anwendung lediglich bei Vorliegen der Identifikationsdaten freigegeben.DE 101 19 549 A1 discloses a method for retrieving object-specific information. In the method, identification data are read and an application released only in the presence of the identification data.
Allgemein ist bekannt, dass beim Ausführen eines umfangreichen Programmcodes, beispielsweise von einigen Hundert Megabyte, in der Praxis immer wieder Probleme auftreten, wenn dieser Programmcode um einen zusätzlichen Programmteil oder neue Funktionen erweitert werden soll. Beispielsweise treten bei dem Wechsel von einem Standardprogramm zu einem Pro- gramm mit erweitertem Funktionsumfang immer wieder Probleme durch eine Neuinstallation der Software auf. Insbesondere ist eine erneute oder zusätzliche Installation auch lästig. Für den Hersteller erschwert dies häufig die Vermarktung der Software, da nicht die gewünschte Zuverlässigkeit erreicht werden kann.In general, it is known that in the execution of a large program code, for example, of a few hundred megabytes, in practice problems occur again and again, if this program code is to be extended by an additional program part or new functions. For example, when switching from a standard program to a With extended functionality, there are always problems with reinstalling the software. In particular, a new or additional installation is also annoying. For the manufacturer this often complicates the marketing of the software, since not the desired reliability can be achieved.
Der Erfindung liegt die technische Aufgabe zugrunde, ein Verfahren bereitzustellen, das insbesondere bei umfangreichem Programmcode eine Neuinstallation des Programmcodes vermeidet, wenn zusätzliche Programmteile ausgeführt werden sollen, und das zugleich mit einfachen Mitteln eine flexible und sichere Verwendung und Vertrieb des Programmcodes, insbesondere von Ergänzungsteilen für den Programmcode, gestattet.The invention is based on the technical object to provide a method which avoids reinstalling the program code especially if extensive program code, if additional program parts are to be executed, and at the same time with simple means a flexible and secure use and distribution of the program code, in particular of supplementary parts for the program code.
Erfindungsgemäß wird die Aufgabe durch ein Verfahren mit den Merkmalen aus Anspruch 1 gelöst. Vorteilhafte Ausgestaltungen bilden den Gegenstand der Unteransprüche.According to the invention the object is achieved by a method having the features of claim 1. Advantageous embodiments form the subject of the dependent claims.
Das erfindungsgemäße Verfahren betrifft ein Verfahren zum Ausführen eines auf einem Computer installierten Programmcodes. Der Programmcode umfaßt einen Basisteil und einen oder mehrere Ergänzungsteile. Die Teile sind beispielsweise als ausführbarer Programmcode ausgebildet. Das erfindungsgemäße Verfahren umfaßt den Schritt, dass ein Modul feststellt, zu welchen Ergänzungsteilen bei der Ausführung des Basisteils des Programmcodes verzweigt werden darf. Zulässigkeitsdaten sind hierzu in einem Speicher abgelegt. Die Zulässigkeitsdaten zeigen dem Modul jeweils an, ob die Ausführung eines Ergänzungsteils zulässig ist oder nicht. Bei dem erfindungsgemäßen Verfahren wird bei der Ausfuhrung des Programmcodes in den Ergänzungsteil verzweigt, wenn von dem Modul die Verzweigung als zulässig festgestellt wurde. Wird an der Verzweigungsstelle festgestellt, dass eine Verzweigung in den entsprechenden Ergänzungsteil nicht zulässig ist, so fährt das Programm mit der Ausführung des Programmcodes fort. Bei dem erfindungsgemäßen Verfahren wird für das Basisteil des Programmcodes also überprüft, ob die Bedingungen für eine Verzweigung in den Programmcode der Ergänzungsteile erfüllt sind oder nicht. Mit dem erfindungsgemäßen Verfahren wird es also möglich, bei der Installation des Programmcodes zusätzlich zu dem Basisteil bereits weitergehende Programmmerkmale und Eigenschaften als Ergänzungsteile mit zu installieren oder später hinzuzufügen. Bei der Installation der Grundversion sind dann zunächst fortgeschrittene Funktionen zwar installiert, aber nicht zur Ausführung durch das Programm freigegeben. Soll bei der Ausführung des Programmcodes auf eine Funktion oder ein Merkmal zurückgegriffen werden, das in einem Ergänzungsteil der Software codiert worden ist, so wird festgestellt, ob die Verzweigung des Programmcodes zu diesem zulässig ist. Wird bei der Ausführung des Programmcodes festgestellt, dass eine Verzweigung in den Ergänzungsteil nicht zulässig ist, so wird nicht die Ausführung des Programmcodes unterbrochen oder abgebrochen, sondern die Ausführung des Programmcodes des Basisteils wird fortgesetzt. Der Vorteil beim Fortsetzen der Ausführung liegt darin, dass auf diese Weise nicht freigeschaltete Ergänzungsteile, beispielsweise für zusätzliche Merkmale, den Programmablauf nicht behindern. Bei fehlender Freischaltung der Ergänzungsteile ist eine Ausführung des Basisteils gleichwohl möglich. Die Zuläs- sigkeitsdaten können auch Teile eines Programmcodes umfassen. Das erfindungsgemäße Verfahren schafft die Möglichkeit, auch ein komplexes Softwaresystem in überschaubaren Portionen anzubieten. Die Ergänzungsteile können hierbei bereits bei der ersten Installation der Grundversion mitgespeichert werden und anschließend freigeschaltet werden, oder sie werden zu einem späteren Zeitpunkt beispielsweise zur ergänzenden Installation angeboten. Letztere Variante bietet die Möglichkeit, dass sich ein komplexes Softwaresystem über die Zeit entwickelt und in seinen Merkmalen und Möglichkeiten ergänzt wird. Der Nachteil, der bei einer vollständigen Neuinstallation auftritt, tritt bei einer ergänzenden Installation nicht auf, da ein lauffähiger Programmcode installiert bleibt.The method according to the invention relates to a method for executing a program code installed on a computer. The program code comprises a base part and one or more supplementary parts. The parts are designed, for example, as executable program code. The method according to the invention comprises the step of a module determining which supplementary parts may be branched in the execution of the basic part of the program code. Admissibility data are stored in a memory for this purpose. The admissibility data indicates to the module whether the execution of a supplementary part is permissible or not. In the inventive Procedure is branched in the execution of the program code in the supplementary part, if the branch was found to be permissible by the module. If it is determined at the branching point that a branch into the corresponding supplementary part is not permitted, the program continues with the execution of the program code. In the method according to the invention, it is thus checked for the base part of the program code whether the conditions for a branching into the program code of the supplementary parts are fulfilled or not. With the method according to the invention, it is thus possible to install in the installation of the program code in addition to the base part already more advanced program features and properties as supplementary parts with or added later. When installing the basic version, advanced functions are initially installed but not released for execution by the program. If, during the execution of the program code, a function or feature is to be used which has been coded in an additional part of the software, it is determined whether the branching of the program code is permissible for this purpose. If, during the execution of the program code, it is determined that a branch into the supplementary part is not permissible, the execution of the program code is not interrupted or aborted, but the execution of the program code of the basic part is continued. The advantage of continuing the execution is that in this way not unlocked supplementary parts, for example, for additional features, not hinder the program flow. In the absence of activation of the supplementary parts an execution of the base part is nevertheless possible. The admission data may also include parts of a program code. The method according to the invention makes it possible to also offer a complex software system in manageable portions. The supplementary parts can be stored here already during the first installation of the basic version and then released, or they are offered at a later date, for example, for additional installation. The latter variant offers the possibility that a complex software system develops over time and is supplemented in its features and possibilities. The disadvantage that occurs during a complete reinstallation, does not occur in a supplementary installation, as an executable program code remains installed.
Der Benutzer hat zudem die Möglichkeit, nur einzelne ihn interessierende Ergänzungsteile zu erwerben, um so das Basisteil in der von ihm gewünschten Art und Weise zu erweitern. Der Hersteller hat den Vorteil, seine Software flexibel und zielgruppenspezifisch anzubieten.The user also has the option of acquiring only individual parts of interest to him so as to expand the base part in the manner desired by him. The manufacturer has the advantage of offering his software in a flexible and target group-specific manner.
In einer bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens ist der Speicher mit den Zulässigkeitsdaten in einem separaten elektronischen Gerät vorgesehen. Elektronische Geräte im Sinne der Anmeldung umfassen auch Chipkarten/Smartcards und RFID-Transponder. Die räumliche Trennung der Zulässigkeitsdaten von dem Programmcode besitzt eine Reihe von Vorteilen. Hierdurch wird es beispielsweise für den Hersteller und Anbieter der Software sichergestellt, dass keine widerrechtliche Benutzung erfolgt. Zum anderen lassen sich durch die gerätemäßige Trennung Änderungen und Aktualisierungen der Zugangsberechtigungsdaten leichter vornehmen. In einer ebenfalls bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens ist in dem Speicher mit den Zulässigkeitsdaten auch ganz oder teilweise der Programmcode zu den Ergänzungsteilen abgelegt. Dieser Ansatz beruht auf der an sich bereits bekannten Technik, aus Sicherheitsgründen den Programmcode über mehrere Geräte zu verteilen.In a preferred embodiment of the method according to the invention, the memory with the admissibility data is provided in a separate electronic device. Electronic devices within the meaning of the application also include chip cards / smart cards and RFID transponders. The spatial separation of the validity data from the program code has a number of advantages. This ensures, for example for the manufacturer and provider of the software, that no illegal use takes place. On the other hand, the device-specific separation makes it easier to make changes and updates of the access authorization data. In a likewise preferred embodiment of the method according to the invention is in the Memory with the admissibility data also completely or partially filed the program code to the supplementary parts. This approach is based on the already known technology, for safety reasons to distribute the program code across multiple devices.
Grundsätzlich können eine Reihe von Varianten bei dem Ansprechen des Programmcodes und der Zulässigkeitsdaten auftreten. Im Hinblick auf den Programmcode sind die wichtigsten Varianten, dass der Basisteil auf dem PC gespeichert ist und die Ergänzungsteile auf dem PC vorinstalliert oder erst später auf dem PC gespeichert werden. Im Hinblick auf die Zulässigkeitsdaten ist zu unterscheiden, zwischen dem Fall, dass die Zulässigkeitsdaten Teile des Programmcodes der Ergänzungsteile beinhalten oder als reine Zulässigkeitsdaten keinen Programmcode beinhalten. Die beschriebenen Alternativen sind beliebig miteinander kombinierbar.In principle, a number of variants can occur when addressing the program code and the admissibility data. With regard to the program code, the most important variants are that the base part is stored on the PC and the supplementary parts are preinstalled on the PC or later saved on the PC. With regard to the admissibility data, a distinction must be made between the case in which the admissibility data contain parts of the program code of the supplementary parts or, as pure admissibility data, no program code. The described alternatives can be combined with one another as desired.
Bei dem erfindungsgemäßen Verfahren kann zweckmäßigerweise zusätzlich der Schritt vorgesehen sein, dass die Zulässigkeitsdaten von dem Speicher in den Computer übertragen werden. Zweckmäßigerweise, aber keineswegs notwendig, prüft das Modul nach einem Übertragen der Daten die Zulässigkeit zur Ausführung der Ergänzungsteile anhand der übertragenen Zulässigkeitsdaten. Dieses System erlaubt es einem Benutzer, der keinen Wert auf „mobile" Zulässigkeitsdaten legt, diese auf den Computer zu übertragen. In einer weiteren Ausgestaltung kann vorgesehen sein, dass bei jedem Zugriff auf die Ergänzungsteile die Zulässigkeitsdaten aus dem externen Speicher gelesen werden müssen. Die grundsätzliche Struktur des erfindungsgemäßen Verfahrens, vor einer Ausführung der Ergänzungsteile deren Zulässigkeit vor der Ausführung zu prüfen, bleibt auch bei dieser Vorgehensweise erhalten.In the method according to the invention, the step may suitably additionally be provided that the admissibility data is transferred from the memory into the computer. Conveniently, but by no means necessary, the module checks after a transfer of the data, the admissibility of execution of the supplementary parts on the basis of the transmitted admissibility data. This system allows a user who does not attach importance to "mobile" admissibility data to transfer them to the computer, In a further embodiment it can be provided that the accessibility data must be read from the external memory each time the supplementary parts are accessed basic structure of the invention The procedure to check before the execution of the supplementary parts their admissibility before the execution is maintained even with this procedure.
Bevorzugt werden nach einem Übertragen auf den Computer die Zulässig- keitsdaten aus dem Speicher gelöscht, so dass ein und dieselben Zulässig- keitsdaten nicht bei mehr als einem Computer die Ausführung der Ergänzungsteile zulassen können. Bei dem erfindungsgemäßen Verfahren kann zusätzlich vorgesehen werden, dass der Speicher für die Zulässigkeits- daten mit Mitteln ausgestattet ist, die eine Vervielfältigung seiner Daten verhindert. Alternativ können die Zulässigkeitsdaten auch vervielfältigt werden, um sie an weitere externe Geräte zu übertragen. Hierbei ist dann allerdings vorgesehen, vor einer Benutzung dieser Daten beispielsweise eine externe Bestätigung zur Benutzung der kopierten Zulässigkeitsdaten einzuholen.Preferably, after being transferred to the computer, the permissibility data is deleted from the memory, so that one and the same permissibility data can not permit the execution of the supplementary parts in more than one computer. In the method according to the invention, it can additionally be provided that the memory for the admissibility data is equipped with means which prevent a duplication of its data. Alternatively, the admissibility data may also be duplicated for transmission to other external devices. In this case, however, it is then provided to obtain, for example, an external confirmation for the use of the copied admissibility data before using these data.
In einer besonders bevorzugten Ausgestaltung ist der Speicher für die Zulässigkeitsdaten in einem tragbaren Gerät vorgesehen, das über Funk Daten empfängt und sendet. Die empfangenen Daten des tragbaren Geräts werden über eine Schnittstelle mit dem Computer ausgetauscht, wobei es sich bei dem tragbaren Gerät bevorzugt um ein Mobiltelefon handelt. Besonders bevorzugt können die Zulässigkeitsdaten über ein Funknetz an das Mobiltelefon übertragen werden. Von dem Mobiltelefon werden die Daten dann auf andere Weise von dem Computer gelesen, beispielsweise über Bluetooth, Infrarot und Kabelschnittstelle oder dergleichen. Der besondere Sicherheitsaspekt hierbei ist, dass nach der Installation der Software auf einem Computer entsprechende Zulässigkeitsdaten zu der Software über Funk auf ein Mobiltelefon übertragen werden. Nach der Überprüfung bewirken diese dann die Freischaltung von gewissen Programmteilen. Somit kann beispielsweise über die Nummer des Mobiltelefons sichergestellt werden, dass der zugeordnete Programmcode nur einmal freigeschaltet wird.In a particularly preferred embodiment, the memory for the admissibility data is provided in a portable device which receives and transmits data via radio. The received data of the portable device is exchanged over an interface with the computer, wherein the portable device is preferably a mobile phone. Particularly preferably, the admissibility data can be transmitted to the mobile telephone via a radio network. The data is then read by the mobile phone in another way from the computer, for example via Bluetooth, infrared and cable interface or the like. The special security aspect here is that after installation of the software on a computer corresponding permission data to the software are transmitted via wireless to a mobile phone. After verification, these then cause the Activation of certain program parts. Thus, it can be ensured, for example via the number of the mobile phone, that the assigned program code is only activated once.
Alternativ zu einem Mobiltelefon können auch als Speicher für die Zulässig- keitsdaten eine Magnetstreifenkarte oder ein RFID-Transponder vorgesehen sein, die entsprechend beschrieben werden. Die RFID-Transponder können unterschiedliche Bauformen besitzen, beispielsweise als RFID-Etikett, Chipkarte/Smartcard oder dergleichen. Hierzu ist es beispielsweise möglich, dass die entsprechenden Zulässigkeitsdaten für den RFID-Transponder über das Internet heruntergeladen werden und dann von einem PC, der von dem PC mit dem Programmcode verschieden sein kann, auf den RFID-Transponder geschrieben werden. Der RFID-Transponder ist dann ein mobiler Träger der Zulässigkeitsdaten.As an alternative to a mobile phone, a magnetic stripe card or an RFID transponder can also be provided as memory for the admissibility data, which are described accordingly. The RFID transponders may have different designs, for example as an RFID tag, smart card / smart card or the like. For this purpose, it is possible, for example, that the corresponding admissibility data for the RFID transponder are downloaded via the Internet and then written by a PC, which may be different from the PC with the program code, to the RFID transponder. The RFID transponder is then a mobile carrier of the admissibility data.
In einer bevorzugten Ausgestaltung können die Zulässigkeitsdaten eine begrenzte Gültigkeit besitzen. Hierzu kann beispielsweise eine zeitlich begrenzte Gültigkeit für die Zulässigkeitsdaten definiert sein, wobei die Zeit mit der ersten Benutzung der Zulässigkeitsdaten oder mit der Übertragung der Zulässigkeitsdaten zu laufen beginnt. Alternativ oder ergänzend zur zeitlich begrenzten Zulässigkeit kann auch die Gültigkeit auf eine gewisse Anzahl von Aufrufen der Zulässigkeitsdaten begrenzt sein. Somit bestehen flexible Möglichkeiten, Ergänzungsteile in einer Software einzusetzen.In a preferred embodiment, the admissibility data may have a limited validity. For this purpose, for example, a time-limited validity for the admissibility data can be defined, wherein the time begins to run with the first use of the admissibility data or with the transmission of the admissibility data. As an alternative or in addition to the temporally limited admissibility, the validity may also be limited to a certain number of calls of the admissibility data. Thus there are flexible possibilities to use supplementary parts in a software.
Die vorliegende Erfindung wird nachfolgend anhand eines Diagramms näher erläutert. In der Figur dargestellt ist der grundsätzliche Aufbau und der Datenfluß, wie er sich aus der Sicht des Programms darstellt. Der Bereich des Anwenders ist als 10 dargestellt. Zu dem Bereich des Anwenders 10 gehört ein Mobiltelefon 12 und ein herkömmlicher PC 14. Wie in der Figur schematisch dargestellt, unterteilt sich der Programmcode des PCs 14 in einen Basisteil 16 und die Ergänzungsteile 18. Der Doppelpfeil 20 im Bereich 10 zeigt an, dass zwischen dem Mobiltelefon 12 und dem PC 14 bidirektional Daten ausgetauscht werden. Dem Bereich 10 des Benutzers übergeordnet ist ein Bereich 22 einer zentralen Verwaltung 24 für die Zulässigkeitsdaten. Die entsprechenden Zulässigkeitsdaten werden über die Verbindung 26, beispielsweise verschlüsselt, an das Mobiltelefon 12 übertragen.The present invention will be explained in more detail with reference to a diagram. Shown in the figure is the basic structure and the data flow, as it presents itself from the perspective of the program. The area of the user is shown as 10. The area of the user 10 includes a mobile phone 12 and a conventional PC 14. As shown schematically in the figure, the program code of the PC 14 is divided into a base part 16 and the supplementary parts 18. The double arrow 20 in the area 10 indicates that between the mobile phone 12 and the PC 14 bidirectional data are exchanged. The area 10 of the user is superordinate to an area 22 of a central administration 24 for the admissibility data. The corresponding admissibility data are transmitted via the connection 26, for example encrypted, to the mobile telephone 12.
In einem weiteren Bereich 28 werden abhängig von dem Programmcode Zulässigkeitsdaten 30 generiert und an die Verwaltung 24 über Verbindung 32 übertragen. Alternativ ist auch möglich, dass die Zulässigkeitsdaten von der zentralen Verwaltung 24 generiert und über Verbindung 32 an einen Vorrat von Zulässigkeitsdaten 30 übertragen werden. Anders als bei herkömmlichen Lizenzen, die beispielsweise einen 16-stelligen alphanumerischen Code umfassen, werden erfindungsgemäß einzelne Programmteile, Unterroutinen, Applets oder dergleichen, mit spezifischen Zulässigkeitsdaten versehen, sodass ein gesonderter Schritt bei der Erzeugung (Binden) des Programmcodes notwendig ist. Die generierten Zulässigkeitsdaten werden über die Verbindung 32 zur zentralen Verwaltung 24 der Zulässigkeitsdaten übertragen. In einem weiteren Schritt 34 wird der Programmcode in einen Basisteil und mehrere Ergänzungsteile zerlegt. Für die bereits von Anfang an ausführbaren Teile des Programmcodes werden in Schritt 36 die entsprechenden Zulässig- keitsdaten über Verbindung 38 aus der zentralen Verwaltung 24 gewonnen. Auf diese Weise liegen bei der zentralen Verwaltung 24 die entsprechenden Informationen vor, welche Programmteile bereits freigeschaltet sind und bei der Ausführung berücksichtigt werden sollen. Auf diese Weise kann die nachfolgende Übertragung 26 zur Zulässigkeit dieser Routinen entfallen.In a further area 28, admissibility data 30 are generated as a function of the program code and transmitted to the administration 24 via connection 32. Alternatively, it is also possible for the admissibility data to be generated by the central administration 24 and transmitted via connection 32 to a supply of admissibility data 30. Unlike conventional licenses, which include, for example, a 16-digit alphanumeric code, according to the invention individual program parts, subroutines, applets or the like, provided with specific permission data, so that a separate step in the generation (binding) of the program code is necessary. The generated admissibility data are transmitted via the connection 32 to the central administration 24 of the admissibility data. In a further step 34, the program code is divided into a base part and several supplementary parts. For those already executable from the beginning Parts of the program code in step 36, the corresponding admissibility data via connection 38 from the central administration 24 won. In this way, the central administration 24 has the corresponding information as to which program parts have already been activated and are to be taken into account in the execution. In this way, the subsequent transmission 26 can be omitted for the permissibility of these routines.
In einem nachfolgenden Schritt 40 wird insgesamt ein ausführbarer Programmcode hergestellt, der als Besonderheit besitzt, dass bei der Verzweigung zu einem Ergänzungsteil die Ausführung des Programms stets fortgesetzt werden kann, auch wenn die Verzweigung zu dem Ergänzungsteil nicht möglich ist. Der auf diese Weise fertiggestellte Programmcode, der möglicherweise einige Hundert Megabyte umfaßt, wird, wie durch Pfeil 42 dargestellt, auf herkömmliche Weise verkauft und nach dem Kauf auf dem PC 14 installiert.In a subsequent step 40, an executable program code is produced as a whole, which has the special feature that when the branch to a supplementary part, the execution of the program can always be continued, even if the branch to the supplementary part is not possible. The thus completed program code, possibly including several hundred megabytes, is sold in a conventional manner as shown by arrow 42 and installed on the PC 14 after purchase.
Bei der praktischen Umsetzung des Verfahrens können auch größere Software-Pakete kundengerecht und in technisch einfacher Weise vertrieben werden. Ein Konsument kauft beispielsweise ein PC-Spiel, dessen Installation bereits einige Hundert Megabyte groß ist. Das Spiel besitzt in dem verkauften Umfang Spiellevel 1 bis 5. Die Spiellevel 6 bis 10 sowie beispielsweise Zusatzfunktionen für die Spiellevel 1 bis 5 stehen bei der Ausführung des Programms in der ersten Installation nicht zur Verfügung. Will der Benutzer nun die Funktionalität erweitern, so ist es möglich, die entsprechenden Zuläs- sigkeitsdaten über Funk auf sein Mobiltelefon 12 herunterzuladen. Die Zuläs- sigkeitsdaten werden über Verbindung 20 mit dem PC ausgetauscht, so dass bei der installierten Software auch die zusätzlichen Spielebenen und/oder Zusatzfunktionen ausgeführt werden können.In the practical implementation of the method and larger software packages can be customized and distributed in a technically simple manner. For example, a consumer buys a PC game whose installation is already several hundred megabytes in size. The game has game levels 1 to 5 in the scope sold. Game levels 6 to 10 and, for example, additional functions for game levels 1 to 5 are not available when executing the program in the first installation. If the user now wants to extend the functionality, it is possible to download the corresponding admissibility data via radio to his mobile telephone 12. The admissibility data is exchanged with the PC via connection 20, so that In the installed software, the additional game levels and / or additional functions can be performed.
Neben der in dem Beispiel angesprochenen Anwendung, bei der ein Mobiltelefon 12 die Daten mit einem PC über eine übliche Schnittstelle 20 - beispielsweise Blue Tooth, Infrarot, W-Lan oder NFC (near field communica- tion) oder ein Datenkabel - austauscht, ist es ebenfalls möglich, das Gerät 12 durch eine Smartcard oder ein RFID-Transponder (radio frequency identifi- cation) zu ersetzen. Bei dieser Ausgestaltung tritt an die Stelle des Mobiltelefons, das seine Daten über das Telefonfunknetz empfängt, beispielsweise ein weiterer PC mit einer Schreib- und Leseeinheit für RFID-Transponder oder ein Computer mit einer Kartenschnittstelle für Smartcards. In diesem Fall werden die Zulässigkeitsdaten ebenfalls über die Verbindung 26 übertragen und stehen dem Benutzer zur Verfügung.In addition to the application mentioned in the example in which a mobile telephone 12 exchanges the data with a PC via a conventional interface 20-for example Blue Tooth, infrared, W-Lan or NFC (near field communication) or a data cable-it is It is also possible to replace the device 12 by a smart card or an RFID transponder (radio frequency identification). In this embodiment, the place of the mobile phone, which receives its data via the telephone network, for example, another PC with a read and write unit for RFID transponder or a computer with a card interface for smart cards. In this case, the credentials are also transmitted over the connection 26 and are available to the user.
Neben dem im Ausführungsbeispiel angesprochenen PC 14 kann es sich auch um Spielkonsolen, PDAs (personal digital assistant) und sogenannte thin clients, d.h. flache Displays mit eingebautem Computer, handeln. Neben dem vorstehend angesprochenen Beispiel eines Spiels, kann das System beispielsweise auch auf Musik- und Videoinhalte erweitert werden. Bei diesen Inhalten sind die erweiterten Programmteile beispielsweise zusätzliche Videooder Audiodaten, die nach Freischaltung durch die Zulässigkeitsdaten für den Verbraucher abspielbar sind. In addition to the PC 14 mentioned in the exemplary embodiment, it can also be game consoles, PDAs (personal digital assistant) and so-called thin clients, i. flat displays with built-in computer, act. For example, in addition to the example of a game discussed above, the system may also be extended to music and video content. In the case of these contents, the extended program parts are, for example, additional video or audio data that can be played back to the consumer after being enabled by the admissibility data.

Claims

A n s p r ü c h e: Claims:
1. Verfahren zum Ausführen eines auf einem Computer installierten Programmcodes, der ein Basisteil und mehrere Ergänzungsteile aufweist, mit folgenden Schritten:A method of executing a program code installed on a computer, comprising a base part and a plurality of supplementary parts, comprising the steps of:
• ein Modul stellt fest, zu welchen Ergänzungsteilen bei der Ausführung des Basisteils des Programmcodes verzweigt werden darf,• a module determines which supplementary parts may be branched when the basic part of the program code is executed,
• die Zulässigkeitsdaten sind in einem Speicher abgelegt,The admissibility data are stored in a memory,
• die Zulässigkeitsdaten zeigen dem Modul jeweils an, ob die Ausführung eines Ergänzungsteils zulässig ist oder nicht, und• the admissibility data indicate to the module whether or not the execution of an accessory is permitted, and
• das Basisteil verzweigt bei der Ausführung des Programmcodes in den Ergänzungsteil, wenn dessen Ausführung von dem Modul als zulässig festgehalten wurde, sonst wird die Ausführung des Basisteils ohne Verzweigung fortgesetzt.• the base part branches into the supplementary part when the program code is executed, if the execution of the program code was noted as permissible by the module, otherwise the execution of the basic part continues without branching.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Speicher mit den Zulässigkeitsdaten zu den Ergänzungsteilen in einem separaten elektronischen Gerät vorgesehen ist.2. The method according to claim 1, characterized in that the memory is provided with the admissibility data to the supplementary parts in a separate electronic device.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Speicher mit den Zulässigkeitsdaten auch ganz oder teilweise Programmcode der Ergänzungsteile enthält. 3. The method according to claim 1 or 2, characterized in that the memory with the admissibility data also contains all or part of program code of the supplementary parts.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass zusätzlich der Schritt vorgesehen ist, dass die Zulässigkeitsdaten von dem Computer aus dem Speicher gelesen werden.4. The method according to any one of claims 1 to 3, characterized in that in addition the step is provided that the admissibility data are read from the memory of the computer.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass das Modul nach dem Übertragen der Zulässigkeitsdaten vor Ausführung des Programmcodes die Zulässigkeit anhand der übertragenen Zulässigkeitsdaten prüft.5. The method according to claim 4, characterized in that the module checks after the transmission of the admissibility data before execution of the program code the admissibility on the basis of the transmitted admissibility data.
6. Verfahren nach dem Anspruch 4 oder 5, dadurch gekennzeichnet, dass die Zulässigkeitsdaten nach der Übertragung auf den Computer aus dem Speicher gelöscht werden oder bei jedem Zugriff auf eines der Ergänzungsteile erneut aus dem Speicher gelesen wird.6. The method according to claim 4 or 5, characterized in that the admissibility data are deleted after the transfer to the computer from the memory or is read again from the memory with each access to one of the supplementary parts.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass der Speicher für die Zulässigkeitsdaten ferner mit Mitteln versehen ist, die eine Vervielfältigung seiner Daten verhindert.7. The method according to any one of claims 1 to 6, characterized in that the memory for the admissibility data is further provided with means which prevents duplication of its data.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass der Speicher für die Zulässigkeitsdaten in einem tragbaren Gerät vorgesehen ist, das über Funk Daten empfängt und sendet.8. The method according to any one of claims 1 to 7, characterized in that the memory for the admissibility data is provided in a portable device which receives and transmits data via radio.
9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Zulässigkeitsdaten über eine Schnittstelle von dem tragbaren Gerät zu dem Computer übertragen werden. 9. The method according to any one of claims 1 to 8, characterized in that the admissibility data are transmitted via an interface from the portable device to the computer.
10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Zulässigkeitsdaten eine begrenzte Gültigkeit besitzen, wobei die Gültigkeitsdauer zeitlich und/oder nach Anzahl der Aufrufe der Ergänzungsteile begrenzt ist.10. The method according to any one of claims 1 to 9, characterized in that the admissibility data have a limited validity, wherein the validity period is limited in time and / or according to the number of calls of the supplementary parts.
1 1. Verfahren nach einem der Ansprüche 8 bis 10, dadurch gekennzeichnet, dass als tragbares Gerät ein Mobiltelefon vorgesehen ist.1 1. A method according to any one of claims 8 to 10, characterized in that a mobile phone is provided as a portable device.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass die Zulässigkeitsdaten über ein Funknetz auf das Mobiltelefon übertragen werden.12. The method according to claim 11, characterized in that the admissibility data are transmitted via a radio network to the mobile phone.
13. Verfahren nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, dass als tragbares Gerät zusätzlich ein RFID-Transponder und/oder eine Magnetstreifenkarte vorgesehen ist. 13. The method according to any one of claims 1 to 12, characterized in that as a portable device additionally an RFID transponder and / or a magnetic stripe card is provided.
PCT/EP2007/003124 2006-04-11 2007-04-05 Process for executing a program code WO2007118627A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006018039.9 2006-04-11
DE200610018039 DE102006018039B4 (en) 2006-04-11 2006-04-11 Method for executing a program code

Publications (1)

Publication Number Publication Date
WO2007118627A1 true WO2007118627A1 (en) 2007-10-25

Family

ID=38283230

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/003124 WO2007118627A1 (en) 2006-04-11 2007-04-05 Process for executing a program code

Country Status (2)

Country Link
DE (1) DE102006018039B4 (en)
WO (1) WO2007118627A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956505A (en) * 1991-12-24 1999-09-21 Pitney Bowes Inc. Remote activation of software features in a data processing device
US20020124168A1 (en) * 2000-07-17 2002-09-05 Mccown Steven H. Method and system for upgrading a user environment
EP1288768A2 (en) * 2001-08-29 2003-03-05 Siemens AG Österreich Smart dongle
US20040125954A1 (en) * 2002-12-31 2004-07-01 Riebe Heinrich Henning System for persistently encrypting critical software data to control the operation of an executable software program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19824814C2 (en) * 1998-06-03 2000-06-21 Siemens Ag Device for determining functions to be released in a telecommunications system
DE10155092B4 (en) * 2001-11-09 2006-10-05 Siemens Ag Activation method for a utility part of a computer program and associated facilities
DE10260884A1 (en) * 2002-12-23 2004-07-29 Grundig Aktiengesellschaft Consumer electronics device and method for operating the consumer electronics device
WO2005036854A1 (en) * 2003-10-14 2005-04-21 Telecom Italia S.P.A. Method, system and computer program for managing usage of digital contents.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956505A (en) * 1991-12-24 1999-09-21 Pitney Bowes Inc. Remote activation of software features in a data processing device
US20020124168A1 (en) * 2000-07-17 2002-09-05 Mccown Steven H. Method and system for upgrading a user environment
EP1288768A2 (en) * 2001-08-29 2003-03-05 Siemens AG Österreich Smart dongle
US20040125954A1 (en) * 2002-12-31 2004-07-01 Riebe Heinrich Henning System for persistently encrypting critical software data to control the operation of an executable software program

Also Published As

Publication number Publication date
DE102006018039B4 (en) 2010-11-25
DE102006018039A1 (en) 2007-10-18

Similar Documents

Publication Publication Date Title
DE102007005638B4 (en) Method for authorizing access to at least one automation component of a technical installation
WO2012130460A1 (en) Method for updating a data storage medium
WO2012130461A2 (en) Updating a data storage medium application
DE10023820B4 (en) Software protection mechanism
EP1399797A2 (en) Control unit
DE10216384A1 (en) Access control network
EP2885907B1 (en) Method for installing of security relevant applications in a security element of a terminal
EP1220075A1 (en) System and method for authorising the execution of a software installed on a computer
DE10340411B4 (en) Device and method for the safe execution of a program
EP2562670B1 (en) Method for performing a write protection operation, computer program product, computer system and chip card
WO2007118627A1 (en) Process for executing a program code
DE19716015A1 (en) Introducing information on a chip card
AT509336B1 (en) CHIP CARD WITH AUTORUN FUNCTION
DE19538124C2 (en) Method and device for protecting software against unauthorized use
EP2278515B1 (en) Method for activating a runtime environment of a microprocessor unit
EP1288768A2 (en) Smart dongle
DE102010004446A1 (en) Method for providing a secure counter on a terminal
DE102008047639A1 (en) Method and device for accessing a machine-readable document
EP1927870B1 (en) Portable data carrier
EP3186740B1 (en) Method for installing an additional application in a non-volatile memory of a chip card
DE102004013904B4 (en) Verified program code downloading system for JAVA smart card, has processing unit, and verifier to verify codes and provide codes to carrier, where unit and verifier are designed so that codes are loaded to carrier only after verification
EP1864237A1 (en) Management method for user rights of electronic data objects by someone who acquires rights
EP2573677B1 (en) Data exchange between applications
DE102004024793A1 (en) Digital rights managing method, involves utilizing arithmetic and logic unit for protection of data and programs that are partly placed under protection of unit based on reliability level of digital rights management system
DE102005063541B4 (en) Portable data carrier

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07724065

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 07724065

Country of ref document: EP

Kind code of ref document: A1