DE10109546A1 - Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements - Google Patents

Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements

Info

Publication number
DE10109546A1
DE10109546A1 DE10109546A DE10109546A DE10109546A1 DE 10109546 A1 DE10109546 A1 DE 10109546A1 DE 10109546 A DE10109546 A DE 10109546A DE 10109546 A DE10109546 A DE 10109546A DE 10109546 A1 DE10109546 A1 DE 10109546A1
Authority
DE
Germany
Prior art keywords
computer
program element
identification information
approval message
installation approval
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE10109546A
Other languages
English (en)
Inventor
Rainer Falk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE10109546A priority Critical patent/DE10109546A1/de
Priority to EP02708167A priority patent/EP1364512A2/de
Priority to US10/469,346 priority patent/US20040117612A1/en
Priority to PCT/DE2002/000267 priority patent/WO2002069598A2/de
Publication of DE10109546A1 publication Critical patent/DE10109546A1/de
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

Es wird ein Programm-Element zu dem zweiten Rechner übertragen sowie eine Installations-Genehmigungs-Nachricht, die eine erste Identifizierungs-Information, eine zweite Identifizierungs-Information sowie einen kryptographischen Wert über zumindest diese Identifizierungs-Informationen aufweist.Die erste Identifizierungs-Information identifiziert das bereitgestellte Programm-Element und die zweite Identifizierungs-Information den zweiten Rechner. Der kryptographische Wert wird unter Verwendung des symmetrischen geheimen Schlüssels gebildet, der in dem zweiten Rechner und in einer Authentifizierungseinheit verfügbar ist. Unter Verwendung des symmetrischen geheimen Schlüssels wird der kryprographische Wert in dem zweiten Rechner verifiziert.

Description

Die Erfindung betrifft ein Verfahren und ein Kommunikationssystem zum Bereitstellen eines Programm- Elements.
Ein übliches Mobilfunk-Telefon wird unter Verwendung von Software gesteuert. Die Software wird üblicherweise durch das Mobilfunk-Telefon geladen, dort installiert und ausgeführt, um unterschiedliche Funktionalitäten in dem Mobilfunk-Telefon zu gewährleisten.
So wird das Mobilfunk-Telefon beispielsweise mittels Software in seinen Funkeigenschaften (beispielsweise die zu verwendenden Frequenzbänder, die zu verwendende Sendeleistung oder auch zu verwendende Modulationsverfahren) oder sonstigen Eigenschaften gesteuert wie zum Beispiel die Art der Signalisierung, unterschiedliche Strategien zur Frequenzwahl oder unterschiedliche angebotene, das heißt bereitgestellte Dienste.
Um die Software zu aktualisieren oder auch um Software erstmals auf das Mobilfunk-Telefon zu laden, dort zu installieren und auszuführen ist es erforderlich, die Software von einem Server-Computer zu dem Mobilfunk-Telefon zu übertragen.
Somit kann durch Laden von entsprechender Software die Funktionalität eines Mobilfunk-Telefons, allgemein eines Kommunikationsendgeräts oder eines Mobilfunk-Terminals, gezielt verändert oder erweitert werden.
Um eine Manipulation des Mobilfunk-Telefons durch unberechtigte Dritte zu verhindern, ist zu gewährleisten, dass das Mobilfunk-Telefon lediglich Software akzeptiert und somit installiert und ausführt, die von einem autorisierten und damit verlässlichen Anbieter stammt und für die gewährleistet ist, dass die Software nicht modifiziert wurde.
In diesem Zusammenhang ist zu berücksichtigen, dass Software über beliebige ungesicherte Kanäle, insbesondere über einen Funkkanal, zu dem Mobilfunk-Telefon übertragen werden kann. So kann beispielsweise Software von einem Personal Computer, einem allgemein zugänglichen Rechner, der beispielsweise an einem Flughafen oder einem Bahnhofinstalliert ist, oder einem anderen Mobilfunk-Telefon, allgemein einem anderen Mobilfunk-Terminal, allgemein über eine Luftschnittstelle, das heißt über eine Funkverbindung, oder leitungsgebunden über ein Anschlusskabel bezogen werden.
Ein Verfahren zum verlässlichen Bereitstellen von Software sollte vorteilhafterweise nicht von speziellen Annahmen über die Art der Verteilung von Software abhängig sein.
Zum Gewährleisten der Integrität und des sicheren Nachweises der Herkunft von Software ist es bekannt, Software unter Verwendung des Prinzips der asymmetrischen Verschlüsselung digital mit dem geheimen Schlüssel des Software-Anbieters zu signieren.
In diesem Zusammenhang ist es bekannt, digital signierte JAR- Dateien bei JAVA zu verwenden, die auch im Rahmen von MExE (Mobile Station Application Execution Environment), einer Ausführungsumgebung für Anwendungen auf einem Mobilfunk- Telefon, verwendet werden, oder die auch im Internet verwendeten Techniken wie dem sogenannten Microsoft Authenticode™ und dem Netscape Object Signing™ einzusetzen.
Bei diesen bekannten Verfahren wird der Software eine digitale Signatur und eventuell weitere Daten, die zur Überprüfung der digitalen Signatur verwendet werden, hinzugefügt. Eine digitale Signatur verwendet das Prinzip der asymmetrischen Kryptographie, bei der ein privater Schlüssel und ein korrespondierender öffentlicher Schlüssel, welche gemeinsam ein asymmetrisches Schlüsselpaar bilden, verwendet werden.
Nur der Inhaber eines privaten kryptographischen Schlüssels kann auch eine gültige digitale Signatur erzeugen, jedoch kann jeder, der zu dem jeweiligen privaten kryptographischen Schlüssel passenden öffentlichen kryptographischen Schlüssel kennt, die Signatur überprüfen.
Ein Zertifikat des jeweiligen öffentlichen kryptographischen Schlüssels wird verwendet, um eine Bindung zwischen dem öffentlichen kryptographischen Schlüssel und dem Namen der Person oder Organisation, zu der der öffentliche Schlüssel gehört, sicher zu bescheinigen. Auf diese Weise wird gewährleistet, dass das verwendete Schlüsselpaar aus jeweiligem privaten kryptographischen Schlüssel und öffentlichem kryptographischen Schlüssel verlässlich ist.
Der Einsatz der asymmetrischen Kryptographie weist insbesondere den Nachteil auf, dass beispielsweise bei der Erstellung einer digitalen Signatur eine hohe Rechenleistung erforderlich ist, was häufig sogar dazu führt, dass spezielle kryptographische Co-Prozessoren in den jeweiligen die digitale Signatur erstellenden Rechnern verwendet werden.
Insbesondere auch die Überprüfung der digitalen Signatur ist aufgrund der durchzuführenden asymmetrischen kryptographischen Operationen eine sehr rechenaufwendige Aufgabe, die häufig die bei einem mobilen Telekommunikations- Endgerät zur Verfügung stehenden Rechenleistungs-Ressourcen erheblich überfordert.
Außerdem muss die verwendete Folge von Zertifikaten zur Sicherung der verwendeten öffentlichen Schlüssel validiert werden, wozu eine Auswertung der in den Zertifikaten enthaltenen Daten, wie beispielsweise die Überprüfung der Gültigkeit der verwendeten Zertifikate oder die Berücksichtigung vorgebbarer Einschränkungen in der Benutzung der jeweiligen Zertifikate.
Zur Überprüfung der Gültigkeit der verwendeten Zertifikate ist beispielsweise neben weiteren Signaturprüfungen das Laden einer Zertifikats-Widerrufsliste (Certificate Revocation List, CRL) oder eine Online-Überprüfung des Zustands des jeweiligen Zertifikats beispielsweise gemäß dem Online Certificate Status Protocol erforderlich.
Ferner führt die zusätzliche Sicherungsinformation, das heißt beispielsweise die digitale Signatur und die zugehörigen Zertifikate zu den öffentlichen Schlüsseln zu einer erhöhten zu übertragenden Datenmenge (Datenvolumen).
Insbesondere bei einer Übertragung über einen Kanal mit einer nur geringen zur Verfügung stehenden Bandbreite, wie beispielsweise bei der Übertragung über eine Funkverbindung, besteht somit das Bedürfnis, die zu übertragende Datenmenge, insbesondere beim Übertragen eines Programms, das heißt bei der Übertragung von Software, möglichst gering zu halten.
Somit liegt der Erfindung das Problem zugrunde, ein Verfahren und ein Kommunikationssystem zum Bereitstellen eines Programm-Elements anzugeben, durch welches ein geringerer Rechenbedarf erreicht wird und bei dem die benötigte Datenmenge zur Übertragung der Sicherungsinformation reduziert ist.
Das Problem wird durch das Verfahren und das Kommunikationssystem mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.
Bei einem Verfahren zum Bereitstellen eines Programm-Elements von einem ersten Rechner für einen zweiten Rechner wird von dem ersten Rechner das Programm-Element zu dem zweiten Rechner übertragen. Ferner wird eine Installations- Genehmigungs-Nachricht zu dem zweiten Rechner übertragen, wobei die Installations-Genehmigungs-Nachricht zumindest eine erste Identifizierungs-Information, eine zweite Identifizierungs-Information sowie einen kryptographischen Wert, der über zumindest die erste Identifizierungs- Information und die zweite Identifizierungs-Information gebildet wurde, enthält. Mit der ersten Identifizierungs- Information wird das bereitgestellte Programm-Element, vorzugsweise eindeutig, identifiziert. Mittels der zweiten Identifizierungs-Information ist es möglich, den zweiten Rechner, ebenfalls vorzugsweise eindeutig, zu identifizieren. Der kryptographische Wert wird unter Verwendung eines symmetrischen geheimen Schlüssels gebildet, wobei der symmetrische geheime Schlüssel sowohl in dem zweiten Rechner als auch in einer Authentifizierungs-Einheit verfügbar, das heißt gespeichert, ist. Unter Verwendung des symmetrischen geheimen Schlüssels wird der kryptographische Wert in dem zweiten Rechner verifiziert und für den Fall, dass die Verifikation erfolgreich ist, und in der Installations- Genehmigungs-Nachricht die Information enthalten ist, dass das Programm-Element installiert werden darf und/oder ausgeführt werden darf, so wird das Programm-Element in dem zweiten Rechner installiert bzw. ausgeführt.
Es ist in diesem Zusammenhang anzumerken, dass die Information, insbesondere die jeweilige Identifizierungsinformation, jeweils explizit und/oder implizit vorliegen kann. Ein Beispiel dafür, dass die Information implizit vorliegt kann in der Verwendung eines jeweils verwendeten kryptographischen Schlüssels, der einen entsprechenden Rückschluss auf die jeweilige den Schlüssel verwendende Instanz zulässt, gesehen werden.
Die erste Identifizierungsinformation kann ein Hash-Wert sein, der über das jeweilige Programm-Element gebildet wird.
Ein Kommunikationssystem zum Bereitstellen eines Programm- Elements, weist auf
  • - einen ersten Rechner, in dem das Programm-Element gespeichert ist, wobei der erste Rechner eine Sendeeinheit enthält zum Senden des Programm-Elements zu einem zweiten Rechner,
  • - den zweiten Rechner, wobei der zweite Rechner eine Empfangseinheit zum Empfangen des Programm-Elements und einer Installations-Genehmigungs-Nachricht enthält,
  • - wobei die Installations-Genehmigungs-Nachricht zumindest folgende Informationen enthält:
  • - eine erste Identifizierungsinformation, mit der das bereitgestellte Programm-Element identifiziert wird,
  • - eine zweite Identifizierungsinformation, mit der der zweite Rechner identifiziert wird,
  • - einen kryptographischen Wert über zumindest die erste Identifizierungsinformation und die zweite Identifizierungsinformation,
  • - eine Authentifizierungseinheit,
  • - wobei ein symmetrischer geheimer Schlüssel in dem zweiten Rechner und in der Authentifizierungseinheit gespeichert ist,
  • - wobei die Authentifizierungseinheit eine Einheit zum Bilden des kryptographischen Werts unter Verwendung des symmetrischen geheimen Schlüssels aufweist,
  • - wobei der zweite Rechner eine Verifikationseinheit zum Verifizieren des kryptographischen Werts unter Verwendung des symmetrischen geheimen Schlüssels aufweist, und
  • - wobei der zweite Rechner eine Entscheidungseinheit aufweist, die derart eingerichtet ist, dass unter Verwendung der Installations-Genehmigungs-Nachricht und des verifizierten kryptographischen Werts ermittelt wird, ob das Programm-Element in dem zweiten Rechner installiert oder ausgeführt werden darf.
Anschaulich kann die Erfindung darin gesehen werden, dass ein Ticket zusätzlich zu dem Programm-Element verwendet wird, das eine eindeutige verlässliche Sicherungsinformation zur Identifizierung des bereitgestellten Programm-Elements und des zweiten Rechners, das heißt desjenigen Rechners, auf dem das Programm-Element installiert bzw. ausgeführt werden soll, enthalten ist. Die Verlässlichkeit der Identifizierungs- Informationen wird erreicht durch den kryptographischen Wert, der über die Identifizierungs-Informationen unter Verwendung des symmetrischen geheimen Schlüssels gebildet wird.
Aufgrund des Einsatzes eines symmetrischen kryptographischen Verfahrens zur Bildung des kryptographischen Werts ist sowohl die Bildung des kryptographischen Werts als auch dessen Verifikation erheblich einfacher und somit mit erheblich geringerem Rechenzeitbedarf durchführbar. Außerdem wird für die Installations-Genehmigungs-Nachricht eine gegenüber der digitalen Signatur üblicherweise erforderlichen Datenmenge erheblich reduzierter Datenmenge erreicht.
Unter einem Programm-Element ist in diesem Zusammenhang jede Art von Computerprogramm oder eines Teils eines Computerprogramms zu verstehen, welches von einem Prozessor ausgeführt werden kann. Unter dem Ausführen eines Computerprogramms ist in diesem Zusammenhang auch das Interpretieren eines Computerprogramms, beispielsweise das Interpretieren eines Computerprogramms in Java (Java- Bytecode) mittels einer virtuellen Maschine, zu verstehen.
Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.
Der kryptographische Wert kann ein kryptographischer Hash- Wert sein, der vorzugsweise gemäß einem der folgenden Verfahren gebildet wird:
  • - CBC-MAC unter Verwendung einer bekannten Blockchiffre (z. B. DES, 3DES, AES, IDEA),
  • - HMAC unter Verwendung einer bekannten Hash-Funktion (z. B. MD5, SHA-1, RIPEMD, RIPEMD160), die auch als HMAC- MDS, HMAC-SHA1, HMAC-RIPEMD, HMAC-RIPEMD160 bezeichnet werden,
  • - HMAC unter Verwendung einer bekannten Hash-Funktion mit gekürzter Ausgabe (z. B. HMAC-MD5-80, HMAC-SHA1-80, HMAC- RIPEMD-80, HMAC-RIPEMD160-80 bei auf 80 Bit gekürzter Ausgabe),
  • - MAA,
  • - RIPE-MAC,
  • - MD5-MAC.
Eine Übersicht über weiterhin ebenfalls verwendbare Verfahren zum Bilden des kryptographischen Hash-Werts ist in (Alfred J. Menezes, Paul C. von Oorschot, Scott A. Vanstone, Handbook of Applied Cryptography, CRC Press Series on Discrete Mathematics and Its Applications, Series Editor: Kenneth H. Rosen, Oktober 1996, CRC Press (Boca Raton, New York, London, Tokyo), ISBN 0849385237, S. 340-365) und in dem Request for Comments Nr. 2104 der IETF (RFC 2104) zu finden.
Der kryptographische Hash-Wert wird auch als Nachrichtenauthentifizierungscode (Message Authentication Code, MAC) bezeichnet. Die zum Ermitteln eines Nachrichtenauthentifizierungscodes verwendeten Funktionen werden auch als "Keyed Hash Function" bezeichnet.
Aufgrund des Einsatzes standardisierter und üblicherweise außer in Software auch in Hardware implementierbarer Kryptoverfahren zur Bildung eines Hash-Wertes wird einerseits gewährleistet, dass der gebildete kryptographische Hash-Wert aus kryptographischer Sicht sehr stark ist und somit eine große Verlässlichkeit aufweist und zum anderen sehr schnell gebildet werden kann, wodurch eine zeitliche Verzögerung bei der Bildung des kryptographischen Werts gering gehalten wird.
Dem Ticket, das heißt der Installations-Genehmigungs- Nachricht, können zusätzliche Informationen hinzugefügt werden, beispielsweise:
  • - Der Zeitpunkt des Ausstellens, das heißt des Erzeugens der Installations-Genehmigungs-Nachricht,
  • - eine Angabe über einen Zeitraum, während dessen die Installations-Genehmigungs-Nachricht verlässlich, das heißt gültig ist,
  • - eine Angabe des Anbieters bzw. der Vertriebsinstanz des jeweiligen Programm-Elements,
  • - eine Angabe der Sicherheitsdomäne, der das geladene, das heißt bereitgestellte Programm-Element zugeordnet werden soll,
  • - eine Angabe von Berechtigungen, die dem Programm-Element bei dessen Ausführung durch den zweiten Rechner gewährt werden sollen, insbesondere Zugriffsrechte auf andere, weitete Programm-Elemente,
  • - Angaben über den Bedarf von Ressourcen, die das bereitgestellte Programm-Element bei dessen Ausführung oder auch zur Speicherung benötigt,
  • - eine Angabe, dass das Programm-Element auf einem vorgegebenen Typ (Modell) eines Rechners funktionsfähig ist,
  • - eine Angabe, dass das Programm-Element kompatibel ist mit einem auf einem zweiten Rechner gespeicherten und funktionsfähigen weiteren Programm-Element.
Durch Verwendung einer solchen Zusatzinformation wird die Flexibilität des Verfahrens und somit die Nutzbarkeit der Installations-Genehmigungs-Nachricht im Rahmen der Bereitstellung eines Programm-Elements erheblich erhöht.
Die Authentifizierungseinheit kann in dem ersten Rechner enthalten sein, in welchem Fall sowohl das Programm-Element als auch die Installations-Genehmigungs-Nachricht in dem ersten Rechner gespeichert ist.
Ferner kann ein weiterer Rechner mit einer Datenbank, welche anschaulich als Programm-Archiv (Download-Archiv) fungiert, vorgesehen sein, welche das gewünschte Programm-Element zu dem ersten Rechner überträgt. In dem Download-Archiv können ebenso die Installations-Genehmigungs-Nachrichten, die jeweils spezifisch sind für ein Tupel der folgenden Einheiten:
  • - Authentifizierungseinheit,
  • - zweiter Rechner, und
  • - Programm-Element
in einem Kommunikationsnetz aufgrund der eindeutigen Zuordnung der symmetrischen geheimen Schlüssel zu dem zweiten Rechner und der jeweiligen Authentifizierungseinheit, gespeichert sein.
Ist die Authentifizierungseinheit nicht in dem ersten Rechner enthalten, so kann alternativ vorgesehen sein, dass die Authentifizierungseinheit Zugriff auf das Download-Archiv hat und von dort zuvor gespeicherte Installations-Genehmigungs- Nachrichten bei Bedarf lädt.
Die Authentifizierungseinheit kann jedoch den kryptographischen Wert unter Verwendung des ihr zugänglichen symmetrischen geheimen Schlüssels auch selbst bilden.
Die gesamte Installations-Genehmigungs-Nachricht selbst kann ebenfalls mittels eines kryptographischen Verfahrens gesichert sein, beispielsweise mittels asymmetrischer oder symmetrischer Kryptographie verschlüsselt werden oder signiert werden.
Gemäß einer Ausgestaltung der Erfindung ist es vorgesehen, dass eine Anforderungsnachricht von dem zweiten Rechner an die Authentifizierungseinheit gesendet wird, mit der zu einer in der Anforderungsnachricht enthaltenen ersten Identifizierungsangabe und einer zweiten Identifizierungsangabe eine Installations-Genehmigungs- Nachricht beantragt wird.
In der Authentifizierungseinheit wird zu dem der jeweiligen ersten Identifizierungsangabe gehörenden Programm-Element und dem zu der zweiten Identifizierungsangabe korrespondierenden zweiten Rechner ermittelt, ob das Programm-Element überhaupt installiert bzw. ausgeführt werden darf. Ist dies der Fall, wird eine Installations-Genehmigungs-Nachricht gebildet, und an den zweiten Rechner gesendet.
Sowohl in der Installations-Genehmigungs-Nachricht als auch in der Anfragenachricht können unterschiedliche Einmalwerte oder der gleiche Einmalwert enthalten sein, in welchem Fall der Grad der Sicherheit im Rahmen des Verfahrens weiter erhöht wird.
Der verwendete Einmalwert kann beispielsweise eine Zufallszahl oder ein vorgebbarer Zählerwert sein.
Wird in der Installations-Genehmigungs-Nachricht und in der Anfragenachricht der gleiche Einmalwert verwendet, so wird eine Bindung zwischen der Anfragenachricht und der Installations-Genehmigungs-Nachricht erreicht, wobei der Grad der kryptographischen Sicherheit weiter erhöht wird, wenn der kryptographische Wert zusätzlich über den Einmalwert gebildet wird.
Weiterhin kann über das Programm-Element selbst ein kryptographischer Hash-Wert gebildet werden und der Installations-Genehmigungs-Nachricht beigefügt sein.
Gemäß einer weiteren Ausgestaltung der Erfindung ist der zweite Rechner ein Telekommunikations-Endgerät, beispielsweise ein mobiles Telekommunikations-Endgerät, vorzugsweise ein Mobilfunk-Kommunikations-Endgerät, das heißt ein Mobilfunk-Telefon.
Ausführungsbeispiele der Erfindung sind in den Figuren dargestellt und werden im Weiteren näher erläutert. Identische Elemente sind in den Figuren mit identischen Bezugszeichen versehen.
Es zeigen
Fig. 1 ein Blockdiagramm, in dem ein Kommunikationssystem dargestellt ist, welches gemäß dem GSM-Standard ausgestaltet ist;
Fig. 2 ein Blockdiagramm eines Kommunikationssystems gemäß einem ersten Ausführungsbeispiel der Erfindung;
Fig. 3a und 3b ein Blockdiagramm eines Kommunikationssystems gemäß alternativen Ausführungsbeispielen der Erfindung;
Fig. 4a bis 4c ein Blockdiagramm eines Kommunikationssystems gemäß weiteren Ausführungsbeispielen der Erfindung;
Fig. 5a und 5b Nachrichten-Flussdiagramme für den Fall, dass aufgrund einer Anfragenachricht eine Installations-Genehmigungs-Nachricht übertragen wird, die eine Installation oder ein Ausführen des Programm-Elements gestattet (Fig. 5a) bzw. mit einer Installations-Genehmigungs-Nachricht, die die Installation oder das Ausführen des Programm-Elements nicht gestattet (vgl. Fig. 5b);
Fig. 6 ein Ablaufdiagramm, in dem die einzelnen Verfahrensschritte, die in dem Mobil-Terminal gemäß einem Ausführungsbeispiel der Erfindung durchgeführt werden, dargestellt sind;
Fig. 7 ein Ablaufdiagramm, in dem die einzelnen Verfahrensschritte, die in der Authentifizierungseinheit gemäß einem Ausführungsbeispiel der Erfindung ausgeführt werden, dargestellt sind.
Fig. 1 zeigt ein Kommunikationssystem 100 mit einer Vielzahl von mobilen Kommunikations-Endgeräten 101, die jeweils über eine Luftschnittstelle 102, das heißt eine Funkverbindung, mit einer Basis-Empfangsstation (Base Transceiving Station (BTS)) 103, im Weiteren auch als Basisstation bezeichnet, verbunden sind, welche jeweils einem Basisstationssystem 104 (Base Station System, BSS) zugeordnet sind, wobei jeweils eine Basiskontrollstation (Base Station Controller, BSC) 105 für jedes Basisstationssystem 104 vorgesehen ist zur Steuerung der in dem Basisstationssystem 104 enthaltenen Basisstation(en) 103.
Zumindest ein Teil der Basisstationssysteme 104 des Kommunikationssystems 100 sind gemäß dem GSM/GPRS/EDGE- Standard mit einem mobilen Vermittlungszentrum 106 (Mobile Switching Center, MSC) zur Vermittlung leitungsgebundener Sprache oder Daten sowie mit einem SGSN 107 (Serving GPRS Support Node) zur Übermittlung von Paketdaten an ein Gateway (Gateway GPRS Support Node, GGSN) 108 in ein Paketdatennetz 112 verbunden. Das mobile Vermittlungszentrum 106 ist mit einem üblichen Telefonnetz 109 verbunden.
Die zentrale Vermittlungsstelle 106 bzw. der SGSN 107 führt für die Vermittlung von Kommunikationsverbindungen erforderliche Funktionen für den Betrieb der mobilen Kommunikations-Endgeräte 101 in den jeweiligen Gruppen von Basisstationssystemen 104, für die jeweils ein mobiles Vermittlungszentrum 106 bzw. der SGSN 107 "zuständig" ist, durch.
Die Funktionen, die das mobile Vermittlungszentrum 106 bzw. der SGSN 107 bereitstellt, enthalten u. a.
  • - das Routing und die Steuerung von Anrufen, das heißt Kommunikationsverbindungen,
  • - Verfahren, die für das Zusammenwirken mit anderen Kommunikations-Netzwerken, beispielsweise einem Festnetz wie PSTN, ISDN,
  • - Verfahren zum Aktualisieren der Einträge der Kommunikations-Endgeräte, während sie von einer Mobilfunk-Zelle in eine andere übergehen, etc.
Jede Basisstation 103 ist über das Paketdatennetz 112 mit einer im Weiteren im Detail erläuterten Authentifizierungseinheit 110 verbunden.
Ferner weist das Kommunikationssystem 100 mindestens einen Programm-Element-Bereitstellungsrechner 111 auf, der mit den mobilen Kommunikations-Endgeräten 101 ebenfalls über das Paketdatennetz 112 gekoppelt ist.
Fig. 2 zeigt eine vereinfachte Darstellung des Kommunikationssystems 200 gemäß einem ersten Ausführungsbeispiel der Erfindung.
In einem Programm-Element-Bereitstellungsrechner 201 ist ein Programm-Element 202 gespeichert und wird über eine Kommunikationsverbindung 203 von dem Programm-Element- Bereitstellungsrechner 201 zu einem mobilen Kommunikations- Endgerät, gemäß diesem Ausführungsbeispiel einem Mobilfunk- Telefon 101 übertragen und dort gespeichert.
Wie im Weiteren näher erläutert wird, erhält das mobile Kommunikations-Endgerät 101 das Programm-Element 202 von einer für das mobile Kommunikations-Endgerät 101 nicht vertrauenswürdigen Quelle.
Vor der eigentlichen Installation bzw. der Ausführung des Programm-Elements 202 überprüft das mobile Kommunikations- Endgerät 101, ob das Programm-Element vertrauenswürdig ist und ob es überhaupt installiert werden darf bzw. ausgeführt werden darf.
Um zu überprüfen, ob das Programm-Element installiert werden darf bzw. ob es unverändert und damit vertrauenswürdig ist, fordert das mobile Kommunikations-Endgerät 101 von einer Authentifizierungseinheit 204 eine Installations- Genehmigungs-Nachricht, welche im Weiteren näher erläutert wird, an.
Dies erfolgt durch Übertragen einer Anfragenachricht 205 von dem mobilen Kommunikations-Endgerät 101 zu der Authentifizierungseinheit 204 über eine zweite Kommunikationsverbindung 206.
Aufgrund der Anfragenachricht 205 wird in der Authentifizierungseinheit 204 ermittelt, ob das jeweilige Programm-Element 202 auf dem mobilen Kommunikations-Endgerät 101 installiert bzw. ausgeführt werden darf oder nicht.
Das Ergebnis der Überprüfung wird dem mobilen Kommunikations- Endgerät 101 mit einer Installations-Genehmigungs-Nachricht 207 von der Authentifizierungseinheit 204 zu dem mobilen Kommunikations-Endgerät 101 über die Kommunikationsverbindung 206 übertragen.
Fig. 3a und Fig. 3b zeigen alternative Architekturen eines Kommunikationssystems 300, 310 gemäß weiteren Ausführungsbeispielen der Erfindung.
In dem Programm-Element-Bereitstellungsrechner 301 ist das Programm-Element 302 gespeichert (vgl. Fig. 3a).
Das Programm-Element 302 wird von dem Programm-Element- Bereitstellungsrechner 301 über eine erste Kommunikationsverbindung 303, gemäß diesem Ausführungsbeispiel zumindest teilweise einer Funkverbindung zu dem mobilen Kommunikations-Endgerät 101 übertragen.
Ferner wird das Programm-Element 302 über eine zweite Kommunikationsverbindung 304 zu der Authentifizierungseinheit 305 übertragen, woraufhin von der Authentifizierungseinheit 305 nach Empfang des Programm-Elements 302 oder alternativ nach Empfang einer Anfragenachricht (nicht gezeigt) eine Installations-Genehmigungs-Nachricht 306 gebildet wird.
Die Installations-Genehmigungs-Nachricht 306 wird in einem weiteren Schritt über eine dritte Kommunikationsverbindung 307, gemäß diesem Ausführungsbeispiel ebenfalls eine Funkverbindung, zu dem mobilen Kommunikations-Endgerät 101 übertragen.
In dem mobilen Kommunikations-Endgerät 101 wird aufgrund der Installations-Genehmigungs-Nachricht 306, wie im Weiteren näher erläutert wird, überprüft, ob das empfangene Programm- Element 302 installiert bzw. ausgeführt werden darf.
Fig. 3b zeigt eine alternative Architektur, bei der die Authentifizierungseinheit 305 nur mit dem Programm-Element- Bereitstellungsrechner 301 über die zweite Kommunikationsverbindung 304 verbunden ist und nicht direkt mit dem mobilen Kommunikations-Endgerät 101. Nach Empfang des Programm-Elements 302 oder alternativ nach Empfang einer Anfragenachricht (nicht gezeigt) wird ebenfalls die Installations-Genehmigungs-Nachricht 306 gebildet.
Die Installations-Genehmigungs-Nachricht 306 wird in einem weiteren Schritt über die zweite Kommunikationsverbindung 304, zu dem Programm-Element-Bereitstellungsrechner 301 übertragen und von dort weiter zu dem mobilen Kommunikations- Endgerät 101.
Fig. 4a bis Fig. 4b zeigen weitere Alternativen eines Kommunikationssystems 400, 420, 430 gemäß weiteren Ausführungsbeispielen der Erfindung.
Gemäß dem in Fig. 4a dargestellten Ausführungsbeispiel der Erfindung ist ein Archiv-Rechner 401 vorgesehen, in dem eine Vielzahl von Programm-Elementen 402, 403, . . . 404 gespeichert sind.
Ferner sind in dem Archiv-Rechner 401 eine Vielzahl von Installations-Genehmigungs-Nachrichten 405, 406, . . . 407 gespeichert.
Der Archiv-Rechner 401 ist über eine erste Kommunikationsverbindung 408 mit dem Programm-Element- Bereitstellungsrechner 409 verbunden.
Über eine zweite Kommunikationsverbindung 410 ist der Programm-Element-Bereitstellungsrechner 409 mit dem mobilen Kommunikations-Endgerät 101 verbunden.
Ein optional von dem Programm-Element-Bereitstellungsrechner 409 angefordertes Programm-Element 402, 403, 404 wird von dem Archiv-Rechner 401 zu dem Programm-Element- Bereitstellungsrechner 409 übertragen, dort temporär zwischengespeichert oder dauerhaft gespeichert und über die dritte Kommunikationsverbindung 412 zu dem mobilen Kommunikations-Endgerät 101 übertragen.
Ferner wird die zu dem Programm-Element 402, 403, 404 jeweils zugehörige Installations-Genehmigungs-Nachricht 405, 406, 407 über die erste Kommunikationsverbindung 408 an den Programm- Element-Bereitstellungsrechner 409 übertragen, dort ebenfalls temporär oder dauerhaft gespeichert und über die zweite Kommunikationsverbindung 410 weiter zu dem mobilen Kommunikations-Endgerät 101 übertragen.
Fig. 4b zeigt eine alternative Architektur, bei der in dem Archiv-Rechner 401 eine Vielzahl von Installations- Genehmigungs-Nachrichten 405, 406, . . . 407 gespeichert sind.
Das Ausführungsbeispiel gemäß Fig. 4b unterscheidet sich von dem Ausführungsbeispiel gemäß Fig. 4a insbesondere dadurch, dass wie gemäß dem Ausführungsbeispiel gemäß Fig. 3b die Authentifizierungseinheit 411 mit dem Programm-Element- Bereitstellungsrechner 409 über eine dritte Kommunikationsverbindung 412 verbunden ist. Nach Empfang des Programm-Elements 402 oder alternativ nach Empfang einer Anfragenachricht (nicht gezeigt) wird die Installations- Genehmigungs-Nachricht 405, 406, 407 gebildet.
Die Installations-Genehmigungs-Nachricht 405 wird in einem weiteren Schritt über die dritte Kommunikationsverbindung 412 zu dem Programm-Element-Bereitstellungsrechner 301 übertragen und von dort über die zweite Kommunikationsverbindung 410 weiter zu dem mobilen Kommunikations-Endgerät 101.
Das in Fig. 4c dargestellte Ausführungsbeispiel unterscheidet sich von dem Ausführungsbeispiel gemäß Fig. 4b insbesondere dadurch, dass wie gemäß dem Ausführungsbeispiel gemäß Fig. 3a die Authentifizierungseinheit 411 direkt mit dem mobilen Kommunikations-Endgerät 101 über eine vierte Kommunikationsverbindung 413 verbunden ist. Die Installations-Genehmigungs-Nachricht 405 wird gemäß diesem Ausführungsbeispiel somit direkt über die vierte Kommunikationsverbindung 413 zu dem mobilen Kommunikations- Endgerät 101 übertragen.
Die im Weiteren beschriebene Vorgehensweise, insbesondere der Aufbau der Anfragenachricht und der Installations- Genehmigungs-Nachricht ist für alle oben beschriebenen Ausführungsbeispiele, in denen die jeweiligen Nachrichten verwendet werden, identisch.
Aus diesem Grund wird zur einfacheren Darstellung der Erfindung im Weiteren die Vorgehensweise zur Bereitstellung eines Programm-Elements die Struktur des Kommunikationssystems 200 gemäß dem ersten Ausführungsbeispiel zur Erläuterung verwendet.
Wie in Fig. 2 dargestellt ist, wird von dem Programm-Element- Bereitstellungsrechner 201 das Programm-Element 202 über die erste Kommunikationsverbindung 203 zu dem mobilen Kommunikations-Endgerät 101 übertragen und dort gespeichert.
Nach Empfang des Programm-Elements 202 wird von dem mobilen Kommunikations-Endgerät 101 die Anfragenachricht 205 gebildet.
Wie in Fig. 5a und Fig. 5b dargestellt ist, weist die Anfragenachricht 205 folgende Informationen auf:
  • - Eine erste Identifizierungs-Information, mit der das bereitgestellte Programm-Element identifiziert wird, in Fig. 5a bezeichnet mit Id-SW,
  • - eine zweite Identifizierungs-Information, mit der das mobile Kommunikations-Endgerät 101 eindeutig identifiziert wird, in Fig. 5a bezeichnet mit Id-MT, und
  • - einen Einmalwert, gemäß diesem Ausführungsbeispiel eine Zufallszahl N.
Die Zufallszahl N dient gemäß diesem Ausführungsbeispiel dazu, eine logische Verknüpfung zu schaffen zwischen der Anfragenachricht 205 und einer im Weiteren beschriebenen ersten Art von Installations-Genehmigungs-Nachricht 501.
Die erste Art von Installations-Genehmigungs-Nachricht 501, die von der Authentifizierungseinheit 204 an das mobile Kommunikations-Endgerät 101 übermittelt wird (vgl. Fig. 5a) für den Fall, dass das Programm-Element 202 vertrauenswürdig ist und auf dem mobilen Kommunikations-Endgerät 101 installiert bzw. ausgeführt werden darf, enthält
  • - ebenfalls die erste Identifizierungs-Information, mit der das bereitgestellte Programm-Element 202 eindeutig identifiziert wird, in Fig. 5a bezeichnet mit Id-SW,
  • - die zweite Identifizierungs-Information, mit der das mobile Kommunikations-Endgerät 101 eindeutig identifiziert wird, in Fig. 5a bezeichnet mit Id-MT,
  • - einen kryptographisch starken Hash-Wert H, der über das Programm-Element 202 gebildet wurde,
  • - die Zufallszahl N,
  • - eine Prüfsumme über die zuvor beschriebenen Daten in der Installations-Genehmigungs-Nachricht 501.
Optional können in der Installations-Genehmigungs-Nachricht 501 folgende Informationen zusätzlich enthalten sein:
  • - Der Zeitpunkt des Ausstellens, das heißt des Erzeugens der Installations-Genehmigungs-Nachricht,
  • - eine Angabe über einen Zeitraum, während dessen die Installations-Genehmigungs-Nachricht verlässlich, das heißt gültig ist,
  • - eine Angabe des Anbieters bzw. der Vertriebsinstanz des jeweiligen Programm-Elements,
  • - eine Angabe der Sicherheitsdomäne, der das geladene, das heißt bereitgestellte Programm-Element zugeordnet werden soll,
  • - eine Angabe von Berechtigungen, die dem Programm-Element bei dessen Ausführung durch den zweiten Rechner gewährt werden sollen, insbesondere Zugriffsrechte auf andere, weitete Programm-Elemente,
  • - Angaben über den Bedarf von Ressourcen, die das bereitgestellte Programm-Element bei dessen Ausführung oder auch zur Speicherung benötigt,
  • - eine Angabe, dass das Programm-Element auf einem vorgegebenen Typ (Modell) eines Rechners funktionsfähig ist,
  • - eine Angabe, dass das Programm-Element kompatibel ist mit einem auf einem zweiten Rechner gespeicherten und funktionsfähigen weiteren Programm-Element.
Für den Fall, dass das Programm-Element 202 nicht vertrauenswürdig ist, das heißt auf dem mobilen Kommunikations-Endgerät 101 nicht installiert bzw. ausgeführt werden darf, bildet die Authentifizierungseinheit 204 eine Installations-Genehmigungs-Nachricht zweiter Art 502, in der eine Fehlerangabe 503 enthalten ist und sendet diese an das mobile Kommunikations-Endgerät 101 (vgl. Fig. 5b).
Die Anfragenachricht 205 und/oder die Installations- Genehmigungs-Nachricht 501 sind kryptographisch gesichert unter Verwendung eines symmetrischen kryptographischen Verfahrens.
Der kryptographisch starke Hash-Wert H, der über das Programm-Element 202 gebildet worden ist, wird gemäß diesem Ausführungsbeispiel gemäß dem MD5-Verfahren oder dem SHA-1- Verfahren als kryptographische Prüfsumme ermittelt.
Mit dieser Information kann die Unverändertheit des Programm- Elements 202 überprüft werden.
Die Prüfsumme, in Fig. 5a mit MAC bezeichnet, wird über die in der Installations-Genehmigungs-Nachricht erster Art 501 enthaltenen Daten wird unter Verwendung eines geheimen symmetrischen Schlüssels, der lediglich in dem mobilen Kommunikations-Endgerät und der Authentifizierungseinheit 204 bekannt und gespeichert sind, gebildet, beispielsweise unter Anwendung eines Verfahrens zur Bildung eines Messages Authentication Codes oder Nachrichtenauthentifizierungscodes.
Durch die unter Verwendung des symmetrischen geheimen Schlüssels zumindest über die erste Identifizierungs- Information und die zweite Identifizierungs-Information gebildete Sicherungsinformation, im Weiteren als kryptographischer Wert bezeichnet, wird auf einfache und somit sehr effiziente Weise die Installations-Genehmigungs- Nachricht 501 und die darin enthaltene Information geschützt.
Auf diese Weise ist gewährleistet, dass kein unbefugter Dritter eine Installations-Genehmigungs-Nachricht erster Art 501 erzeugen kann, welche von dem mobilen Kommunikations- Endgerät 101 fehlerhafterweise akzeptiert wird.
Zum Erstellen und Verteilen des jeweiligen für ein Paar von mobilen Kommunikations-Endgerät 101 und Authentifizierungseinheit 204 eindeutigen geheimen symmetrischen Schlüssel kann grundsätzlich im Rahmen der Erfindung jedes beliebige Verfahren zum Erzeugen eines symmetrischen Schlüssels und zum Verteilen eines solchen in den beiden miteinander kommunizierenden Einheiten verwendet werden.
Fig. 6 zeigt in einem Ablaufdiagramm 600 die einzelnen Verfahrensschritte, die in dem mobilen Kommunikations- Endgerät 101 gemäß dem ersten Ausführungsbeispiel der Erfindung ausgeführt werden.
Nachdem in einem ersten Schritt 601 das Programm gestartet wird, wird in einem weiteren Schritt (Schritt 602) wie oben beschrieben wurde, das Programm-Element 202 in dem mobilen Kommunikations-Endgerät 101 empfangen. Zusätzlich wird die erste Identifizierungsangabe, das heißt die Information zum Identifizieren des Programm-Elements 202, empfangen und in dem mobilen Kommunikations-Endgerät 101 gespeichert.
In einem weiteren Schritt (Schritt 603) wird eine Zufallszahl N gebildet und unter Verwendung der Zufallszahl N, der ersten Identifizierungs-Information und der zweiten Identifizierungs-Information wird in einem weiteren Schritt (Schritt 604) die Anfragenachricht 205 gebildet und an die Authentifizierungseinheit 204 gesendet.
Nach vollständigem Senden der Anfragenachricht 205 geht das mobile Kommunikations-Endgerät 101 in einen Wartezustand über und wartet auf den Empfang einer Installations-Genehmigungs- Nachricht 501, 502, die von der Authentifizierungseinheit 204 gesendet werden soll.
Fig. 7 zeigt in einem Ablaufdiagramm 700 die einzelnen Verfahrensschritte, die gemäß diesem Ausführungsbeispiel der Erfindung in der Authentifizierungseinheit 204 durchgeführt werden.
Nach Starten des Verfahrens in einem ersten Schritt (Schritt 701) wird in einen Wartezustand übergegangen, in dem die Authentifizierungseinheit 204 auf den Empfang einer Anfragenachricht, die von einem mobilen Kommunikations- Endgerät 101 gesendet wurde, wartet.
Wird eine Anfragenachricht 205 in einem weiteren Schritt (Schritt 702) empfangen, so wird in einem ersten Prüfschritt (Schritt 703) unter Verwendung der zweiten Identifizierungsangabe überprüft, ob die Authentifizierungseinheit 204 überhaupt für das mobile Kommunikations-Endgerät 101, welches durch die zweite Identifizierungsangabe bezeichnet wird, zuständig ist, das heißt anders ausgedrückt, ob die Authentifizierungseinheit 204 das mobile Kommunikations-Endgerät 101 unterstützt.
Ist dies nicht der Fall, so wird die Installations- Genehmigungs-Nachricht zweiter Art 502 gebildet mit einer entsprechenden Fehlerinformation 503 und an das mobile Kommunikations-Endgerät 101 übertragen (Schritt 704).
Unterstützt die Authentifizierungseinheit 204 jedoch das durch die zweite Identifizierungs-Information identifizierte mobile Kommunikations-Endgerät 101, so wird in einem zweiten Prüfschritt (Schritt 705) unter Verwendung der ersten Identifizierungs-Information überprüft, ob das durch die erste Identifizierungs-Information bezeichnete Programm- Element von dem jeweiligen mobilen Kommunikations-Endgerät 101 akzeptiert werden darf.
Ist dies nicht der Fall, so wird wiederum eine Installations- Genehmigungs-Nachricht zweiter Art 502 mit der entsprechenden Fehlermeldung 503 in dem Schritt 704 gebildet und an das mobile Kommunikations-Endgerät 101 übertragen.
Darf jedoch das Programm-Element 202 von dem Kommunikations- Endgerät 101 akzeptiert, das heißt installiert bzw. ausgeführt werden, so wird von der Authentifizierungseinheit 204 in einem weiteren Schritt (Schritt 706) der kryptographische Hash-Wert H unter Verwendung des MD5- Verfahrens oder des SHA-1-Verfahrens bestimmt oder es wird ein gespeicherter, zuvor für das Programm-Element 202 spezifisch bestimmter kryptographische Hash-Wert ausgelesen bzw. ermittelt.
In einem weiteren Schritt (Schritt 707) wird ein Message Authentication Code unter Verwendung des symmetrischen geheimen Schlüssels, der sowohl der Authentifizierungseinheit 204 als auch der mobilen Kommunikations-Endgerät 101 bekannt ist, bestimmt.
In einem weiteren Schritt (Schritt 708) wird die Installations-Genehmigungs-Nachricht erster Art 501 gebildet und an das mobile Kommunikations-Endgerät 101 gesendet.
Nach dem Senden der Installations-Genehmigungs-Nachricht erster Art 501 oder zweiter Art 502 (Schritte 704 bzw. 708) wird das Verfahren in der Authentifizierungseinheit 204 beendet (Schritt 709).
Empfängt das mobile Kommunikations-Endgerät 101 die Installations-Genehmigungs-Nachricht 501, 503 (Schritt 605), so wird anschließend in einem dritten Prüfschritt (Schritt 606) überprüft, ob die Installations-Genehmigungs-Nachricht eine Installations-Genehmigungs-Nachricht zweiter Art 502 ist oder ob die Prüfsumme, das heißt der Message Authentication Code ungültig ist oder ob ein Formatfehler ermittelt wird.
Ist dies der Fall, so wird das geladene Programm-Element 202 nicht akzeptiert, das heißt nicht installiert und auch nicht ausgeführt (in Fig. 6 symbolisiert durch Block 607).
Ist die empfangene Installations-Genehmigungs-Nachricht eine Installations-Genehmigungs-Nachricht erster Art 501 und ist sowohl der Message Authentication Code MAC gültig und ist auch kein Formatfehler ermittelt worden, so wird in einem vierten Prüfschritt (Schritt 608) überprüft, ob die erste Identifizierungs-Information, die zweite Identifizierungs- Information sowie die Zufallszahl, die in der Installations- Genehmigungs-Nachricht erster Art 501 enthalten ist, übereinstimmt mit der jeweiligen ersten Identifizierungs- Information, zweiten Identifizierungs-Information und Zufallszahl, die von dem mobilen Kommunikations-Endgerät 101 in der Anfragenachricht 205 an die Authentifizierungseinheit 204 gesendet wurde.
Stimmen die erste Identifizierungs-Information und/oder die zweite Identifizierungs-Information und/oder die Zufallszahl in der Installations-Genehmigungs-Nachricht 501 und der Anfragenachricht 206 nicht überein, so wird das geladene Programm-Element 202 nicht akzeptiert (Block 607).
Stimmen die Informationen in der Anfragenachricht 206 und in der Installations-Genehmigungs-Nachricht 501 jedoch überein, so wird in einem fünften Prüfschritt (Schritt 609) überprüft, ob der in der Installations-Genehmigungs-Nachricht 501 enthaltene Hash-Wert H und der von der mobilen Kommunikations-Endgerät 101 ebenfalls ermittelte Hash-Wert über das Programm-Element 202 übereinstimmen. In diesem Zusammenhang ist anzumerken, dass in dem mobilen Kommunikations-Endgerät zur Bildung des Hash-Wertes der gleiche Algorithmus verwendet wird wie in der Authentifizierungseinheit 204.
Sind die Hash-Werte nicht gleich, so wird wiederum das geladene Programm-Element nicht akzeptiert (Block 607).
Sind jedoch die Hash-Werte gleich, so wird das geladene Programm-Element 202 akzeptiert (Schritt 610), das heißt das Programm-Element 202 wird installiert bzw. ausgeführt.
Nachdem das Programm-Element 202 akzeptiert oder nicht akzeptiert worden ist (Schritte 610, 607) wird das Verfahren in dem mobilen Kommunikations-Endgerät 101 beendet (Schritt 611).
Im Weiteren werden einige Alternativen zu dem oben beschriebenen Ausführungsbeispiel dargelegt.
Die Reihenfolge der Information, sowohl in der Anfragenachricht 206 als auch in der Installations- Genehmigungs-Nachricht 501 können flexibel verändert werden.
Ferner kann der Hash-Wert H bereits in der Anfragenachricht 206 enthalten sein. In diesem Fall wird in der Installations- Genehmigungs-Nachricht erster Art 501 lediglich bestätigt, dass der in der Anfragenachricht 206 enthaltene Hash-Wert H korrekt ist. In diesem Fall erfolgt somit die Überprüfung des Hash-Wertes H in der Authentifizierungseinheit 204 und nicht in dem mobilen Kommunikations-Endgerät 101.
Es ist ferner darauf hinzuweisen, dass die Verwendung einer Zufallszahl optional ist und dass in der Anfragenachricht bzw. in der Installations-Genehmigungs-Nachricht erster Art 501 die verwendeten Zufallszahlen unterschiedlich sein können.
In der Anfragenachricht 206 und/oder in der Installations- Genehmigungs-Nachricht können zusätzlich Identifizierungs- Informationen zum Identifizieren des Benutzers des mobilen Kommunikations-Endgeräts 101 und/oder zur Identifizierung der Authentifizierungseinheit 204 enthalten sein.
Ferner können mehrere Anfragen bzw. Installations- Genehmigungs-Nachricht in einer gebündelten Anfragenachricht bzw. gebündelten Installations-Genehmigungs-Nachricht enthalten sein und gemeinsam übertragen werden.
Falls das mobile Kommunikations-Endgerät keine Installations- Genehmigungs-Nachricht erster Art 501 erhalten hat, das heißt anders ausgedrückt, wenn innerhalb einer vorgegebenen Zeitdauer, das heißt nach Ablauf eines Timers, keine Installations-Genehmigungs-Nachricht erster Art 501 oder ein Installations-Genehmigungs-Nachricht zweiter Art 502 empfangen wurde, so kann von dem mobilen Kommunikations- Endgerät 101 erneut eine Überprüfung des Programm-Elements mittels einer weiteren Anfragenachricht erfolgen, optional bei einer anderen Authentifizierungseinheit. Durch diese Vorgehensweise kann die Zuverlässigkeit insbesondere bei Auftreten von Übertragungsfehlern oder bei Ausfall einer Authentifizierungseinheit weiter erhöht werden.
Alternativ zu der Zufallszahl kann ein vorgebbarer Zählerwert verwendet werden.
Es kann eine Authentifizierungseinheit vorgesehen werden, die Installations-Genehmigungs-Nachrichten erstellt für eine grundsätzlich beliebige Anzahl von Anbietern von Programm- Elementen. Es können ferner mehrere Authentifizierungseinheiten in dem Kommunikationssystem enthalten sein, die jeweils für einen oder mehrere Anbieter von Programm-Elementen Installations-Genehmigungs-Nachrichten erstellen und zu dem jeweiligen mobilen Kommunikations- Endgerät übertragen.
Wie oben erläutert wurde, kann die Authentifizierungseinheit in einem Rechner gemeinsam mit dem Programm-Element- Bereitstellungsrechner enthalten sein oder der Programm- Element-Bereitstellungsrechner kann unmittelbar von der Authentifizierungseinheit für das mobile Kommunikations- Endgerät 101 stellvertretend eine Installations-Genehmigungs- Nachricht anfordern und die erstellte Installations- Genehmigungs-Nachricht gemeinsam mit dem Programm-Element an das mobile Kommunikations-Endgerät übertragen.
Das Erstellen einer Installations-Genehmigungs-Nachricht erster Art kann seitens der Authentifizierungseinheit davon abhängig gemacht werden, ob eine Lizenz für das jeweilige Programm-Element vorhanden ist und der Authentifizierungseinheit bekannt ist.
Ferner kann vorgesehen sein, dass aufgrund einer erstellten Installations-Genehmigungs-Nachricht erster Art 501 ein rechtlicher finanzieller Anspruch begründet wird, beispielsweise ein Vergütungsanspruch für die Nutzung des geladenen Programm-Elements.
Die oben beschriebene Zusatzinformation kann auf mehrere, nacheinander übertragene Installations-Genehmigungs- Nachrichten aufgeteilt sein.
Bei einer solchen alternativen Ausführungsform kann es vorgesehen sein, dass die unterschiedlichen Installations- Genehmigungs-Nachrichten von unterschiedlichen Authentifizierungsinstanzen angefordert, erstellt und übertragen werden zu dem mobilen Kommunikations-Endgerät.
Anschaulich kann die Erfindung darin gesehen werden, dass ein sicheres Laden von Programm-Elementen, das heißt von Software, selbst für ein mobiles Kommunikations-Endgerät mit einer beschränkten Leistungsfähigkeit, das heißt mit beschränkten Ressourcen an Rechenleistung ermöglicht wird. Hierzu wird die Authentifizierungsinstanz anschaulich als Ticket-Server vorgesehen, die nur für aus Sicht der Authentifizierungseinheit gültige Programm-Elemente Installations-Tickets, das heißt die Installations- Genehmigungs-Nachrichten ausstellt. Diese Installations- Tickets werden verwendet, um sicherzustellen, dass ein mobiles Kommunikations-Endgerät nur gültige Software, das heißt nur gültige Programm-Elemente akzeptiert.

Claims (14)

1. Verfahren zum Bereitstellen eines Programmelements von einem ersten Rechner für einen zweiten Rechner,
bei dem von dem ersten Rechner das Programmelement zu dem zweiten Rechner übertragen wird,
bei dem eine Installations-Genehmigungs-Nachricht zu dem zweiten Rechner übertragen wird,
wobei die Installations-Genehmigungs-Nachricht zumindest folgende Informationen enthält:
eine erste Identifizierungsinformation, mit der das bereitgestellte Programmelement identifiziert wird,
eine zweite Identifizierungsinformation, mit der der zweite Rechner identifiziert wird,
einen kryptographischen Wert über zumindest die erste Identifizierungsinformation und die zweite Identifizierungsinformation,
wobei der kryptographische Wert unter Verwendung eines symmetrischen geheimen Schlüssels gebildet wird, welcher symmetrische geheime Schlüssel in dem zweiten Rechner und in einer Authentifizierungs-Einheit verfügbar ist,
bei dem unter Verwendung des symmetrischen geheimen Schlüssels der kryptographische Wert in dem zweiten Rechner verifiziert wird, und
bei dem in dem zweiten Rechner unter Verwendung der Installations-Genehmigungs-Nachricht und des verifizierten kryptographischen Werts ermittelt wird, ob das Programmelement in dem zweiten Rechner installiert oder ausgeführt werden darf.
2. Verfahren nach Anspruch 1, bei dem der kryptographische Wert ein Nachrichtenauthentifizierungscode ist.
3. Verfahren nach Anspruch 1 oder 2, bei dem der kryptographische Wert gemäß einem der folgenden Verfahren ermittelt wird:
CBC-MAC unter Verwendung einer bekannten Blockchiffre, beispielsweise DES, 3DES, AES, IDEA,
HMAC unter Verwendung einer bekannten Hash-Funktion, beispielsweise MD5, SHA-1, RIPEMD, RIPEMD160, die auch als HMAC-MD5, HMAC-SHAl, HMAC-RIPEMD, HMAC-RIPEMD160 bezeichnet werden,
HMAC unter Verwendung einer bekannten Hash-Funktion mit gekürzter Ausgabe, beispielsweise HMAC-MD5-80, HMAC- SHA1-80, HMAC-RIPEMD-80, HMAC-RIPEMD160-80 bei auf 80 Bit gekürzter Ausgabe,
MAA,
RIPE-MAC,
MD5-MAC.
4. Verfahren nach einem der Ansprüche 1 bis 3, bei dem in der Installations-Genehmigungs-Nachricht zumindest eine der folgenden Informationen enthalten ist:
Der Zeitpunkt, zu dem die Installations-Genehmigungs- Nachricht generiert worden ist,
eine Zeitangabe, mit der angegeben wird, wie lange die Installations-Genehmigungs-Nachricht gültig ist,
eine dritte Identifizierungsangabe zum Identifizieren des Anbieters des Programm-Elements,
eine Angabe einer Sicherheitsdomäne, der das bereitgestellte Programm-Element zugeordnet werden soll,
Berechtigungsangaben, die dem Programm-Element zugeordnet sind, und die dem Programm-Element bei dessen Durchführung in dem zweiten Rechner gewährt werden sollen,
eine Angabe über den Bedarf von Ressourcen, die das bereitgestellte Programm-Element hat,
eine Angabe, dass das Programm-Element auf einem vorgegebenen Typ (Modell) eines Rechners funktionsfähig ist,
eine Angabe, dass das Programm-Element kompatibel ist mit einem auf einem zweiten Rechner gespeicherten und funktionsfähigen weiteren Programm-Element.
5. Verfahren nach einem der Ansprüche 1 bis 4,
bei dem von dem zweiten Rechner an die Authentifizierungs-Einheit eine Anfragenachricht übertragen wird, mit der eine Installations- Genehmigungs-Nachricht für das in dem zweiten Rechner bereitgestellte Programm-Element angefordert wird,
wobei in der Anfragenachricht zumindest die erste Identifizierungs-Information und die zweite Identifizierungs-Information enthalten sind.
6. Verfahren nach einem der Ansprüche 1 bis 5, bei dem in der Installations-Genehmigungs-Nachricht ein erster Einmalwert enthalten ist.
7. Verfahren nach Anspruch 5, bei dem in der Anforderungsnachricht ein zweiter Einmalwert enthalten ist.
8. Verfahren nach Anspruch 6 und 7, bei dem der erste Einmalwert gleich dem zweiten Einmalwert ist.
9. Verfahren nach einem der Ansprüche 6 bis 8, bei dem als Einmalwert eine Zufallszahl oder ein Zählerwert verwendet wird.
10. Verfahren nach einem der Ansprüche 1 bis 9, bei dem die Authentifizierungseinheit in dem ersten Rechner enthalten ist.
11. Verfahren nach einem der Ansprüche 1 bis 10, bei dem der zweite Rechner ein Telekommunikations-Endgerät ist.
12. Verfahren nach Anspruch 11, bei dem der zweite Rechner ein mobiles Telekommunikations- Endgerät ist.
13. Verfahren nach Anspruch 11 oder 12, bei dem der zweite Rechner ein Mobilfunk-Kommunikations- Endgerät ist.
14. Kommunikationssystem zum Bereitstellen eines Programm- Elements,
mit einem ersten Rechner, in dem das Programm-Element gespeichert ist, wobei der erste Rechner eine Sendeeinheit enthält zum Senden des Programm-Elements zu einem zweiten Rechner
mit dem zweiten Rechner, wobei der zweite Rechner eine Empfangseinheit zum Empfangen des Programm-Elements und einer Installations-Genehmigungs-Nachricht enthält,
wobei die Installations-Genehmigungs-Nachricht zumindest folgende Informationen enthält:
eine erste Identifizierungsinformation, mit der das bereitgestellte Programm-Element identifiziert wird, eine zweite Identifizierungsinformation, mit der der zweite Rechner identifiziert wird,
einen kryptographischen Wert über zumindest die erste Identifizierungsinformation und die zweite Identifizierungsinformation,
mit einer Authentifizierungseinheit,
wobei ein symmetrischer geheimer Schlüssel in dem zweiten Rechner und in der Authentifizierungseinheit gespeichert ist,
bei dem die Authentifizierungseinheit eine Einheit zum Bilden des kryptographischen Werts unter Verwendung des symmetrischen geheimen Schlüssels aufweist,
bei dem der zweite Rechner eine Verifikationseinheit zum Verifizieren des kryptographischen Werts unter Verwendung des symmetrischen geheimen Schlüssels aufweist, und
bei dem der zweite Rechner eine Entscheidungseinheit aufweist, die derart eingerichtet ist, dass unter Verwendung der Installations-Genehmigungs-Nachricht und des verifizierten kryptographischen Werts ermittelt wird, ob das Programm-Element in dem zweiten Rechner installiert oder durchgeführt werden darf.
DE10109546A 2001-02-28 2001-02-28 Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements Ceased DE10109546A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE10109546A DE10109546A1 (de) 2001-02-28 2001-02-28 Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements
EP02708167A EP1364512A2 (de) 2001-02-28 2002-01-25 Verfahren und kommunikationssystem zum bereitstellen eines programm-elements
US10/469,346 US20040117612A1 (en) 2001-02-28 2002-01-25 Method and communication system for providing a program element
PCT/DE2002/000267 WO2002069598A2 (de) 2001-02-28 2002-01-25 Verfahren und kommunikationssystem zum bereitstellen eines programm-elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10109546A DE10109546A1 (de) 2001-02-28 2001-02-28 Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements

Publications (1)

Publication Number Publication Date
DE10109546A1 true DE10109546A1 (de) 2002-09-12

Family

ID=7675748

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10109546A Ceased DE10109546A1 (de) 2001-02-28 2001-02-28 Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements

Country Status (4)

Country Link
US (1) US20040117612A1 (de)
EP (1) EP1364512A2 (de)
DE (1) DE10109546A1 (de)
WO (1) WO2002069598A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10215747A1 (de) * 2002-04-10 2003-11-06 Siemens Ag Verfahren, Computerprogramm mit Programmcode-Mitteln und Computerprogramm-Produkt zu einem geschützten Herunterladen eines elektronischen Objekts in ein Personal Area Network (PAN) sowie Personal Area Network (PAN)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832466B1 (en) * 2006-01-27 2014-09-09 Trustwave Holdings, Inc. Methods for augmentation and interpretation of data objects
KR101590188B1 (ko) * 2009-05-08 2016-01-29 삼성전자주식회사 휴대단말기에서 소프트웨어 패키지의 무결성을 검증하는 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5343529A (en) * 1993-09-28 1994-08-30 Milton Goldfine Transaction authentication using a centrally generated transaction identifier
TW313642B (en) * 1996-06-11 1997-08-21 Ibm A uniform mechanism for using signed content
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission
US6282294B1 (en) * 1998-01-07 2001-08-28 Microsoft Corporation System for broadcasting to, and programming, a motor device in a protocol, device, and network independent fashion

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10215747A1 (de) * 2002-04-10 2003-11-06 Siemens Ag Verfahren, Computerprogramm mit Programmcode-Mitteln und Computerprogramm-Produkt zu einem geschützten Herunterladen eines elektronischen Objekts in ein Personal Area Network (PAN) sowie Personal Area Network (PAN)
DE10215747B4 (de) * 2002-04-10 2004-11-18 Siemens Ag Verfahren, Computerprogramm mit Programmcode-Mitteln und Computerprogramm-Produkt zu einem geschützten Herunterladen eines elektronischen Objekts in ein Personal Area Network (PAN) sowie Personal Area Network (PAN)

Also Published As

Publication number Publication date
WO2002069598A2 (de) 2002-09-06
EP1364512A2 (de) 2003-11-26
WO2002069598A3 (de) 2002-11-07
US20040117612A1 (en) 2004-06-17

Similar Documents

Publication Publication Date Title
DE60126236T2 (de) Verfahren zum Ermöglichen der Prüfung und Fehlerbeseitigung von Software an einem mobilen Kommunikationsgerät in einem sicheren Umfeld
DE69433771T2 (de) Verfahren und Vorrichtung zur Geheimhaltung und Authentifizierung in einem mobilen drahtlosen Netz
DE60315914T2 (de) Ad hoc Sicherheitszugriff auf Dokumente und Dienste
DE602004011559T2 (de) Verfahren zur authentifikation von anwendungen
DE60208614T2 (de) Verfahren und Vorrichtung zur Bereitstellung einer Liste von öffentlichen Schlüsseln in einem Public-Key-System
DE69933012T2 (de) Verfahren zur dynamischen aktualisierung von einheitskryptoschlüsseln in einem zellularen telefonsystem
DE60114986T2 (de) Verfahren zur herausgabe einer elektronischen identität
DE60200093T2 (de) Sichere Benutzerauthenifizierung über ein Kommunikationsnetzwerk
DE60310968T2 (de) Sicherheits- und Privatsphärenverbesserungen für Sicherheitseinrichtungen
DE60211360T2 (de) Verfahren zum authentisieren eines benutzers in einem endgerät, authentisierungssystem, endgerät und authorisierungseinrichtung
DE60119489T2 (de) Verfahren zur prüfung der datenintegrität, korrespondierende vorrichtung und mobiles endgerät
DE60119857T2 (de) Verfahren und Vorrichtung zur Ausführung von gesicherten Transaktionen
EP1080557B1 (de) Verfahren und anordnung zum rechnergestützten austausch kryptographischer schlüssel zwischen einer ersten computereinheit und einer zweiten computereinheit
EP0872076B1 (de) Verfahren zum rechnergestützten austausch kryptographischer schlüssel zwischen einer ersten computereinheit und einer zweiten computereinheit
DE10212620A1 (de) Sichere Benutzer- und Datenauthentisierung über ein Kommunikationsnetzwerk
EP2862340A1 (de) Mobilstation mit bindung zwischen endgerät und sicherheitselement
DE10393847B4 (de) Verfahren und Vorrichtung zum Auffinden einer gemeinsam genutzten vertraulichen Information ohne Beeinträchtigung nicht-gemeinsam genutzter vertraulicher Informationen
DE602005003631T2 (de) Ausschluss der Passwortaufdeckung bei Attributzertifikatausgabe
DE60115672T2 (de) Sicherheitsarchitektur der internet-protokoll telefonie
DE10109546A1 (de) Verfahren und Kommunikationssystem zum Bereitstellen eines Programm-Elements
DE102018102608A1 (de) Verfahren zur Benutzerverwaltung eines Feldgeräts
WO2003063409A2 (de) Verfahren zur datenverkehrssicherung in einer mobilen netzumgebung
EP4115584B1 (de) Gesicherter und dokumentierter schlüsselzugriff durch eine anwendung
WO2004098218A1 (de) Verfahren zur installation oder deinstallation eines programmcodes in einer teilnehmerstation eines funkkommunikationssystems sowie teilnehmerstation
EP3881486B1 (de) Verfahren zur bereitstellung eines herkunftsortnachweises für ein digitales schlüsselpaar

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection