DE60310437T2 - Sichere kommunikation - Google Patents

Sichere kommunikation Download PDF

Info

Publication number
DE60310437T2
DE60310437T2 DE60310437T DE60310437T DE60310437T2 DE 60310437 T2 DE60310437 T2 DE 60310437T2 DE 60310437 T DE60310437 T DE 60310437T DE 60310437 T DE60310437 T DE 60310437T DE 60310437 T2 DE60310437 T2 DE 60310437T2
Authority
DE
Germany
Prior art keywords
communication unit
passcode
key
communication
shared secret
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60310437T
Other languages
English (en)
Other versions
DE60310437D1 (de
Inventor
Christian Gehrmann
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of DE60310437D1 publication Critical patent/DE60310437D1/de
Publication of DE60310437T2 publication Critical patent/DE60310437T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • 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
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Description

  • BEREICH DER ERFINDUNG
  • Diese Erfindung bezieht sich auf sichere Kommunikation zwischen einer ersten Kommunikationseinheit und einer zweiten Kommunikationseinheit.
  • HINTERGRUND DER ERFINDUNG
  • In drahtlosen Kommunikationssystemen ist die Einrichtung einer sicheren Kommunikation zwischen den teilnehmenden Kommunikationseinheiten ein wichtiger Aspekt. In vielen Kommunikationssystemen ist ein Schlüsselaustauschmechanismus, der den teilnehmenden Kommunikationseinheiten ein gemeinsames geteiltes Geheimnis bereitstellt, implementiert. Ist das geteilte Geheimnis zwischen den beiden Einheiten erst einmal eingerichtet, so kann das geteilte Geheimnis zur Verschlüsselung und/oder zum Integritätsschutz der Nachrichten, die zwischen den beiden Einheiten kommuniziert werden, verwendet werden.
  • In zahlreichen Situationen wird die Einrichtung einer sicheren Kommunikation durch einen Schlüsselaustausch erreicht, bei dem eine Benutzerinteraktion wie zum Beispiel eine Benutzereingabe eines Durchgangscodes, beispielsweise als ein Passwort oder eine PIN, in eine oder beide Kommunikationseinheiten erfolgt. Im Besonderen kann eine Benutzerinteraktion in Situationen, in denen beide teilnehmenden Einheiten noch keine sichere Beziehung, wie ein geteiltes Geheimnis, etabliert haben, notwendig sein.
  • Ein Beispiel einer kurzreichweitigen drahtlosen Kommunikationstechnologie ist Bluetooth, eine Funkkommunikationstechnologie, die im freien ISM- (Industrial, Scientific and Medical)Band bei 2,45 GHz weltweit zur Verfügung steht. Das Band stellt eine Funkbandbreite von 83,5 MHz zur Verfügung. Bluetooth ist eine Technologie, die eine günstige leistungsarme Implementierung des Funks ermöglicht. Die Verwendung von Bluetooth ermöglicht es ad-hoc Arbeitsgeräte in so genannten Piconets zusammenzuschließen. Der Bluetooth-Standard (siehe „Baseband Specification" in „Specification of the Bluetooth System, Core, Version 1.1", Bluetooth Special Interest Group, Februar 2001) bietet zusätzlich zahlreiche Sicherheitsmechanismen. Im Speziellen stellt der Bluetooth-Standard einen Paarigkeitsmechanismus zur Verfügung, bei dem zwei Geräte, welche zuvor nicht verbunden waren, einen Schlüsselaustausch vornehmen, um ein geteiltes Geheimnis, den so genannten Verbindungsschlüssel, einzurichten. Der Verbindungsschlüssel wird anhand einer PIN ermittelt, welche durch den/die Benutzer der Geräte eingegeben wird. Der Verbindungsschlüssel wird später für die geschützte Bluetooth-Kommunikation verwendet.
  • Das so genannte Diffie-Hellman-Schlüsselaustauschprotokoll, offenbart im US-Patent Nr. 4200770, sieht zwei Geräte mit einem geteilten Geheimnis vor. Nach diesem Protokoll erzeugt jedes Gerät einen Geheimschlüssel, erzeugt anhand dieses Geheimschlüssels einen öffentlichen Schlüssel und schickt den öffentlichen Schlüssel an das andere Gerät. Das geteilte Geheimnis wird dann durch jedes Gerät anhand seines Geheimschlüssels und des entsprechenden empfangenen öffentlichen Schlüssels des anderen Geräts erzeugt.
  • Ein allgemeines Problem eines solchen Schlüsselaustauschmechanismus ist, dass dieser durch einen „man-in-the-middle"-Angriff attackierbar ist, d. h. einen Sicherheitsdurchbruch, bei dem ein bösartiger Benutzer Nachrichten zwischen den Kommunikationsgeräten abhört und modifiziert.
  • Die europäische Patentanmeldung EP 1248408 offenbart ein Diffie-Hellman-Schlüsselaustauschprotokoll, welches so modifiziert wurde, dass die beiden Teilnehmer sich einander unter Verwendung eines geteilten Passworts authentifizieren. Bei diesem Stand-der-Technik-Verfahren erzeugt ein Teilnehmer den Diffie-Hellman-Wert gx und kombiniert diesen, unter Verwendung einer Gruppenoperation in Verbindung mit dem Diffie-Hellman-Protokoll, mit einer Funktion des Passworts.
  • Der Artikel „Enhancements to Bluetooth baseband security" von C. Gehrmann und K. Nyberg, Proceedings of Nordsec 2001, Kopenhagen, November 2001, beschreibt ein Authentifikationsschema, welches eine Benutzerinteraktion beinhaltet. Im Speziellen beschreibt der obige Artikel ein Verfahren zur Authentifizierung eines geteilten Geheimnisses, welches zuvor durch einen anonymen Diffie-Hellman-Schlüsselaustausch eingerichtet wurde. Dieses Verfahren basiert auf der Annahme, dass, sollte eine man-in-the-middle-Institution beim Diffie-Hellman-Schlüsselaustausch involviert sein, die eingerichteten Diffie-Hellman-Schlüssel in den legitimierten Geräten unterschiedlich sind. Die Authentifizierung basiert auf Prüfwerten, die durch die beiden Geräte auf Basis eines eingerichteten geteilten Geheimnisses berechnet werden. Die ermittelten Prüfwerte werden entweder auf beiden Geräten angezeigt und durch die Benutzer verglichen, oder der Prüfwert wird durch ein Gerät berechnet und in das andere Gerät durch den Benutzer eingegeben, damit dem anderen Gerät eine Durchführung eines Vergleichs erlaubt wird.
  • Nachteilig am dargestellten Stand der Technik ist, dass eine personengebundene Interaktion zur Authentifizierung des eingerichteten geteilten Geheimnisses zum Zeitpunkt der Einrichtung der sicheren Kommunikation stattffindet. Jedoch kann dies nicht gewünscht sein, z. B. in Situationen, in denen die eigentliche sichere Kommunikation schnell eingerichtet sein soll.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die dargestellten und weiteren Probleme werden durch ein Verfahren zum Bereitstellen sicherer Kommunikation zwischen einer ersten und einer zweiten Kommunikationseinheit gelöst, wobei das Verfahren einen Schlüsselaustausch zwischen der ersten und zweiten Kommunikationseinheit aufweist, aus dem sich ein geteilter Geheimschlüssel ergibt und der Schlüsselaustausch eine Benutzerinteraktion beinhaltet; wobei das Verfahren folgende Schritte aufweist:
    • – Bereitstellen, wenigstens teilweise mithilfe von Benutzerinteraktion, eines Durchgangscodes für die erste und zweite Kommunikationseinheit;
    • – Erzeugen eines ersten Beitrags zum geteilten Geheimschlüssel durch die erste Kommunikationseinheit und eines zweiten Beitrags zum geteilten Geheimschlüssel durch die zweite Kommunikationseinheit, und Übertragen jedes erzeugten Beitrags an die jeweilige andere entsprechende Kommunikationseinheit;
    • – Authentifizieren des übertragenen ersten und zweiten Beitrags durch die entsprechende empfangende Kommunikationseinheit, basierend auf wenigstens dem Durchgangscode; und
    • – Einrichten des geteilten Geheimschlüssels durch jede der Kommunikationseinheiten anhand wenigstens des entsprechenden empfangenen ersten oder zweiten Beitrags, falls der entsprechende empfangene Beitrag erfolgreich authentifiziert wurde.
  • Vorteilhaft an dieser Erfindung ist, dass der Durchgangscode bestimmbar ist und den Kommunikationseinheiten im Vorgriff des eigentlichen Schlüsselaustausches zur Verfügung steht und zu einem späteren Zeitpunkt, wenn der eigentliche Schlüsselaustausch, d. h. die eigentliche Erzeugung des geteilten Geheimnisses, stattfindet, verwendet wird. Folglich ist die Notwendigkeit einer Benutzerinteraktion während der eigentlichen Erzeugung des geteilten Geheimnisses zur Authentifizierung des geteilten Geheimnisses eliminiert, ohne dabei die Sicherheit des Verfahrens zu beeinträchtigen.
  • Ein weiterer Vorteil der Erfindung ist, dass sie das Risiko eines „man-in-the-middle"-Angriffs in Verbindung mit einem Schlüsselaustausch vermindert und dadurch die Sicherheit eines Kommunikationssystems erhöht.
  • Es wird bevorzugt, dass der Durchgangscode automatisch erzeugt wird, z. B. durch die erste Kommunikationseinheit, wodurch die Zufälligkeit des Durchgangscodes garantiert wird. Wird der durch eine der Kommunikationseinheiten erzeugte Durchgangscode an die andere Kommunikationseinheit über einen Kommunikationskanal mit Benutzerinteraktion getrennt von der Kommunikationsverbindung, welche für den Schlüsselaustausch verwendet wird, übertragen, ist die Sicherheit erhöht, da das Risiko eines feindlichen Abhörens des getrennten Kommunikationskanals ebenfalls niedrig ist. Beispielsweise kann ein getrennter Kommunikationskanal mit Benutzerinteraktion eine Telefonleitung, eine E-Mail oder ein Brief, die/der als Bestandteil des Registrierungsprozesses gesendet wurde, oder dergleichen sein. Es wird bevorzugt, dass der Durchgangscode kurz, bevorzugt kurz genug, ist, um über eine Mensch-Maschine-Schnittstelle oder Mensch-Mensch-Schnittstelle kommuniziert zu werden. Beispielsweise kann der Durchgangscode eine Zeichenkette mit weniger als zehn Stellen und/oder Buchstaben und/oder Symbolen, z. B. Hexadezimalstellen, sein und dadurch die Kommunikation vereinfachen. Beispielsweise kann der Durchgangscode einfach vom Bildschirm der Kommunikationseinheit, welche den Code erzeugte, ausgelesen, über Telefon, Post oder dergleichen kommuniziert, und in eine andere Einheit, ein Telefon, einen Rechner oder dergleichen eingegeben werden.
  • Folglich bezieht die Benutzerinteraktion einen Benutzer wenigstens einer der Kommunikationseinheiten ein, um den Durchgangscode auszulesen, z. B. von einem Bildschirm, den Durchgangscode einzugeben oder wenigstens eine Benutzereingabe auszuführen hinweisend auf eine Berechtigung, den Durchgangscode zu übertragen, oder dergleichen, d. h. die Benutzerinteraktion beinhaltet wenigstens Ausgeben des Durchgangscodes durch eine der Kommunikationseinheiten oder Empfangen einer Eingabe eines Benutzers, z. B. ein Eingabehinweis des Durchgangscodes. In einigen Ausführungsformen beinhaltet die Benutzerinteraktion weiter eine Mensch-Mensch-Schnittstelle, z. B. durch das Kommunizieren des Durchgangscodes eines Benutzers eines Geräts zum Benutzer des anderen Geräts.
  • Der Schlüsselaustausch kann auf einem möglichen Schlüsselaustauschmechanismus basieren, der zu einem geteilten Geheimnis führt, bevorzugterweise einem geteilten Geheimnis, welches lang genug ist, um ausreichende Sicherheit während der folgenden Kommunikation zu gewährleisten. In einer Ausführungsform ist der Schlüsselaustausch ein Diffie-Hellman-Schlüsselaustausch. Weitere Beispiele für Schlüsselaustauschmechanismen beinhalten den RSA-Schlüsselaustausch. Es ist ein Vorteil, dass der Schlüsselaustausch entsprechend dieser Erfindung auf allgemeinen Standardschlüsselaustauschmechanismen basieren kann.
  • Nach einer bevorzugten Ausführungsform dieser Erfindung umfasst der Schritt des Authentifizierens des übertragenen ersten und zweiten Beitrags Authentifizieren des ersten Beitrags durch das Berechnen eines Markerwerts des Nachrichtenauthentifikationscodes, wobei der Markerwert anhand des ersten Beitrags und des Durchgangscodes berechnet wird, wodurch sich ein effizientes Authentifizieren des ersten Beitrags, ein hoher Grad an Sicherheit und geringe Anforderungen an die Rechnerressourcen ergibt. Bevorzugterweise ist der Nachrichtenauthentifizierungscode (MAC) ein nicht-konditionaler-sicherer MAC, d. h. ein MAC, der substantiell, selbst mit großer Rechnerleistung, nicht geknackt werden kann.
  • Nach einer weiteren bevorzugten Ausführungsform wird der Markerwert durch das Auswählen eines Symbols des Codeworts eines Fehlerkorrekturcodes berechnet, z. B. eines Reed-Solomon-Codes, wobei das Codewort dem ersten Beitrag entspricht und das Symbol durch den Durchgangscode identifiziert wird. Folglich steht eine hohe Sicherheit zur Authentifizierung selbst bei kurzen Durchgangscodes zu Verfügung.
  • Bevorzugterweise umfasst die Authentifikation zusätzlich Berechnen eines Streuwerts einer Ein-Richtungsstreuwertfunktion anhand des ersten Beitrags und Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, wobei das Codewort dem Streuwert des ersten Beitrags einspricht, und das Symbol wird durch den Durchgangscode identifiziert. Folglich kann die Länge des Durchgangscodes weiter reduziert werden, wobei ein hoher Grad an Sicherheit gewährleistet ist.
  • Der Ausdruck Kommunikationseinheit umfasst jedes Gerät oder eine Gruppe von Geräten, welche passende Schaltkreise zum Empfangen und/oder Übertragen von Kommunikationssignalen aufweisen, z. B. Funkkommunikationssignale zur Erleichterung der Datenkommunikation. Beispiele solche Geräte sind tragbare Funkkommunikationsausrüstung und andere handgehaltene oder tragbare Geräte. Der Begriff tragbare Funkkommunikationsausrüstung umfasst jegliche Ausrüstungen, wie Mobiltelefone, Pager, Kommunikatoren, d.h. elektronische Organisatoren, intelligente Telefone, PDAs (Personal Digital Assistants), hangehaltene Rechner oder dergleichen.
  • Weiter Beispiele für Kommunikationseinheiten sind stationäre Kommunikationsausrüstung, beispielsweise stationäre Rechner oder andere elektronische Ausrüstungen, die eine drahtlose Schnittstelle aufweisen. In einer Ausführungsform kann eine der Einheiten eine Vielzahl von Geräten umfassen. Beispielsweise können die Kommunikationseinheiten ein Rechnernetzwerk mit z. B. einem Zugangsknoten sein, welcher dem Rechnernetzwerk einen drahtlosen Zugang bereitstellt, z. B. ein LAN.
  • Beispielsweise können die Kommunikationseinheiten nach der Bluetoth-Technologie oder jeder anderen drahtlosen Kommunikationstechnologie betrieben werden, z. B. drahtlosem LAN.
  • Weitere bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen beschrieben.
  • Es wird angemerkt, dass die oben beschriebenen und folgenden Merkmale des Verfahrens in Software implementierbar sind und in einem Datenverarbeitungssystem oder anderen Verarbeitungsmittel, die auf der Ausführung von rechnerausführbaren Anweisungen begründet sind, ausführbar sind. Die Anweisungen können Programmcodemittel sein, die von einem Speichermedium oder von einem anderen Rechner über ein Rechnernetzwerk in einen Speicher, wie zum Beispiel einen RAM, geladen werden. Alternativ können die beschriebenen Merkmale in festverdrahteten Schaltkreisen anstelle von Software oder in Kombination mit Software implementiert sein.
  • Die vorliegende Erfindung kann auf verschiedene Arten implementiert sein, inklusive des oben und des im folgenden beschriebenen Verfahrens, ein Kommunikationssystem und weitere Produktmitteln, wobei jedes eine oder mehr der Vorzüge und Vorteile, die im Zusammenhang mit dem ersten Verfahren beschrieben sind, erbringt und jedes eine oder mehrere bevorzugte Ausführungsformen hat, entsprechend den bevorzugten Ausführungsformen, die im Zusammenhang mit dem ersten Verfahren beschrieben sind und in den abhängigen Ansprüchen offenbart werden.
  • Die Erfindung bezieht sich weiter auf ein Kommunikationssystem zum Bereitstellen sicherer Kommunikation wenigstens zwischen einer ersten und einer zweiten Kommunikationseinheit mithilfe eines Schlüsselaustauschs zwischen der ersten und der zweiten Kommunikationseinheit, aus dem sich ein geteilter Geheimschlüssel ergibt, wobei der Schlüsselaustausch eine Benutzerinteraktion beinhaltet, wobei das Kommunikationssystem aufweist:
    • – Mittel zum Bereitstellen, wenigstens teilweise mithilfe von Benutzerinteraktionen, eines Durchgangscodes für die erste und zweite Kommunikationseinheit;
    • – Mittel zum Erzeugen eines ersten Beitrags zum geteilten Geheimschlüssel durch die erste Kommunikationseinheit und eines zweiten Beitrags zum geteilten Geheimschlüssel durch die zweite Kommunikationseinheit;
    • – Mittel zum Übertragen jedes erzeugten Beitrags an die jeweilige andere entsprechende Kommunikationseinheit;
    • – Mittel zum Authentifizieren des übertragenen ersten und zweiten Beitrags durch die entsprechende empfangende Kommunikationseinheit, basierend auf dem Durchgangscode; und
    • – Mittel zum Einrichten des geteilten Geheimschlüssels durch jede der Kommunikationseinheiten anhand wenigstens des entsprechenden empfangenen ersten oder zweiten Beitrags, falls der entsprechende empfangene Beitrag erfolgreich authentifiziert wurde.
  • Die Erfindung bezieht sich weiter auf eine Kommunikationseinheit zum Bereitstellen sicherer Kommunikation mit einer anderen Kommunikationseinheit mithilfe eines Schlüsselaustauschs, aus dem sich ein geteilter Geheimschlüssel ergibt, wobei der Schlüsselaustausch eine Benutzerinteraktion beinhaltet, die Kommunikationseinheit Datenverarbeitungsmittel, Benutzerschnittstellenmittel und eine Kommunikationsschnittstelle aufweist, und die Verarbeitungsmittel zur Durchführung der folgenden Schritte angepasst sind:
    • – Erzeugen eines Durchgangscodes, der wenigstens teilweise mithilfe von Benutzerinteraktion über Benutzerschnittstellenmittel der anderen Kommunikationseinheit bereitgestellt wird;
    • – Erzeugen und Übertragen über die Kommunikationsschnittstelle eines ersten Beitrags zum geteilten Geheimschlüssel, und Empfangen über die Kommunikationsschnittstelle eines zweiten Beitrags zum geteilten Geheimschlüssels, wobei der zweite Beitrag durch die andere Kommunikationseinheit erzeugt wird;
    • – Authentifizieren des empfangenen zweiten Beitrags, basierend auf dem Durchgangscode; und
    • – Einrichten des geteilten Geheimschlüssels anhand wenigstens des zweiten Beitrags, falls der empfangene zweite Beitrag erfolgreich authentifiziert wurde.
  • Die Erfindung bezieht sich weiter auf eine Kommunikationseinheit zum Bereitstellen sicherer Kommunikation mit einer anderen Kommunikationseinheit mithilfe eines Schlüsselaustauschs, aus dem sich ein geteilter Geheimschlüssel ergibt, wobei der Schlüsselaustausch eine Benutzerinteraktion beinhaltend, und die Kommunikationseinheit Datenverarbeitungsmittel, Speichermitte und eine Kommunikationsschnittstelle aufweist, wobei die Verarbeitungsmittel zur Durchführung eines Schlüsselaustausches angepasst sind, aus dem sich ein geteilter Geheimschlüssel ergibt, wobei der Schlüsselaustausch umfasst:
    • – Empfangen, wenigstens teilweise mithilfe von Benutzerinteraktion, und Speichern eines durch eine andere Kommunikationseinheit erzeugten Durchgangscodes;
    • – Empfangen eines ersten Beitrags zum geteilten Geheimschlüssel, erzeugt durch die andere Kommunikationseinheit, über die Kommunikationsschnittstelle;
    • – Authentifizieren des empfangenen ersten Beitrags, basierend auf dem Durchgangscode;
    • – falls der empfangene erste Beitrag erfolgreich authentifiziert wurde, Einrichten des geteilten Geheimschlüssels anhand wenigstens des ersten Beitrags und Übertragen eines zweiten Beitrags des geteilten Geheimschlüssels über die Kommunikationsschnittstelle.
  • An dieser Stelle umfasst der Ausdruck Verarbeitungsmittel jeglichen Schaltkreis und/oder jegliches Gerät, welche geeignet sind, die obigen Funktionen auszuführen. Im Speziellen umfasst der obige Ausdruck allgemeine oder spezialprogrammierbare Microprozessoren, DSPs (Digital Signal Processors), ASICs (Application Specific Integrated Circuits), PLAs (Programmable Logic Arrays), FPGAs (Field Programmable Gate Arrays), elektronische Schaltungen für Spezialzwecke usw. oder eine Kombinationen der selbigen.
  • Die Kommunikationsschnittstelle kann jegliche geeignete Schaltung oder jegliches Gerät zur Datenkommunikation über einen drahtlosen Kommunikationskanal sein. Beispielsweise ist die Schnittstelle ein Funksender oder -empfänger oder ein Sender/Empfänger, der eine andere Kommunikationstechnologie verwendet, z. B. Infrarotsignale oder dergleichen.
  • Der Ausdruck Speichermittel beabsichtigt, jegliche geeignete Anordnung oder jegliches Gerät zur Datenspeicherung zu umfassen, beispielsweise ein EEPROM (Electrically Erasable Programmable Read Only Memory), Flashspeicher, EPROM (Erasable Programmable Read Only Memory), RAM (Random Access Memory). Die Speichermittel können ein integrierter Teil einer Kommunikationseinheit sein oder sind mit der Einheit verbunden, z. B. lösbar eingefügt. Beispielsweise können die Speichermittel ein entfernbares Speichermedium sein, z. B. eine Speicherkarte, eine PCMCIA-Karte oder dergleichen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die obigen und weiteren Aspekte der Erfindung werden anhand der im Folgenden mit Bezug auf die Zeichnungen beschriebenen Ausführungsformen ersichtlich und einleuchtend, wobei:
  • 1 ein Flussdiagramm einer Ausführungsform eines sicheren Schlüsselaustauschmechanimus darstellt;
  • 2a–b Flussdiagramme weiterer Ausführungsformen eines sicheren Schlüsselaustauschmechanimus darstellen;
  • 3 ein Flussdiagramm des Verfahrens zum Berechnen eines Nachrichtenauthentifikationscodes darstellt, welcher auf einen Fehlerkorrekturcode basiert;
  • 4a–b Flussdiagramme von Beispielen eines Verfahrens zur Berechnung eines Nachrichtenauthentifikationscodes darstellen, welche auf dem Reed-Solomon-Code basiert;
  • 5 eine Tabelle mit Wahrscheinlichkeiten eines erfolgreichen Substitutionsangriffs für eine Anzahl von konstruierten Beispielen der MAC-Konstrukte aus 4a–b darstellt;
  • 6 ein Blockdiagramm zweier Kommunikationseinheiten zeigt;
  • 7 ein Blockdiagramm einer tragbaren Kommunikationseinheit zeigt, welche mit einem Rechnernetzwerk über ein Zugangsknoten eines Rechnernetzwerks kommuniziert.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • 1 stellt ein Flussdiagramm einer Ausführungsform eines sicheren Schlüsselaustauschmechanismus dar. Sollten zwei Einheiten, allgemein als A und entsprechend B bezeichnet, zur Durchführung eines sicheren Schlüsselaustausches vorgesehen sein, um einen geteilten Geheimschlüssel einzurichten, führen sie folgende Schritte aus, wobei die Schritte der linken Seite des Flussdiagramms, allgemein durch das Bezugszeichen 101 bezeichnet, durch die Einheit A ausgeführt werden, und wobei die Schritte der rechten Seite des Flussdiagramms, allgemein durch das Bezugszeichen 102 bezeichnet, durch die Einheit B ausgeführt werden.
  • Der folgende Schlüsselaustausch basiert auf dem so genannten Diffie-Hellman-Verfahren zur Schlüsselübereinkunft. Um das Verständnis der folgenden Beschreibung zu erleichtern, wird die Diffie-Hellman-Schlüsselübereinkunft kurz erläutert. Für eine detailliertere Beschreibung wird auf die US 4200770-Schrift verwiesen.
  • Wenn zwei Einheiten A und B einen geteilten Geheimschlüssel einrichten wollen, einigen sie sich auf eine Primzahl p > 2 und eine Basis g, welche eine Stammfunktion mod p ist. Die Parameter p und g können in beiden Einheiten hart kodiert sein, sie können durch eine der Einheiten erzeugt und an die andere Einheit kommuniziert sein, sie können von einem Dritten oder dergleichen stammen. Beispielsweise, um p und g zu erzeugen, kann ein Wert für p ausgewählt sein, beispielsweise ein große Zufallszahl, die z. B. 1000 oder mehr Bits aufweist, und, um zu testen, ob p eine Primzahl ist oder nicht, wird ein bekannter Primzahltest durchgeführt. Ist sie es nicht, wird ein neues p ausgewählt und getestet, bis eine Primzahl gefunden ist. Danach wird eine Zufallszahl g ausgewählt und getestet, ob es ein Erzeuger ist, falls nicht wird ein neues g ausgewählt und getestet, solange bis ein Erzeuger gefunden ist.
  • Jede Einheit erzeugt eine Geheimzahl, welche niederwertiger als p – 1 ist. Im Weiteren wird die durch die Einheit A erzeugte Geheimzahl x benannt, und die durch Einheit B erzeugte Geheimzahl wird y benannt. Dann erzeugt jede Einheit einen öffentlichen Schlüssel, welcher auf dem Geheimwert und der obigen Parameter basiert: Einheit A erzeugt X = gxmod p, wobei mod die Modulofunktion bezeichnet, d. h. den Rest einer Ganzzahldivision. Analog erzeugt Einheit B Y = gymod p.
  • Die Einheiten tauschen ihre öffentlichen Schlüssel aus, und jede Einheit berechnet einen allgemeinen Geheimwert S gemäß Einheit A: S = (Y)xmod p Einheit B: S = (X)ymod p
  • Als Ergebnis folgt, dass die Einheiten A und B einen allgemeinen Geheimschlüssel S eingerichtet haben, ohne dabei die Geheimzahlen x und y zu kommunizieren, da (gymod p)xmod p = (gxmod p)ymod p.
  • Nun bezugnehmend auf 1, erzeugt Einheit A in einem Startschritt 103 des Schlüsselaustauschs eine Zufallszahl x, einen entsprechenden öffentlichen Diffie-Hellman-Schlüssel x und eine kurze Geheimzeichenkette K oder andere Durchgangscodes. Der Diffie-Hellman öffentliche Schlüssel X wird wie oben beschrieben basierend auf den entsprechenden Parametern g und p berechnet, auf die sich die Einheiten A und B geeinigt haben. Bevorzugterweise wird die Geheimzeichenkette K zufällig aus einem geeigneten Schlüsselraum bestimmt, z. B. als eine 4-6 stellige Hexadezimalzeichenkette.
  • Im Folgeschritt 104 verwendet die Einheit A einen Nachrichtenauthentifikationscode (MAC), um einen Markerwert t anhand des öffentlichen Schlüssels X zu berechnen. An dieser Stelle verweist der Ausdruck Nachrichtenauthentifikationscode auf jede geeignete Funktion zur Berechnung eines Markerwerts einer Nachricht, die zwischen Sender und Empfänger kommuniziert wird, wobei die Funktion auf einem symmetrisch geteilten Geheimnis zwischen Sender und Empfänger basiert. Der Geheimwert wird der Schlüssel genannt. Der Geheimschlüssel ist eine Eingabevariable der MAC-Berechnung. Nur derjenige, der den korrekten Geheimschlüssel besitzt, ist in der Lage den Markerwert für eine beliebige Nachricht zu berechnen. Ein Markerwert eines MACs ist ein Integritätsprüfwert, welcher anhand der Originalnachrichtdaten berechnet und an den Empfänger der Nachricht kommuniziert wird. Nach dem Empfangen einer durch ein MAC geschützten Nachricht berechnet der Empfänger einen entsprechenden Markerwert auf Basis der empfangenen Daten. Sollte der berechnete Markerwert gleich dem empfangenen Markerwert sein, wird die Nachricht als authentisch akzeptiert. Beispiele bekannter MACs umfassen den so genannten HMAC-(Keyed-Hashing for Message Authentification)Algorithmus, welcher auf einer kryptographischen Ein-Richtungsstreuwertfunktion basiert, wie der sichere Hash-Algorithmus SHA-1 und der Nachrichtenauszug-Algorithmus MD5. MACs werden in zahlreichen Kommunikationsprotokollen zur Gewährleistung des Datenintegritätsschutzes verwendet. Eine Ausführungsform einer MAC-Funktion basiert auf Fehlerkorrekturcodes, welche weiter unten beschrieben werden. In Schritt 104 beinhaltet die Eingabe in die MAC-Funktion den öffentlichen Schlüssel X, und die erzeugte Geheimzeichenkette K wird als Schlüssel für die MAC-Berechnung des Markerwerts t verwendet. Es versteht sich, dass in einigen Ausführungsformen, bei denen zusätzliche Daten während der Schlüsseleinrichtung kommuniziert werden, der Markerwert anhand einer Nachricht mit dem öffentlichen Schlüssel X und zusätzliche Daten berechenbar ist, wodurch der Integritätsschutz für die zusätzlichen Daten ebenfalls gewährleistet ist.
  • In Schritt 105 werden die generierte Geheimzeichenkette K und der berechnete Markerwert t an Einheit B über geeignete Kommunikationskanäle mit Benutzerinteraktion kommuniziert, wie es durch den gestrichelten Pfeil 106 in 1 angezeigt ist. Beispielsweise können die Werte von K und t durch Ablesen der Werte vom Bildschirm der Einheit A und durch Einpflegen der Schlüsselwerte in Einheit B, von Einheit A zu Einheit B übertragen werden. In einer weiteren Ausführungsform können die Werte durch andere Mittel übertragen werden, z. B. über ein Telekommunikationsnetzwerk, durch Senden der Werte als eine verschlüsselte Nachricht, z. B. eine E-Mail, eine SMS oder dergleichen, oder über jeglichen anderen geeigneten Kommunikationskanal, welcher eine Benutzerinteraktion einschließt, bevorzugterweise ein anderer Kommunikationskanal als der Kommunikationskanal, für den die sichere Kommunikation eingerichtet werden soll. Es ist vorteilhaft, dass die Einheiten A und B keine Kommunikationsverbindung miteinander eingerichtet haben müssen, sie müssen nicht einmal in der Nähe von einander sein. Beispielsweise kann Benutzer von Einheit A die Geheimzeichenkette und den Markerwert über Telefon, Post oder jedes andere geeignete Mittel dem Benutzer von Einheit B mitteilen. Weiterhin kann die Kommunikation der erzeugten Werte K und t vorteilhaft zu der Zeit erfolgen, zu der der geteilte Geheimschlüssel tatsächlich zwischen den Einheiten eingerichtet werden soll, z. B. als Teil einer Registrierungsprozedur. In einer Ausführungsform wird ein Kennzeichner ID zusammen mit K und t kommuniziert, um das spätere Abrufen von K und t zu erleichtern.
  • In Schritt 107 empfängt Einheit B die Werte von K und t und in Schritt 110 speichert sie diese in einem Speichermedium 111 der Einheit B, z. B. einem EPROM oder EEPROM eines tragbaren Geräts, auf einer Smart-Card, auf einer Festplatte oder jeglichem geeigneten Datenspeichergerät. Sollten die Werte K und t sich auf einen Kennzeichner ID beziehen, werden die Werte K und t in Beziehung zu diesem Kennzeichner gespeichert, z. B. bei Verwendung des Kennzeichners als Index.
  • Analogerweise speichert in Schritt 108 Einheit A die Geheimzeichenkette K in ein Speichermedium 109 der Einheit A, optional in Bezug auf den Kennzeichner ID. Weiterhin speichert Einheit A den Geheimwert x, auf dessen Basis der öffentliche Schlüssel X berechnet wurde.
  • Dies schließt den anfänglichen Registrierungsprozess ab. Die folgenden Schritte inklusive des tatsächlichen Schlüsselaustauschs werden durchgeführt, wenn die Einheiten A und B tatsächlich über eine Kommunikationsverbindung verbunden sind. Dies kann direkt nach obiger anfänglicher Registrierung oder zu einem späteren Zeitpunkt, wie durch die Linien 127 in 1 angezeigt, erfolgen.
  • In Schritt 112 initiiert Einheit A, durch Übertragen des öffentlichen Schlüssels X an Einheit B, den tatsächlichen Schlüsselaustausch über eine drahtlose Funkverbindung. In einer Ausführungsform, in der die Geheimzeichenkette K in Bezug zu einem Kennzeichner ID steht, überträgt Einheit A auch den Kennzeichner. Gleichermaßen, falls in Schritt 104 der Markerwert t für den öffentlichen Schlüssel und einige zusätzliche Daten berechnet wurde, werden diese zusätzlichen Daten auch von Einheit A zu Einheit B gesendet.
  • Wenn Einheit B den öffentlichen Schlüssel X von Einheit A empfängt (Schritt 113), fragt in Schritt 114 Einheit B die Geheimzeichenkette K vom Speichermedium 111 ab, in einer Ausführungsform auf Basis des Kennzeichners ID. Einheit B berechnet den MAC-Markerwert t' des empfangenen öffentlichen Schlüssels X und basierend auf der Geheimzeichenkette K.
  • In Schritt 115 vergleicht Einheit B den berechneten Markerwert t' mit dem zuvor gespeicherten Markerwert t. Sollten die Markerwerte unterschiedlich sein, wird der empfangene öffentliche Schlüssel abgelehnt (Schritt 116). Beispielsweise kann Einheit B den Schlüsselaustausch abbrechen, durch Senden einer entsprechenden Nachricht an Einheit A und/oder durch Informieren des Benutzers über den Abbruch, z. B. durch Bereitstellen einer visuellen oder hörbaren Anzeige. Andererseits, d. h. sollten die Markerwerte gleich sein, wird der öffentliche Schlüssel X akzeptiert und der Prozess schreitet mit Schritt 117 weiter.
  • In Schritt 117 erzeugt Einheit B einen Geheimwert y und einen entsprechenden öffentlicher Diffie-Hellman-Schlüssel, wie oben beschrieben.
  • In Schritt 118 erzeugt Einheit B den entsprechenden geteilten Diffie-Hellman-Geheimschlüssel S = (X)ymod p.
  • In Schritt 119 verschlüsselt Einheit B unter Benutzung des erzeugten geteilten Geheimschlüssels S die von dem Speichermedium 111 abgerufene Geheimzeichenkette K, dies ergibt eine verschlüsselte Geheimzeichenkette K*. Die Verschlüsselung kann auf jedem geeigneten auf symmetrischen Geheimschlüssel basierenden Verschlüsselungsverfahren basieren, z. B. AES, SAFER+, RC5, DES, 3DES, usw.
  • In Schritt 120 sendet Einheit B die verschlüsselte Geheimzeichenkette K* und den öffentlichen Diffie-Hellman-Schlüssel Y an Einheit A. Wieder sendet in einer Ausführungsform Einheit B den entsprechenden Kennzeichner ID.
  • In Schritt 121 empfängt Einheit A die verschlüsselte Geheimzeichenkette K* und den öffentlichen Diffie-Hellman-Schlüssel Y.
  • In Schritt 122 erzeugt Einheit A den geteilten Diffie-Hellman-Geheimschlüssel S = (Y)xmod p unter Verwendung des im Speichermedium 109 gespeicherten Geheimwerts x.
  • In Schritt 123 verwendet Einheit A den erzeugten geteilten Geheimschlüssel S, um die empfangene verschlüsselte Geheimzeichenkette K* zu entschlüsseln, um die entschlüsselte Geheimzeichenkette K' zu erhalten.
  • In Schritt 124 vergleicht Einheit A die empfangene und entschlüsselte Geheimzeichenkette K' mit der Geheimzeichenkette K, die ursprünglich durch Einheit A erzeugt und im Speichermedium 109 gespeichert wurde. Sollten die Geheimzeichenketten nicht gleich sein, wird der empfangene öffentliche Schlüssel Y abgelehnt, d. h. der erzeugte geteilte Geheimschlüssel S wird abgelegt (Schritt 125). Ansonsten schreitet der Prozess mit Schritt 126 fort.
  • Im Schritt 126 ist der empfangene öffentliche Schlüssel Y akzeptiert, d.h. der berechnete geteilte Geheimschlüssel S ist als geteiltes Geheimnis akzeptiert. In einer Ausführungsform wird der Schlüsselaustausch durch das Senden einer entsprechenden Nachricht an Einheit B vervollständigt. Der erzeugte geteilte Geheimschlüssel kann nun zum Schützen der folgenden Kommunikation zwischen den Einheiten A und B verwendet werden, z. B. durch Verschlüsseln und/oder als Integritätsschutz der Nachrichten, die zwischen den Einheiten gesendet werden.
  • Es versteht sich, dass in einer alternativen Ausführungsform der öffentliche Schlüssel Y, der von Einheit B an Einheit A kommuniziert wurde, durch ein unterschiedliches Verfahren authentifiziert werden kann, beispielsweise durch Berechnen eines MAC-Werts. Ein Vorteil davon, Y unter Einschluss des verschlüsselten K* zu authentifizieren, ist, dass der gleiche Schlüssel mehrfach verwendbar ist, ohne die Sicherheit des Verfahrens zu beeinträchtigen.
  • 2a–b zeigen Flussdiagramme eines Schlüsselaustauschmechanismus entsprechend weiteren Ausführungsformen der Erfindung. Wie im obigen Beispiel führen zwei Einheiten einen sicheren Schlüsselaustausch durch, um einen geteilten Geheimschlüssel einzurichten. Im Gegensatz zum vorhergehenden Beispiel umfasst eine der Einheiten zwei Geräte B und C, während die andere Einheit nur ein Gerät umfasst, allgemein als Gerät A bezeichnet. Der anfängliche Registrierungsprozess wird zwischen Gerät A und Gerät C durchgeführt. Beispielsweise kann Gerät A ein tragbares Gerät, wie ein Mobiltelefon, ein PDA oder dergleichen, sein, Gerät B kann ein Zugangsknoten eines Rechnernetzwerkes oder dergleichen sein, und Gerät C kann ein Serverrechner des Rechnernetzwerks sein, wie im Zusammenhang mit 7 unten detaillierter beschrieben wird. Folglich werden die Schritte auf der linken Seite des Flussdiagramms in 2a–b, allgemein durch das Bezugszeichen 101 gekennzeichnet, durch Gerät A durchgeführt, die Schritte in der Mitte des Flussdiagramms, allgemein durch das Bezugszeichen 202 gekennzeichnet, werden durch Gerät B durchgeführt, während die Schritte auf der rechten Seite des Flussdiagramms, allgemein durch das Bezugszeichen 201 gekennzeichnet, durch das Gerät C durchgeführt werden. In den Beispielen der 2a–b werden einige Schritte durch Gerät A, B oder C entsprechend der Schritte, die durch Einheit A der 1 erfolgen, durchgeführt, wobei die Bezugszeichen zu den entsprechenden Schritten verweisen.
  • Nun bezugnehmend auf 2a, erzeugt Gerät A in einem anfänglichen Schritt 103 eine Zufallszahl x, einen entsprechenden öffentlichen Diffie-Hellman-Schlüssel X und eine kurze Geheimzeichenkette K, und im folgenden Schritt 104 verwendet Gerät A einen Nachrichtenauthentifikationscode (MAC), um einen Markerwert t, wie oben beschrieben, anhand des öffentlichen Schlüssels X und mit der Geheimzeichenkette K als einen Schlüssel zu berechen.
  • In Schritt 205 werden die erzeugten Geheimzeichenkette K und der berechnete Markerwert t über einen geeigneten Kommunikationskanal an das Gerät C kommuniziert, wie der gestrichelte Pfeil 206 zeigt. Diese Kommunikation entspricht der Kommunikation der obigen Parameter zwischen Gerät A und B der 1, wie sie mit Bezugszeichen 105, 106, und 107 in 1 beschrieben ist. In der vorliegenden Ausführungsform jedoch werden die Parameter zwischen Gerät A und C unter Einbezug einer Benutzerinteraktion kommuniziert. Beispielsweise können die Werte von K und t als Teil einer Registrierungsprozedur von Gerät A zu Gerät C transferiert werden. In einer Ausführungsform kann der Benutzer von Gerät A die Geheimzeichenkette und den Markerwert von Gerät A auslesen und sie an den Benutzer von Gerät C kommunizieren, z. B. durch Telefon, Post oder jedes anderen geeignete Mittel. In einer Ausführungsform kann Gerät A eine Nachricht, welche die obigen Daten umfasst, erzeugen und sie dem Netzbetreiber zusenden, welcher die Verwaltungsmacht über das Rechnernetzwerk hat, welches Gerät C und den Zugriffsknoten B umfasst. In einer Ausführungsform wird ein Kennzeichner ID zusammen mit K und t kommuniziert, um ihre anschließende Abfrage zu erleichtern.
  • In Schritt 207 empfängt Gerät C die Werte von K und t und in Schritt 210 speichert es diese im Speichermedium 211, z. B. einer Schlüsseldatenbank zum Administrieren sicherheitsrelevanter Informationen des Rechnernetzwerks. Sollten sich die Werte K und t auf einen Kennzeichner ID beziehen, werden die Werte K und t in Beziehung zu diesem Kennzeichner gespeichert, z. B. bei Verwendung des Kennzeichners als Index.
  • Analogerweise speichert in Schritt 108 Gerät A die Geheimzeichenkette K, möglicherweise in Bezug auf den Kennzeichner ID, in ein Speichermedium 109 der Einheit A. Weiterhin speichert Einheit A den Geheimwert x, auf dessen Basis der öffentliche Schlüssel X berechnet wurde. Optional kann Gerät A zusätzlich den öffentlichen Schlüssel X speichern. Alternativ kann der öffentliche Schlüssel anhand des privaten Schlüssels X zu einem späteren Zeitpunkt wiedererzeugt werden.
  • Dies schließt anfänglichen Registrierungsprozess zwischen Gerät A und C ab. Die folgenden Schritte inklusive des tatsächlichen Schlüsselaustauschs werden durchgeführt, wenn die Geräte A und B tatsächlich über eine Kommunikationsverbindung verbunden sind. Dies kann direkt nach obiger anfänglicher Registrierung oder zu einem späteren Zeitpunkt, wie durch die Linien 227 in 1 angezeigt, erfolgen.
  • In Schritt 112 initiiert Gerät A durch Übertragen des öffentlichen Schlüssels X den tatsächlichen Schlüsselaustausch mit Gerät B, und optional werden über eine drahtlose Funkkommunikationsverbindung zusätzliche Daten an Gerät B gesandt. In einer Ausführungsform, in der die Geheimzeichenkette K in Bezug zu einem Kennzeichner ID steht, überträgt Gerät A auch den Kennzeichner.
  • Nachdem Gerät B den öffentlichen Schlüssel X von Gerät A (Schritt 213) empfangen hat, erhält Gerät B die Geheimzeichenkette K und den Markerwert t vom Speichermedium 211 (Schritte 208 und 209). In einer Ausführungsform kann Gerät B eine Anfrage an Gerät C über das Rechnernetzwerk senden, z. B. umfasst diese den empfangenen Kennzeichner ID. Als Reaktion auf die Anfrage erhält Gerät C den Markerwert und die Geheimzeichenkette von der Datenbank 211 und schickt diese an Gerät B (Schritt 208), wo diese empfangen werden (Schritt 209). In einer anderen Ausführungsform kann Gerät B direkten Zugriff über das Rechnernetzwerk auf die Datenbank 211 haben, und folglich kann Gerät B die Parameter direkt von der Datenbank erhalten. Bevorzugterweise können die Geheimzeichenkette K und der Markerwert t über eine sichere Verbindung 222 kommuniziert werden, z. B. verschlüsselt und/oder über ein sicheres Rechnernetzwerk.
  • In Schritt 214 berechnet Gerät B den MAC-Markerwert t' des empfangenen öffentlichen Schlüssels X und basierend auf der abgerufenen Geheimzeichenkette K.
  • In Schritt 215 vergleicht Gerät B den berechneten Markerwert t' mit dem zuvor gespeicherten Markerwert t. Sollten die Markerwerte unterschiedlich sein, wird der empfangene öffentliche Schlüssel abgelehnt (Schritt 216). Ansonsten wird der öffentliche Schlüssel X akzeptiert und der Prozess schreitet mit Schritt 217 weiter.
  • In Schritt 217 erzeugt Gerät B einen Geheimwert y und einen entsprechenden öffentlicher Diffie-Hellman-Schlüssel Y, wie oben beschrieben.
  • In Schritt 218 erzeugt Gerät B den entsprechenden geteilten Diffie-Hellman-Geheimschlüssel S = (X)ymod p.
  • In Schritt 219 verschlüsselt Gerät B die erhaltene Geheimzeichenkette K, verwendet den erzeugten geteilten Geheimschlüssel S, dies ergibt die verschlüsselte Geheimzeichenkette K*, wie im Zusammenhang mit 1 beschrieben.
  • In Schritt 220 sendet Gerät B die verschlüsselte Geheimzeichenkette K* und den öffentlichen Diffie-Hellman-Schlüssel Y an Gerät A. Wieder sendet in einer Ausführungsform Gerät B zusätzlich den entsprechenden Kennzeichner ID.
  • In Schritt 121 empfängt Gerät A die verschlüsselte Geheimzeichenkette K* und den öffentlichen Diffie-Hellman-Schlüssel Y.
  • In Schritt 122 erzeugt Gerät A den geteilten Diffie-Hellman-Geheimschlüssel S = (Y)xmod p unter Verwendung des im Speichermedium 109 gespeicherten Geheimwerts x.
  • In Schritt 123 verwendet Gerät A den erzeugten geteilten Geheimschlüssel S, um die empfangene verschlüsselte Geheimzeichenkette K* zu entschlüsseln, um die entschlüsselte Geheimzeichenkette K' zu erhalten.
  • In Schritt 124 vergleicht Gerät A die empfangene und entschlüsselte Geheimzeichenkette K' mit der Geheimzeichenkette K, die ursprünglich durch Gerät A erzeugt und im Speichermedium 109 gespeichert wurde. Sollten die Geheimzeichenketten nicht gleich sein, wird der empfangene öffentliche Schlüssel Y abgelehnt, d. h. der erzeugte geteilte Geheimschlüssel S wird abgelegt (Schritt 125). Ansonsten schreitet der Prozess mit Schritt 126 fort.
  • Im Schritt 126 ist der empfangene öffentliche Schlüssel Y akzeptiert, d.h. der berechnete geteilte Geheimschlüssel S ist als geteiltes Geheimnis akzeptiert. In einer Ausführungsform wird der Schlüsselaustausch durch das Senden einer entsprechenden Nachricht an Gerät B vervollständigt. Der erzeugte geteilte Geheimschlüssel kann nun zum Schützen der folgenden Kommunikation zwischen den Geräten A und B verwendet werden, z. B. durch Verschlüsseln und/oder als Integritätsschutz der Nachrichten, die zwischen den Geräten gesendet werden.
  • Nun bezugnehmend auf 2b, initiiert in diesem Beispiel Gerät C, d. h. der Netzwerkserver oder ähnliches, den Schlüsselaustauschprozess. Folglich haben in dieser Ausführungsform Gerät A und das System mit Gerät B und C im Vergleich zum Beispiel der 2a die Rollen getauscht, und die Schritte die im Zusammenhang mit 2a beschrieben wurden, werden nun von den entsprechenden anderen Geräten ausgeführt. Im Weiteren werden die entsprechenden Schritte mit den gleichen Bezugszeichen wie in 2a bezeichnet. Genauer, die Schritte, die als anfängliche Schritte 103 und 104 des Erzeugens einer Zufallszahl x, des entsprechenden öffentlichen Diffie-Hellman-Schlüssels X und der kurzen Geheimzeichenkette K und des Berechnens des Markerwerts t anhand des öffentlichen Schlüssels X mit der Geheimzeichenkette K als ein Schlüssel beschrieben wurden, werden entsprechend durch Gerät C durchgeführt, d. h. den Netzwerkserver oder ähnliches.
  • Dem entsprechend werden in den Schritten 205 und 207 die erzeugten Geheimzeichenkette K und der berechnete Markerwert t über einen geeigneten Kommunikationskanal von Gerät C an das Gerät A kommuniziert, wie oben beschrieben und durch den gestrichelte Pfeil 206 angezeigt. Es versteht sich, dass in dieser Ausführungsform der Netzwerkbetreiber die Kommunikation initiiert.
  • In Schritt 210 und speichert Gerät A die empfangenen Daten im Speichermedium 109 des Geräts A.
  • Analogerweise speichert in Schritt 108 Gerät C die Geheimzeichenkette K und den Geheimwert x im Speichermedium 211, z. B. einer Schlüsseldatenbank zum Administrieren sicherheitsrelevanter Informationen des Rechnernetzwerks. Es versteht sich, dass auch in diesem Beispiel die Geheimzeichenkette K und folglich die in Bezug stehenden Werte zu x, X und t in Beziehung zu einem Kennzeichner ID stehen können, wie im Zusammenhang mit 2a beschrieben.
  • Dies schließt den anfänglichen Registrierungsprozess zwischen Gerät A und C ab. Die folgenden Schritte inklusive des tatsächlichen Schlüsselaustauschs werden durchgeführt, wenn die Geräte A und B tatsächlich über eine Kommunikationsverbindung verbunden sind. Dies kann direkt nach obiger anfänglicher Registrierung oder zu einem späteren Zeitpunkt, wie durch die Linien 227 in 1 angezeigt, erfolgen. Wieder initiiert in dieser Ausführungsform eher Gerät B als Gerät A den Schlüsselaustausch.
  • Entsprechend erhält Gerät B die Geheimzeichenkette K und die Diffie-Hellman-Schlüssel x und X vom Speichermedium 211 (Schritte 228 und 229). Wie oben beschrieben kann dies über eine direkte Datenbankabfrage, über eine Anfrage, die zum Gerät C über das (sichere) Rechnernetzwerk gesendet wird, z. B. unter Einschluss des empfangenen Kennzeichners ID, oder dergleichen erfolgen.
  • In Schritt 112 wird der tatsächliche Schlüsselaustausch von Gerät B durch Übertragen des öffentlichen Schlüssels X und, optional, weiterer Daten an Gerät A über eine drahtlose Kommunikationsverbindung initiiert.
  • In Schritt 213 empfängt Gerät A den öffentlichen Schlüssel X, und in Schritt 214 berechnet Gerät B den MAC-Markerwert t' des empfangenen öffentlichen Schlüssels X und basierend auf die im Gerät A gespeicherte Geheimzeichenkette K.
  • In Schritt 215 vergleicht Gerät A den berechneten Markerwert t' mit dem zuvor gespeicherten Markerwert t. Sollten die Markerwerte unterschiedlich sein, wird der empfangene öffentliche Schlüssel abgelehnt (Schritt 216). Ansonsten wird der öffentliche Schlüssel X akzeptiert und der Prozess schreitet mit Schritt 217 weiter.
  • In Schritt 217 erzeugt Gerät A einen Geheimwert y und einen entsprechenden öffentlicher Diffie-Hellman-Schlüssel Y, wie oben beschrieben.
  • In Schritt 218 erzeugt Gerät A den entsprechenden geteilten Diffie-Hellman-Geheimschlüssel S = (X)ymod p.
  • In Schritt 219 verschlüsselt Gerät A die erhaltene Geheimzeichenkette K unter Verwendung des erzeugten geteilten Geheimschlüssel S, dies ergibt die verschlüsselte Geheimzeichenkette K*, wie im Zusammenhang mit 1 beschrieben.
  • In Schritt 220 sendet Gerät A die verschlüsselte Geheimzeichenkette K* und den öffentlichen Diffie-Hellman-Schlüssel Y an Gerät B.
  • In Schritt 121 empfängt Gerät B die verschlüsselte Geheimzeichenkette K' und den öffentlichen Diffie-Hellman-Schlüssel Y.
  • In Schritt 122 erzeugt Gerät B den geteilten Diffie-Hellman-Geheimschlüssel S = (Y)xmod p unter Verwendung des im Speichermedium 211 gespeicherten Geheimwerts x.
  • In Schritt 123 verwendet Gerät A den erzeugten geteilten Geheimschlüssel S, um die empfangene verschlüsselte Geheimzeichenkette K* zu entschlüsseln, um die entschlüsselte Geheimzeichenkette K' zu erhalten.
  • In Schritt 124 vergleicht Gerät B die empfangene und entschlüsselte Geheimzeichenkette K' mit der Geheimzeichenkette K, die ursprünglich durch Gerät C erzeugt und vom Speichermedium 211 erhalten wurde. Sollten die Geheimzeichenketten nicht gleich sein, wird der empfangene öffentliche Schlüssel Y abgelehnt, d. h. der erzeugte geteilte Geheimschlüssel S wird abgelegt (Schritt 125). Ansonsten schreitet der Prozess mit Schritt 126 fort.
  • Im Schritt 126 ist der empfangene öffentliche Schlüssel Y akzeptiert, d.h. der berechnete geteilte Geheimschlüssel S ist als geteiltes Geheimnis akzeptiert. In einer Ausführungsform wird der Schlüsselaustausch durch das Senden einer entsprechenden Nachricht an Gerät A vervollständigt. Der erzeugte geteilte Geheimschlüssel kann nun zum Schützen der folgenden Kommunikation zwischen den Geräten A und B verwendet werden, z. B. durch Verschlüsseln und/oder als Integritätsschutz der Nachrichten, die zwischen den Geräten gesendet werden.
  • Es versteht sich, dass in einigen Ausführungsformen die Schritte 122, 123, 124 und 126 durch Gerät C ausführbar sind, dadurch wird die Notwendigkeit der tatsächlichen Implementierung des Schlüsselalgorithmusses in den beiden Geräten B und C vermieden. In diesem Fall leitet Gerät B die von Gerät A empfangenen Schlüsseldaten einfach zu Gerät C weiter, z. B. über ein sicheres Rechnernetzwerk, wobei die Schlüsseldaten authentifiziert und weiter wie oben verarbeitet werden.
  • Daraus folgt zusammenfassend, dass die obigen Beispiele ein Schlüsselaustauschverfahren zwischen einer ersten Kommunikationseinheit und einer zweiten Kommunikationseinheit offenbaren. Das Verfahren umfasst eine Registrierungsphase und eine Schlüsselaustauschphase. Die Registrierungsphase umfasst
    • – Erzeugen eines ersten Privatschlüsselwerts und eines entsprechenden ersten öffentlichen Schlüssels des Schlüsselaustauschmechanismus, bevorzugt eine Diffie-Hellman-Schlüsselübereinkunft, durch die erste Kommunikationseinheit,
    • – Erzeugen eines Durchgangscodes durch die erste Kommunikationseinheit;
    • – Berechnen eines Nachrichtenmarkers des ersten öffentlichen Schlüssels anhand eines Nachrichtenauthentifikationscodes unter Verwendung des Durchgangscodes durch die erste Kommunikationseinheit; und
    • – den Durchgangscode und den berechneten Markerwert der zweiten Kommunikationseinheit zur Verfügung stellen. Die tatsächliche Schlüsselaustauschphase kann zu einem späteren Zeitpunkt erfolgen, wenn die beiden Einheiten über eine Kommunikationsverbindung verbunden sind und Nachrichten über diese Kommunikationsverbindung austauschen können. Diese Stufe umfasst
    • – Übertragen des ersten öffentlichen Schlüssels durch die erste Kommunikationseinheit an die zweite Kommunikationseinheit;
    • – Berechnen des Markerwerts des empfangenen ersten öffentlichen Schlüssel anhand des Nachrichtenauthentifikationscodes unter Verwendung des Durchgangscodes durch die zweite Kommunikationseinheit, und Akzeptieren des empfangenen ersten Schlüssels, falls der berechnete Markerwert dem kommunizierten Markerwert entspricht;
    • – Erstellen eines zweiten öffentlichen Schlüsselwerts und eines entsprechenden zweiten öffentlichen Schlüssels des Schlüsselaustauschmechanismus durch die zweite Kommunikationseinheit;
    • – Berechnen eines geteilten Geheimschlüssels des Schlüsselaustauschmechanismus anhand des ersten öffentlichen Schlüssels und des zweiten Privatschlüsselwerts durch die zweite Kommunikationseinheit;
    • – Verschlüsseln des Durchgangscodes durch die zweite Kommunikationseinheit unter Verwendung des berechneten geteilten Geheimschlüssels;
    • – Übertragen des zweiten öffentlichen Schlüssels und der verschlüsselten Datenentität an die erste Kommunikationseinheit durch die zweite Kommunikationseinheit;
    • – Berechnen des geteilten Geheimschlüssels des Schlüsselaustauschmechanismus anhand des zweiten öffentlichen Schlüssels und des ersten Privatschlüsselwerts durch die erste Kommunikationseinheit; und
    • – Entschlüsseln der übertragenen verschlüsselten Datenentität durch die erste Kommunikationseinheit unter Verwendung des geteilten Geheimschlüssels, berechnet durch die erste Kommunikationseinheit, und Akzeptieren des berechneten geteilten Geheimschlüssels, falls der entschlüsselte Durchgangscode dem ursprünglich erzeugten Durchgangscode, durch die erste Kommunikationseinheit erzeugt, entspricht.
  • 3 zeigt ein Flussdiagram eines Verfahrens des Berechnens eines Nachrichtenauthentifikationscodes basierend auf einem Fehlerkorrekturcode. In dem Beispiel von 3 wird angenommen, dass ein Datenentität d aus einem Datenraum D unter Verwendung eines Nachrichtenauthentifikationscodes (MAC) authentifiziert wird. Die Datenentität d kann eine Nachricht sein, z. B. der öffentliche Schlüssel aus dem oben beschriebenen Verfahren, oder eine Datenentität, welche von einer Nachricht M durch entsprechende Funktion h bestimmt ist, d. h. d = h(M), wie detaillierter unten erläutert wird. Zu Beispielszwecken, wird die Datenentität d auch als Nachricht bezeichnet.
  • Allgemein ist MAC eine Abbildung f eines Datenraums D und eines Schlüsselraums K auf den Markerraum C, d. h. f: D × K → C, wobei eine Nachricht d ∊ C und ein Schlüssel k ∊ K auf ein Marker t ∊ C abgebildet ist, d. h. (d, k) → t.
  • Ein MAC wird zum Schutz der Integrität der Nachricht verwendet, d. h. es ist gewährleistet, dass die Daten während der Übertragung vom Sender zum Empfänger nicht geändert werden. In händischen Authentifikationen werden kurze MAC-Werte verwendet, d. h. Marker haben eine Länge von weniger als 10 bis 15 Stellen und/oder Zeichen und/oder anderen Symbolen, erlauben dabei einem Benutzer die Markerwerte zu kommunizieren oder zu vergleichen. In solchen händischen Authentifikationsschemata basiert die Sicherheit eher auf einer nichtbedingten Sicherheit der MAC-Funktion als auf rechenintensiver Sicherheit. Beispielsweise, wenn Streuwertfunktionen mit langen Streucodes verwendet werden, basiert die Sicherheit auf rechenintensiver Sicherheit.
  • Die nichtbedingte Sicherheit einer MAC-Funktion kann durch die Betrachtung unterschiedlicher Arten von Angriffen bestimmt werden. Zwei Hauptarten von Angriffen, die typischerweise in Betracht gezogen werden, sind der Impersonationsangriff und der Substitutionsangriff. Um das Verständnis der folgenden Beschreibung zu erleichtern, werden diese Angriffe hier kurz beschrieben. Für eine detaillierte Beschreibung wird z. B. auf G. Kabatianskii, B. Smeets und T Johansson, „On the cardinality of systematic A-codes via error correcting codes", IEEE Transaction on Information theory, vol. IT-42, Seiten 566–578, 1996, verwiesen.
  • Bei einem Impersonationsangriff versucht der Angreifer, den Empfänger zu überzeugen, dass einige Daten von einem legitimen Sender gesendet wurden, ohne dass jeglicher vorheriger Datenaustausch zwischen dem legitimen Sender und dem Empfänger beobachtet wurde. Andererseits beobachtet in einem Substitutionsangriff der Angreifer zuerst einige Daten d und ersetzt die beobachteten Daten mit einigen anderen Daten d' ≠ d. Die Wahrscheinlichkeiten, dass einem Angreifer ein Impersonationsangriff oder ein Substitutionsangriff gelingt, werden mit PI und entsprechend PS bezeichnet und können durch PI = max c∊CP(c is observed)
    Figure 00340001
    beschrieben werden.
  • Im Zusammenhang mit dem oben beschriebenen Schlüsselaustauschprotokoll ist die Wahrscheinlichkeit, dass ein Angreifer die beobachteten Daten d mit anderen Daten d' austauscht, ein wichtiges Maß für die Sicherheit des Schlüsselaustauschverfahrens, d. h. die Wahrscheinlichkeit, den öffentlichen Schlüssel, der in den Beispielen der 1 und 2a von Einheit A zu Einheit B und in 2b von Einheit B zu Einheit A gesendet wird, durch einen anderen öffentlichen Schlüssel auszutauschen. In diesem Szenario ist der Angreifer erfolgreich, falls d' durch den Empfänger als gültige Daten akzeptiert wird. In einem kurzreichweitigen drahtlosen Kommunikationsszenario wie Bluetooth sind beide Einheiten physikalisch nah bei einander und können darauf beschränkt werden, nur Daten zu akzeptieren, falls beide Einheiten ihre Bereitschaft signalisiert haben. Da also in einem solchen Szenario ein Impersonationsangriff leicht vermieden werden kann, kann die Wahrscheinlichkeit eines Substitutionsangriffs als wichtigeres Maß für Sicherheit betrachtet werden. Weiterhin wird in den 1 und 2 der durch die MAC-Funktion berechnete Markerwert über einen separaten Datenkanal, der sich vom Kommunikationskanal, der die Daten sendet, unterscheidet, kommuniziert. Dies steht im Gegensatz zum Standard-MAC-Szenario, bei dem sowohl die Daten als auch der Markerwert übertragen werden und durch einen Angreifer beobachtbar sind. Mit diesen Annahmen kann die Wahrscheinlichkeit eines erfolgreichen Substitutionsangriffs mit
    Figure 00350001
    ausgedrückt werden.
  • Also, angenommen der Schlüssel wurde zufällig aus einem Schlüsselraum K gewählt, kann die obige Wahrscheinlichkeit als
    Figure 00350002
    ausgedrückt werden, dabei ist |·| die Kardinalität eines Satzes, d.h. |K| ist die Kardinalität von K und der Zähler der obigen Funktion ist die Kardinalität des Satzes aller Schlüssel im Schlüsselraum K, die gleichen MAC-Funktion für sowohl d als auch d' ergebend. Deshalb folgt aus der obigen Gleichung, dass, um eine hohe Sicherheit zu gewährleisten, die Trefferwahrscheinlichkeit der MAC-Funktion f klein sei.
  • Die folgenden Beispiele für MAC-Konstrukte basieren auf Fehlerkorrekturcodes. Zum Zwecke dieser Beschreibung wird der Fehlerkorrekturcode über ein endliches Feld Fq betrachtet. Speziell wird ein q-stufiger Code über Fq mit Codewörtern der Länge n betrachtet und mit V gekennzeichnet. Im Allgemeinen ist der Code ein Abbilden von Nachrichten auf Codewörter, so dass jede Nachricht einem einzigartigen Codewort entspricht und jedes Codewort eine Anzahl von Symbolen umfasst. Folglich besteht der Code V aus allen Vektoren v ∊ V = {v(d): d ∊ D}, dabei ist v(d) = (v1 (d), v2 (d), ..., vn (d)), d. h. vi (d) ∊ Fq sind die Symbole des Codeworts v(d).
  • Der Hamming-Abstand dH(x, y) zwischen zwei q-stufigen n-Tupeln x und y ist die Anzahl der Komponenten der n-Tupel, die nicht gleich sind, d. h. dH(x, y) = |{i ∊ {1, ..., n}: xi ≠ yi}|. Der Minimalabstand eines Codes V ist
    Figure 00360001
    d.h. der Minimalabstand zwischen allen Codewörtern des Codes V.
  • Mit Bezug auf auf 3 wird ein Beispiel eines MAC-Konstrukts, das auf Fehlerkorrekturcodes basiert, beschrieben.
  • In einem anfänglichen Schritt 301 werden die Eingabedaten des MAC-Konstrukts bereitgestellt, d. h. die Nachricht d wird authentifiziert und der Schlüssel k wird als Eingabe zur MAC-Funktion verwendet.
  • In Schritt 302 wird ein Index i ∊ {1, ..., n} als eine Funktion g des Schlüssels k ausgewählt, d. h. i = g(k). Spezieller, sollte der Schlüsselraum K n Elemente, d.h. |K| = n, haben, kann jedes k eindeutig auf einen der Symbolindizes abgebildet werden und jeder Index entspricht einem Schlüssel. In einer Ausführungsform wird der Schlüssel direkt als ein Index d. h. i = k verwendet.
  • In Schritt 303 wird der Markerwert t als das i-te Symbol des Codeworts v(d) des Codes V, der der Nachricht entspricht, bestimmt, d. h. t = f(d, k) = vi (d) = vg(k) (d).
  • Folglich wird der Markerwert als ein ausgewähltes Symbol des Codeworts eines Fehlerkorrekturcodes bestimmt, wobei das Codewort das Codewort zu der entsprechenden Nachricht ist und das Symbol über den Schlüssel spezifiziert ist. Folgerichtig wird für das obige Beispiel ein MAC mit einer Schlüsselraumgröße gleich n und mit einer Nachrichtenraumgröße gleich der Codierraumgröße erhalten. Weiterhin ist die obige Wahrscheinlichkeit PS für ein Substitutionsangriff durch PS = 1 – dH(V)/ngegeben.
  • 4a–b zeigen Flussdiagramme von Beispielen eines Verfahrens zum Berechnen eines Nachrichtenauthentifikationscodes, basierend auf einem Reed-Solomon-Code.
  • Der Ausdruck Reed-Solomon-Code (RS) verweist auf eine Art von Korrekturcodes, wobei die Codewörter über eine Polynomdivision mit Polynomerzeugung definiert sind, siehe I. S. Reed und G. Solomon, „Polynomial Codes over Certain Finite Fields", journal of Soc. Ind. Appl. Math., vol. 8, Seiten 300–304, 1960, was in seiner Gesamtheit hier durch Verweis aufgenommen ist. Es ist beabsichtigt, dass im Weiteren der Ausdruck Reed-Solomon-Code auch Varianten des Reed-Solomon-Codes umfasst, z. B. den so genannten verallgemeinerten Reed-Solomon-Code.
  • In dem Aufbau von 4a werden in einem anfänglichen Schritt 401 die Eingabedaten des MAC-Konstrukts bereitgestellt, d. h. die Nachricht d wird authentifiziert und der Schlüssel k wird als Eingabe der MAC-Funktion verwendet.
  • In Schritt 402 wird die Nachricht als q-stufiges τ-Tupel über Fq ausgedrückt, d. h. d = d0, d1, ..., dτ-1, dabei ist di ∊ Fq. Folglich ist die Reed-Solomon(RS)-Polynomverschlüsselung der entsprechenden Nachricht als p(d)(x) = d0 + d1x + d2x2 + ... + dτ-1xτ-1 definiert.
  • In Schritt 403 wird der Markerwert des MAVs durch die Bestimmung der Polynome an einem durch den Schlüssel k bestimmten Punkt berechnet, d.h. t = f(d, k) = vk (d) = p(d)(k) = d0 + d1k + d2k2 + ... + dτ-1kτ-1.
  • Folglich spezifiziert der Schlüssel k ein Symbol des Reed-Solomon-Codes, welches als Markerwert verwendet wird. Es versteht sich, dass, wie oben beschrieben, das Symbol durch jede geeignete Funktion des Schlüssels spezifizierbar ist. Weiterhin wird angemerkt, dass in dieser Ausprägung der Schlüssel aus einem endlichen Feld Fq d, h. k ∊ Fq ausgewählt ist. Folglich hat die Ausprägung folgende Eigenschaften: n = q = |K| und |D| = qτ = nτ. Daher ist der Minimalabstand des obigen Codes dH(V) = n – τ – 1, und folglich ist die Wahrscheinlichkeit eines erfolgreichen Substitutionsangriffs PS = (τ – 1)/n. Vorteilhaft an Reed-Solomon-Codes ist, dass sie lange Codes mit großen Minimalabständen sind.
  • Das obige impliziert weiter, dass die Wahrscheinlichkeit PS mit der Größe des Nachrichtenraums D ansteigt.
  • 4 zeigt ein Flussdiagramm einer weiteren Ausführungsform des MAC-Konstrukts auf Basis des Reed-Solomon-Codes.
  • Wieder werden nach dieser Ausprägung in einem anfänglicher Schritt 404 Eingabedaten der MAC-Konstrukte bereitgestellt, d. h. die Nachricht d wird authentifiziert und der Schlüssel k wird als Eingabe der MAC-Funktion verwendet.
  • In Schritt 405 wird eine Ein-Richtungsstreuwertfunktion h auf die Nachricht angewendet. Zum Zwecke dieser Beschreibung verweist der Ausdruck Ein-Richtungsstreuwertfunktion auf einen Algorithmus, der Datenentitäten, z. B. eine Zeichenkette, als Eingabe verwendet und einen Festlängenbinärwert (hash) als Ausgabe erzeugt. Im Speziellen ist dieser Prozess unumkehrbar, d. h. das Finden einer Datenentität, welche den erzeugten Streuwert erzeugt, sollte rechnermäßig unausführbar sein. Analogerweise sollte es weiter rechnermäßig unausführbar sein, zwei willkürliche Datenentitäten zu finden, die den gleichen Streuwert erzeugen. Ein Beispiel einer geeigneten Streuwertfunktion ist der Standard SHA-1-Algorithmus (Secure Hash Algorithm). Der SHA-1-Algorithmus nimmt eine Nachricht mit weniger als 264 Bit Länge und erzeugt einen 160 Bit Nachrichtenauszug. Andere Beispiele einer Ein-Richtungsstreuwertfunktion umfassen MD4, MD5 und dergleichen. Die Ausgabe einer Streuwertfunktion δ = h(d) wird dann als eine Eingabe in den Reed-Solomon-Code verwendet. In einer Ausführungsform wird die Ausgabe einer Streuwertfunktion zur weiteren Reduzierung der effektiven Nachrichtengröße abgeschnitten.
  • Folglich wird in Schritt 406 der Streuwert δ als q-stufiges τ-Tupel über Fq ausgedrückt d. h. δ = δ0, δ1, ..., δτ-1 mit δi ∊ Fq.
  • In Schritt 407 wird der Markerwert t des MACs durch Auswerten des entsprechenden Reed-Solomon-Verschlüsselungpolynoms an einem durch den Schlüssel k spezifizierten Punkt berechnet, d. h. t = f(δ, k) = vk (δ) = p(δ)(k) = δ0+ δ1k + δ2k2 + ... + δτ-1kτ-1.
  • Folglich wird beim ersten Anwenden der Ein-Richtungsstreuwertfunktion wie SHA-1 auf die Nachricht die Größe des Nachrichtenraums reduziert, wodurch die Wahrscheinlichkeit PS eines erfolgreichen Substitutionsangriffs ohne beträchtliches Vergrößern der Schlüssellänge oder der Länge der MAC-Ausgabe, d. h. die Länge des Markers, reduziert wird. Somit wird eine sichere Authentifikation selbst für kurze Schlüssel und kurze Nachrichtenmarker zur Verfügung gestellt, wodurch die Kommunikation des Schlüssels und des Nachrichtenmarkers über eine Benutzerinteraktion ermöglicht wird.
  • 5 stellt eine Tabelle dar, die die Wahrscheinlichkeiten eines erfolgreichen Substitutionsangriffs für eine Anzahl von konstruierten Beispielen des MAC-Konstrukts der 4a-b auf zeigt. Die erste Spalte, als log2(D) bezeichnet, enthält die Größe der Nachricht in Anzahl von Bits, die zweite Spalte, als log2(n) bezeichnet, zeigt die Schlüsselgröße als Anzahl der Bits, wobei die letzte Spalte die entsprechende Wahrscheinlichkeit eines erfolgreichen Substitutionsangriffs darstellt. Zum Beispiel führt ein Code mit eine Codelänge von vier Hexadezimalstellen und einer Schlüsselgröße von vier Kennziffern (n = q = 164, d. h. log2(n) = 16) zu einer Fälschungswahrscheinlichkeit von ungefähr 2-13 bis 2-16 für Nachrichten mit einer Länge von 128 Bits. Deshalb wird die SHA-1-Ausgabe auf 128 beschränkt und eine Schlüsselgröße und eine Codegröße von 4 Hexadezimalbits ergibt eine ausreichen hohe Sicherheit. Sollte die Schlüsselgröße auf 5 Kennziffern (log2(n) = 20) anwachsen, verringert sich die Wahrscheinlichkeit weiter auf ungefähr 2–17 oder weniger.
  • 6 zeigt ein Blockdiagramm des Kommunikationssystems mit zwei Kommunikationseinheiten, allgemein mit A und B bezeichnet. Die Kommunikationseinheit A und die Kommunikationseinheit B kommunizieren miteinander über eine Kommunikationsverbindung 605.
  • Die Kommunikationseinheit A umfasst eine Ausführungseinheit 602, eine Funkkommunikationseinheit 603, die mit der Ausführungseinheit verbunden ist, ein Speichermedium 604, das mit der Ausführungseinheit verbunden ist, und eine Benutzerschnittstelle 606, die mit der Ausführungseinheit verbunden ist.
  • Die Funkkommunikationseinheit 603 überträgt die von der Ausführungseinheit 602 empfangenen Daten über eine Funkverbindung 605 an die Kommunikationseinheit 607, und sie empfängt Daten der Funkverbindung und leitet sie an die Ausführungseinheit weiter. Beispielsweise kann die Funkkommunikationseinheit 603 auf der Bluetooth-Technology basieren und im ISM-Band bei 2,45 GHz senden/empfangen.
  • Die Ausführungseinheit 602, z. B. ein geeigneter programmierter Mikroprozessor, verarbeitet, entsprechend der in Kommunikationseinheit A implementierten Funktionalität, die von anderen Einheiten empfangenen Daten und die zu anderen Einheiten zu sendenden Daten. Insbesondere ist Einheit 602 in geeigneter Weise programmiert, so dass die oben beschriebenen Sicherheitsfunktionen, genauer die Erzeugung eines Durchgangscodes und des entsprechenden Markerwerts, der Schlüsselaustausch und das oben beschriebene Authentifikationsverfahren, durchführbar sind.
  • Das Speichermedium 604, z. B. ein EPROM, EEPROM, Flash-Speicher oder dergleichen, ist zum Speichern des Durchgangscodes k wie auch der nötigen Parameter des Schlüsselaustauschprotokolls angepasst.
  • Die Benutzerschnittstelle 606 umfasst eine Anzeige für die Ausgabe des erzeugten Durchgangscodes K und des entsprechenden Markerwerts t, so dass ein Benutzer die erzeugten Werte auslesen und sie zur Kommunikationseinheit B transferieren kann. Zusätzlich kann die Benutzerschnittstelle 606 Dateneingabemittel umfassen, wie eine Tastatur, ein Tastenfeld, ein Zeigegerät, einen Sensorbildschirm oder dergleichen.
  • Die Kommunikationseinheit B umfasst eine Ausführeinheit 609, eine Funkkommunikationseinheit 608, die mit der Ausführungseinheit verbunden ist, ein Speichermedium 610, das mit der Ausführungseinheit verbunden ist, und eine Benutzerschnittstelle 611, die mit der Ausführungseinheit verbunden ist.
  • Die Funkkommunikationseinheit 609 entspricht der Funkkommunikationseinheit 603 der Kommunikationseinheit A, wodurch sie eine Funkkommunikation zwischen den Funkkommunikationseinheiten A und B erlaubt.
  • Die Ausführungseinheit 609 verarbeitet, entsprechend der von der Kommunikationseinheit implementierten Funktionalität, die von anderen Einheiten empfangenen Daten und die zu anderen Einheiten zu sendenden Daten. Insbesondere ist die Ausführungseinheit in geeignet er Weise programmiert, so dass die oben beschriebenen Sicherheitsfunktionen, genauer der oben beschriebene Schlüsselaustausch und Authentifikationsmechanismus, die dem durch Einheit A implementierten Schlüsselaustauschprotokoll und Authentifikationsverfahren entsprechen, durchführbar sind.
  • Ebenso ist das Speichermedium 604 z. B. ein EPROM, EEPROM, Flash-Speicher oder dergleichen zum Speichern des Durchgangscodes k wie auch der nötigen Parameter des Schlüsselaustauschprotokolls angepasst.
  • Die Benutzerschnittstelle 611 umfasst ein Eingabegerät, z. B. ein Tastenfeld, eine Tastatur, einen Sensorbildschirm oder dergleichen, wodurch einem Benutzer erlaubt ist, den Durchgangscode k und den entsprechenden Markerwert t, erzeugt durch die Kommunikationseinheit A, einzugeben. Zusätzlich kann die Benutzerschnittstelle eine Anzeige, ein Zeigegerät und/oder dergleichen aufweisen.
  • Folglich umfasst das Kommunikationssystem aus 6 zwei Kommunikationseinheiten, z. B. zwei tragbare Kommunikationsgeräte wie Mobiltelefone, ein Mobiltelefon und einen tragbaren Rechner, zwei tragbare Rechner oder jede andere Kombination ähnlicher elektronischer Ausrüstung, welche eine sichere Kommunikation über Kommunikationsverbindung 605 durch Einrichten eines geteilten Geheimschlüssels anhand des oben beschriebenen Verfahren einrichtet.
  • In einer Ausführungsform kann die Ausführungseinheit und/oder das Speichermedium lösbar in die entsprechende Kommunikationseinheit eingefügt werden, so dass die sichere Verbindung unabhängig von der tatsächlichen Einheit eingerichtet wird. Beispielsweise kann das Speichermedium und/oder die Ausführungseinheit durch eine Smart-Card z. B. SIM-Karte realisiert sein.
  • Es wird weiter angemerkt, dass die Kommunikationseinheit weitere Komponenten aufweisen kann, die im schematischen Blockdiagramm in 6 weggelassen sind. Beispielsweise kann die Kommunikationseinheit zusätzlich eine AGC-(Automatic Gain Control)Einheit, die mit dem Empfänger verbunden ist, einen Dekodierer, einen Codierer oder dergleichen aufweisen.
  • 7 zeigt ein Blockdiagramm einer tragbaren Kommunikationseinheit, die mit einem Rechnernetzwerk über einen Zugriffsknoten des Rechnernetzwerks kommuniziert.
  • Die Kommunikationseinheit A entspricht der Kommunikationseinheit A, die in Verbindung mit 6 erläutert wurde. Die Kommunikationseinheit A weist eine Ausführungseinheit 602, eine Funkkommunikationseinheit 603, die mit der Ausführungseinheit verbunden ist, ein Speichermedium 604, das mit der Ausführungseinheit verbunden ist, und eine Benutzerschnittstelle 606, die mit der Ausführungseinheit verbunden ist, auf. Diese Komponenten wurden oben detailliert erläutert.
  • Die Kommunikationseinheit A kommuniziert über eine drahtlose Kommunikationsverbindung 605 mit dem Zugriffsknoten 702 eines Kommunikationsnetzwerks 701. Beispielsweise kann das Kommunikationsnetzwerk 701 ein drahtloses LAN, ein verdrahtetes LAN, welches einen Zugriff über einen oder mehreren Zugriffsknoten bereitstellt oder dergleichen sein. In 7 werden Netzwerkkomponenten beispielhaft anhand zweier Netzwerkknoten 703 und entsprechend 704 erläutert. In dem Beispiel der 7 ist der Netzwerkknoten 703 ein Netzwerkserverrechner mit einer Schlüsseldatenbank 705 von Durchgangscodes und Markerwerte entsprechend der Einheitenanzahl, die auf das Rechnernetzwerk über drahtlose Verbindung zugreifen könnten. Folglich, sollte Einheit A sich entsprechend der Prozedur, die in Verbindung mit 2a–b erläutert wurde, beim Rechnernetzwerk registrieren wollen, kann in dieser Prozedur der Netzwerkserver 703 die Rolle von Gerät C annehmen. Beispielsweise, entsprechend der Ausführungsform der 2b, wenn der Netzwerkserver 703 einen Durchgangscode K und einen Markerwert t erzeugt hat, können die Werte an die Einheit A übertragen werden. Beispielsweise kann der Transfer durch einen Betreiber als Teil eines Initialisierungsablaufs durch Kommunizieren der Daten zum Benutzer A über Telefon, durch Senden eines Briefes oder dergleichen bewirkt sein. Die Parameter werden dann in die Einheit A eingegeben. Weiterhin werden die Daten in der Datenbank 705 gespeichert. Wenn Einheit A eine Verbindung mit dem Zugangsknoten B einrichtet, werden die gespeicherten Parameter abgefragt und im sicheren Schlüsselaustauschprozess in 2b verwendet.
  • In einer alternativen Ausführungsform beinhaltet oder hat der Zugriffsknoten B direkten Zugriff auf die Schlüsseldatenbank, und der Registrierprozess wird direkt zwischen Einheit A und dem Zugriffsknoten B, wie im Zusammenhang mit 1 beschrieben, ausgeführt.
  • Es sollte betont werden, dass der Ausdruck "umfassen/beinhalten", soweit er in dieser Beschreibung verwendet wird, zum Spezifizieren der Anwesenheit der angegebenen Merkmale, Ganzzahlen, Schritte oder Komponenten verwendet wird, jedoch nicht die Anwesenheit oder das Hinzufügen einer oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Komponenten oder Zusammenschlüsse daraus ausschließt.
  • Obwohl bevorzugte Ausführungsformen der vorliegenden Erfindung beschrieben und gezeigt wurden, ist die Erfindung nicht auf diese beschränkt, sondern kann auch auf andere Art im Rahmen der behandelten Materie der folgenden Ansprüche ausgeführt werden.
  • Die Erfindung kann durch Hardwaremittel umfassend verschiedene eindeutigen Elemente und mithilfe eines geeignet programmierten Rechners implementiert werden. In den Vorrichtungsansprüchen, die unterschiedliche Mittel aufzählen, können mehrere dieser Mittel durch ein und dieselbe Hardwareentität ausgeführt sein, z. B. einen geeignet programmierten Mikroprozessor oder Rechner, eine oder mehr Benutzerschnittstellen und/oder eine oder mehr Kommunikationsschnittstellen wie sie hier beschrieben sind. Das reine Faktum, dass bestimmte Maßnahmen in wechselseitig unterschiedlichen abhängigen Ansprüchen wiederholt werden, indiziert nicht, dass eine Kombination dieser Maßnahmen nicht vorteilhaft verwendbar ist.

Claims (29)

  1. Verfahren zum Bereitstellen sicherer Kommunikation zwischen einer ersten und einer zweiten Kommunikationseinheit (A, B, C), wobei das Verfahren einen Schlüsselaustausch zwischen der ersten und zweiten Kommunikationseinheit aufweist, aus dem sich ein geteilter Geheimschlüssel (S) ergibt und der Schlüsselaustausch eine Benutzerinteraktion beinhaltet; wobei das Verfahren folgende Schritte aufweist: – Bereitstellen (103, 105, 205, 208, 228), wenigstens teilweise mithilfe von Benutzerinteraktion, eines Durchgangscodes (K) für die erste und zweite Kommunikationseinheit; – Erzeugen (103, 117, 217) eines ersten Beitrags (x) zum geteilten Geheimschlüssel durch die erste Kommunikationseinheit und eines zweiten Beitrags (y) zum geteilten Geheimschlüssel durch die zweite Kommunikationseinheit, und Übertragen (112, 120, 220) jedes erzeugten Beitrags an die jeweilige andere entsprechende Kommunikationseinheit; – Authentifizieren (114, 115, 124, 214, 215) des übertragenen ersten und zweiten Beitrags durch die entsprechende empfangende Kommunikationseinheit, basierend auf wenigstens dem Durchgangscode; und – Einrichten (118, 122, 218) des geteilten Geheimschlüssels durch jede der Kommunikationseinheiten anhand wenigstens des entsprechenden empfangenen ersten oder zweiten Beitrags, falls der entsprechende empfangene Beitrag erfolgreich authentifiziert wurde; dadurch gekennzeichnet, dass der Schritt des Authentifizierens des übertragenen ersten und zweiten Beitrags das Authentifizieren des ersten Beitrags durch Berechnen (114, 214) eines Markerwerts (t, t') eines Nachrichtenauthentifikationscodes umfasst, wobei der Markerwert anhand des ersten Beitrags und dem Durchgangscode berechnet wird.
  2. Verfahren nach Anspruch 1, wobei der Durchgangscode kurz genug ist, mittels der Benutzerinteraktion kommuniziert zu werden.
  3. Verfahren nach Anspruch 1, weiterhin umfassend: – Verschlüsseln (119, 219) des Durchgangscodes durch die zweite Kommunikationseinheit unter der Verwendung des erzeugten geteilten Geheimschlüssels; – Übertragen (120, 220) des verschlüsselten Durchgangscodes (K*) zusammen mit dem erzeugten zweiten Beitrag an die erste Kommunikationseinheit; – Entschlüsseln des empfangenen verschlüsselten Durchgangscodes durch die erste Kommunikationseinheit; und – Vergleichen (124) des empfangenen entschlüsselten Durchgangscodes mit dem der ersten Kommunikationseinheit bereitgestellten Durchgangscode zur Authentifizierung des empfangenen zweiten Beitrags.
  4. Verfahren nach Anspruch 1, wobei der erste und der zweite Beitrag ein erster und ein zweiter öffentlicher Schlüssel eines Diffie-Hellman-Schlüsselaustauschprotokolls sind.
  5. Verfahren nach Anspruch 1, wobei der Schritt des Bereitstellens eines Durchgangscodes an die erste und zweite Kommunikationseinheit das Erzeugen eines Durchgangscodes durch die erste Kommunikationseinheit und Bereitstellen des erzeugten Durchgangscodes an die zweite Kommunikationseinheit über einen Kommunikationskanal, beinhaltend eine Benutzerinteraktion, umfasst.
  6. Verfahren nach Anspruch 1, wobei der Markerwert durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes berechnet, das Codewort dem ersten Beitrag entsprechend, und das Zeichen durch den Durchgangscode identifiziert wird.
  7. Verfahren nach Anspruch 6, weiterhin umfassend ein Berechnen eines Streuwerts einer Ein-Richtungsstreuwertfunktion anhand des ersten Beitrags und Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem Streuwert des ersten Beitrags entsprechend, und Identifizieren des Symbols durch den Durchgangscode.
  8. Verfahren nach Anspruch 6, wobei der Fehlerkorrekturcode ein Reed-Solomon-Code ist.
  9. Verfahren nach Anspruch 1, umfassend: – Erzeugen des ersten Beitrags des geteilten Geheimschlüssels durch die erste Kommunikationseinheit und Übertragen des erzeugten ersten Beitrags an die zweite Kommunikationseinheit; – Authentifizieren des empfangenen ersten Beitrags durch die zweite Kommunikationseinheit anhand des Durchgangscodes, und Erzeugen des geteilten Geheimschlüssels wenigstens anhand des ersten Beitrags, falls der empfangene erste Beitrag als authentisch akzeptiert wurde; – Übertragen eines zweiten Beitrags des geteilten Geheimschlüssels, erzeugt durch die zweite Kommunikationseinheit, an die erste Kommunikationseinheit; und – Authentifizieren des empfangenen zweiten Beitrags durch die erste Kommunikationseinheit anhand des Durchgangscodes, und Erzeugen des geteilten Geheimschlüssels durch die zweite Kommunikationseinheit, falls der empfangene erste Beitrag als authentisch akzeptiert wurde.
  10. Verfahren nach Anspruch 9, wobei das Verfahren zusätzlich umfasst: – Berechnen eines ersten Nachrichtenmarkers eines Nachrichtenauthentifikationscodes anhand des ersten Beitrags unter Verwendung des Durchgangscodes als ein Schlüssel; und – Bereitstellen des berechneten ersten Nachrichtenmarkers an die zweite Kommunikationseinheit; und wobei der Schritt des Authentifizierens des empfangenen ersten Beitrags anhand des Durchgangscodes durch die zweite Kommunikationseinheit umfasst: – Berechnen eines zweiten Nachrichtenmarkers des Nachrichtenauthentifikationscodes anhand des empfangenen ersten Beitrags unter Verwendung des Durchgangscodes als ein Schlüssel; und – Vergleichen des ersten und zweiten Nachrichtenmarkers, um den empfangenen ersten Beitrag zu authentifizieren.
  11. Verfahren nach wenigstens einem der Ansprüche 1 bis 10, wobei das Verfahren eine Registrierungsphase und eine Schlüsselaustauschphase umfasst und die Registrierungsphase umfasst: – Erzeugen eines ersten Privatschlüsselwerts und eines entsprechenden ersten öffentlichen Schlüssels des Schlüsselaustauschmechanismus durch die erste Kommunikationseinheit; – Erzeugen eines Durchgangscodes durch die erste Kommunikationseinheit; – Berechnen eines Nachrichtenmarkers des öffentlichen Schlüssels anhand eines Nachrichtenauthentifikationscodes unter Verwendung des Durchgangscodes durch die erste Kommunikationseinheit; – zur Verfügung stellen der zweiten Kommunikationseinheit, den Durchgangscode und den berechneten Markerwert, wenigstens teilweise durch Benutzerinteraktionsmittel; und wobei die Schlüsselaustauschphase umfasst: – Übertragen des ersten öffentlichen Schlüssels durch die erste Kommunikationseinheit an die zweite Kommunikationseinheit; – Berechnen des Markerwerts des empfangenen ersten öffentlichen Schlüssel anhand des Nachrichtenauthentifikationscodes unter Verwendung des Durchgangscodes durch die zweite Kommunikationseinheit, und Akzeptieren des empfangenen ersten Schlüssels, falls der berechnete Markerwert dem kommunizierten Markerwert entspricht; – Erzeugen eines zweiten öffentlichen Schlüsselwerts und eines entsprechenden zweiten öffentlichen Schlüssels des Schlüsselaustauschmechanismus durch die zweite Kommunikationseinheit; – Berechnen eines geteilten Geheimschlüssels des Schlüsselaustauschmechanismus anhand des ersten öffentlichen Schlüssels und des zweiten Privatschlüsselwerts durch die zweite Kommunikationseinheit; – Verschlüsseln des Durchgangscodes durch die zweite Kommunikationseinheit unter Verwendung des berechneten geteilten Geheimschlüssels; – Übertragen des zweiten öffentlichen Schlüssels und des verschlüsselten Durchgangscodes an die erste Kommunikationseinheit durch die zweite Kommunikationseinheit; – Berechnen des geteilten Geheimschlüssels des Schlüsselaustauschmechanismus anhand des zweiten öffentlichen Schlüssels und des ersten Privatschlüsselwerts durch die erste Kommunikationseinheit; und – Entschlüsseln des übertragenen verschlüsselten Durchgangscodes durch die erste Kommunikationseinheit unter Verwendung des geteilten Geheimschlüssels, berechnet durch die erste Kommunikationseinheit, und Akzeptieren des berechneten geteilten Geheimschlüssels, falls der entschlüsselte Durchgangscode dem ursprünglich erzeugten Durchgangscode, durch die erste Kommunikationseinheit erzeugt, entspricht.
  12. Kommunikationssystem zum Bereitstellen sicherer Kommunikation wenigstens zwischen einer ersten und einer zweiten Kommunikationseinheit (A, B, C) mithilfe eines Schlüsselaustauschs zwischen der ersten und der zweiten Kommunikationseinheit, aus dem sich ein geteilter Geheimschlüssel (S) ergibt, wobei der Schlüsselaustausch eine Benutzerinteraktion beinhaltet, wobei das Kommunikationssystem aufweist: – Mittel zum Bereitstellen (606, 611, 602, 703), wenigstens teilweise mithilfe von Benutzerinteraktionen, eines Durchgangscodes (K) für die erste und zweite Kommunikationseinheit; – Mittel zum Erzeugen (602, 609, 702, 703) eines ersten Beitrags zum geteilten Geheimschlüssel durch die erste Kommunikationseinheit und eines zweiten Beitrags zum geteilten Geheimschlüssel durch die zweite Kommunikationseinheit; – Mittel zum Übertragen (603, 608) jedes erzeugten Beitrags an die jeweilige andere entsprechende Kommunikationseinheit; – Mittel zum Authentifizieren (602, 609) des übertragenen ersten und zweiten Beitrags durch die entsprechende empfangende Kommunikationseinheit, basierend auf dem Durchgangscode; und – Mittel zum Einrichten (602, 609) des geteilten Geheimschlüssels durch jede der Kommunikationseinheiten anhand wenigstens des entsprechenden empfangenen ersten oder zweiten Beitrags, falls der entsprechende empfangene Beitrag erfolgreich authentifiziert wurde; dadurch gekennzeichnet, dass die erste und zweite Kommunikationseinheit jeweils Verarbeitungsmittel (602, 609) zum Berechnen eines Markerwerts (t, t') eines Nachrichtenauthentifikationscodes aufweisen, wobei der Markerwert anhand des ersten Beitrags und des Durchgangscodes berechnet wird.
  13. Kommunikationssystem nach Anspruch 12, wobei die erste Kommunikationseinheit Verarbeitungsmittel (602, 703) aufweist, angepasst zum Erzeugen des Durchgangscodes, und Ausgabemittel (606) zum Bereitstellen des erzeugten Durchgangscodes an die zweite Kommunikationseinheit über einen zweiten Kommunikationskanal, der sich von dem ersten Kommunikationskanal unterscheidet.
  14. Kommunikationssystem nach Anspruch 12, wobei die Verarbeitungsmittel zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes angepasst sind, das Codewort dem ersten Beitrag entspricht, und das Zeichen durch den Durchgangscode identifiziert ist.
  15. Kommunikationssystem nach Anspruch 14, wobei die Verarbeitungsmittel angepasst sind zum Berechnen eines Streuwerts einer Ein-Richtungsstreuwertfunktion anhand des ersten Beitrags und zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem Streuwert des ersten Beitrags entsprechend, und das Zeichen durch den Durchgangscode identifiziert ist.
  16. Kommunikationssystem nach Anspruch 14, wobei der Fehlerkorrekturcode ein Reed-Solomon-Code ist.
  17. Kommunikationseinheit (A) zum Bereitstellen sicherer Kommunikation mit einer anderen Kommunikationseinheit (B) mithilfe eines Schlüsselaustauschs, aus dem sich ein geteilter Geheimschlüssel (S) ergibt, der Schlüsselaustausch eine Benutzerinteraktion beinhaltend, wobei die Kommunikationseinheit Datenverarbeitungsmittel (602), Benutzerschnittstellenmittel (606) und eine Kommunikationsschnittstelle (603) aufweist, und die Verarbeitungsmittel zur Durchführung der folgenden Schritte angepasst sind: – Erzeugen eines Durchgangscodes, der wenigstens teilweise mithilfe von Benutzerinteraktion über Benutzerschnittstellenmittel der anderen Kommunikationseinheit bereitgestellt wird; – Erzeugen und Übertragen über die Kommunikationsschnittstelle eines ersten Beitrags zum geteilten Geheimschlüssel, und Empfangen über die Kommunikationsschnittstelle eines zweiten Beitrags zum geteilten Geheimschlüssels, wobei der zweite Beitrag durch die andere Kommunikationseinheit erzeugt wird; – Authentifizieren des empfangenen zweiten Beitrags, basierend auf dem Durchgangscode; und – Einrichten des geteilten Geheimschlüssels anhand wenigstens des zweiten Beitrags, falls der empfangene zweite Beitrag erfolgreich authentifiziert wurde, dadurch gekennzeichnet, dass die Verarbeitungsmittel weiter angepasst sind zum Berechnen eines Markerwerts eines Nachrichtenauthentifikationscodes, der der anderen Kommunikationseinheit zur Verfügung gestellt wird, wobei der Markerwert anhand des ersten Beitrags und des Durchgangscodes berechnet wird.
  18. Kommunikationseinheit nach Anspruch 17, wobei die Verarbeitungsmittel weiter angepasst sind zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem ersten Beitrag entspricht und das Symbol durch den Durchgangscode identifiziert ist.
  19. Kommunikationseinheit nach Anspruch 18, wobei die Verarbeitungsmittel weiter angepasst sind zum Berechnen eines Streuwerts einer Ein-Richtungsstreuwertfunktion anhand des ersten Beitrags und zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem Streuwert des ersten Beitrags entsprechend, und wobei das Symbol durch den Durchgangscode identifiziert ist.
  20. Kommunikationseinheit nach Anspruch 18, wobei der Fehlerkorrekturcode ein Reed-Solomon-Code ist.
  21. Kommunikationseinheit nach Anspruch 17, wobei die Verarbeitungsmittel angepasst sind: – zum Entschlüsseln eines verschlüsselten Durchgangscodes, empfangen zusammen mit dem zweiten Beitrag, wobei die Entschlüsselung den geteilten Geheimschlüssel verwendet; und – zum Akzeptieren des empfangenen zweiten Beitrags, falls der entschlüsselte Durchgangscode dem erzeugten Durchgangscode entspricht.
  22. Kommunikationseinheit (B) zum Bereitstellen sicherer Kommunikation mit einer anderen Kommunikationseinheit (A) mithilfe eines Schlüsselaustauschs, aus dem sich ein geteilter Geheimschlüssel (S) ergibt, wobei der Schlüsselaustausch eine Benutzerinteraktion beinhaltend, und die Kommunikationseinheit Datenverarbeitungsmittel (609), Speichermitte (610) und eine Kommunikationsschnittstelle (608) aufweist, wobei die Verarbeitungsmittel zur Durchführung eines Schlüsselaustausches angepasst sind, aus dem sich ein geteilter Geheimschlüssel ergibt, wobei der Schlüsselaustausch umfasst: – Empfangen, wenigstens teilweise mithilfe von Benutzerinteraktion, und Speichern eines durch eine andere Kommunikationseinheit erzeugten Durchgangscodes; – Empfangen eines ersten Beitrags zum geteilten Geheimschlüssel, erzeugt durch die andere Kommunikationseinheit, über die Kommunikationsschnittstelle; – Authentifizieren des empfangenen ersten Beitrags, basierend auf dem Durchgangscode; – falls der empfangene erste Beitrag erfolgreich authentifiziert wurde, Einrichten des geteilten Geheimschlüssels anhand wenigstens des ersten Beitrags und Übertragen eines zweiten Beitrags des geteilten Geheimschlüssels über die Kommunikationsschnittstelle; dadurch gekennzeichnet, dass die Kommunikationseinheit weiter zum Speichern eines Nachrichtenauthentifikationsmarkers auf die Speichermedien angepasst ist; und wobei die Verarbeitungsmittel weiter angepasst sind zum – Berechnen eines Markerwertes eines Nachrichtenauthentifikationscodes anhand des empfangenen ersten Beitrags und des Durchgangscodes; und – Akzeptieren des empfangenen ersten Beitrags falls der berechnete Markerwert dem gespeicherten Nachrichtenauthentifikationsmarker entspricht.
  23. Kommunikationseinheit nach Anspruch 22, wobei die Verarbeitungsmittel weiter angepasst sind zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem ersten Beitrag entspricht, und das Symbol durch den Durchgangscode identifiziert ist.
  24. Kommunikationseinheit nach Anspruch 23, wobei die Verarbeitungsmittel weiter angepasst sind zum Berechnen eines Streuwerts einer Ein-Richtungsstreuwertfunktion anhand des ersten Beitrags und zum Berechnen des Markerwerts durch Auswählen eines Symbols eines Codeworts eines Fehlerkorrekturcodes, das Codewort dem Streuwert des ersten Beitrags entspricht, und das Symbol durch den Durchgangscode identifiziert ist.
  25. Kommunikationseinheit nach Anspruch 23, wobei der Fehlerkorrekturcode ein Reed-Solomon-Code ist.
  26. Kommunikationseinheit nach Anspruch 22, wobei die Verarbeitungsmittel weiter angepasst sind: – zum Verschlüsseln des gespeicherten Durchgangscodes, wobei die Verschlüsselung geteilten Geheimschlüssel verwendet; und – zum Übertragen des verschlüsselten Durchgangscodes mit dem zweiten Beitrag über die Kommunikationsschnittstelle an die andere Kommunikationseinheit.
  27. Computerprogramm aufweisend Programmcodemittel zum Durchführen alle Schritte eines beliebigen der Ansprüche 1 bis 11, wenn das erwähnte Programm auf einem Rechner abläuft.
  28. Computerprogrammprodukt mit Programmcodemitteln, welche auf einem rechnerlesbaren Medium gespeichert sind, zum Durchführen der Verfahren einer der Ansprüche 1 bis 11, wenn das Computerprogrammprodukt auf einem Rechner abläuft.
  29. Rechnerlesbares Medium, auf dem Programmcodemittel zum Durchführen aller Schritte eines beliebigen der Ansprüche 1 bis 11 gespeichert sind, wenn das Programm auf einem Rechner abläuft.
DE60310437T 2002-10-24 2003-10-09 Sichere kommunikation Expired - Lifetime DE60310437T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US42096402P 2002-10-24 2002-10-24
US420964P 2002-10-24
US10/602,176 US7284127B2 (en) 2002-10-24 2003-06-24 Secure communications
US602176 2003-06-24
PCT/EP2003/011220 WO2004038998A1 (en) 2002-10-24 2003-10-09 Secure communications

Publications (2)

Publication Number Publication Date
DE60310437D1 DE60310437D1 (de) 2007-01-25
DE60310437T2 true DE60310437T2 (de) 2007-09-27

Family

ID=32110307

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60310437T Expired - Lifetime DE60310437T2 (de) 2002-10-24 2003-10-09 Sichere kommunikation

Country Status (10)

Country Link
US (2) US7284127B2 (de)
EP (1) EP1554834B1 (de)
JP (1) JP4550736B2 (de)
KR (1) KR101095239B1 (de)
CN (1) CN100574188C (de)
AT (1) ATE348457T1 (de)
AU (1) AU2003276090A1 (de)
DE (1) DE60310437T2 (de)
ES (1) ES2279225T3 (de)
WO (1) WO2004038998A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11483145B2 (en) * 2017-11-10 2022-10-25 Nippon Telegraph And Telephone Corporation Key exchange device, key exchange system, key exchange method, and key exchange program for exchanging a key with another device

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7284127B2 (en) * 2002-10-24 2007-10-16 Telefonktiebolaget Lm Ericsson (Publ) Secure communications
US20040243856A1 (en) * 2003-05-29 2004-12-02 Will Shatford Four factor authentication system and method
US7607012B2 (en) * 2003-10-01 2009-10-20 Nokia Corporation Method for securing a communication
US7389419B2 (en) * 2003-12-10 2008-06-17 International Business Machines Corporation Methods for supplying cryptographic algorithm constants to a storage-constrained target
JP2005210193A (ja) * 2004-01-20 2005-08-04 Matsushita Electric Works Ltd 共通秘密鍵生成装置
US7778422B2 (en) * 2004-02-27 2010-08-17 Microsoft Corporation Security associations for devices
US8538560B2 (en) * 2004-04-29 2013-09-17 Rosemount Inc. Wireless power and communication unit for process field devices
EP1596538A1 (de) 2004-05-10 2005-11-16 Sony Ericsson Mobile Communications AB Verfahren und Gerät zum Bluetooth-Pairing
EP1622333A1 (de) * 2004-07-29 2006-02-01 Sun Microsystems France S.A. Methode und Gerät zur einfachen und schnellen Authentifizierung
US7464267B2 (en) * 2004-11-01 2008-12-09 Innomedia Pte Ltd. System and method for secure transmission of RTP packets
US20060116107A1 (en) * 2004-11-24 2006-06-01 Hulvey Robert W System and method for pairing wireless headsets and headphones
US8428042B1 (en) * 2005-01-10 2013-04-23 Zte (Usa) Inc. Feedback mechanisms for multicast/broadcast service in wireless communication networks
EP1688888A1 (de) * 2005-02-04 2006-08-09 Sokymat Automotive GmbH Verfahren zum Übermitteln und zur Kontrolle von Authentifizierungsdaten zwischen einer tragbaren Vorrichtung mit Transponder und einer Fahrzeugleseeinheit
US7739513B2 (en) * 2005-02-22 2010-06-15 Sony Corporation Secure device authentication
US7649999B2 (en) * 2005-06-08 2010-01-19 Iris Anshel Method and apparatus for establishing a key agreement protocol
US7788494B2 (en) 2005-06-28 2010-08-31 Intel Corporation Link key injection mechanism for personal area networks
US20070037552A1 (en) * 2005-08-11 2007-02-15 Timothy Lee Method and system for performing two factor mutual authentication
US7861078B2 (en) * 2005-10-14 2010-12-28 Juniper Networks, Inc. Password-authenticated asymmetric key exchange
FR2892876A1 (fr) * 2005-11-02 2007-05-04 Gemplus Sa Procede de depot securise de donnees numeriques, procede associe de recuperation de donnees numeriques, dispositifs associes pour la mise en oeuvre des procedes, et systeme comprenant les dits dispositifs
US7894806B2 (en) * 2005-11-14 2011-02-22 American Teleconferencing Services, Ltd. Systems and methods to direct a mobile communications device to a preferred teleconference bridge
US20070152171A1 (en) * 2005-12-30 2007-07-05 Michael Goldstein Free electron laser
US7900817B2 (en) * 2006-01-26 2011-03-08 Ricoh Company, Ltd. Techniques for introducing devices to device families with paper receipt
US8670564B1 (en) 2006-08-14 2014-03-11 Key Holdings, LLC Data encryption system and method
US7711861B2 (en) 2006-08-30 2010-05-04 Microsoft Corporation Synchronized indicator light for secure connections
US20080065704A1 (en) * 2006-09-12 2008-03-13 Microsoft Corporation Data and replica placement using r-out-of-k hash functions
FI20060936A0 (fi) * 2006-10-24 2006-10-24 Nokia Corp Menetelmä kanavanvaihtojen suorittamiseksi viestintäjärjestelmässä
US8103247B2 (en) * 2006-10-31 2012-01-24 Microsoft Corporation Automated secure pairing for wireless devices
GB0622366D0 (en) * 2006-11-09 2006-12-20 Cambridge Silicon Radio Ltd Authenticating devices for RF communications
US8613057B2 (en) * 2006-11-27 2013-12-17 Red Hat, Inc. Identity management facilitating minimum disclosure of user data
US8010795B2 (en) * 2006-11-27 2011-08-30 Red Hat, Inc. Secure information transfer using dedicated public key pairs
WO2008105703A1 (en) * 2007-01-19 2008-09-04 Bjoerhn Anders Pos module
US8543831B2 (en) * 2007-11-14 2013-09-24 Qimonda Ag System and method for establishing data connections between electronic devices
KR20100098567A (ko) * 2007-12-19 2010-09-07 파이제르트 아베 암호화된 데이터를 수신 및 전송하기 위한 시스템
US8452017B2 (en) * 2007-12-21 2013-05-28 Research In Motion Limited Methods and systems for secure channel initialization transaction security based on a low entropy shared secret
US8200819B2 (en) * 2008-03-14 2012-06-12 Industrial Technology Research Institute Method and apparatuses for network society associating
IES20080215A2 (en) * 2008-03-20 2008-10-15 New Bay Res Ltd Access rights for digital objects
US20090252331A1 (en) * 2008-04-08 2009-10-08 International Business Machines Corporation Method of securing typed conversation using encryption keys in a virtual world
US7522723B1 (en) * 2008-05-29 2009-04-21 Cheman Shaik Password self encryption method and system and encryption by keys generated from personal secret information
US8694060B2 (en) 2008-06-17 2014-04-08 Rosemount Inc. Form factor and electromagnetic interference protection for process device wireless adapters
WO2009154756A1 (en) 2008-06-17 2009-12-23 Rosemount Inc. Rf adapter for field device with variable voltage drop
US8929948B2 (en) 2008-06-17 2015-01-06 Rosemount Inc. Wireless communication adapter for field devices
CN101662765B (zh) * 2008-08-29 2013-08-07 深圳富泰宏精密工业有限公司 手机短信保密系统及方法
US9344438B2 (en) * 2008-12-22 2016-05-17 Qualcomm Incorporated Secure node identifier assignment in a distributed hash table for peer-to-peer networks
US20100199095A1 (en) * 2009-01-30 2010-08-05 Texas Instruments Inc. Password-Authenticated Association Based on Public Key Scrambling
US9674976B2 (en) 2009-06-16 2017-06-06 Rosemount Inc. Wireless process communication adapter with improved encapsulation
US8284934B2 (en) * 2009-07-21 2012-10-09 Cellco Partnership Systems and methods for shared secret data generation
CA2697687C (en) * 2010-03-24 2014-02-18 Diversinet Corp. Method and system for secure communication using hash-based message authentication codes
US8639934B2 (en) * 2010-06-10 2014-01-28 Empire Technology Development Llc Radio channel metrics for secure wireless network pairing
US8644515B2 (en) * 2010-08-11 2014-02-04 Texas Instruments Incorporated Display authenticated security association
US10761524B2 (en) 2010-08-12 2020-09-01 Rosemount Inc. Wireless adapter with process diagnostics
US9219604B2 (en) * 2011-05-09 2015-12-22 Cleversafe, Inc. Generating an encrypted message for storage
US9310794B2 (en) 2011-10-27 2016-04-12 Rosemount Inc. Power supply for industrial process field device
JP5981761B2 (ja) * 2012-05-01 2016-08-31 キヤノン株式会社 通信装置、制御方法、プログラム
US9992017B2 (en) 2013-06-28 2018-06-05 Telefonaktiebolaget L M Ericsson (Publ) Encrypting and storing data
CN103731258B (zh) * 2013-12-20 2017-07-28 三星电子(中国)研发中心 生成密钥的方法及设备
WO2015136142A1 (en) * 2014-03-12 2015-09-17 Nokia Technologies Oy Pairing of devices
US10212136B1 (en) * 2014-07-07 2019-02-19 Microstrategy Incorporated Workstation log-in
US10412098B2 (en) 2015-12-11 2019-09-10 Amazon Technologies, Inc. Signed envelope encryption
US9705859B2 (en) * 2015-12-11 2017-07-11 Amazon Technologies, Inc. Key exchange through partially trusted third party
US10231128B1 (en) 2016-02-08 2019-03-12 Microstrategy Incorporated Proximity-based device access
US10855664B1 (en) 2016-02-08 2020-12-01 Microstrategy Incorporated Proximity-based logical access
EP3276911B1 (de) * 2016-07-26 2019-12-04 Volkswagen Aktiengesellschaft Authentifizierte verbindung zwischen mindestens zwei kommunikationspartnern
SG10201609247YA (en) * 2016-11-04 2018-06-28 Huawei Int Pte Ltd System and method for configuring a wireless device for wireless network access
ES2798325T3 (es) * 2016-11-04 2020-12-10 Koninklijke Philips Nv Alcance de un acuerdo sobre un valor secreto
JP6693574B2 (ja) * 2016-12-15 2020-05-13 日本電気株式会社 メッセージ認証システム、装置及びメッセージ検証方法
US11140157B1 (en) 2017-04-17 2021-10-05 Microstrategy Incorporated Proximity-based access
US10771458B1 (en) 2017-04-17 2020-09-08 MicoStrategy Incorporated Proximity-based user authentication
US10657242B1 (en) 2017-04-17 2020-05-19 Microstrategy Incorporated Proximity-based access
JP6834771B2 (ja) * 2017-05-19 2021-02-24 富士通株式会社 通信装置および通信方法
US11729612B2 (en) * 2018-03-08 2023-08-15 Cypress Semiconductor Corporation Secure BLE just works pairing method against man-in-the-middle attack
KR20200086800A (ko) * 2019-01-10 2020-07-20 삼성전자주식회사 전자 장치, 전자 장치 제어방법 및 네트워크 시스템
JP7377487B2 (ja) * 2019-07-17 2023-11-10 日本電信電話株式会社 鍵交換システム、通信装置、鍵交換方法及びプログラム
US11375371B1 (en) * 2019-12-31 2022-06-28 Mcafee, Llc Methods, systems, and media for protected near-field communications
KR102418900B1 (ko) * 2020-09-01 2022-07-08 주식회사 티엔젠 무인이동체의 보안을 위한 암호키 관리 시스템 및 방법
WO2022204888A1 (zh) * 2021-03-29 2022-10-06 华为技术有限公司 一种配对方法及装置
US20210319143A1 (en) * 2021-06-25 2021-10-14 Intel Corporation Memory bus link authentication and encryption mechanisms for hardware-based replay protection
DE102023122464A1 (de) 2023-08-22 2023-11-30 Patrick Stoll System zum sicheren elektronischen Austausch von Daten über ein öffentliches Netzwerk

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200770A (en) 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US4423287A (en) * 1981-06-26 1983-12-27 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US5651069A (en) 1994-12-08 1997-07-22 International Business Machines Corporation Software-efficient message authentication
US5664016A (en) 1995-06-27 1997-09-02 Northern Telecom Limited Method of building fast MACS from hash functions
US6226383B1 (en) * 1996-04-17 2001-05-01 Integrity Sciences, Inc. Cryptographic methods for remote authentication
US7010692B2 (en) * 1996-04-17 2006-03-07 Phoenix Technologies Ltd. Cryptographic methods for remote authentication
US6690289B1 (en) 1997-06-12 2004-02-10 Microsoft Corporation Message formatting, authentication, and error detection in home control systems
US6192474B1 (en) * 1998-07-31 2001-02-20 Lucent Technologies Inc. Method for establishing a key using over-the-air communication and password protocol and password protocol
KR100654741B1 (ko) 1999-09-28 2006-12-07 톰슨 라이센싱 간이형 네트워크 관리 프로토콜(snmp) 에이전트를 초기화하기 위한 방법
WO2001033768A2 (en) 1999-10-29 2001-05-10 Broadcom Corporation Apparatus and method for secure field upgradability
US7047408B1 (en) * 2000-03-17 2006-05-16 Lucent Technologies Inc. Secure mutual network authentication and key exchange protocol
US7076656B2 (en) * 2001-04-05 2006-07-11 Lucent Technologies Inc. Methods and apparatus for providing efficient password-authenticated key exchange
EP1255372B1 (de) 2001-05-03 2008-03-19 Telefonaktiebolaget LM Ericsson (publ) Verfahren und Vorrichtung zum Schutz der Datenintegrität
DE60109585D1 (de) * 2001-05-08 2005-04-28 Ericsson Telefon Ab L M Sicherer Zugang zu einem entfernten Teilnehmermodul
US20030041242A1 (en) 2001-05-11 2003-02-27 Sarver Patel Message authentication system and method
US20040218762A1 (en) * 2003-04-29 2004-11-04 Eric Le Saint Universal secure messaging for cryptographic modules
US7373515B2 (en) 2001-10-09 2008-05-13 Wireless Key Identification Systems, Inc. Multi-factor authentication system
KR100445574B1 (ko) 2001-12-19 2004-08-25 한국전자통신연구원 대화형 영 지식 증명을 이용한 패스워드 기반의 인증 및키 교환 프로토콜 설계 방법
JP4504192B2 (ja) * 2002-09-16 2010-07-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 加入モジュールへのセキュアアクセス方法
US7284127B2 (en) * 2002-10-24 2007-10-16 Telefonktiebolaget Lm Ericsson (Publ) Secure communications
US20040093496A1 (en) * 2002-11-04 2004-05-13 Colnot Vincent Cedric Method and apparatus to secure online transactions on the internet

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11483145B2 (en) * 2017-11-10 2022-10-25 Nippon Telegraph And Telephone Corporation Key exchange device, key exchange system, key exchange method, and key exchange program for exchanging a key with another device

Also Published As

Publication number Publication date
ES2279225T3 (es) 2007-08-16
KR20050073573A (ko) 2005-07-14
JP2006504362A (ja) 2006-02-02
CN100574188C (zh) 2009-12-23
US7284127B2 (en) 2007-10-16
US20070288753A1 (en) 2007-12-13
KR101095239B1 (ko) 2011-12-20
CN1729645A (zh) 2006-02-01
US20040083368A1 (en) 2004-04-29
AU2003276090A1 (en) 2004-05-13
EP1554834A1 (de) 2005-07-20
JP4550736B2 (ja) 2010-09-22
EP1554834B1 (de) 2006-12-13
US7502930B2 (en) 2009-03-10
DE60310437D1 (de) 2007-01-25
WO2004038998A1 (en) 2004-05-06
ATE348457T1 (de) 2007-01-15

Similar Documents

Publication Publication Date Title
DE60310437T2 (de) Sichere kommunikation
DE60310439T2 (de) Auf fehlerkorrekturkode basierter nachrichtenauthentifizierungskode
DE60302276T2 (de) Verfahren zur ferngesteuerten Änderung eines Kommunikationspasswortes
DE60011990T2 (de) Verfahren und Vorrichtung in einem Kommunikationsnetzwerk
CN103746794B (zh) 加密密钥生成方法及装置
DE69727641T2 (de) Verfahren zum Senden einer sicheren Botschaft in einem Telekommunikationssystem
DE69534192T2 (de) Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens
DE69921039T2 (de) Verfahren zur Erstellung eines Schlüssels unter Verwendung einer Funkkommunikation und eines Kennwortprotokolls
DE602004000695T2 (de) Erzeugung von asymmetrischen Schlüsseln in einem Telekommunicationssystem
DE102007000589B3 (de) Verfahren zum Schutz einer Chipkarte gegen unberechtigte Benutzung, Chipkarte und Chipkarten-Terminal
DE102005024725A1 (de) System und Verfahren für Chaotische Digitale Signatur, Verschlüsselung und Authentifizierung
CN106130716A (zh) 基于认证信息的密钥交换系统及方法
DE102013215970A1 (de) Einzigartiger Code in einer Nachricht für eine Signaturerzeugung in einem asymetrischen Kryptographiegerät
US8438393B2 (en) Quadratic residue based password authenticated key exchange method and system
DE102009030019B3 (de) System und Verfahren zur zuverlässigen Authentisierung eines Gerätes
EP2929648A1 (de) Verfahren zum aufbau einer sicheren verbindung zwischen clients
DE102014106727A1 (de) Verfahren zum Senden/Empfangen einer Nachricht mittels einer verschlüsselten drahtlosen Verbindung
DE112012000971B4 (de) Datenverschlüsselung
CN112382376A (zh) 基于区块链的医疗器械管理追溯系统
EP3220575B1 (de) Verfahren zur herstellung einer sicheren kommunikation zwischen einem client und einem server
CN110610418B (zh) 基于区块链的交易状态查询方法、系统、设备及存储介质
DE60224391T2 (de) Sicherer Zugang zu einem Teilnehmermodul
WO2008059475A1 (en) Secure communication
DE602005000716T2 (de) Sicherung einer Kommunikationsverbindung zwischen Geräten.
EP3050244B1 (de) Bereitstellung und verwendung pseudonymer schlüssel bei hybrider verschlüsselung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition