DE69532254T2 - Verfahren und Gerät zur Kommunikationsverschlüsselung in einem Datennetz - Google Patents

Verfahren und Gerät zur Kommunikationsverschlüsselung in einem Datennetz Download PDF

Info

Publication number
DE69532254T2
DE69532254T2 DE69532254T DE69532254T DE69532254T2 DE 69532254 T2 DE69532254 T2 DE 69532254T2 DE 69532254 T DE69532254 T DE 69532254T DE 69532254 T DE69532254 T DE 69532254T DE 69532254 T2 DE69532254 T2 DE 69532254T2
Authority
DE
Germany
Prior art keywords
node
code
message
network
communication
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
DE69532254T
Other languages
English (en)
Other versions
DE69532254D1 (de
Inventor
John L. Klonowski
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69532254D1 publication Critical patent/DE69532254D1/de
Publication of DE69532254T2 publication Critical patent/DE69532254T2/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0464Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • 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/40Network security protocols

Description

  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die Erfindung betrifft die Datenvernetzung im Allgemeinen und insbesondere die Ver- und Entschlüsselung von Daten in Datennetzen. Im Einzelnen betrifft die Erfindung die Auswahl, Verbreitung und Verwendung mehrerer Codes in Netzwerken zum Zwecke der Datenverschlüsselung und Datenentschlüsselung in einer Weise, bei der Sicherheitsprobleme vermieden werden, wenn private Netzwerke nicht private Abschnitte enthalten, und verringert darüber hinaus das bekannte Problem der Codeverbreitung.
  • STAND DER TECHNIK
  • Angesichts der heutigen heterogenen und herstellerunabhängigen Netzwerke gibt es Probleme hinsichtlich der Sicherheit bei der Kommunikation in einem Netzwerk. Ein solches Problem entsteht beispielsweise dadurch, dass ein privates Netzwerk Kommunikationsknoten enthält, die von unabhängigen Netzwerkherstellern zur Verfügung gestellt werden.
  • Eine allgemein übliche Technik für eine sichere Kommunikation ist die Ver- und Entschlüsselung von Nachrichten, die zwischen benachbarten Knoten eines Netzwerks auf dem Weg zu einem Zielknoten übermittelt werden. Ein sendender Knoten verschlüsselt also eine Nachricht und verwendet hierzu einen Code, den er mit dem nächsten benachbarten Knoten auf der Route gemeinsam nutzt. Wenn er die verschlüsselte Nachricht erhält, entschlüsselt der benachbarte Knoten die Nachricht und verschlüsselt dann die jetzt freie Nachricht mit einem neuen Code, den er mit dem nächsten benachbarten Knoten auf der Route gemeinsam nutzt, usw. Diese Technik wird in den Teilbereich-SNA (System Network Architecture) Netzwerken von IBM eingesetzt. Jeder Knoten im Netzwerk muss einen Verschlüsselungscode mit jedem seiner Nachbarknoten in dem Netzwerk gemeinsam nutzen. Das bedeutet, dass wenn irgendein Knoten auf der Route zwischen einem Ursprungsknoten einer Nachricht und einem Zielknoten zu einem unabhängigen Hersteller gehört, dieser unabhängige Knoten mit den benachbarten Knoten des privaten Netzwerks Codes gemeinsam nutzen muss. Dies ist ein nicht akzeptables Sicherheitsrisiko für viele Netzwerkbenutzer.
  • Eine mögliche Lösung für dieses Problem ist die Zuweisung eines einzigen Codes für alle verschlüsselten Kommunikationen zwischen den privaten Userknoten eines Netzwerks. Hierdurch kann ein Netzwerk Abschnitte öffentlicher Anbieter nutzen, ohne die Codes mit dem unabhängigen Hersteller gemeinsam zu nutzen. Besonders in großen Netzwerken gilt dies jedoch aufgrund des erhöhten Risikos, das bei Verwendung eines einzigen Codes für alle Userknoten vorhanden ist, gewöhnlich als nicht akzeptabel.
  • Eine andere Lösung für das o. a. Problem ist die Pflege separater Codes an jedem privaten Knoten für jeden anderen privaten Knoten in einem User-Netzwerk. Für viele Netzwerkbesitzer ist dies jedoch wegen der Codeverbreitung nicht akzeptabel. Zum Beispiel erfordert diese Lösung in einem Netzwerk mit eintausend privaten Userknoten, dass in jedem privaten Knoten 999 separate Codes für die übrigen Userknoten gespeichert werden.
  • In der europäischen Patentanmeldung EP-A-0 554 182 (Electricite de France) vom 4. August 1993 wird eine Methode zur Verschlüsselung von Nachrichten beschrieben, die zwischen mindestens zwei Netzwerken übertragen werden, die über mindestens eine Vielfachleitung miteinander verbunden sind, wobei die miteinander verbundenen Netzwerke das Internetprotokoll (IP) als Netzwerkschichtprotokoll und das TCP- oder UDP-Protokoll als Transportschichtprotokoll verwenden, die Vielfachleitung ein spezifiziertes Netzwerkschichtprotokoll verwendet, jede Nachricht eine Vielzahl von Nachrichtenköpfen umfasst, darunter einen IP-Kopf und einen TCP- oder UDP-Kopf, und Daten. Das spezifizierte Netzwerkschichtprotokoll der Vielfachleitung ist das Internetprotokoll (IP). Für jede Nachricht wird mindestens ein Teil des TCP- oder UDP-Kopfes verschlüsselt, und zwar zum gleichen Zeitpunkt, an dem die Daten und der IP-Kopf nicht verschlüsselt sind, um die Übertragung der Nachricht über die Vielfachleitung entsprechend dem Internetprotokoll (IP) zu ermöglichen.
  • In der US Patentschrift US-A-5 115 433 (BARAN PAUL et. al.) vom 19. Mai 1992 werden eine Paket-Routingmethode in einem Netzwerk und ein System beschrieben, die auf den Kennungen geographischer Koordinaten basieren. Jeder Knoten in einem Netzwerk ist durch absolute geographische Koordinaten oder durch einen Code, der die absolute Lage in einem externen koordinatenbasierten Bezugssystem angibt (Knotenkoordinaten) eindeutig gekennzeichnet, und diese absoluten geographischen Koordinaten oder ihre Entsprechung werden als Teil einer Paketkennung für jedes Paket verwendet, das zur Verwendung bei der Entscheidung über die Leitweglenkung generiert wird. Die Knotenkoordinaten eines lokalen Knotens und seiner Nachbarknoten und die Paketkoordinaten werden von Mitteln an jedem Knoten verwendet, durch die ein Paket geleitet wird, um eine gewünschte Transportroute eines Datenpakets zu bestimmen. Die Leitweglenkung kann nach ausgewählten Kriterien priorisiert werden, mit denen vorzugsweise ein maximaler Transportfortschritt mit der geringsten Leistung erreicht wird. Das Paket-Leitweglenkungsprotokoll gemäß der Erfindung erfordert für die Leitweglenkung der Daten kein Routing-Verzeichnis oder eine Routing-Tabelle.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfindung verbessert die Sicherheit der Datenkommunikation in einem Netzwerk, indem sie den Netzwerkbesitzern erlaubt, bestimmte Netzknoten auszuwählen und zu benennen, damit diese Verschlüsselungscodes mit anderen ausgewählten Knoten des Netzwerks gemeinsam nutzen. Die Anordnung erlaubt eine verschlüsselte Kommunikation in einem entsprechend ausgelegten Netzwerk, wobei gleichzeitig eine gemeinsame Nutzung der Verschlüsselungscodes mit den Knoten unabhängiger Hersteller und die in anderen Netzwerken bestehende Codeverbreitung vermieden wird.
  • Ein Ursprungsknoten, der eine verschlüsselte Nachricht an einen Zielknoten senden möchte, legt eine Route zum Zielknoten fest. Der Ursprungsknoten bestimmt dann auf dieser Route diejenigen Knoten, mit denen er Verschlüsselungscodes gemeinsam nutzen möchte. Der Ursprungsknoten wählt einen Code aus, der einem dieser Knoten zugeordnet ist, und verschlüsselt die Nachricht mit diesem Code. Er fügt der verschlüsselten Nachricht seine eigene Identität sowie die Identität des Knotens bei, der dem ausgewählten Code zugeordnet ist. Die Nachricht wird dann über die gewählte Route übermittelt. Wenn der Knoten, mit dem der ausgewählte Code gemeinsam genutzt wird, die Nachricht erhält, erkennt er anhand der in unverschlüsselter Form in der Nachricht enthaltenen Knotenkennungen, dass er der Entschlüsselungsknoten sein soll. Er entschlüsselt den verschlüsselten Teil der Nachricht anhand des mit dem Ursprungsknoten gemeinsam genutzten Codes. Außerdem prüft er, ob er der Zielknoten ist. Wenn ja, verarbeitet er die entschlüsselte Nachricht in der entsprechenden Weise. Ist er nicht der Zielknoten, wiederholt er den Prozess des Auswählens eines neuen Verschlüsselungsknotens, mit dem er einen Code gemeinsam nutzt, verschlüsselt die Nachricht erneut, fügt dieser wieder verschlüsselten Nachricht seine Identität und die des neuen Entschlüsselungsknotens in unverschlüsselter Form bei und übermittelt die neue Nachricht weiter zum Zielknoten.
  • Das bevorzugte Ausführungsbeispiel der Erfindung kommt in Verbindung mit nicht hierarchischen Netzwerken vor, beispielsweise der Advanced-Peer-to-Peer Networking (APPN) Architecture von IBM. Advanced-Peer-to-Peer Networking und APPN sind Warenzeichen von IBM. Die Erfindung löst das Sicherheitsproblem mit herstellerunabhängigen Knoten und verhindert gleichzeitig das Problem der Codeverbreitung in APPN-Netzwerken. APPN-Netzwerke haben sowohl Endknoten als auch Netzknoten, die Endknoten als Server dienen und andere generische Netzwerkdienste bereitstellen, beispielsweise die Leitweglenkung von Nachrichten. In einem APPN-Netzwerk ermöglicht die Erfindung jedem privaten Knoten in dem Netzwerk, aus mehreren Codes einen für die Verschlüsselung einer Sendung auszuwählen. Aufgrund der Zwangsbedingungen in einem APPN-Netzwerk kann ein Ursprungs-Endknoten einen Code mit einem Ziel-Endknoten oder mit einem Netzknoten, der einem Ziel-Endknoten als Server dient, oder mit einem Netzknoten, der dem Ursprungs-Endknoten als Server dient, gemeinsam nutzen. Netzknoten können Codes mit anderen Netzknoten sowie den Endknoten, deren Server sie sind, gemeinsam nutzen. Wenn für die verschlüsselte Kommunikation zwischen den Knoten mehrere alternative Codes zur Auswahl stehen, kann die Auswahl anhand jedes gewünschten Kriteriums erfolgen. In dem bevorzugten Ausführungsbeispiel wählt der Ursprungsknoten den gemeinsäm genutzten Code für die längstmögliche Spanne zwischen sich und dem Zielknoten aus und verschlüsselt eine Nachricht unter Verwendung dieses Codes. Er hängt an die verschlüsselte Nachricht eine Kennung des Entschlüsselungsknotens, der dem ausgewählten Code entspricht, sowie seine eigene Identität in unverschlüsselter Form an. Jeder am Übermittlungsweg liegende Knoten, der diese Sendung empfängt, prüft die Kennung des Entschlüsselungsknotens und gibt die Sendung so lange weiter, bis sie den Knoten mit der richtigen Kennung erreicht hat. Der gekennzeichnete Knoten entschlüsselt die Nachricht mit Hilfe des Codes, den er gemeinsam mit dem Ursprungsknoten nutzt. Handelt es sich bei dem Entschlüsselungsknoten nicht um den Zielknoten, wählt dieser einen anderen ihm bekannten Code, den er gemeinsam mit einem anderen Knoten auf dem weiteren Weg der Nachricht nutzt, und zwar nach einem ähnlichen Kriterium, wie es vom Ursprungsknoten genutzt wird. Die entschlüsselte Nachricht wird mit dem neuen Code erneut verschlüsselt, die Kennung dieses neuen Verschlüsselungsknotens und die Kennung des Entschlüsselungsknotens auf der weiteren Route, der den neuen Code ebenfalls nutzt, wird an die neu verschlüsselte Nachricht angehängt und die Sendung wird auf dem Weg zum Zielknoten weitergeleitet. Natürlich befindet sich auf dieser Route der gekennzeichnete Knoten, der als nächster die Nachricht entschlüsseln muss. Private Netzknoten nutzen niemals einen Code gemeinsam mit den Knoten unabhängiger Hersteller. Das Problem der Codeverbreitung wird geringer, weil nicht jeder private Knoten einen Code mit jedem benachbarten Knoten oder mit jedem anderen Knoten im Netzwerk gemeinsam nutzen muss.
  • Im Allgemeinen haben Netzwerkbesitzer eine große Flexibilität bei der Benennung derjenigen Knoten, die Codes mit anderen Knoten gemeinsam nutzen dürfen; dementsprechend kann die Auswahl der Route so erfolgen, dass sichergestellt ist, dass eine zufrieden stellende verschlüsselte Kommunikation im Netz möglich ist. Dasselbe gilt für ein APPN-Netzwerk innerhalb der kurz dargestellten festgelegten Zwangsbedingungen, die für Endknoten und die Netzknoten gelten, die ihnen als Server dienen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Erfindung wird unter Bezugnahme auf die Zeichnungen verständlich; es zeigt:
  • 1 ein vereinfachtes Blockdiagramm eines als Beispiel dienenden allgemeinen Netzwerks;
  • 2 das Netzwerk aus 1, in dem jedoch ein Transportabschnitt von einem unabhängigen Hersteller bereitgestellt wird;
  • 3, gemäß der Erfindung, ein als Beispiel dienendes Format für eine Codeauswahltabelle, die an jedem privaten Knoten eines User-Netzwerks gepflegt wird; außerdem werden andere Knoten gekennzeichnet, mit denen ein Knoten Ver- und Entschlüsselungscodes gemeinsam nutzt, sowie die gemeinsam genutzten Codes;
  • 4 zeigt das Beispiel einer Datenpaketsendung zur Übermittlung in einem Netzwerk, die ein Feld mit einer verschlüsselten Nachricht und Kennzeichnungsfelder zur Kennzeichnung eines Knotens enthält, der die Nachricht verschlüsselt hat, und einen Entschlüsselungsknoten, der einen Code mit dem Verschlüsselungsknoten gemeinsam nutzt und der die Nachricht entschlüsseln soll;
  • 5 ein Beispiel-Netzwerk, ähnlich dem aus 2, jedoch formuliert im Sinne der Advanced-Peer-to-Peer Networking Architecture von IBM, bei der einige Knoten full-service Netzknoten und andere Knoten Endknoten sind, beispielsweise Workstations, Drucker und ähnliches, die andere Netzknoten als Server nutzen;
  • 6 zeigt eine Transaktion in einem APPN-Netzwerk, bei der ein sekundärer Knoten oder eine Netzwerkressource an einem Knoten in Antwort auf eine ORTEN-Anfrage eines primären Knotens geortet wird, und die ANTWORT auf die ORTEN-Anfrage enthält einen Code für eine verschlüsselte Sitzung zur Verschlüsselung weiterer Nachrichten zwischen den primären und den sekundären Knoten bzw. Ressourcen. Gemäß der Erfindung kann der sekundäre Knoten über eine Auswahl von Kreuzdomänencodes verfügen, mit denen der Sitzungscode verschlüsselt werden kann, wie noch erläutert wird;
  • 7 zeigt das Beispiel eines ANTWORT-Pakets für das APPN-System der 6; und
  • 8 bis 11 zeigen Beispiele von Flussbildern der Algorithmen, die an den Knoten eines APPN-Netzwerks ausgeführt werden, um eine verschlüsselte, sichere Kommunikation gemäß der Erfindung zu erreichen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 zeigt ein vereinfachtes Blockdiagramm eines Beispiels eines User-Netzwerks mit den Knoten A bis F. Diese Knoten sind hier vereinfacht in Tandemschaltung dargestellt, es ist jedoch jede andere Verbindungsart möglich. Im bisherigen Teilbereichsnetzwerk von IBM gilt, dass ein Knoten A (100), der mit einem Knoten F (110) verschlüsselt kommunizieren möchte, einen Code mit Knoten B (102) gemeinsam nutzt, Knoten B nutzt einen Code gemeinsam mit Knoten C (104) und so weiter. Eine verschlüsselte Nachricht, die von Knoten A an Knoten F gesendet wird, wird zunächst von Knoten B entschlüsselt, wenn dieser die Nachricht empfängt, unter Verwendung des mit Knoten A gemeinsam genutzten Codes. Knoten B verschlüsselt dann erneut die Nachricht mit dem Code, den er mit Knoten C gemeinsam nutzt, und sendet die wieder verschlüsselte Nachricht an Knoten C. Knoten C wiederholt diese Operationen und so weiter, bis Knoten F die Nachricht empfängt und sie mit dem Code entschlüsselt, den er mit Knoten E (108) gemeinsam nutzt. Diese Methode der Verschlüsselung zwischen benachbarten Knoten eines Teilbereichsnetzwerks wird in der IBM-Publikation "SNA Format Protocol Reference Architecture Logic for LU 6.2", Veröffentlichung Nummer SC30-3269, beschrieben.
  • 2 zeigt dasselbe Netzwerk wie 1, wobei jedoch die Transportknoten C und D (204 bzw. 206) von einem Hersteller bereitgestellt werden, der vom übrigen Netzwerk unabhängig ist. Wie zu erkennen ist, muss Knoten B, um die Teilbereichs-Verschlüsselungstechnik der 1 von IBM nutzen zu können, einen Code mit dem Knoten C des unabhängigen Herstellers gemeinsam nutzen; das gleiche gilt für die Knoten D und E. Dies ist für viele Netzwerkbesitzer eine nicht akzeptable Situation und wird daher von der Erfindung vermieden. Wie beschrieben wird, kann der Besitzer der privaten Netzknoten A, B, E und F aus 2 gemäß der Erfindung beliebig Knoten benennen, die Codes mit anderen Knoten gemeinsam nutzen, natürlich unter der Zwangsbedingung, dass es einen Pfad von einem Ursprungsknoten zu einem Zielknoten geben muss, der auch eine vollständige endto-end Ver- und Entschlüsselung ermöglicht.
  • 3 zeigt das Beispiel eines Tabellenformats für eine Codeauswahltabelle (CAT), welche die Benennung der oben beschriebenen Codes ermöglicht. Eine unterschiedliche CAT wird an jedem privaten Knoten gepflegt und kennzeichnet andere Knoten, mit denen ein Knoten einen Code gemeinsam nutzt; außerdem kennzeichnet sie jeden gemeinsam genutzten Code. Unter Bezugnahme auf 3; jeder CAT-Eintrag enthält ein Knotenidentifikationsfeld 300 und ein Codefeld 302. Das Beispiel aus 3 ist eine Beispiel-CAT für Knoten A (200) aus 2. Der Netzwerkbesitzer hat entschieden, dass Knoten A Codes nur mit den Knoten B (202) und E (208) gemeinsam nutzen darf. Die Zahl der CAT-Einträge N für Knoten A in diesem vereinfachten Netzwerk beträgt also Zwei. Wenn eine Nachricht von Knoten A an Knoten F gesendet wird, prüft Knoten A die CAT und wählt einen Code eines Knotens auf der Route zum Zielknoten aus. Es kann jedes gewünschte Auswahlkriterium eingesetzt werden, obwohl vielleicht ein bevorzugtes Kriterium die Auswahl des Knotens wäre, mit dem der sendende Knoten einen Code gemeinsam nutzt, der außerdem die geringste Entfernung zum Zielknoten hat. Wenn dieses zuletzt genannte Kriterium eingesetzt wird, würde zur Übertragung einer verschlüsselten Nachricht an Knoten F der Knoten A seine CAT prüfen und Eintrag 2 auswählen, der dem Knoten E entspricht. Es wird dann ein Paket gebildet, das in Feld 404 der 4 eine Nachricht enthält, die mit dem Code 302 aus dem ausgewählten Eintrag der CAT-Tabelle verschlüsselt ist. Der sendende Knoten A fügt an die verschlüsselte Nachricht einen Nachrichtenkopf an, der in Feld 400 die Identität des verschlüsselnden Knotens (in diesem Fall Knoten A) und in Feld 402 die Identität des ausgewählten Knotens enthält, der den Code gemeinsam mit dem verschlüsselnden Knoten nutzt (in diesem Beispiel Knoten E). Der Paketkopf enthält außerdem weitere Informationen, die es den Knoten auf der Route ermöglichen, die ausgewählte Route zum Zielknoten zu ermitteln. Hierzu stehen viele konventionelle Wege zur Verfügung, die in den handelsüblichen Netzwerken zur Anwendung kommen. In APPN-Netzwerken ist beispielsweise ein Route Selection Control Vector (RSCV) im Nachrichtenkopf enthalten, wie weiter unten beschrieben wird. Die Technik zur Ermittlung der Route durch die Zwischenknoten ist jedoch kein wesentlicher Bestandteil der Erfindung und wird daher an dieser Stelle nicht ausführlich beschrieben.
  • Knoten A sendet nun das Paket an Knoten B. Knoten B prüft das übermittelte Paket und stellt fest, dass es nicht in Feld 402 gekennzeichnet ist. Er führt daher keine weitere Aktion in Verbindung mit der Erfindung durch, außer der Weiterleitung der Nachricht zu ihrem endgültigen Bestimmungsort. In dem Beispiel der 2 haben die Knoten C und D der unabhängigen Hersteller keine Möglichkeit zur Entschlüsselung der Nachricht und leiten diese nur auf die herkömmliche Weise weiter. Die Nachricht kommt schließlich an Knoten E an, wo festgestellt wird, dass Knoten E im Kopffeld 402 gekennzeichnet ist. Knoten E ermittelt daher aus Feld 400, dass Knoten A die Nachricht im Feld 404 verschlüsselt hat. Knoten E durchsucht seine CAT-Tabelle nach Knoten A, ruft den gemeinsam mit Knoten A genutzten Code ab und entschlüsselt dementsprechend den Nachrichtenteil der Sendung. Knoten E prüft, ob er der endgültige Bestimmungsort ist. Wenn ja, verarbeitet er die entschlüsselte Nachricht in der gewünschten Weise. Wenn er nicht der endgültige Bestimmungsort ist, wiederholt er die ursprünglich von Knoten A zur Verschlüsselung und zum Weiterleiten der Nachricht zu ihrem Ziel durchgeführten Schritte. Hierbei stellt er anhand des Kopfes fest, dass Knoten F der Zielknoten ist; er ermittelt aus seiner CAT, dass er einen Code mit Zielknoten F gemeinsam nutzt. Er verschlüsselt dann die Nachricht erneut mit dem Code, den er mit Knoten F gemeinsam nutzt, fügt in das Feld 400 einer neuen Sendung seine Identität ein, fügt die Identität des Knotens F in das Feld 402 ein und übermittelt die Sendung an Knoten F. Bei Erhalt der Sendung ermittelt Knoten F aus Feld 402, dass er den Nachrichtenteil der Sendung entschlüsseln soll. Er ermittelt außerdem auf jede gewünschte Art, dass er der Zielknoten ist; je nach Art der Nachricht verarbeitet er daher die entschlüsselte Nachricht in der geeigneten Weise.
  • Das bevorzugte Ausführungsbeispiel der Erfindung befindet sich in einem Netzwerk, das die Advanced Peer-to-Peer Networking (APPN) Architektur von IBM einsetzt. Ein solches Netzwerk ist in 5 dargestellt. Ein APPN-Netzwerk kann sowohl aus Netzknoten als auch aus Endknoten bestehen. In 5 wird beispielsweise angenommen, dass die Knoten C, D, E und F (500, 502, 504 bzw. 506) Netzknoten sind. Von den Knoten A, B und G wird angenommen, dass es sich um Endknoten handelt. Die APPN-Architektur ist gut bekannt und öffentlich dokumentiert. Sie wird hier nur insofern erörtert, als dies zum Verständnis der Erfindung in dieser Umgebung notwendig ist. Endknoten sind typischerweise Workstations, Drucker oder ähnliches, sie können jedoch auch aufwendigere Recheneinheiten enthalten, beispielsweise Minicomputer oder größere Systeme zur Verarbeitung von Daten. Ein Netzknoten bietet seine Dienste den an ihn angeschlossenen Endknoten an und kommuniziert mit anderen Netzknoten. Ein Netzknoten führt beispielsweise Dienste wie den Aufbau von Sitzungen und das Routing zwischen sich und den Endknoten, denen er als Server dient, und anderen Netz- und Endknoten aus. Netzknoten übernehmen außerdem Verzeichnisdienste zur Ortung von Ressourcen in einem Netzwerk in Antwort auf Anfragen zum Aufbau von Sitzungen mit anderen Ressourcen im Netz. Ein Endknoten nimmt immer die Dienste eines Netzknotens in Anspruch. Ein Beispiel für ein APPN-Netzwerk, in dem gekennzeichnete Netzknotenprozessoren und andere öffentlich bekannte Strukturen eingesetzt werden, ist das System AS/400 von IBM.
  • Wenn ein APPN-Knoten eine Sitzung mit einem anderen Knoten aufbauen möchte, leitet der Knoten eine Anfrage ORTEN ein, die durch das Netz übermittelt wird und schließlich zu einer ANTWORT-Nachricht führt, die an den ORTUNGS-Knoten zurückgesendet wird. In der Terminologie der SNA (System Network Architecture) wird der ORTUNGS-Knoten als primärer Knoten betrachtet und ist durch eine Kennzeichnung als primäre logische Einheit (PLU) dargestellt. Der gewünschte Knoten oder ein Knoten, der die gewünschte Ressource enthält, wird als sekundär betrachtet und wird durch eine Kennzeichnung als sekundäre logische Einheit (SLU) dargestellt. Die Methode, mit der ein Knoten oder eine Ressource in einem APPN-Netzwerk geortet wird, wird in der US Patentschrift 4,914,571 beschrieben, die am 3. April 1990 an Baratz et. al. erteilt wurde. Es wird auf diese Patentschrift Bezug genommen. Es sind jedoch in dieser Patentbeschreibung genügend Details enthalten, um die Anwendung der Erfindung in allgemeinen Netzwerk- und APPN-Netzwerkumgebungen zu lehren. 6 zeigt ein spezifisches Beispiel einer ORTEN-Anfrage und eines Sitzungsaufbaus in dem Netzwerk der 5. In diesem Beispiel wünscht der Endknoten G (612) den Aufbau einer Sitzung mit dem Endknoten B (610). Es wird für dieses Beispiel angenommen, dass B Codes mit dem für ihn als Server arbeitenden Netzknoten C und dem Server-Netzknoten F des Ortungsknotens G gemeinsam nutzt. Um mit dem Sitzungsaufbau zu beginnen leitet der Endknoten G eine Anfrage ORTEN an seinen Server-Netzknoten F (606) ein, um den Knoten B (oder eine Ressource, die sich an Knoten B befindet) zu orten und die Sitzung aufzubauen. Dies wird in 6 bei 614 dargestellt. Als Antwort leitet Netzknoten F eine Anfrage ORTEN SLU B ein, die er in das Netz übermittelt. Die o. a. Patentschrift 4,914,571 erläutert die vollständigen Details der ORTEN-Anfrage. Für unsere Zwecke reicht es, zu wissen, dass die ORTEN-Anfrage sich bis zum Netzknoten E (604) fortpflanzt, von dort zum Netzknoten D (602), von dort zum Netzknoten C (600) und von dort zu dem gewünschten Endknoten B (610). Dies wird in 6 bei 616 und 618 gezeigt. Die ORTEN-Nachricht identifiziert den anfragenden Knoten (in diesem Beispiel G). Nachdem der Zielknoten geortet ist, sendet er auf demselben Pfad, auf dem die ORTEN-Nachricht gesendet wurde, um den gewünschten Knoten bzw. die gewünschte Ressource zu orten, eine ANTWORT an den anfordernden Knoten. In 6 wird die ANTWORT als Übertragung 620 von Knoten B an Knoten C, 622 von Knoten C an Knoten F und 624 von Knoten F an Knoten G gezeigt.
  • In APPN-Netzwerken wird eine Sitzung verschlüsselt, indem man zuerst einen Sitzungscode einrichtet, mit dem alle nachfolgenden Nachrichten dieser Sitzung verschlüsselt werden. Mit anderen Worten, der Sitzungscode wechselt bei jeder Sitzung. Hierzu wird von dem SLU-Knoten ein Sitzungscode generiert, der mit einem Kreuzdomänencode (KDC) verschlüsselt wird (in einem APPN-Netz wird ein Knoten gewöhnlich als Domäne betrachtet), und der verschlüsselte Sitzungscode wird in der ANTWORT-Sendung an die PLU übertragen. Der KDC ist ein Code, den verschiedene Knoten gemeinsam nutzen. Die verschlüsselte Nachricht, die in früheren Figuren erörtert wurde, ist ein verschlüsselter Sitzungscode und die ANTWORT-Sendung eines APPN-Netzwerks wird zur Verteilung des Sitzungscodes in verschlüsselter Form verwendet; alle nachfolgenden verschlüsselten Sendungen dieser Sitzung zwischen den beiden Knoten werden mit dem verteilten Sitzungscode verschlüsselt.
  • Ein Beispiel-Format einer ANTWORT-Sendung ist in 7 dargestellt. Hier entspricht die verschlüsselte Nachricht in Feld 700 dem weiter oben beschriebenen verschlüsselten Sitzungscode. An den verschlüsselten Sitzungscode wird ein Kommunikationskopf angehängt; der Kopf enthält in Feld 702 die Kennung des Knotens, der den Sitzungscode verschlüsselte, in Feld 704 die Kennung des Knotens, der den Sitzungscode entschlüsseln soll und in Feld 706 die Kennung der SLU (in diesem Beispiel Knoten B). Ist die SLU ein Endknoten, enthält Feld 708 außerdem eine Kennung des Netzknotens, welcher der SLU als Server dient. Feld 710 enthält eine Kennung der PLU (in diesem Beispiel Knoten G) und, wenn die PLU ein Endknoten ist, enthält Feld 712 eine Kennung des Netzknotens (in diesem Beispiel F), welcher der PLU (G) als Server dient. Außerdem enthält der Kopf einen Route Selection Control Vector (RSCV) 714, der in geordneter Reihenfolge Kennungen aller Knoten auf der Route zwischen der SLU und der PLU enthält. Beispielsweise enthält das erste Feld 716 des RSCV 714 die Identität des SLU-Knotens B und das letzte Feld 718 enthält die Identität des PLU-Knotens G. Andere Felder (hier nicht gezeigt) enthalten gegebenenfalls die Identitäten der Server-Netzknoten, die der PLU und der SLU ihre Dienste anbieten, wenn sie Endknoten sind. Andere Felder wiederum, wie z. B. Feld 720, enthalten Kennungen aller anderen Zwischenknoten auf der Route. In dem Beispiel der 5 und 6 sind die Knoten D und E die Zwischenknoten. Der Kopf, wie hier zusammengefasst, wird im Rahmen der normalen APPN-Dienste generiert und wird in vielen von IBM erhältlichen APPN-Publikationen ausführlicher beschrieben.
  • Zurück zu 6; bei 622, und wie in 7 gezeigt wird, ist das Beispiel-Format der ANTWORT-Kommunikation wie folgt:
    ANTWORT-Verschlüsselungsknoten, Eetschlüsselungsknoten, SLU, SLU NN Server, PLU, PLU NN Server, EXY(SK);
    hierbei gilt SLU = sekundäre logische Einheit
    PLU = primäre logische Einheit
    NN = Netzknoten
    SK = Sitzungscode
    EXY(SK) = der verschlüsselte Sitzungscode, unter Verwendung eines Codes, der von den Knoten X und Y gemeinsam genutzt wird.
  • Da angenommen wurde, dass Knoten B Codes mit seinem Server-Netzknoten C und mit dem Server-Netzknoten F des Knotens G gemeinsam nutzt, wählt Knoten B entsprechend dem bevorzugten Codeauswahlalgorithmus den gemeinsam genutzten Code mit Knoten F, welcher dem Zielknoten G am nächsten liegt. Daher enthält die ANTWORT-Kommunikation 622 die Information
    ANTWORT B, F, B, C, G, F, EBF[SK]
  • Hierbei gilt: das erste B ist der verschlüsselnde Knoten, das erste F ist der Knoten, der die Nachricht entschlüsseln soll, das zweite B ist die SLU-Kennung, C ist der Server-Netzknoten für SLU B, G ist die PLU, das zweite F ist der Server-Netzknoten für die PLUG und EBF[SK] stellt den Sitzungscode SK dar, der mit dem Code verschlüsselt ist, den die Knoten B und F gemeinsam nutzen. Knoten B übermittelt dann die Sendung an seinen Server-Netzknoten C. C prüft den Kopf und stellt fest, dass er nicht als ein Knoten gekennzeichnet ist, der die Sendung entschlüsseln soll. Knoten C leitet also die Sendung weiter. Wenn Knoten F die ANTWORT-Sendung empfängt, erkennt er, dass er der Entschlüsselungsknoten ist, entschlüsselt den Sitzungscode, stellt fest, dass G das Ziel ist, verschlüsselt den Sitzungscode erneut mit einem Code, der gemeinsam mit G genutzt wird, und übermittelt dann eine neue ANTWORT-Sendung mit dem neu verschlüsselten Sitzungscode an G. Diese neue ANTWORT-Sendung ist in 6 als 624 dargestellt und enthält die folgende Information, entsprechend dem weiter oben erörterten Format:
    ANTWORT F, G, B, C, G, F, EFG[SK].
  • Die Operation zum Aufbau des Sitzungscodes in dem Beispiel der 6 wird jetzt ausführlich unter Verwendung der Flussbilder der 8 bis 11 beschrieben.
  • 8 zeigt einen Beispiel-Algorithmus, der in jedem Knoten (SLU) ausgeführt wird und eine ANTWORT-Sendung in Reaktion auf eine ORTEN-Sendung erzeugt. Man erinnere sich daran, dass der verschlüsselte Sitzungscode als verschlüsselte Nachricht in der ANTWORT-Kommunikation von der SLU an die PLU übertragen wird. In diesem Beispiel der 6 ist der Endknoten G die PLU und der ANTWORT-Zielknoten B ist die SLU. Der Algorithmus wird in der SLU ausgeführt und beginnt an Schritt 800. Schritt 802 ermittelt, ob die SLU (Knoten B) ein Endknoten ist, was in diesem Beispiel der Fall ist. Daher wird Schritt 804 ausgeführt, womit festgestellt wird, ob die PLU (Knoten G) ein Endknoten ist, was ebenfalls in diesem Beispiel zutrifft (die vorangehende ORTEN-Nachricht kennzeichnete den Typ des anfordernden Knotens). In diesem Vorgang beginnt Schritt 806 mit dem Abschnitt des Algorithmus, in dem sowohl die SLU als auch die PLU Endknoten sind. Aufgrund von Zwangsbedingungen in einem APPN-Netzwerk, die auf die Erfindung nicht allgemein anzuwenden sind, insbesondere dass Zwischenknoten keine Nachrichtenköpfe prüfen, außer RSCV, besteht die einzige Möglichkeit darin, dass die SLU einen KDC mit der PLU gemeinsam nutzt, oder mit dem Netzknoten, welcher der PLU als Server dient, oder mit dem Netzknoten, welcher der SLU als Server dient. In Schritt 806 durchsucht die SLU ihre CAT-Tabelle um festzustellen, ob sie einen Kreuzdomänencode (KDC) für die PLU (Knoten G) enthält. Wenn ja, dann erzeugen die Schritte 808 und 810 einen beliebigen Sitzungscode (SK) und verschlüsseln ihn mit dem gemeinsam genutzten KDC. Die Sendung, die den verschlüsselten SK enthält, wird in einer ansonsten bekannten Weise aufgebaut und in Schritt 812 zur PLU übermittelt. Hiermit ist der Algorithmus an der SLU für diese Übermittlung erfolgreich beendet.
  • Schritt 814 wird in der SLU ausgeführt, wenn die SLU keinen KDC gemeinsam mit dem PLU-Endknoten nutzt. Schritt 814 durchsucht die CAT nach einem gemeinsam genutzten Code mit dem Netzknoten F, welcher dem PLU-Endknoten (G) als Server dient. Wird dieser KDC in Schritt 815 gefunden, baut Schritt 810 die Sendung unter Verwendung dieses gemeinsam genutzten Codes auf und überträgt sie wie oben besprochen. Wenn für den Server von Knoten G kein gemeinsam genutzter Code gefunden wird, durchsucht Schritt 816 die CAT nach einem Code, der mit dem Serverknoten für diese SLU gemeinsam genutzt wird. In 6 ist dies Knoten C. Dies ist die letzte Möglichkeit in einer APPN-Architektur und bei entsprechendem Entwurf durch den Besitzer ist dieser Code vorhanden und es wird angenommen, dass die verschlüsselte Sendung zwischen der PLU und der SLU zulässig ist. In diesem Fall führt Schritt 818 zur Anwendung dieses Codes zur Verschlüsselung und Übertragung des SK an die PLU. Andernfalls ist die Sitzung bei Schritt 820 fehlgeschlagen.
  • Wenn in Schritt 802 festgestellt wird, dass die SLU kein Endknoten ist, dann muss sie ein Server-Netzknoten sein und der Algorithmus, der an Sprungmarke A (900) der 9 beginnt, wird eingeleitet. In Schritt 902 wird ermittelt, ob die PLU ein Endknoten ist. Wenn die Antwort ja ist, handelt es sich hier um den Fall, wo die PLU ein Endknoten und die SLU ein Netzknoten ist. Dies wäre z. B. in 6 der Fall, wenn Knoten G der Knoten wäre, der eine Sitzung mit Netzknoten C anfordern würde. In diesem Fall sind die einzigen Möglichkeiten in einem APPN-Netzwerk gemeinsame Codes zwischen dem SLU-Netzknoten C und dem Endknoten G oder mit dem Netzknoten F, der dem PLU-Endknoten G als Server dient. In Schritt 904 wird die SLU CAT nach einem gemeinsam genutzten KDC mit der PLU durchsucht. Wenn ein solcher Code in Schritt 906 gefunden wird, dient er zur Verschlüsselung einer SK und deren Übermittlung an die PLU, u. z. in den Schritten 908, 910 und 912. Ist die Suche bei Schritt 906 erfolglos, wird in Schritt 914 die CAT nach einem gemeinsamen KDC mit dem Netzknotenserver der PLU durchsucht. Dieser KDC wird verwendet, wenn er in Schritt 916 gefunden wird. Andernfalls ist die Sitzung bei Schritt 918 fehlgeschlagen.
  • Wenn die Prüfung in Schritt 902 ergibt, dass die PLU kein Endknoten ist, wird Schritt 920 ausgeführt. In diesem Fall sind sowohl die SLU als auch die PLU Netzknoten. Die einzige Möglichkeit in einem APPN-Netzwerk ist nun, dass die SLU einen Code gemeinsam mit der PLU nutzt. In Schritt 920 wird die CAT nach diesem Code durchsucht. Wenn dieser gefunden ist, wird er in Schritt 916 verwendet. Andernfalls ist die Sitzung in Schritt 918 fehlgeschlagen.
  • Wenn in Schritt 804 festgestellt wird, dass die PLU kein Endknoten ist, wird Sprungmarke B (1000) in 10 angesprungen. Dieser Punkt stellt den Fall dar, in dem die SLU ein Endknoten und die PLU ein Netzknoten ist. In diesem Fall gibt es nur die Möglichkeit, dass die SLU einen KDC mit dem PLU-Netzknoten oder dem Netzknoten, der dem SLU-Endknoten als Server dient, gemeinsam nutzt. Schritt 1002 durchsucht die CAT nach einem KDC, der gemeinsam mit dem PLU-Netzknoten genutzt wird. Wenn der KDC gefunden ist, wird er, wie bereits erörtert, zur Verschlüsselung eines Sitzungscodes in den Schritten 1004, 1006, 1008 und 1010 verwendet. Wird dieser Code nicht gefunden, wird die CAT nach einem gemeinsamen KDC mit dem Netzknotenserver der SLU durchsucht. Wird der Code gefunden, wird er bei 1012 verwendet. Andernfalls ist die Sitzung bei Schritt 1014 fehlgeschlagen.
  • 11 zeigt einen Beispiel-Algorithmus, der von jedem Knoten bei Erhalt der ANTWORT-Kommunikation ausgeführt wird. Der Startpunkt liegt bei Schritt 1100. Man erinnere sich daran, dass in APPN-Netzwerken Zwischenknoten lediglich die Sendung zum Zielort weitergeben, ohne irgendeinen wesentlichen Verarbeitungsschritt durchzuführen. In Schritt 1102 wird der Route Selection Control Vector (RSCV) im Kopf der Sendung geprüft um festzustellen, ob dieser empfangende Knoten ein Zwischenknoten ist. In diesem Fall sendet Schritt 1104 die Sendung weiter, wie weiter oben angegeben. Andernfalls prüft Schritt 1106 Feld 704 des Kopfes um festzustellen, ob dieser empfangende Knoten als Entschlüsselungsknoten gekennzeichnet ist. Ist dieser Knoten nicht entsprechend gekennzeichnet, transportiert Schritt 1104 die Sendung erneut weiter, entsprechend seiner Routingliste im RSCV. Wenn der Empfangsknoten als Entschlüsselungsknoten gekennzeichnet ist, ermittelt Schritt 1108 aus dem Kopf den Knoten, der den Nachrichtenteil verschlüsselte, wählt aus seiner CAT den KDC, der gemeinsam mit dem verschlüsselnden Knoten genutzt wird, und entschlüsselt den in der Nachricht enthaltenen Sitzungscode. Der Empfangsknoten ermittelt nun, was er mit dem entschlüsselten Sitzungscode tun muss. Wenn der RSCV diesen Knoten als das endgültige Ziel (die PLU) identifiziert, wird der Sitzungscode an eine andere Anwendung an dem Knoten zur normalen Weiterverarbeitung weitergegeben (Schritt 1112). Handelt es sich bei diesem Knoten nicht um den Zielknoten, muss es entweder der Netzknoten sein, der dem Urheber (der SLU) als Server dient, oder der Netzknoten, der dem Zielknoten (der PLU) als Server dient. Dies wird in Schritt 1114 festgestellt. Ist dieser Knoten der SLU-Server, wird Marke C in 9 angesprungen, wie im Ursprungsknoten, wo die CAT durchsucht wird, um einen KDC entweder für die PLU oder den Server der PLU zu orten. Wenn ein KDC gemeinsam mit der PLU genutzt wird, wird dieser Code ausgewählt und zur erneuten Verschlüsselung des Sitzungscodes verwendet und die neue Sendung wird weiter zur PLU übermittelt. Wenn mit der PLU kein KDC gemeinsam genutzt wird, wird der Code ausgewählt, der mit dem PLU-Server gemeinsam genutzt wird und es werden dieselben Schritte mit diesem KDC ausgeführt. Wenn in Schritt 1114 festgestellt wird, dass dieser Knoten der Server für den PLU-Endknoten ist, wird Marke D in 9 angesprungen, um den KDC auszuwählen, der gemeinsam mit der PLU genutzt wird.

Claims (2)

  1. Ein Verfahren zur sicheren Kommunikation, durchgeführt an einem Knoten eines Kommunikationsnetzwerks (200, 202, 204, 206, 208, 210), folgende Schritte umfassend: – Bestimmen einer Route von einem Ursprungsknoten (200) zu einem Zielknoten (210); – Verschlüsseln einer an den Zielknoten (210) zu übermittelnden Nachricht (404) mit einem ausgewählten Verschlüsselungscode, wobei der genannte Verschlüsselungsschritt folgende Schritte umfasst: – Auswählen eines Verschlüsselungscodes aus einem oder mehreren Alternativcodes (302), wobei der genannte ausgewählte Code mit einem Entschlüsselungsknoten (300) entlang einer Route zum Zielknoten (210) gemeinsam genutzt wird, – Verschlüsseln der Nachricht mit dem ausgewählten Schlüssel, – Bilden einer Kommunikation durch Einschließen einer klaren Kennung des Verschlüsselungsknotens (400) und einer klaren Kennung eines Entschlüsselungsknotens (402), mit dem der ausgewählte Code gemeinsam genutzt wird, in die verschlüsselte Nachricht (404), und – Übertragen der Kommunikation an den Knoten; mit dem der ausgewählte Code gemeinsam genutzt wird. – In Antwort auf den Empfang einer Kommunikation von einem anderen Knoten, feststellen, ob dieser Knoten in der Kommunikation als ein Entschlüsselungsknoten (402) gekennzeichnet ist, wenn dieser Knoten in der Kommunikation als ein Entschlüsselungsknoten (402) gekennzeichnet ist: – Ermitteln des Verschlüsselungsknotens (400) aus der Kommunikation, – Auswählen des Codes, der mit dem Verschlüsselungsknoten gemeinsam genutzt wird, und – Entschlüsseln der Nachricht (404). – Aus der Kommunikation, ermitteln, ob dieser Knoten der Zielknoten (210) ist, ob dieser Knoten nicht der Zielknoten (210) ist, – Auswählen eines anderen Verschlüsselungscodes aus einem oder mehreren Alternativcodes (302), wobei der genannte ausgewählte andere Code mit einem anderen Knoten entlang der verbleibenden Route zum Zielknoten (210) gemeinsam genutzt wird, – Wiederverschlüsseln der Nachricht mit dem genannten anderen ausgewählten Code, – Bilden einer neuen Kommunikation durch Einschließen einer klaren Kennzeichnung dieses Knotens (400) als Verschlüsselungsknoten und einer klaren Kennzeichnung des neuen Entschlüsselungsknotens (402), mit dem der neue ausgewählte Code gemeinsam genutzt wird, in die wiederverschlüsselte Nachricht (404), und – Übertragen der neuen Kommunikation an den Knoten, mit dem der neue ausgewählte Code gemeinsam genutzt wird.
  2. Gerät an jedem Knoten eines Datenkommunikationsnetzwerks, mit einer Vielzahl von Knoten, die miteinander verbunden sind, um Nachrichten durch das Netzwerk zu übermitteln, folgendes umfassend: – Mittel zur Bestimmung einer Route von einem Ursprungsknoten (200) zu einem Zielknoten (210), – Mittel zum Auswählen jedes anderen Knotens entlang der Route, mit dem der Ursprungsknoten einen Verschlüsselungscode teilt, als Nachrichtenentschlüsselungsknoten, – Mittel zum Verschlüsseln einer Nachricht mit dem ausgewählten Code (302), – Mittel zum Anfügen der Identitäten des Ursprungsknotens (400) und des Entschlüsselungsknotens (402) in klarer Form an die verschlüsselte Nachricht (404), – Mittel zur Übertragung der Nachricht entlang der Route, – Mittel zum Entschlüsseln einer empfangenen Nachricht (404), – Mittel zum Ermitteln, ob der Knoten nicht der Zielknoten (210) für die empfangene Nachricht ist, und – Mittel, die auf das letzte Ermittlungsmittel ansprechen, zum Wiederverschlüsseln der entschlüsselten empfangenen Nachricht mit einem Code, der gemeinsam mit einem jeden anderen ausgewählten Knoten auf der verbleibenden Route gemeinsam genutzt wird, und – Mittel zum Übertragen der wiederverschlüsselten Nachricht auf der verbleibenden Route.
DE69532254T 1994-02-23 1995-01-24 Verfahren und Gerät zur Kommunikationsverschlüsselung in einem Datennetz Expired - Lifetime DE69532254T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/200,610 US5479514A (en) 1994-02-23 1994-02-23 Method and apparatus for encrypted communication in data networks
US200610 1994-02-23

Publications (2)

Publication Number Publication Date
DE69532254D1 DE69532254D1 (de) 2004-01-22
DE69532254T2 true DE69532254T2 (de) 2004-09-30

Family

ID=22742435

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69532254T Expired - Lifetime DE69532254T2 (de) 1994-02-23 1995-01-24 Verfahren und Gerät zur Kommunikationsverschlüsselung in einem Datennetz

Country Status (4)

Country Link
US (1) US5479514A (de)
EP (1) EP0669741B1 (de)
JP (1) JP2711226B2 (de)
DE (1) DE69532254T2 (de)

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07271865A (ja) 1994-04-01 1995-10-20 Mitsubishi Corp データベース著作権管理方法
US7036019B1 (en) 1994-04-01 2006-04-25 Intarsia Software Llc Method for controlling database copyrights
US6744894B1 (en) 1994-04-01 2004-06-01 Mitsubishi Corporation Data management system
US7302415B1 (en) * 1994-09-30 2007-11-27 Intarsia Llc Data copyright management system
US6741991B2 (en) * 1994-09-30 2004-05-25 Mitsubishi Corporation Data management system
EP0715241B1 (de) 1994-10-27 2004-01-14 Mitsubishi Corporation Gerät für Dateiurheberrechte-Verwaltungssystem
EP0709760B1 (de) 1994-10-27 2006-05-31 Intarsia Software LLC Urheberrechtsdatenverwaltungssystem
US6424715B1 (en) 1994-10-27 2002-07-23 Mitsubishi Corporation Digital content management system and apparatus
US6789197B1 (en) 1994-10-27 2004-09-07 Mitsubishi Corporation Apparatus for data copyright management system
US5751811A (en) * 1995-08-30 1998-05-12 Magnotti; Joseph C. 32N +D bit key encryption-decryption system using chaos
US8595502B2 (en) 1995-09-29 2013-11-26 Intarsia Software Llc Data management system
US7801817B2 (en) 1995-10-27 2010-09-21 Makoto Saito Digital content management system and apparatus
US5768391A (en) * 1995-12-22 1998-06-16 Mci Corporation System and method for ensuring user privacy in network communications
US5751813A (en) * 1996-04-29 1998-05-12 Motorola, Inc. Use of an encryption server for encrypting messages
US5815571A (en) * 1996-10-28 1998-09-29 Finley; Phillip Scott Computer system with secured data paths and method of protection
US6581162B1 (en) * 1996-12-31 2003-06-17 Compaq Information Technologies Group, L.P. Method for securely creating, storing and using encryption keys in a computer system
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
US6615348B1 (en) 1999-04-16 2003-09-02 Intel Corporation Method and apparatus for an adapted digital signature
US6356935B1 (en) 1998-08-14 2002-03-12 Xircom Wireless, Inc. Apparatus and method for an authenticated electronic userid
JP4763866B2 (ja) 1998-10-15 2011-08-31 インターシア ソフトウェア エルエルシー 2重再暗号化によりデジタルデータを保護する方法及び装置
US6816596B1 (en) * 2000-01-14 2004-11-09 Microsoft Corporation Encrypting a digital object based on a key ID selected therefor
US7023833B1 (en) 1999-09-10 2006-04-04 Pulse-Link, Inc. Baseband wireless network for isochronous communication
JP2001125908A (ja) * 1999-10-26 2001-05-11 Sony Corp 入力装置および方法
US20040186996A1 (en) * 2000-03-29 2004-09-23 Gibbs Benjamin K. Unique digital signature
FR2809901B1 (fr) * 2000-06-05 2002-11-22 Sekoya Procede de transmission d'un message entre deux ordinateurs relies et systemes de messagerie correspondant
WO2002057917A2 (en) * 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US7275102B2 (en) * 2001-01-22 2007-09-25 Sun Microsystems, Inc. Trust mechanisms for a peer-to-peer network computing platform
US20020116606A1 (en) * 2001-02-16 2002-08-22 Gehring Stephan W. Encryption and decryption system for multiple node network
US20020157002A1 (en) * 2001-04-18 2002-10-24 Messerges Thomas S. System and method for secure and convenient management of digital electronic content
FR2824212A1 (fr) * 2001-04-25 2002-10-31 Thomson Licensing Sa Procede de gestion d'une cle symetrique dans un reseau de communication et dispositifs pour la mise en oeuvre
US7203753B2 (en) * 2001-07-31 2007-04-10 Sun Microsystems, Inc. Propagating and updating trust relationships in distributed peer-to-peer networks
US7383433B2 (en) 2001-07-31 2008-06-03 Sun Microsystems, Inc. Trust spectrum for certificate distribution in distributed peer-to-peer networks
US7308496B2 (en) * 2001-07-31 2007-12-11 Sun Microsystems, Inc. Representing trust in distributed peer-to-peer networks
US7222187B2 (en) * 2001-07-31 2007-05-22 Sun Microsystems, Inc. Distributed trust mechanism for decentralized networks
DE10142498A1 (de) * 2001-08-30 2003-03-27 Siemens Ag Verfahren zur Ver- und Entschlüsselung von Kommunikationsdaten
US20030046534A1 (en) * 2001-08-31 2003-03-06 Alldredge Robert L. Method and apparatus for secured electronic commerce
US20030097335A1 (en) * 2001-11-21 2003-05-22 International Business Machines Corporation Secure method and system for determining charges and assuring privacy
US7305700B2 (en) 2002-01-08 2007-12-04 Seven Networks, Inc. Secure transport for mobile communication network
US7127613B2 (en) * 2002-02-25 2006-10-24 Sun Microsystems, Inc. Secured peer-to-peer network data exchange
JP2005518802A (ja) * 2002-02-28 2005-06-30 イーライ・リリー・アンド・カンパニー 抗インターロイキン−1ベータ類縁体
US7512649B2 (en) * 2002-03-22 2009-03-31 Sun Microsytems, Inc. Distributed identities
AU2003221785A1 (en) * 2002-04-23 2003-11-10 Patentek, Inc. Method and system for securely communicating data in a communications network
US8037202B2 (en) 2002-10-31 2011-10-11 Oracle America, Inc. Presence detection using mobile agents in peer-to-peer networks
US7254608B2 (en) * 2002-10-31 2007-08-07 Sun Microsystems, Inc. Managing distribution of content using mobile agents in peer-topeer networks
US7328243B2 (en) 2002-10-31 2008-02-05 Sun Microsystems, Inc. Collaborative content coherence using mobile agents in peer-to-peer networks
US7213047B2 (en) * 2002-10-31 2007-05-01 Sun Microsystems, Inc. Peer trust evaluation using mobile agents in peer-to-peer networks
US8108455B2 (en) * 2002-10-31 2012-01-31 Oracle America, Inc. Mobile agents in peer-to-peer networks
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7460672B2 (en) * 2003-07-18 2008-12-02 Sanrad, Ltd. Method for securing data storage in a storage area network
JP4625622B2 (ja) * 2003-10-20 2011-02-02 株式会社 イソップ 情報の暗号化送受信方法
GB2429384B (en) * 2004-04-19 2008-08-20 Aliroo Ltd Secure data transmission
CN100574185C (zh) 2005-01-07 2009-12-23 华为技术有限公司 在ip多媒体业务子系统网络中保障媒体流安全性的方法
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
GB0517303D0 (en) * 2005-08-23 2005-10-05 Netronome Systems Inc System and method for processing secure transmissions
EP1975831A1 (de) * 2007-03-27 2008-10-01 Thomson Licensing, Inc. Vorrichtung und Verfahren zur digitalen Verarbeitung der Inhaltsverwaltung zum Ermöglichen eines auferlegten Arbeitsflusses
US8695089B2 (en) * 2007-03-30 2014-04-08 International Business Machines Corporation Method and system for resilient packet traceback in wireless mesh and sensor networks
US8423789B1 (en) 2007-05-22 2013-04-16 Marvell International Ltd. Key generation techniques
US8700894B2 (en) * 2007-10-17 2014-04-15 Pitney Bowes Inc. Method and system for securing routing information of a communication using identity-based encryption scheme
GB0801395D0 (en) * 2008-01-25 2008-03-05 Qinetiq Ltd Network having quantum key distribution
EP2245789B1 (de) * 2008-01-25 2014-08-20 QinetiQ Limited Quantenkryptographievorrichtung
GB0801408D0 (en) * 2008-01-25 2008-03-05 Qinetiq Ltd Multi-community network with quantum key distribution
GB0801492D0 (en) 2008-01-28 2008-03-05 Qinetiq Ltd Optical transmitters and receivers for quantum key distribution
GB0809038D0 (en) * 2008-05-19 2008-06-25 Qinetiq Ltd Quantum key device
GB0809045D0 (en) * 2008-05-19 2008-06-25 Qinetiq Ltd Quantum key distribution involving moveable key device
GB0809044D0 (en) 2008-05-19 2008-06-25 Qinetiq Ltd Multiplexed QKD
US7840730B2 (en) * 2008-06-27 2010-11-23 Microsoft Corporation Cluster shared volumes
US8510560B1 (en) 2008-08-20 2013-08-13 Marvell International Ltd. Efficient key establishment for wireless networks
WO2010033497A1 (en) 2008-09-18 2010-03-25 Marvell World Trade Ltd. Preloading applications onto memory at least partially during boot up
GB0819665D0 (en) * 2008-10-27 2008-12-03 Qinetiq Ltd Quantum key dsitribution
EP2192514A1 (de) * 2008-11-26 2010-06-02 Thomson Licensing Verfahren und System zur Verarbeitung von digitalem Inhalt gemäß des Arbeitsablaufs
GB0822253D0 (en) 2008-12-05 2009-01-14 Qinetiq Ltd Method of establishing a quantum key for use between network nodes
GB0822254D0 (en) * 2008-12-05 2009-01-14 Qinetiq Ltd Method of performing authentication between network nodes
GB0822356D0 (en) * 2008-12-08 2009-01-14 Qinetiq Ltd Non-linear optical device
KR20100100134A (ko) * 2009-03-05 2010-09-15 한국전자통신연구원 네트워크 로봇 서비스를 위한 보안 서비스 방법 및 장치
GB0917060D0 (en) 2009-09-29 2009-11-11 Qinetiq Ltd Methods and apparatus for use in quantum key distribution
US8645716B1 (en) 2010-10-08 2014-02-04 Marvell International Ltd. Method and apparatus for overwriting an encryption key of a media drive
GB201020424D0 (en) 2010-12-02 2011-01-19 Qinetiq Ltd Quantum key distribution
US9436629B2 (en) 2011-11-15 2016-09-06 Marvell World Trade Ltd. Dynamic boot image streaming
US9575768B1 (en) 2013-01-08 2017-02-21 Marvell International Ltd. Loading boot code from multiple memories
US9736801B1 (en) 2013-05-20 2017-08-15 Marvell International Ltd. Methods and apparatus for synchronizing devices in a wireless data communication system
US9521635B1 (en) 2013-05-21 2016-12-13 Marvell International Ltd. Methods and apparatus for selecting a device to perform shared functionality in a deterministic and fair manner in a wireless data communication system
CN105518621B (zh) 2013-07-31 2019-09-17 马维尔国际贸易有限公司 将引导操作并行化的方法
US11165714B2 (en) 2014-12-15 2021-11-02 Royal Bank Of Canada Verification of data processes in a network of computing resources
EP3234792B1 (de) 2014-12-15 2023-06-07 Royal Bank Of Canada Verifizierung von datenprozessen in einem netzwerk aus datenverarbeitungsressourcen
EP3133766B8 (de) * 2015-08-19 2020-08-12 Rohde & Schwarz SIT GmbH Kommunikationsvorrichtung und verfahren zur durchführung von verschlüsselter kommunikation in mehrpunktnetzwerken
DE102016107644A1 (de) * 2015-11-16 2017-05-18 Fujitsu Technology Solutions Intellectual Property Gmbh Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt
CN109075968A (zh) 2016-03-08 2018-12-21 马维尔国际贸易有限公司 用于安全设备认证的方法和装置
CA2970686A1 (en) * 2016-06-14 2017-12-14 Royal Bank Of Canada Verification of data processes in a network of computing resources
GB2560587A (en) * 2017-03-17 2018-09-19 Univ Oxford Innovation Ltd Secure data exchange
US10986209B2 (en) * 2018-04-19 2021-04-20 Futurewei Technologies, Inc. Secure and reliable on-demand source routing in an information centric network
EP4140119A4 (de) * 2020-04-22 2023-03-29 Visa International Service Association Geheime online-verschlüsselung

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5555385A (en) * 1978-10-18 1980-04-23 Fujitsu Ltd Cipher key control mechanism
US4423287A (en) * 1981-06-26 1983-12-27 Visa U.S.A., Inc. End-to-end encryption system and method of operation
JPS61177837A (ja) * 1985-02-04 1986-08-09 Hitachi Ltd 暗号化鍵の保持方式
US4638356A (en) * 1985-03-27 1987-01-20 General Instrument Corporation Apparatus and method for restricting access to a communication network
US5319710A (en) * 1986-08-22 1994-06-07 Tandem Computers Incorporated Method and means for combining and managing personal verification and message authentication encrytions for network transmission
JPS63203034A (ja) * 1987-02-19 1988-08-22 Fujitsu General Ltd 暗号化・復号化装置
US4914571A (en) * 1987-06-15 1990-04-03 International Business Machines Corporation Locating resources in computer networks
US5115433A (en) * 1989-07-18 1992-05-19 Metricom, Inc. Method and system for routing packets in a packet communication network
NO169209C (no) * 1989-12-22 1992-05-20 Alcatel Stk As Fremgangsmaate og system for etablering av konferanseforbindelse.
FR2686755A1 (fr) * 1992-01-28 1993-07-30 Electricite De France Procede de chiffrement de messages transmis entre reseaux interconnectes, appareil de chiffrement et dispositif de communication de donnees chiffrees mettant en óoeuvre un tel procede.
US5386471A (en) * 1994-01-25 1995-01-31 Hughes Aircraft Company Method and apparatus for securely conveying network control data across a cryptographic boundary
US5416842A (en) * 1994-06-10 1995-05-16 Sun Microsystems, Inc. Method and apparatus for key-management scheme for use with internet protocols at site firewalls

Also Published As

Publication number Publication date
JP2711226B2 (ja) 1998-02-10
DE69532254D1 (de) 2004-01-22
EP0669741B1 (de) 2003-12-10
US5479514A (en) 1995-12-26
EP0669741A2 (de) 1995-08-30
EP0669741A3 (de) 1999-10-13
JPH07250059A (ja) 1995-09-26

Similar Documents

Publication Publication Date Title
DE69532254T2 (de) Verfahren und Gerät zur Kommunikationsverschlüsselung in einem Datennetz
DE69735426T2 (de) Nachrichtenübertragung in netzwerken bestehend aus unternetzwerken mit verschiedenen namensraümen
DE69532397T2 (de) Verfahren zur erneuten schlüsselzuteilung an mehrere kommunikationsgruppen über einen funkweg
DE60212289T2 (de) Verwaltung privater virtueller Netze (VPN)
DE60217666T2 (de) System und verfahren zum beantworten von ressourcenanforderungen in verteilten rechnernetzen
DE60203433T2 (de) Externer Zugriff auf eine gesicherte Vorrichtung in einem privaten Netzwerk
DE60208659T2 (de) Skalierbare ressourcenermittlung und rekonfiguration für verteilte rechnernetze
DE69730056T2 (de) Routen von duplikaten
DE60319007T2 (de) Abbildung einer quellenspezifischen multicast-gruppenadresse auf eine quellenadresse
DE602004007301T2 (de) Adressierungs-verfahren und -vorrichtung zum aufbau von hip-verbindungen zwischen gewöhnlichen und hip-fähigen netzknoten
DE60028018T2 (de) Verfahren und Anordnungen in einem Telekommunikationssystem
DE60028972T2 (de) Verfahren zur verteilten gruppenschlüsselverwaltung für sichere mehr-zu-mehrpunktkommunikation
DE60116736T2 (de) System und verfahren zur benutzung einer ip-addresse als identifizierung eines drahtlosen endgerätes
DE602005000943T2 (de) Verfahren und Vorrichtung zur sicheren Übertragung von Inhalten mit Urheberschutz
DE69927285T2 (de) Netzverwaltungssystem
DE10205108A1 (de) System und Verfahren zum Zugreifen auf Softwarekomponenten in einer verteilten Netzwerkumgebung
DE60133641T2 (de) Kommunikationssystem und verfahren dafür
DE112005003194B4 (de) Verteilter Domain Name Service
DE112010003149T5 (de) Gemeinschaftliche Verschlüsselung und Entschlüsselung durch Agenten
DE60131765T2 (de) Verfahren zur verbindung mehrerer kommunikationsbusse mit drahtlosen verbindungen
DE69735915T2 (de) NHRP-Paketauthentifizierungsverfahren und NHRP-Server
DE60206227T2 (de) Verfahren zur Herstellung einer sicheren Datenverbindung
DE19721949A1 (de) Chiffriervorrichtung
EP1977583B1 (de) Verfahren zur Übermittlung einer Nachricht und Netzwerk
DE10260926B4 (de) Kommunikationsverfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7