DE69924573T2 - Verfahren und Anordnung zur Herstellung sicherer Verbindungen über Einwegskanäle - Google Patents

Verfahren und Anordnung zur Herstellung sicherer Verbindungen über Einwegskanäle Download PDF

Info

Publication number
DE69924573T2
DE69924573T2 DE69924573T DE69924573T DE69924573T2 DE 69924573 T2 DE69924573 T2 DE 69924573T2 DE 69924573 T DE69924573 T DE 69924573T DE 69924573 T DE69924573 T DE 69924573T DE 69924573 T2 DE69924573 T2 DE 69924573T2
Authority
DE
Germany
Prior art keywords
server
channel
client
data
over
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
DE69924573T
Other languages
English (en)
Other versions
DE69924573D1 (de
Inventor
Peter F. Half Moon Bay King
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.)
Great Elm Group Inc
Original Assignee
Openwave Systems Inc
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22567565&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69924573(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Openwave Systems Inc filed Critical Openwave Systems Inc
Publication of DE69924573D1 publication Critical patent/DE69924573D1/de
Application granted granted Critical
Publication of DE69924573T2 publication Critical patent/DE69924573T2/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • 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
    • 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/0827Key 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) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft drahtlose Netzwerke und insbesondere sichere Datenübertragungen über drahtlose Netzwerke.
  • 2. Beschreibung des zugehörigen Standes der Technik
  • Drahtlose Netzwerke werden oft zum Übertragen von Nachrichten von einer Stelle in einem Netzwerk zu einer Zielortstelle im Netzwerk verwendet. Diese Nachrichten enthalten zu der Zielortstelle zuzuführende Daten. Spezifischer enthalten die Nachrichten einen Anfangsblockteil und einen Datenteil. Der Anfangsblockteil enthält eine Adresse der Zielortstelle und der Datenteil enthält Daten. Die Zielortstelle ist beispielsweise eine mobile Vorrichtung oder ein Server. Eine mobile Vorrichtung interagiert typischerweise mit drahtlosen Netzwerken, um verschiedene Typen von Benachrichtigungen zu empfangen oder um Daten von einem anderen Netzwerk, mit welchem das drahtlose Netzwerk verbunden ist, anzufordern und zu empfangen.
  • 1 ist ein Blockdiagramm eines herkömmlichen drahtlosen Kommunikationsnetzwerks 100. Das drahtlose Kommunikationssystem 100 enthält einen Server 102, ein drahtloses Netzwerk 104 und mobile Vorrichtungen 106. Es gibt n mobile Vorrichtungen 106-1 bis 106-n. Der Server 102 ist typischerweise ein Computersystem, das arbeitet, um Nachrichten zu dem mobilen Vorrichtungen 106 zu senden und von diesen zu empfangen. Die Nachrichten sind oft Blöcke von Daten, die zu der mobilen Vorrichtung 106 zu überfragen sind. Als Beispiele können die Daten zu verschiedenen Typen von Mitteilungen, einer elektronischen Mail, neuen Daten, Konfigurationsinformation, Datendateien, Bibliotheksdateien, Programmdateien, etc. gehören. Die Nachrichten können auch Anforderungen für Information (z.B. bestimmte Daten) sein, die von den mobilen Vorrichtungen 106 zum Server 102 übertragen werden. Der Server 102 kann auch mit anderen verdrahteten oder drahtlosen Netzwerken verbinden, um Nachrichten von anderen Computersystemen zu empfangen oder Nachrichten weiterzuleiten. Als Beispiel kann der Server 102 mit dem Internet verbunden sein. Beispielsweise kann der Server 102 ein Proxyserver (oder Verbindungsserver) sein, der mit dem Internet oder einem mit einem Netzwerk gekoppelten Netzwerk-Gateway gekoppelt ist. Das enorme Wachstum des Internets in den letzten Jahren hat die Notwendigkeit geschürt, mobile Vorrichtungen, wie beispielsweise Mobiltelefone, persönliche digitale Assistenten (PDAs = Personal Digital Assistants) und ähnliches, mit einem Zugriff auf Information und Dienste, welche im Internet verfügbar sind, zur Verfügung zu stellen.
  • Das drahtlose Netzwerk 104 verwendet typischerweise Funkübertragungen, um mit den mobilen Vorrichtungen 106 zu kommunizieren. Das drahtlose Netzwerk 104 kann eine Vielfalt von unterschiedlichen Netzwerken und Kommunikationsprotokollen verwenden. Beispiele für drahtlose Netzwerke enthalten zellulare digitale Paketdaten (CDPD = Cellular Digital Packet Data), globales System für mobile Kommunikationen (GSM = Global System for Mobile Communications), einen Codemultiplex-Vielfachzugriff (CDMA = Code Division Multiple Access) und einen Zeitmultiplex-Vielfachzugriff (TDMA = Time Division Multiple Access), um nur einige zu nennen, und jedes dieser drahtlosen Netzwerke hat unterschiedliche Datenübertragungscharakteristiken, wie beispielsweise eine Latenzzeit, eine Bandbreite, Protokolle und Verbindungsverfahren. Als Beispiele können Protokolle ein Internetprotokoll (IP = Internet Protocol), Kurznachrichtenbildungssystem (SMS = Short Messaging System) und unstrukturierte Zusatzdienstdaten (USSD = Unstructured Supplementary Service Data) sein, und können Verbindungsverfahren paketgeschaltet oder schaltungsgeschaltet enthalten.
  • Als Beispiel würde eine durch den Server 102 zu der mobilen Vorrichtung 106-2 zu sendende Nachricht eine Adresse enthalten, die insbesondere die mobile Vorrichtung 106-2 identifiziert. Die Nachricht wird dann durch den Server 102 dem drahtlosen Netzwerk 104 zur Verfügung gestellt. Beispielsweise ist ein drahtloses Datennetzwerk ein paketgeschaltetes Netzwerk, das ein Kurznachrichten-Serverzentrum (SMSC = Small Message Server Center) verwendet, das eine relativ kleine Paketgröße (z.B. 140 Bytes) hat. Das drahtlose Netzwerk 104 veranlasst, dass die Nachricht richtig zu der mobilen Vorrichtung 106-2 geführt wird (d.h. gemäß der Adresse). Die Übertragung zwischen dem drahtlosen Netzwerk 104 und der mobilen Vorrichtung 106-2 ist drahtlos. Die mobile Vorrichtung 106-2 empfängt die Nachricht, die über das drahtlose Netzwerk 104 übertragen worden ist. Die mobile Vorrichtung 106-2 kann dann die Nachricht speichern und vorbestimmte Verarbeitungsaktionen durchführen, wie beispielsweise ein Benachrichtigen eines Anwenders von der mobilen Vorrichtung 106-2 über den Empfang der Nachricht.
  • Vor einem Übertragen von Nachrichten oder Daten zwischen dem Server 102 und die mobilen Vorrichtung 106 muss eine Verbindung zwischen dem Server 102 und der bestimmten der mobilen Vorrichtungen 106 hergestellt werden, wenn sie nicht bereits aufgebaut ist. Zusätzlich muss dann, wenn die zu übertragenden Daten privat oder vertraulich sind, eine sichere Verbindung verwendet werden. Eine sichere Verbindung ist ein Typ einer Verbindung, bei welche, Sicherheitsmaßnahmen vorgenommen sind, so dass nur der Sender und ein erwünschter Empfänger die Daten verstehen können. Die Sicherheitsmaßnahmen sind durch kryptographische Techniken, wie beispielsweise eine Verschlüsselung implementiert. Kryptographietechniken sind detailliert in Schneier, "Applied Cryptography", Second Edition, John Wiley & Sons, Inc. (1996) beschrieben.
  • Eine sichere Verbindung wird gemäß Protokollen in Bezug auf Übertragungen über drahtlose Netzwerke aufgebaut. Beispiele von Protokollen, die sichere Verbindungen zur Verfügung stellen können, enthalten ein Transportprotokoll für eine in der Hand gehaltene Vorrichtung (HDTP = Handheld Device Transport Protocol) und eine Drahtlos-Transportschichtensicherheit (WTLS = Wireless Transport Layer Security). HDTP ist in "HDTP Draft Specification", Version 1.1 (1997) beschrieben. WTLS ist das Sicherheitsschichtenprotokoll für ein Protokoll einer drahtlosen Anwendung (WAP = Wireless Application Protocol). WTLS ist in "Wireless Application Protocol Wireless Transport Layer Security" (WAP WTLS), Wireless Application Forum, 30. April 1998 beschrieben.
  • Das Dokument von Makrotra et al., veröffentlicht in Proceedings of the IEEE, "Mobility and Security Management in the GSM System and Some proposed Future Improvements", Volume 86, No. 7, Juli 1998, Seiten 1480 – 1497, stellt den nächstliegenden Stand der Technik dar und offenbart eine Handshake-Operation zwischen einem Server und einer mobilen Vorrichtung zum Aufbauen einer sicheren Verbindung.
  • Ein Problem bei dem herkömmlichen Ansatz zum Aufbauen einer sicheren Verbindung besteht darin, dass er einen Zweiwege-Datenkanal erfordert. Als Beispiele erfordern sowohl das HDTP als auch das WTLS-Protokoll eine Handshake-Operation zwischen dem Server und einer mobilen Vorrichtung zum Aufbauen einer sicheren Verbindung. Herkömmlich wird der Zweiwege-Datenkanal zum Bereitstellen der Handshake-Operation benötigt. Als Ergebnis müssen Einwege-Datenkanäle die Sicherheitsmerkmale von Protokollen verwenden können, die eine Handshake-Operation erfordern.
  • Bei einigen drahtlosen Netzwerken können der Server und die mobilen Vorrichtungen durch zwei oder mehrere Kanäle verbunden sein. In einem Fall können der Server und die mobilen Vorrichtungen über einen Einwege-Datenkanal und einen Zweiwege-Datenkanal verbunden sein. Ein repräsentatives Netzwerk (z.B. GSM) mit solchen Charakteristiken kann ein Kurznachrichtendienstzentrum (SMSC = Short Message Service Center) zum Bereitstellen des Einwege-Datenkanals und eine Zwischenarbeitsfunktion (IFW = Interworking Function) zum Bereitstellen des Zweiwege-Datenkanals verwenden. Bei einem solchen Netzwerk wird der Einwege-Datenkanal oft als Schmalbandkanal angesehen und wird der Zweiwege-Datenkanal oft als Breitbandkanal angesehen. Als Beispiel kann der Schmalbandkanal Daten mit einer Rate von etwa 400 Bits pro Sekunde (bps) transferieren, während der Breitbandkanal Daten mit einer Rate von wenigstens 14400 bps transferieren kann. Es ist somit nicht ungewöhnlich, dass ein Server und eine mobile Vorrichtung durch sowohl einen Zweiwegekanal als auch einen Einwegekanal verbunden sind (oder verbindbar sind). Typischerweise werden der Server und der Client sich in Abhängigkeit von der Dringlichkeit der Daten, der Kosten, die auftreten werden, etc. dafür entscheiden, einen oder beide der Kanäle zu verwenden. Eine Verwendung eines Zweiwegekanals veranlasst oft, dass für die mobile Vorrichtung Belastungen (d.h. Gebühren) von einem Träger auferlegt werden, der den Service bzw. Dienst zu der mobilen Vorrichtung liefert. Gegensätzlich dazu ist eine Verwendung von einem Schmalbandkanal mit einem Weg oft ohne Kosten oder mit festen Kosten ungeachtet einer Verwendung verfügbar. Der Einwegekanal kann jedoch keine sicheren Verbindungen aufbauen, weil die herkömmlichen Ansätze bezüglich einer Sicherheit einen Zweiwegekanal erfordern. Dies behindert die sichere Übertragung von Daten über Einwegekanäle ernsthaft.
  • Somit gibt es eine Notwendigkeit nach verbesserten Ansätzen zum Bereitstellen sicherer Datenübertragungen über Einwegekanäle.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß der Erfindung sind Verfahren gemäß den Ansprüchen 1 und 6, eine Vorrichtung gemäß Anspruch 7 und computerlesbare Medien gemäß den Ansprüchen 8 und 10 zur Verfügung gestellt.
  • Allgemein gesagt betrifft die Erfindung verbesserte Techniken zum Ermöglichen eines sicheren Datentransfers über Einwege-Datenkanäle oder Schmalbandkanäle. Oft sind diese Kanäle drahtlose Kanäle, die durch drahtlose Datennetzwerke zur Verfügung gestellt sind. Die Erfindung ermöglicht, dass kryptographische Handshake-Operationen für einen Einwege-Datenkanal über einen passenden Zweiwege-Datenkanal durchgeführt werden, so dass der Einwege-Datenkanal Sicherheitsproto kolle effektiv erfüllt, die Zweiwegekommunikationen für die kryptographischen Handshake-Operationen erfordern. Wenn einmal die kryptographischen Handshake-Operationen beendet sind, können Daten über den Einwege-Datenkanal auf eine sichere Weise übertragen werden. Zusätzlich ermöglicht die Erfindung auch, dass die kryptographischen Handshake-Operationen schneller durchgeführt werden, weil der Zweiwegekanal typischerweise ein Breitbandkanal ist. In diesem Fall resultiert die Verwendung eines Breitbandkanals anstelle eines Schmalbandkanals für die kryptographischen Handshake-Operationen in Latenzzeitreduzierungen, und zwar ungeachtet dessen, ob der Schmalbandkanal ein Einwegekanal oder ein Zweiwegekanal ist.
  • Die Erfindung kann auf zahlreiche Arten implementiert werden, einschließlich als Verfahren, als computerlesbares Medium, als Vorrichtung und als System. Nachfolgend werden einige Ausführungsbeispiele der Erfindung diskutiert.
  • Als Verfahren zum sicheren Übertragen von Daten zwischen einem Client und einem Server über einen Schmalbandkanal, wobei der Client bzw. Klient und der Server nicht nur durch den Schmalbandkanal, sondern auch durch einen Breitbandkanal, verbindbar sind, enthält ein Ausführungsbeispiel der Erfindung die folgenden Handlungen: Verbinden des Clients und des Servers über den Breitbandkanal; Austauschen von Sicherheitsinformation zwischen dem Client und dem Server über den Breitbandkanal; Verschlüsseln von dem Server zu dem Client zu übertragenden Daten unter Verwendung der Sicherheitsinformation beim Server; und Übertragen der verschlüsselten Daten von dem Server zu dem Client über den Schmalbandkanal.
  • Als Verfahren zum Übertragen von Daten auf eine sichere Weise von einem Server zu einem Client enthält ein Ausführungsbeispiel der Erfindung die folgenden Handlungen: Austauschen von Sicherheitsinformation zwischen dem Client und dem Server über einen Zweiwegekanal zwischen dem Client und dem Server; Verschlüsseln von vom Server zum Client zu übertragenden Daten basierend auf der Sicherheitsinformation; und Übertragen der verschlüsselten Daten vom Server zum Client über einen Einwegekanal zwischen dem Client und Server, der Daten von dem Server zu dem Client trägt.
  • Als drahtloses Kommunikationssystem enthält ein Ausführungsbeispiel der Erfindung folgendes: ein verdrahtetes Netzwerk mit einer Vielzahl von Servercomputern; ein drahtloses Trägernetzwerk, das operativ mit dem verdrahteten Netzwerk verbunden ist, wobei das drahtlose Trägernetzwerk einen ersten Kanal und einen zweiten Kanal unterstützt, wobei wenigstens der erste Kanal ein Zweiwege-Datenkanal ist; ein Netzwerk-Gateway, das zwischen dem verdrahteten Netzwerk und dem drahtlosen Trägernetzwerk gekoppelt ist, wobei das Netzwerk-Gateway einen Prozessor für eine sichere Verbindung enthält, der eine sichere Verbindung über den ersten Kanal durch Austauschen von Sicherheitsinformation über dem zweiten Kanal aufbaut; und eine Vielzahl von drahtlosen mobilen Vorrichtungen, die Daten mit den Servercomputern am verdrahteten Netzwerk über das drahtlose Trägernetzwerk und das Netzwerk-Gateway austauschen kann. Die Nachrichten werden vom Netzwerk-Gateway zu den drahtlosen mobilen Vorrichtungen über die über den ersten Kanal aufgebaute sichere Verbindung zugeführt.
  • Als mobile Vorrichtung, die ein Netzwerk von Computern über eine drahtlose Verbindung verbinden kann, enthält ein Ausführungsbeispiel der Erfindung folgendes: einen Anzeigeschirm, der Graphiken und Text anzeigt; einen Nachrichtenpuffer, der eine Nachricht von einem Computer auf dem Netzwerk von Computern temporär speichert, wobei die Nachricht eine Dienstidentität hat, die zu ihr gehört; eine Anwendung, die die von dem Computer auf dem Netzwerk von Computern empfangene Nachricht verwendet; und eine Kryptographiesteuerung, die eine Verschlüsselung oder Signatur von abgehenden Nachrichten steuert und die Entschlüsselung oder Authentifizierung von ankommenden Nachrichten steuert, wobei die Kryptographiesteuerung arbeitet, um eine sichere Verbindung aufzubauen, über welche sie die ankommenden Nachrichten empfängt, indem ein Einwegekanal verwendet wird, wobei ein passender Zweiwegekanal verwendet wird, um Sicherheitsinformation auszutauschen, die zum Aufbauen der sicheren Verbindung über den Einwegekanal benötigt wird.
  • Als computerlesbares Medium, das einen Computerprogrammcode zum sicheren Übertragen von Daten zwischen einem Client und einem Server über einem Schmalbandkanal enthält, wobei der Client und der Server nicht nur durch den Schmalbandkanal, sondern auch durch einen Breitbandkanal, verbindbar sind, enthält ein Ausführungsbeispiel der Erfindung folgendes: einen Computerprogrammcode zum Verbinden des Clients und des Servers über den Breitbandkanal; einen Computerprogrammcode zum Austauschen von Sicherheitsinformation zwischen dem Client und dem Server über den Breitbandkanal; einen Computerprogrammcode zum kryp tographischen Verarbeiten von zu übertragenden Daten unter Verwendung der Sicherheitsinformation, und einen Computerprogrammcode zum Übertragen der kryptographisch verarbeiteten Daten vom Server zum Client über den Schmalbandkanal.
  • Als computerlesbares Medium, das einen Computerprogrammcode zum Übertragen von Daten auf eine sichere Weise von einem Server zu einem Client enthält, enthält ein Ausführungsbeispiel der Erfindung folgendes: einen Computerprogrammcode zum Austauschen von Sicherheitsinformation zwischen dem Client und dem Server über einen Zweiwegekanal zwischen dem Client und dem Server; einen Computerprogrammcode zum kryptographischen Verarbeiten von vom Server zum Client zu übertragenden Daten basierend auf der Sicherheitsinformation; und einen Computerprogrammcode zum Übertragen der kryptographisch verarbeiteten Daten vom Server zum Client über einen Einwegekanal zwischen dem Client und dem Server, der Daten von dem Server zu dem Client trägt.
  • Die Vorteile der Erfindung sind zahlreich. Einige Vorteile, die Ausführungsbeispiele der Erfindung enthalten können, sind wie folgt. Ein Vorteil der Erfindung besteht darin, dass eine sichere Verbindung über einen Einwegekanal aufgebaut werden kann. Ein weiterer Vorteil der Erfindung besteht darin, dass der Aufbau einer gesicherten Verbindung schnell erreicht werden kann, um dadurch die Latenzzeit für solche Operationen im Vergleich mit herkömmlichen Ansätzen zu verbessern. Ein weiterer Vorteil der Erfindung besteht darin, dass ein Server mit der Option von zusätzlichen sicheren Datenpfaden zu einem Client (z.B. zu einer mobilen Vorrichtung) versehen ist, wodurch der Server einen oder beide der Pfade in Abhängigkeit von bestimmten Auswahlkriterien verwenden kann, einschließlich Kosten, Geschwindigkeit und Verfügbarkeit.
  • Andere Aspekte und Vorteile der Erfindung werden aus der folgenden detaillierten Beschreibung klar werden, genommen in Zusammenhang mit den beigefügten Zeichnungen, die anhand eines Beispiels die Prinzipien der Erfindung darstellen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird durch die folgende detaillierte Beschreibung in Zusammenhang mit den beigefügten Zeichnungen ohne weiteres verstanden werden, wobei gleiche Bezugszeichen gleiche strukturelle Elemente bezeichnen, und wobei:
  • 1 ein Blockdiagramm eines herkömmlichen drahtlosen Kommunikationsnetzwerks ist;
  • 2A ein Blockdiagramm eines Kommunikationssystems ist, das zum Koppeln einer mobilen Kommunikationsvorrichtung mit dem Internet geeignet ist;
  • 2B ein Blockdiagramm eines Kommunikationssystems gemäß einem grundsätzlichen Ausführungsbeispiel der Erfindung ist;
  • 3 ein Ablaufdiagramm einer schmalbandigen sicheren Datenübertragungsverarbeitung gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 4 ein Ablaufdiagramm einer Verarbeitung für eine sichere Verbindung auf der Client-Seite gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 5 das Ablaufdiagramm einer Verarbeitung für eine sichere Verbindung auf der Serverseite gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 6 ein Ablaufdiagramm einer Datenübertragungsverarbeitung gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 7 ein Ablaufdiagramm einer Datenempfangsverarbeitung gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 8 ein Blockdiagramm eines Kommunikationssystems gemäß einem Ausführungsbeispiel der Erfindung ist;
  • 9 ein Blockdiagramm eines repräsentativen Kommunikationssystems zur Verwendung bei der Erfindung ist;
  • 10A ein Blockdiagramm eines Netzwerk-Gateways ist, der zur Verwendung mit dem in 9 dargestellten repräsentativen Kommunikationssystem geeignet ist; und
  • 10B ein Blockdiagramm einer mobilen Vorrichtung ist, die zur Verwendung mit dem in 9 dargestellten repräsentativen Kommunikationssystem geeignet ist.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Die Erfindung betrifft verbesserte Techniken zum Ermöglichen eines sicheren Datentransfers über Einwege-Datenkanäle oder Schmalbandkanäle. Oft sind diese Kanäle drahtlose Kanäle, die durch drahtlose Datennetzwerke zur Verfügung gestellt sind. Die Erfindung ermöglicht, dass kryptographische Handshake-Operationen für einen Einwege-Datenkanal über einen passenden Zweiwege-Datenkanal durchgeführt werden, so dass der Einwege-Datenkanal Sicherheitsprotokolle effektiv erfüllen kann, die Zweiwegekommunikationen für die kryptographischen Handshake-Operationen erfordern. Wenn einmal die kryptographischen Handshake-Operationen beendet sind, können Daten über den Einwege-Datenkanal auf eine sichere Weise übertragen werden. Zusätzlich ermöglicht die Erfindung auch, dass die kryptographischen Handshake-Operationen schneller durchgeführt werden, weil der Zweiwegekanal typischerweise eine Breitbandkanal ist. In diesem Fall resultiert die Verwendung eines Breitbandkanals anstelle eines Schmalbandkanals für die kryptographischen Handshake-Operationen in Latenzzeitreduzierungen, und zwar ungeachtet dessen, ob der Schmalbandkanal ein Einwegekanal oder ein Zweiwegekanal ist.
  • Ausführungsbeispiele der Erfindung werden nachfolgend unter Bezugnahme auf die 2A10B diskutiert. Jedoch werden Fachleute auf dem Gebiet ohne weiteres erkennen, dass die hierin in Bezug auf diese Figuren angegebene detaillierte Beschreibung für erklärende Zwecke ist, da sich die Erfindung über diese beschränkten Ausführungsbeispiele hinausgehend erstreckt.
  • 2A ist ein Blockdiagramm eines Kommunikationssystems 200, das zum Koppeln einer mobilen Kommunikationsvorrichtung mit dem Internet geeignet ist. Insbesondere enthält das Kommunikationssystem 200 mobile Kommunikationsvorrichtungen 202A und 202B. Diese mobilen Kommunikationsvorrichtungen 202A und 202B koppeln jeweils über Trägernetzwerke 204A und 204B mit einem Netzwerk-Gateway 206. Das Netzwerk-Gateway 206 ermöglicht das Koppeln der mobilen Kommunikationsvorrichtungen 202A und 202B mit dem Internet 208. Wie es allgemein ist, sind verschiedene Computersysteme, die Computer enthalten, die einen entfernten Ser ver A210 und einen entfernten Server B212 unterstützen, mit dem Internet 208 gekoppelt oder bilden einen Teil von diesem Die primäre Funktion des Netzwerk-Gateways 206 besteht im Empfangen von Datenanforderungen von den mobilen Kommunikationsvorrichtungen 202A und 20B über die jeweiligen Trägernetzwerke 204A und 204B und im Umwandeln von ihnen in Hypertext-Transferprotokoll-(HTTP = Hypertext Transfer Protocol)-Anfragen zur Verwendung mit dem Internet 208. Gleichermaßen empfängt das Netzwerk-Gateway 206 auch HTTP-Antworten vom Internet 208 und wandelt sie in Datenantworten mit einem Format (z.B. einem Protokoll) um, das zur Verwendung mit den Trägernetzwerken 204A und 204B geeignet ist.
  • Das Netzwerk-Gateway 206 ist mit dem Trägernetzwerk A 204A durch einen ersten Kanal 214 und einen zweiten Kanal 216 verbunden. Der erste Kanal 214 ist ein Zweiwegekanal oder ein bidirektionaler Kanal. Der zweite Kanal 216 ist ein Einwegekanal oder ein unidirektionaler Kanal. Zusätzlich ist das Netzwerk-Gateway 206 mit dem Trägernetzwerk B 204B durch einen ersten Kanal 218 und einen zweiten Kanal 220 verbunden. Sowohl der erste Kanal 218 als auch der zweite Kanal 220 sind Zweiwegekanäle oder bidirektionale Kanäle. Die Trägernetzwerke 204A und 204B verbinden dann jeweils mit den mobilen Kommunikationsvorrichtungen 202A und 202B auf eine drahtlose Weise.
  • Die Übertragung von Daten, die zu Datenanforderungen gehören, und von Datenantworten zwischen dem Netzwerk-Gateway 206 und den mobilen Kommunikationsvorrichtungen 202A und 202B wird über Verbindungen durchgeführt. In einigen Fällen sind dann, wenn die Daten, die übertragen werden, empfindlich sind, die Verbindungen sichere Verbindungen durch das Internet 208. Eine sichere Verbindung ist eine Verbindung, über welche verschlüsselte und/oder authentifizierte Daten übertragen werden. Zum Aufbauen von sicheren Verbindungen erfordern Sicherheitsprotokolle für drahtlose Netzwerke den Austausch von kryptographischen Parametern bei einer Handshake-Operation. Bei Einwegekanälen könnte die Handshake-Operation nicht herkömmlich durchgeführt werden, und somit könnten sichere Verbindungen über Einwegekanäle nicht aufgebaut werden.
  • Gemäß der Erfindung können sichere Verbindungen über Einwegekanäle aufgebaut werden. Bei dem Ausführungsbeispiel des Kommunikationssystems 200, das in 2A dargestellt ist, ist der zweite Kanal 216 ein Einwege-Datenkanal, der eine Übertragung von Daten von dem Netzwerk-Gateway 206 zu dem Trägernetzwerk A 204A unterstützt und keine Übertragung von Daten von dem Trägernetzwerk A 204A zum Netzwerk-Gateway 206 zulässt. Somit ist ein Erhalten einer sicheren Verbindung über dem zweiten Kanal 216 nicht möglich, weil ein Handshake nicht möglich ist. Jedoch ist der erste Kanal 214 ein Zweiwege-Datenkanal, der eine Übertragung von Daten in beiden Richtungen zwischen dem Netzwerk-Gateway 206 und dem Trägernetzwerk A 204A unterstützt. Gemäß der Erfindung wird der erste Kanal 214 verwendet, um die nötigen Handshake-Operationen für den zweiten Kanal 216 durchzuführen, so dass eine sichere Verbindung über den zweiten Kanal 216 aufgebaut werden kann. Zusätzliche Details darüber, wie das Handshake durchgeführt wird, sind nachfolgend zur Verfügung gestellt.
  • Weiterhin können gemäß der Erfindung sichere Kanäle auch effizienter oder schneller über Zweiwegekanäle aufgebaut werden. Bei dem Ausführungsbeispiel des in 2A dargestellten Kommunikationssystems 200 ist der erste Kanal 218 ein Zweiwege-Breitband-Datenkanal, der eine Hochgeschwindigkeitsübertragung von Daten in beiden Richtungen zwischen dem Netzwerk-Gateway 206 und dem Trägernetzwerk B 204B unterstützt. Der zweite Kanal 220 ist ein Zweiwege-Schmalband-Datenkanal, der eine Hochgeschwindigkeitsübertragung von Daten in beiden Richtungen zwischen dem Netzwerk-Gateway 206 und dem Trägernetzwerk B 204B unterstützt. Gemäß der Erfindung wird der erste Kanal 218 verwendet, um die nötigen Handshake-Operationen für den zweiten Kanal 220 durchzuführen, so dass eine sichere Verbindung effizienter und schneller über den zweiten Kanal 220 aufgebaut werden kann. Die Verbesserung resultiert aus der Verwendung eines Kanals mit breiterer Bandbreite zum Durchführen der Handshake-Operation. Zusätzliche Details darüber, wie der Handshake durchgeführt wird, sind nachfolgend zur Verfügung gestellt.
  • Das Kommunikationssystem 200 ist ein repräsentatives Kommunikationssystem, bei welchem das Netzwerk-Gateway 206 mit dem Internet 208 gekoppelt ist, so dass mobile Kommunikationsvorrichtungen 202A und 202B mit dem Internet 208 interagieren können. Die Verbindung der mobilen Kommunikationsvorrichtungen 202A und 202B mit dem Netzwerk-Gateway 206 erfolgt über eines oder mehrere drahtlose Netzwerke, die durch die Trägernetzwerke 204A und 203B unterstützt werden. Obwohl es nicht dargestellt ist, kann das Kommunikationssystem 200 oft eine große Anzahl von mobilen Kommunikationsvorrichtungen unterstützen. Weiterhin kann das Internet 208 allgemeiner irgendein Netzwerk (z.B. ein privates Netzwerk, ein öffentliches Netzwerk, ein weiträumiges Netzwerk oder ein lokales Netzwerk) sein. Das Netzwerk-Gateway 206 arbeitet typischerweise als Proxyserver, ist aber allgemeiner ein Server.
  • 2B ist ein Blockdiagramm eines Kommunikationssystems 250 gemäß einem grundsätzlichen Ausführungsbeispiel der Erfindung. Das Kommunikationssystem 250 ist beispielsweise ein Untersystem eines größeren Kommunikationssystems, wie beispielsweise des in 2A dargestellten Kommunikationssystems 200. Das Kommunikationssystem 250 enthält einen Server 252, einen Client A 254 und einen Client B 256. Ein Server 252 kann eine Vielfalt von Formen annehmen, einschließlich eines Proxyservers oder eines Netzwerk-Gateways. Der Server 252 interagiert mit den Clients 254 und 256 zum Austauschen von Daten zwischen dem Server und dem Client. Typischerweise koppelt der Server 252 mit einem Netzwerk und ermöglicht somit, dass die Clients 254 und 256 mit dem Netzwerk interagieren. Das Netzwerk kann eine Vielfalt von Formen annehmen, einschließlich eines lokalen Netzwerks (LAN = Local Area Network), eines weiträumigen Netzwerks (WAN = Wide Area Network) oder des Internets. Oft wird der Server 252 mehr Clients als die in 2B dargestellten zwei Clients 254 und 256 unterstützen.
  • Jeder der Clients 254 und 256 ist mit dem Server 252 über ein Paar von Kommunikationskanälen verbunden. Diese Kommunikationskanäle sind drahtlose Kanäle und können konstant angeschlossen (verbunden) oder temporär angeschlossen (verbunden) sein. Während diese Anschlüsse oder Verbindungen vorzugsweise drahtlos (d.h. nicht verdrahtet) sind, kann ein gewisser Teil der Anschlüsse bzw. Verbindungen verdrahtet sein, wie es im Stand der Technik bekannt ist. Diese drahtlosen Kommunikationskanäle können durch eine Vielfalt von drahtlosen Netzwerken zur Verfügung gestellt sein, einschließlich von paketgeschalteten drahtlosen Datennetzwerken oder von schaltungsgeschalteten drahtlosen Datennetzwerken. Genauer gesagt ist der Server 252 mit dem Client A 254 über einen Schmalbandkanal A (NBCA) 258 sowie über einen Breitbandkanal A (WBCA) 260 verbunden. Gleichermaßen ist der Server 252 mit dem Client B 256 über einen Schmalbandkanal (NBCB) 262 sowie über einen Breitbandkanal B (WBCB) 264 verbunden. Der Schmalbandkanal A (NBCA) und der Breitbandkanal A (WBCA) können als durch ein drahtloses Netzwerk A zur Verfügung gestellt angesehen werden, und der Schmalbandkanal B (NBCB) und der Breitbandkanal B (WBCB) können als durch ein drahtloses Netzwerk B zur Verfügung gestellt angesehen werden.
  • Die Breitbandkanäle (WBCA und WBCB) 260 und 264 unterstützen größere Bandbreiten oder Datentransferraten als es die Schmalbandkanäle (NBCA und NBCB) 258 und 262 tun. Demgemäß ist die Fähigkeit zum Transferieren von Daten zwischen dem Server und dem Client auf den Schmalbandkanälen signifikant niedriger, wie es entgegengesetzt zu den Breitbandkanälen ist. Als Beispiel können Schmalbandkanäle Daten mit einer Rate von etwa 400 Bits pro Sekunde (bps) transferieren, während Breitbandkanäle Daten mit einer Rate von wenigstens 14400 bps transferieren können. Der Kompromiss bezüglich einer Bandbreite oder einer Transferrate bzw. Übertragungsrate ist typischerweise bei den Kosten für eine Verwendung der jeweiligen Kanäle berücksichtigt. Anders ausgedrückt ist es oft teurer, Daten über den Breitbandkanal als über den Schmalbandkanal zu übertragen.
  • Oft gibt es eine Notwendigkeit oder einen Wunsch dafür, Daten zwischen einem Server und einem Client auf sichere Weise zu übertragen. In solchen Fällen werden Kryptographietechniken (z.B. eine Verschlüsselung) dazu verwendet, den sicheren Datentransfer zur Verfügung zu stellen. Wie es oben angegeben ist, erfordern Verschlüsselungstechniken normalerweise, dass ein Server und ein Client eine Handshake-Operation durchführen, bei welcher Sicherheitsinformation vom Client zum Server und vom Server zum Client übergeben wird. Nachdem der Server und der Client die Handshake-Operation durchführen, können der Server und der Client Daten an einem Ende verschlüsseln, die verschlüsselten Daten übertragen und dann die empfangenen Daten am anderen Ende entschlüsseln.
  • Im Fall der Breitbandkanäle (WBCA und WBCB) 260 und 264 wird das Austauschen von Sicherheitsinformation über die Handshake-Operation auf einfache Weise erreicht, weil die Breitbandkanäle normalerweise Zweiwegekanäle sind. Jedoch sind die Schmalbandkanäle (NBCA und NBCB) 258 und 262 oft Einwegekanäle, die Übertragungen vom Server zum Client unterstützen, aber nicht vom Client zum Server. Als solches kann dann, wenn die Schmalbandkanäle (NBCA und NBCB) 258 und 262 Einwegekanäle sind, das Austauschen von Sicherheitsinformation über die Handshake-Operation nicht durchgeführt werden. Zusätzlich ist selbst dann, wenn ein Schmalbandkanal ein Zweiwegekanal ist, die Latenz bzw. Latenzzeit oder Verzögerung zum Durchführen der Handshake-Operation über den Schmalbandkanal größer (verglichen mit einem Breitbandkanal), und zwar aufgrund seiner oft signifikant niedrigeren Bandbreite oder Datentransferrate im Vergleich mit dem Breitbandkanal.
  • Gemäß der Erfindung kann ein sicherer Datentransfer über einen Kanal durchgeführt werden, weil der Austausch von Sicherheitsinformation für eine Handshake-Operation über einen anderen Kanal erfolgt. Bei einem Ausführungsbeispiel wird der Austausch von Sicherheitsinformation über einen Zweiwegekanal durchgeführt, so dass ein sicherer Datentransfer über einen Einwegekanal durchgeführt werden kann. Bei einem weiteren Ausführungsbeispiel wird der Austausch von Sicherheitsinformation über einen Breitbandkanal durchgeführt, so dass ein sicherer Datentransfer über einen Schmalbandkanal durchgeführt werden kann.
  • 3 ist ein Ablaufdiagramm einer schmalbandigen sicheren Datenübertragungsverarbeitung 300 gemäß einem Ausführungsbeispiel der Erfindung. Die schmalbandige sichere Datenübertragungsverarbeitung 300 tritt zwischen einem Client und einem Server auf und kann beispielsweise durch das in 2 dargestellte Kommunikationssystem 200 durchgeführt werden.
  • Die schmalbandige sichere Datenübertragungsverarbeitung 300 beginnt mit einem Entscheidungsblock 302. Als Beispiel kann der Server eine sichere Schmalbandverbindung anfordern, wenn er wünscht, Daten zu einem bestimmten Client zu senden (oder "zu stoßen"). Wenn der Entscheidungsblock 302 bestimmt, dass eine sichere Schmalbandverbindung nicht angefordert worden ist, dann wartet die schmalbandige sichere Datenübertragungsverarbeitung 300 auf den Empfang einer solchen Anforderung. Anders ausgedrückt wird die schmalbandige sichere Datenübertragungsverarbeitung 300 nur verwendet, wenn eine sichere Datenübertragung über einen Schmalbandkanal erfolgen soll, und sonst folgen nicht sichere Übertragungen oder sichere Übertragungen über Breitbandkanäle einer anderen Verarbeitung, die im Stand der Technik bekannt ist.
  • Wenn der Entscheidungsblock 302 einmal bestimmt, dass eine sichere Schmalbandverbindung angefordert worden ist, dann wird eine Verarbeitung aufgerufen, um die schmalbandige sichere Datenübertragungsverarbeitung 300 auszuführen. Insbesondere werden der Client und der Server über einen Zweiwege-Breitbandkanal verbunden 304. Dann wird schmalbandige Sicherheitsinformation zwischen dem Client und dem Server über den Breitbandkanal ausgetauscht 306. Die Sicherheitsinformation enthält typischerweise Schlüssel und andere kryptographische Parameter, die bei Verschlüsselungsalgorithmen verwendet werden. Eine populäre Gruppe von Verschlüsselungsalgorithmen enthält Verschlüsselungsalgorithmen mit öffentlichem Schlüssel. Es sollte beachtet werden, dass der Austausch der Sicherheitsinformation über den Breitbandkanal durchgeführt wird, wenn die Verbindungsanforderung für die Übertragung von Daten über den Schmalbandkanal erfolgt. Nach dem Block 306 können der Client und der Server eine sichere Verbindung zwischen dem Server und dem Client über den Schmalbandkanal aufbauen, weil die erforderliche Handshake-Operation durchgeführt worden ist. Anders ausgedrückt wird die Sicherheitsinformation, die über den Breitbandkanal ausgetauscht worden ist, zum Aufbauen der sicheren Verbindung über den Schmalbandkanal verwendet.
  • Als nächstes bestimmt ein Entscheidungsblock 308, ob es zu übertragende Daten gibt. Wenn der Entscheidungsblock 308 bestimmt, dass es gegenwärtig keine zu übertragenden Daten gibt, dann wartet die schmalbandige sichere Datenübertragungsverarbeitung 300 auf die Verfügbarkeit von Daten. Wenn der Entscheidungsblock 308 einmal bestimmt, dass zu übertragende Daten verfügbar sind, dann werden die zu übertragenden Daten basierend auf der Sicherheitsinformation verschlüsselt 310. Nachdem die Daten verschlüsselt sind, werden die verschlüsselten Daten über den Schmalbandkanal übertragen 312. Hier ist angenommen, dass die Verbindung zwischen dem Server und dem Client über den Schmalbandkanal bereits aufgebaut ist. Jedoch kann bei anderen Ausführungsbeispielen vor der Übertragung der verschlüsselten Daten über den Schmalbandkanal eine Verbindung zwischen dem Server und dem Client über den Schmalbandkanal aufgebaut werden müssen.
  • Nach dem Block 312 bestimmt ein Entscheidungsblock 314, ob die Verbindung über den Schmalbandkanal noch offen ist. Aufgrund einer Vielfalt von Gründen ist eine Verbindung oft geschlossen, und diese Gründe enthalten eine Auszeitbedingung, einen Fehlerzustand oder Sicherheitsgründe. Wenn der Entscheidungsblock 314 bestimmt, dass die Verbindung noch offen ist, springt die schmalbandige sichere Datenübertragungsverarbeitung 300 zurück, um den Entscheidungsblock 308 und nachfolgende Blöcke zu wiederholen. Andererseits springt dann, wenn der Entscheidungsblock 314 einmal bestimmt, dass die Verbindung nicht mehr offen ist, die schmalbandige sichere Datenübertragungsverarbeitung 300 zurück, um den Entscheidungsblock 302 und nachfolgende Blöcke zu wiederholen, so dass erneut eine sichere Verbindung aufgebaut wird.
  • Der bei der schmalbandigen sicheren Datenübertragungsverarbeitung 300 verwendete Schmalbandkanal kann entweder ein Einwege-(Server zu Client) oder ein Zweiwegekanal sein. Wie es oben angegeben ist, stellt die Erfindung Vorteile in jeder Situation zur Verfügung, obwohl die Erfindung von besonderem Vorteil ist, wenn der Schmalbandkanal nur ein Einwegekanal vom Server zum Client ist.
  • Unter der Voraussetzung, dass der Server 252 und die Clients 254 und 256 durch wenigstens ein Paar von Kanälen (258264) verbunden sind, wie es in 2B gezeigt ist, ist es für sichere Übertragungen nicht ungewöhnlich, dass sie gleichzeitig über beide Kanäle zwischen Server und Client verwendet werden. In solchen Fällen muss jeder Kanal eine Handshake-Operation bewirken, um Sicherheitsinformation auszutauschen, die für den Aufbau einer sicheren Verbindung nötig ist. Die 4 und 5 beschreiben den Aufbau von dualen sicheren Verbindungen für ein Paar von Kanälen zwischen einem Server und einem Client.
  • 4 ist ein Ablaufdiagramm einer Verarbeitung 400 für eine sichere Verbindung auf der Clientseite gemäß einem Ausführungsbeispiel der Erfindung. Die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite wird beispielsweise durch einen Client, wie beispielsweise den Client 254 oder den Client 256, die in 2 dargestellt sind, durchgeführt. Bei diesem Ausführungsbeispiel ist angenommen, dass sowohl ein erster als auch ein zweiter Kanal zwischen einem Client und einem Server zu verwenden sind, um sichere Verbindungen zur Verfügung zu stellen.
  • Die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite sendet 402 anfänglich eine Anforderung für eine sichere Session zu einem Server (z.B. zu dem Server 202, der in 2 dargestellt ist). Hier ist die Anforderung für eine sichere Session eine Anforderung zum Aufbauen von sicheren Verbindungen über den ersten und den zweiten Kanal. Ein Entscheidungsblock 404 bestimmt dann, ob eine Antwort auf die Anforderung für eine sichere Session empfangen worden ist. Hier wartet der Client auf eine Antwort vom Server. Wenn der Entscheidungsblock 404 bestimmt, dass eine Antwort noch nicht empfangen worden ist, veranlasst der Entscheidungsblock 404, dass die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite auf dem Empfang einer solchen Antwort wartet. Die Anforderung und die Antwort arbeiten zum Austauschen von Sicherheitsinformation, wie einer ersten Handshake-Operation, gemäß einem Sicherheitsprotokoll. Die Sicherheitsinformation würde beispielsweise kryptographische Parameter enthalten, die Schlüssel, Zufallszahlen, Algorithmen, Vektoren und ähnliches für verschiedene Kryptographietechniken spezifizieren.
  • Wenn einmal eine Antwort empfangen worden ist, wird ein erster Schlüsselblock für einen ersten Kanal zwischen dem Server und dem Client erzeugt 406. Der erste Schlüsselblock wird verwendet, um Schlüssel zu enthalten, die zum Verschlüsseln oder Authentifizieren von Daten oder Blöcken von Daten verwendet werden, die zwischen dem Server und dem Client über den ersten Kanal zu übertragen sind. Darauf folgend wird eine Benachrichtigung über eine Beendigung einer sicheren Session zum Server gesendet 408. Die Benachrichtigung für eine Beendigung einer sicheren Session ist eine Benachrichtigung zum Server, dass der Client einen Empfang der Antwort bestätigt hat und für eine gesicherte Session vorbereitet ist.
  • Als nächstes bestimmt ein Entscheidungsblock 410, ob eine sichere Session für den ersten Kanal gebildet worden ist. Eine sichere Session wird gebildet, wenn der Client anfordert und der Server zustimmt, die sichere Session zu bilden, und bildet dann die sichere Session. Wenn der Entscheidungsblock 410 bestimmt, dass die sichere Session aufgebaut worden ist, dann ist die gesicherte Session für den ersten Kanal bereit.
  • Nun wird die sichere Session für einen zweiten Kanal aufgebaut. Sicherheitsinformation für den zweiten Kanal wird auch vom Client zum Server gesendet 412. Es sollte beachtet werden, dass die Sicherheitsinformation zum Server über den ersten Kanal gesendet wird 412. Die Gründe für ein Verwenden des ersten Kanals sind (i) eine Notwendigkeit, wenn der zweite Kanal Daten nicht zum Server übertragen kann, oder (ii) eine Latenzverbesserung, wenn der zweite Kanal ein Schmalbandkanal ist.
  • Als nächstes bestimmt ein Entscheidungsblock 414, ob eine Sicherheitsinformation vom Server empfangen worden ist. Die Sicherheitsinformation vom Server wird auch über den ersten Kanal empfangen. Die Sicherheitsinformation vom Server erfolgt in Reaktion auf die durch den Client zum Server gesendete Sicherheitsinformation. Dieser Austausch von Sicherheitsinformation ist eine zweite Handshake-Operation gemäß einem Sicherheitsprotokoll. Der Entscheidungsblock 414 veranlasst, dass die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite auf den Empfang von Sicherheitsinformation vom Server wartet. Wenn der Entscheidungsblock 414 einmal bestimmt, dass die Sicherheitsinformation empfangen worden ist, wird ein zweiter Schlüsselblock für einen zweiten Kanal erzeugt 416. Wiederum enthält der zweite Schlüsselblock Sessionschlüssel, die zum Verschlüsseln oder Authentifizieren von Daten oder Blöcken von Daten verwendet werden, die über den zweiten Kanal auf eine sichere Weise zu übertragen sind. Nach dem Block 416 ist die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite beendet und endet.
  • Zusätzlich gibt dann, wenn der Entscheidungsblock 410 bestimmt, dass die sichere Session zwischen dem Server und dem Client nicht eingerichtet worden ist, die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite eine Fehlerbenachrichtigung aus 418. Nach dem Block 418 ist die Verarbeitung 400 für eine sichere Verbindung auf der Clientseite beendet und endet.
  • 5 ist das Ablaufdiagramm einer Verarbeitung 500 für eine sichere Verbindung auf der Serverseite gemäß einem Ausführungsbeispiel der Erfindung. Die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite wird beispielsweise durch einen Server durchgeführt, wie beispielsweise den in 2B dargestellten Server 252.
  • Die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite beginnt mit einem Entscheidungsblock 502. Der Entscheidungsblock 502 bestimmt, ob eine Anforderung für eine sichere Session empfangen worden ist. Typischerweise wird die Anforderung für eine sichere Session durch einen Client ausgegeben werden und dann durch den Server empfangen. Der Entscheidungsblock 502 veranlasst, dass die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite auf den Empfang einer Anforderung für eine sichere Session wartet. Hier ist die Anforderung für eine sichere Session eine Anforderung zum Aufbauen von sicheren Verbindungen über einen ersten und einen zweiten Kanal.
  • Wenn eine Anforderung für eine sichere Session einmal empfangen worden ist, fährt die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite fort. Ein erster Schlüsselblock für einen ersten Kanal wird erzeugt 504. Eine Antwort wird dann zu dem Client gesendet 506, der die sichere Session angefordert hat. Die Anforderung für eine sichere Session und die Antwort arbeiten zum Austauschen von Sicherheitsinformation als erste Handshake-Operation gemäß einem Sicherheitsprotokoll. Beispiele für Protokolle für eine drahtlose Netzwerkumgebung sind HDTP und WAP WTLS. Die Sicherheitsinformation würde beispielsweise kryptographische Parameter enthalten, die Schlüssel, Zufallszahlen, Algorithmen, Vektoren und ähnliches für verschiedene Kryptographietechniken spezifizieren.
  • Als nächstes bestimmt ein Entscheidungsblock 508, ob eine Benachrichtigung über eine Beendigung einer sicheren Session empfangen worden ist. Das Protokoll für eine Beendigung bzw. Fertigstellung einer sicheren Session wird durch den Client zum Server gesendet, wenn der Client eine sichere Session für den ersten Kanal aufgebaut hat. Der Entscheidungsblock 508 veranlasst, dass die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite auf den Empfang der Benachrichtigung über eine Fertigstellung einer sicheren Session wartet. Ein Entscheidungsblock 510 bestimmt dann, ob eine sichere Session eingerichtet ist. Wenn der Entscheidungsblock 510 bestimmt, dass eine sichere Session eingerichtet worden ist, bestimmt ein Entscheidungsblock 512, ob Sicherheitsinformation empfangen worden ist. Hier würde die Sicherheitsinformation bei dem Server empfangen werden, nachdem sie durch den Client gesendet worden ist. Die Sicherheitsinformation ist für den zweiten Kanal. Der Client würde die Sicherheitsinformation zum Server als Teil seiner Kommunikationen mit dem Server gemäß einem Protokoll zum Bilden einer sicheren Session für den zweiten Kanal senden. Als Beispiel kann das Protokoll hier ein Sessionschichtprotokoll oder ein Transportschichtprotokoll (z.B. HDTP) sein.
  • Wenn der Entscheidungsblock 512 einmal bestimmt, dass die Sicherheitsinformation für den zweiten Kanal, die zu dem Client gesendet ist, empfangen worden ist, dann sendet 514 der Server Sicherheitsinformation für den zweiten Kanal zum Client. Ein zweiter Schlüsselblock wird dann für den zweiten Kanal erzeugt 516. Nach dem Block 516 ist die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite beendet und endet.
  • Zusätzlich gibt dann, wenn der Entscheidungsblock 510 bestimmt, dass eine sichere Verbindung zwischen dem Server und dem Client nicht aufgebaut werden kann, die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite eine Fehlerbenachrichtigung aus 518. Nach dem Block 518 ist die Verarbeitung 500 für eine sichere Verbindung auf der Serverseite beendet und endet.
  • Das Senden und Empfangen einer Anforderung für eine sichere Session sowie das Senden und Empfangen der Sicherheitsinformation werden über den ersten Kanal durchgeführt. Die zwischen Client und Server über den ersten Kanal ausgetauschte Information wird dazu verwendet, die sicheren Kommunikationen zwischen dem Client und dem Server über den ersten Kanal und den zweiten Kanal einzurichten.
  • Der erste Schlüsselblock wird zum Verschlüsseln von Daten verwendet, die über den ersten Kanal vom Client zum Server übertragen werden, sowie zum Entschlüsseln von Daten, die vom Server über den ersten Kanal empfangen werden. Der zweite Schlüsselblock wird zum Entschlüsseln von Daten verwendet, die vom Server über den zweiten Kanal empfangen werden. Bei einem Ausführungsbeispiel ist der erste Kanal ein Zweiwegekanal und ist der zweite Kanal ein Einwegekanal. Bei einem weiteren Ausführungsbeispiel ist der erste Kanal ein Zweiwege-Breitbandkanal und ist der zweite Kanal ein Zweiwege-Schmalbandkanal.
  • In dem Fall, in welchem das beteiligte Sicherheitsprotokoll HDTP ist, wird die sichere Session für den ersten Kanal in einem normalen Verlauf durchgeführt. Die sichere Session für den zweiten Kanal kann im Huckepack auf den Client- und Server-Austauschvorgängen für die sichere Session für den ersten Kanal sein. Das bedeutet, dass HDTP einen Transfer eines Inhalts vom HTTP-Typ verwendet, und somit Anfangsblöcke (z.B. Session-Anfangsblöcke) normal zwischen Client und Server ausgetauscht werden. Diese Anfangsblöcke können dazu verwendet werden, die Sicherheitsinformation für den zweiten Kanal (Blöcke 414, 416, 512 und 514) auszutauschen.
  • In dem Fall, in welchem WAP verwendet wird, ist das beteiligte Sicherheitsprotokoll WTLS, und ein Sessionebenenprotokoll ist das drahtlose Sessionprotokoll (WSP = Wireless Session Protocol). WSP führt auch unter Verwendung von Transfers des Inhalts vom HTTP-Typ durch. Wenn WSP und WTLS eine sichere Session erzeugen, werden Anfangsblöcke (z.B. Session-Anfangsblöcke) normal zwischen Client und Server ausgetauscht. Wie bei HDTP können diese Anfangsblöcke dazu verwendet werden, die Sicherheitsinformation für den zweiten Kanal (Blöcke 414, 416, 512 und 514) auszutauschen.
  • Ungeachtet des spezifischen Protokolls, das verwendet wird, kann ein Teil der Sicherheitsinformation für beide Kanäle gemeinsam (oder gemeinsam genutzt) sein. In dem Fall, in welchem der Verschlüsselungsalgorithmus mit öffentlichem Schlüssel von Diffie Hellman verwendet wird, enthalten die Austauschvorgänge während der Handshake-Operationen einen Schlüsselaustausch und einen Zufallszahlenaustausch. Somit wäre normalerweise ein Schlüsselaustausch und ein Zufallszahlenaustausch separat für jeden Kanal erforderlich. Jedoch kann durch gemeinsames Nutzen desselben Schlüssels für beide Kanäle der zweite Schlüsselaustausch eliminiert werden. Gleichermaßen kann das gemeinsame Nutzen derselben Zufallszahl den Zufallszahlenaustausch eliminieren. Das gemeinsame Nutzen eines Teils der Sicherheitsinformation verbessert eine Latenz oder Effizienz des Aufbaus einer sicheren Verbindung, kann aber in einer Reduzierung bezüglich der Stärke der Sicherheit resultieren.
  • Darüber hinaus kann es wünschenswert sein, dieselbe Sicherheitsinformation für beide (z.B. mehrere) Kanäle zu verwenden. In solchen Fällen muss es nicht irgendeinen Austausch von Sicherheitsinformation für den zweiten Kanal (oder mehrere Kanäle) neben der für den ersten Kanal ausgetauschten Sicherheitsinformation geben. Hier würde die gesamte Sicherheitsinformation durch die Kanäle gemeinsam genutzt werden. Unterschiedliche Verbindungsidentifizierer würden jedoch die Verbindungen unterscheiden. Beispielsweise könnten in Bezug auf 4 die Blöcke 412 und 414 eliminiert werden und könnten in Bezug auf 5 die Blöcke 512 und 514 eliminiert werden. Ebenso könnte die Erzeugung des zweiten Schlüsselblocks (Blöcke 416 und 516) durch gemeinsames Nutzen eines Schlüsselblocks (z.B. des ersten Schlüsselblocks) eliminiert werden. Somit können sichere Verbindungen über beide (oder mehrere) Kanäle unter Verwendung derselben kryptographischen Parameter aufgebaut werden, mit dem Prozess, dass es eine Reduzierung bezüglich der Stärke der Sicherheit gibt.
  • 6 ist ein Ablaufdiagramm einer Datenübertragungsverarbeitung 600 gemäß einem Ausführungsbeispiel der Erfindung. Bei diesem Ausführungsbeispiel werden die Daten typischerweise über einen zweiten Kanal vom Server zum Client übertragen. Als Beispiel ist der zweite Kanal ein Einwege-Schmalbandkanal. Die Datenübertragungsverarbeitung 600 folgt dem Einrichten der sicheren Session (Verbindung) zwischen dem Server und dem Client über den zweiten Kanal, wie es in 4 gezeigt ist. Eine Datenübertragung, wenn es eine gibt, über den ersten Kanal ist nicht gezeigt.
  • Die Datenübertragungsverarbeitung 600 beginnt mit einem Entscheidungsblock 602. Der Entscheidungsblock 602 bestimmt, ob es Daten zum Übertragen über den zweiten Kanal gibt. Wenn der Entscheidungsblock 602 bestimmt, dass es gegenwärtig keine Daten gibt, die darauf warten, über den zweiten Kanal übertragen zu werden, dann wartet die Datenübertragungsverarbeitung 600 einfach auf den Empfang von solchen Daten.
  • Wenn der Entscheidungsblock 602 einmal bestimmt, dass es Daten gibt, um über den zweiten Kanal übertragen zu werden, dann fährt die Datenübertragungsverarbeitung 600 fort, so dass die Daten übertragen werden. Wiederum ist die sichere Session (Verbindung) bereits für den zweiten Kanal aufgebaut worden. Insbesondere wird ein Block der Daten erhalten 604. Ein oder mehrere Schlüssel aus dem zweiten Schlüsselblock werden erhalten 606. Typischerweise werden ein Authentifizierungsschlüssel und ein Verschlüsselungsschlüssel von dem zweiten Schlüsselbock erhalten. Ein Initialisierungsvektor kann auch aus dem zweiten Schlüsselblock erhalten werden. Der Initialisierungsvektor wird als Zufallskeim für Blockverschlüsselungs-Verschlüsselungsalgorithmen verwendet. Hier wurde der zweite Schlüsselblock im Block 514 der in 5 dargestellten Verarbeitung 500 für eine sichere Verbindung auf der Serverseite erzeugt. Der zweite Schlüsselblock ist beim Server angeordnet.
  • Als nächstes wird der Block von Daten verschlüsselt und/oder signiert 608, indem der (die) Schlüssel verwendet wird (werden), der (die) von dem zweiten Schlüsselblock erhalten sind. Die besondere Signaturtechnik, die verwendet wird, ist beispielsweise ein Einwege-Hash-Algorithmus. Der verwendete bestimmte Verschlüsselungsalgorithmus kann in weitem Maß variieren, aber oft sind Verschlüsselungsalgorithmen mit öffentlichem Schlüssel geeignet. Bei einem Ausführungsbeispiel würde unter Annahme, dass sowohl eine Signatur als auch eine Verschlüsselung erwünscht sind, der Block von Daten unter Verwendung der Signaturtechnik und des Authentifizierungsschlüssels signiert werden, und würde der Block von Daten unter Verwendung des Verschlüsselungsalgorithmus und des Verschlüsselungsschlüssels verschlüsselt werden, und dann würden die zwei Verarbeitungsblöcke aneinandergehängt werden.
  • Nach dem Block 608 wird der verschlüsselte Block von Daten über den zweiten Kanal übertragen 610. Darauf folgend bestimmt ein Entscheidungsblock 612, ob es mehr Daten gibt, um über den zweiten Kanal übertragen zu werden. Wenn der Entscheidungsblock bestimmt, dass es mehr Daten gibt, um Übertragen zu werden, dann springt die Datenübertragungsverarbeitung 600 zurück, um den Block 604 und nachfolgende Blöcke zu wiederholen. Andererseits ist dann, wenn der Entscheidungsblock 612 bestimmt, dass es nicht mehr Daten gibt, um über den zweiten Kanal übertragen zu werden, die Datenübertragungsverarbeitung 600 beendet und endet.
  • 7 ist ein Ablaufdiagramm einer Datenempfangsverarbeitung 700 gemäß einem Ausführungsbeispiel der Erfindung. Bei diesem Ausführungsbeispiel werden Daten über einen zweiten Kanal empfangen. Als Beispiel ist der zweite Kanal ein Einwege-Schmalbandkanal vom Server zum Client. Bei einer Implementierung der Datenempfangsverarbeitung 700 wird die Verarbeitung durch einen Client durchgeführt, wie beispielsweise den in 2B dargestellten Client 254 und 256. Die Datenempfangsverarbeitung 700 folgt der Datenübertragungsverarbeitung 600, und somit erfolgt der Aufbau der sicheren Session (Verbindung) zwischen dem Server und dem Client über den zweiten Kanal, wie es in 4 gezeigt. Ein Datenempfang, wenn es einen gibt, über den ersten Kanal ist nicht gezeigt.
  • Die Datenempfangsverarbeitung 700 beginnt mit einem Entscheidungsblock 702. Der Entscheidungsblock 702 bestimmt, ob ein Block von Daten über den zweiten Kanal empfangen worden ist. Der Entscheidungsblock 702 veranlasst, dass die Datenempfangsverarbeitung 700 wartet, bis wenigstens ein Block von Daten über den zweiten Kanal empfangen worden ist. Jedoch dann, wenn der Entscheidungsblock 702 einmal bestimmt, dass wenigstens ein Block von Daten über den zweiten Kanal empfangen worden ist, fährt die Datenempfangsverarbeitung 700 fort, so dass der Block von Daten verarbeitet werden kann. Das bedeutet, dass ein oder mehrere Schlüssel aus dem zweiten Schlüsselblock erhalten werden 704. Typischerweise werden ein Authentifizierungsschlüssel und ein Verschlüsselungsschlüssel aus dem zweiten Schlüsselblock erhalten. Ein Initialisierungsvektor, der als Zufallskeim für Blockschlüssel-Verschlüsselungsalgorithmen verwendet wird, kann auch aus dem zweiten Schlüsselblock erhalten werden. Hier ist der zweite Schlüsselblock beispielsweise der zweite Schlüsselblock, der im Block 414 der in 4 dargestellten Verarbeitung 400 für eine sichere Verbindung auf der Clientseite erzeugt wurde. Anders ausgedrückt ist der zweite Schlüsselblock hier lokal zum Client.
  • Als nächstes wird der Block von Daten, der empfangen worden ist, entschlüsselt und/oder authentifiziert 706, indem der (die) Schlüssel verwendet wird (werden), der (die) aus dem zweiten Schlüsselblock erhalten wurde(n). Bei einem Ausführungsbeispiel würde unter der Annahme, dass sowohl eine Signatur als auch eine Verschlüsselung auf der Senderseite an den Daten durchgeführt würde, die übertragen sind und nun beim Client empfangen sind, der Block von Daten, der empfangen ist, sowohl signiert als auch verschlüsselt werden. Somit würde bei einem solchen Ausführungsbeispiel der empfangene Block von Daten unter Verwendung des aus dem zweiten Schlüsselblock auf der Clientseite erhaltene 704 Authentifizierungsschlüssel authentifiziert werden und würde der empfangene Block von Daten auch unter Verwendung des auch aus dem zweiten Schlüsselblock auf der Clientseite erhaltenen 704 Verschlüsselungsschlüssels verschlüsselt werden.
  • Nachdem der Block von Daten entschlüsselt und/oder authentifiziert worden ist 706, wird der entschlüsselte Block von Daten für eine nachfolgende Verwendung gespeichert 708. Nach dem Block 708 springt die Datenempfangsverarbeitung 700 zurück, um den Entscheidungsblock 702 und folgende Blöcke zu wiederholen, so dass nachfolgende Blöcke von Daten verarbeitet werden können, wenn sie über dem zweiten Kanal empfangen werden.
  • Trägernetzwerke sind allgemein in paketgeschaltete Netzwerke und schaltungsgeschaltete Netzwerke klassifiziert. Bei paketgeschalteten Netzwerken können Kommunikationen zwischen dem Trägernetzwerk und der drahtlosen Kommunikationsvorrichtung eine Internetprotokoll-(IP)-Adressierung verwenden, weil die drahtlose Kommunikationsvorrichtung ihre eigene individuelle IP-Adresse hat. Schaltungsgeschaltete Netzwerke erfordern andererseits die Bildung einer Schaltung mit dem Trägernetzwerk, bevor die drahtlose Kommunikationsvorrichtung mit dem Trägernetzwerk kommunizieren kann. In solchen Netzwerken haben die drahtlosen Kommunikationsvorrichtungen keine statische IP-Adresse, sondern haben stattdessen eine dynamisch zugeordnete IP-Adresse oder eindeutige Telefonnummern. Ein Beispiel für ein paketgeschaltetes Trägernetzwerk ist CDPD. Ein Beispiel für ein schaltungsgeschaltetes Netzwerk ist ein Codemultiplex-Vielfachzugriff (CDMA) und ein globales System für mobile Kommunikationen (GSM).
  • 8 ist ein Blockdiagramm eines Kommunikationssystems 800 gemäß einem Ausführungsbeispiel der Erfindung. Das Kommunikationssystem 800 enthält ein Netzwerk-Gateway 802, das einen Zugriff auf und eine Wiedergewinnung bzw. ein Auslesen von Information aus dem Internet 208 zu den drahtlosen Kommunikationsvorrichtungen 202X, 202Y und 202Z ermöglicht. Das Netzwerk-Gateway arbeitet gleich dem in 2A dargestellten Netzwerk-Gateway 206. Das Kommunikationssystem 800 gehört jedoch speziell zu der Situation, bei welcher das Trägernetzwerk X 804 ein paketgeschaltetes Netzwerk ist, wie beispielsweise CDPD, das Trägernetzwerk Y 806 ein Netzwerk vom SMS-Typ ist, das CDMA mit einem Schnittstellenprotokoll von SMPP verwendet, und das Trägernetzwerk Z 808 ein weiteres Netzwerk vom SMS-Typ ist, das GSM mit einem Schnittstellenprotokoll und UCP verwendet.
  • Da das Trägernetzwerk Y 806 und das Trägernetzwerk Z 808 schaltungsgeschaltete Netzwerke sind, die SMS verwenden, verwenden sie Kurznachrichten-Serverzentren (SMSCs) und Zwischenarbeitsfunktionen (IWF) zum Bereitstellen einer Kommunikation mit den Trägernetzwerken. Die Verwendung der SMSCs und der IWFs sind herkömmlich und typischerweise durch die Trägernetzwerke zur Verfügung gestellt, so dass eine Nachrichtenbildung und eine Interaktion mit den Trägernetzwerken erreicht werden können. Somit enthält das Kommunikationssystem 800 SMSC-Y 810 und SMSC-Z 812, die jeweils Nachrichtendienste zu drahtlosen Kommunikationsvorrichtungen liefern, die mit dem Trägernetzwerk Y 806 bzw. dem Trägernetzwerk Z 808 gekoppelt sind. Die SMSCs 810 und 812 liefern Einwege-Benachrichtigungen vom Mehrfachnetzwerk-Gateway 802 zu den drahtlosen Kommunikationsvorrichtungen auf dem Trägernetzwerk Y 806 bzw. dem Trägernetzwerk Z 808. Die IWF-B 814 und die IWF-C 816 werden jeweils zum Bereitstellen einer Zweiwegeinteraktion zwischen dem Netzwerk-Gateway 802 und dem Trägernetzwerk-Y 806 bzw. dem Trägernetzwerk-Z 808 zur Verfügung zu stellen. Die SMSC-Verbindungen mit den Trägernetzwerken werden typischerweise Schmalbandkanäle genannt, wohingegen die IWF-Verbindungen mit den Trägernetzwerken Breitbandkanäle sind. Bei diesem Ausführungsbeispiel sind die SMSC-Verbindungen zu den Trägernetzwerken Einweg-Schmalbandkanäle, wohingegen die IWF-Verbindungen mit den Trägernetzwerken Zweiwege-Breitbandkanäle sind.
  • 9 ist ein Blockdiagramm eines repräsentativen Kommunikationssystems 900 zur Verwendung bei der Erfindung. Das Kommunikationssystem 900 enthält einen verdrahteten Abschnitt 902 und einen drahtlosen Abschnitt 904. Der verdrahtete Abschnitt 902 enthält ein Netzwerk 906 und ein Netzwerk-Gateway 908. Bei einem Ausführungsbeispiel ist das Netzwerk 906 das Internet, das eine große Anzahl von miteinander verbundenen Computern darstellt. Bei einem weiteren Ausführungsbeispiel ist das Netzwerk 906 ein Intranet oder ein privates Netzwerk von Computern.
  • Das Netzwerk-Gateway 908 arbeitet, um ein Gateway von dem verdrahteten Abschnitt 902 und dem drahtlosen Abschnitt 904 zur Verfügung zu stellen. Das Netzwerk-Gateway 908 dient als primäre Übergangsstelle zwischen der drahtlosen Kommunikation des drahtlosen Abschnitts 904 und der verdrahteten Kommunikation des verdrahteten Abschnitts 902. Das Netzwerk-Gateway 908 empfängt die ankommende Inhaltsanforderung von dem Trägernetzwerk 914 und führt eine Protokollumwandlung durch, wie es nötig ist. Das Netzwerk-Gateway 908 wird normalerweise irgendeine Protokollumsetzung durchführen, und sonst für Management- und Verifizierungsoperationen verantwortlich sein. Das Netzwerk-Gateway 908 enthält einen Kontoinformationsspeicherbereich 910, der ein Konto, eine Konfiguration und andere Information speichert. Der drahtlose Abschnitt 904 enthält ein Trägernetzwerk 914 und wenigstens eine entfernte drahtlose Berechnungsvorrichtung 916. Das Netzwerk-Gateway 908 empfängt auch Nachrichten vom Netzwerk 906 und leitet sie weiter zu den geeigneten entfernten Berechnungsvorrichtungen.
  • Die entfernte Berechnungsvorrichtung 916 kann beispielsweise ein Mobiltelefon, ein persönlicher digitaler Assistent (PDA) oder ein tragbarer Computer für allgemeine Zwecke sein. Die entfernte drahtlose Berechnungsvorrichtung 916 enthält eine Anzeige 918 zum Anzeigen von Bildschirmen oder Seiten von Information, einen entfernten drahtlosen Browser 920 und Navigationstasten 922 und 924. Der entfernte drahtlose Browser 920 ist normalerweise ein Anwendungsprogramm, das auf der entfernten Berechnungsvorrichtung 916 ausführt. Der entfernte drahtlose Browser 920 stellt die Bildschirme oder Seiten von Information zur Verfügung, um auf der Anzeige 918 angezeigt zu werden. Die Navigationstasten 922 und 924 lassen zu, dass ein Anwender durch Menüs oder Listen navigiert oder Auswahlen aus diesen durchführt, die auf der Anzeige 918 durch den entfernten drahtlosen Browser 920 angezeigt werden. Die entfernte drahtlose Berechnungsvorrichtung 916 kann auch eine alphanumerische Tastatur (nicht gezeigt) enthalten, die zulässt, dass ein Anwender alphanumerische Information eingibt, obwohl eine solche nicht nötig ist, da alphanumerische Information auch unter Verwendung eines Wählbildschirms eingegeben werden kann, der auf der Anzeige 918 angezeigt ist, wobei Auswahlen unter Verwendung der Navigationstasten 922 und 924 durchgeführt werden. Durch Interagieren mit dem entfernten drahtlosen Browser 920 kann ein Anwender auf Information zugreifen, die auf dem Netzwerk 906 lokalisiert ist. Gemäß der Erfindung gibt es sichere Sessions zwischen wenigstens über den drahtlosen Abschnitt 904, nämlich zwischen dem entfernten drahtlosen Browser 920 und dem Netzwerk-Gateway 908. Wie es oben angegeben ist, können diese sichere Sessions durch das Trägernetzwerk 914 sogar auf Einweg-Kanälen zur Verfügung gestellt werden.
  • Typischerweise wird der drahtlose Abschnitt 904 eine Vielzahl von entfernten drahtlosen Browsern 920 enthalten, von welchen jeder auf einer anderen entfernten Berechnungsvorrichtung ausführt. Die Konfiguration und andere Information, die in dem Kontoinformationsspeicherbereich 910 gespeichert sind, können Servicebeschränkungen, Sicherheitsbeschränkungen, Präferenzinformation, Bildschirmkonfigurationsinformation und ähnliches für jeden der entfernten drahtlosen Browser 920 speichern. Der Kontoinformationsspeicherbereich 910 kann auch Daten oder Seiten von Daten speichern, die für die entfernten drahtlosen Browser 920 von Interesse sind. Die gespeicherten Daten oder Seiten können als Cash von Information arbeiten, die zuvor von dem Netzwerk 906 angefordert ist, oder können als Informationsserver innerhalb des Netzwerk-Gateways 908 arbeiten. Beispielsweise können als Informationsserver die Speicherseiten Seiten darstellen, um durch die entfernten drahtlosen Browser angezeigt zu werden.
  • 10A ist ein Blockdiagramm eines Netzwerk-Gateways 1000, das zur Verwendung bei dem in 9 dargestellten repräsentativen Kommunikationssystem 900 geeignet ist. Das Netzwerk-Gateway 1000 kann beispielsweise das in 9 dargestellte Netzwerk-Gateway 908 darstellen, das typischerweise ein Servercomputer ist. Zum Vermeiden eines Verdunkelns von Aspekten der vorliegenden Erfindung werden wohlbekannte Verfahren, Prozeduren, Komponenten und Schaltkreise im Netzwerk-Gateway 1000 nicht detailliert beschrieben.
  • Das Netzwerk-Gateway 1000 enthält eine Anwenderdatagrammprotokoll-(UDP = User Datagram Protocol)-Schnittstelle 1002, die mit dem Trägernetzwerk 914 koppelt, eine HTTP-Schnittstelle 1004, die mit dem Netzwerk 906 koppelt, und ein Servermodul 1006, das zwischen der UDP-Schnittstelle 1002 und der HTTP-Schnittstelle 1004 koppelt. Das Servermodul 1006 führt eine herkömmliche Serverarbeitungsübergabe sowie eine Protokollumwandlungsverarbeitung durch. Insbesondere enthält die Protokollumwandlungsverarbeitung eine Protokollumwandlung zwischen UDP und HTTP. Das Servermodul 1006 führt auch die zu sicheren Sessions gehörende Verarbeitung durch, die oben in Bezug auf die 4 und 5 beschrieben ist. Weiterhin enthält der Proxyserver 1000, um das Servermodul 1006 bei seiner Verarbeitung zu unterstützen, einen Direktzugriffsspeicher (RAM) 1008 und einen Nurlesespeicher (ROM) 1010. Unter anderen wird der RAM 1008 Vorrichtungsidentifizierer, Teilnehmeridentifizierer, Konfigurationsinformation, Sicherheitsinformation und andere Umwandlungsinformation speichern. Bei einem Ausführungsbeispiel wird solche Infor mation im RAM 1010 als Datenbank gespeichert. Ebenso kann der RAM 1010 den in 9 dargestellten Kontoinformationsspeicherbereich 910 darstellen.
  • 10B ist ein Blockdiagramm einer mobilen Vorrichtung 1050, die zur Verwendung mit dem in 9 dargestellten repräsentativen Kommunikationssystem 900 geeignet ist. Die mobile Vorrichtung 1050 kann beispielsweise der entfernten Berechnungsvorrichtung 916 entsprechen, die den in 9 dargestellten entfernten drahtlosen Browser 920 betreibt.
  • Die mobile Vorrichtung 1050 enthält eine UDP-Schnittstelle 1052, die mit dem Trägernetzwerk 914 über einen RF-Transceiver 1053 koppelt, um ankommende und abgehende Signale zu empfangen. Ein Vorrichtungsidentifizierer-(ID)-Speicher 1054 führt einen Vorrichtungs-ID zur UDP-Schnittstelle 1052 zu. Der Vorrichtungs-ID identifiziert einen spezifischen Code, der zu einer bestimmten mobilen Vorrichtung 1050 gehört. Zusätzlich enthält die mobile Vorrichtung 1050 ein Clientmodul 1056, das viele der Verarbeitungsaufgaben durchführt, die durch die mobile Vorrichtung 1050 durchgeführt werden, einschließlich eines Einrichtens einer Kommunikationssession mit dem Trägernetzwerk 1014 und dem Netzwerk-Gateway 908, eines Anforderns und eines Empfangens von Daten (z.B. von Seiten) von dem Netzwerk 906, eines Anzeigens von Information auf eine Anzeige der entfernten Berechnungsvorrichtung und eines Empfangens einer Anwendereingabe. Das Clientmodul 1056 ist mit der UDP-Schnittstelle 1052 für das Einrichten einer Kommunikationssession und das Anfordern und Empfangen von Daten gekoppelt. Das Clientmodul 1056 führt auch die zu der Übertragung und dem Empfang der von dem Gateway-Computer 908, 1000 übertragenen Nachrichten durch, einschließlich der oben in Bezug auf die 4 und 7 beschriebenen Verarbeitung für eine sichere Session. Das Clientmodul 1056 steuert den Anzeigetreiber 1058, um Information auf der Anzeige 1060 dem Anwender anzuzeigen. Zusätzlich ist das Clientmodul 1056 mit einer Eingabevorrichtung 1062, einem ROM 1064 und einem RAM 1066 gekoppelt. Vorzugsweise betreibt das Clientmodul 1056 unter anderem einen Netzwerkbrowser, wie beispielsweise einen Web-Browser für eine Markierungssprache für eine in der Hand gehaltene Vorrichtung (HDML = Handheld Device Markup Language). Die Eingabevorrichtung 1062 lässt zu, dass ein Anwender der mobilen Vorrichtung 1050 Daten eingibt und somit Auswahlen beim Steuern und Verwenden der mobilen Vorrichtung 1050 durchführt. Der ROM 1064 speichert vorbestimmte Daten und Verarbeitungsanweisungen für das Clientmodul 1056. Der RAM 1066 wird dazu verwendet, eine temporäre Daten speicherung für Sicherheitsinformation sowie für ankommende und abgehende Daten, die empfangen und gesendet werden, zur Verfügung zu stellen.
  • Obwohl Ausführungsbeispiele des Netzwerk-Gateways 1000 und der mobilen Vorrichtung 1050 in den 10A und 10B unter Verwendung von UDP- und HTTP-Protokollen beschrieben sind, sollte es erkannt werden, dass andere Protokolle und andere Protokollstapel zur Verfügung gestellt und verwendet werden können. Zusätzliche Details über den Aufbau und die Konstruktion des Netzwerk-Gateways 1000 und der mobilen Vorrichtung 1050 sind in der US-Patentanmeldung No. 08/570,210 mit dem Titel "METHOD AND ARCHITECTURE FOR AN INTERACTIVE TWO-WAY DATA COMMUNICATION NETWORK" von Alain Rossmann enthalten.
  • Die Vorteile der Erfindung sind zahlreich. Einige Vorteile, die Ausführungsbeispiele der Erfindung enthalten können, sind wie folgt. Ein Vorteil der Erfindung besteht darin, dass eine sichere Verbindung über einen Einwegkanal gebildet werden kann. Ein weiterer Vorteil der Erfindung besteht darin, dass der Aufbau einer gesicherten Verbindung schnell erreicht werden kann, um dadurch die Latenzzeit für solche Operationen im Vergleich mit herkömmlichen Ansätzen zu verbessern. Ein weiterer Vorteil der Erfindung besteht darin, dass ein Server mit der Option zusätzlicher sicherer Datenpfade zu einem Client (z.B. zu einer mobilen Vorrichtung) versehen ist, wodurch der Server einen oder beide der Pfade in Abhängigkeit von bestimmten Auswahlkriterien, einschließlich Kosten, Geschwindigkeit und Verfügbarkeit, verwenden kann.

Claims (10)

  1. Verfahren zum sicheren Übertragen von Daten zwischen einem Klienten (254, 256) und einem Server (252) über einen Schmalbandkanal (258, 262), wobei der Klient (254, 256) und der Server (252) nicht nur durch den Schmalbandkanal (258, 262) verbindbar sind, sondern auch durch einen Breitbandkanal (260, 264), wobei das Verfahren folgendes aufweist: Verbinden des Klienten (254, 256) und des Servers (252) über den Breitbandkanal (260, 264); Austauschen von Sicherheitsinformation zwischen dem Klienten (254, 256) und dem Server (252) über den Breitbandkanal (260, 264); Verschlüsseln von vom Server (252) zum Klienten (254, 256) zu übertragenden Daten unter Verwendung der Sicherheitsinformation beim Server (252); und Übertragen der verschlüsselten Daten vom Server (252) zum Klienten (254, 256) über den Schmalbandkanal (258, 262).
  2. Verfahren nach Anspruch 1, wobei die Verschlüsselung folgendes aufweist: Bilden eines serverseitigen Schmalbandkanal-Schlüsselblocks wenigstens teilweise basierend auf der Sicherheitsinformation beim Server (252); und Verschlüsseln der vom Server (252) zum Klienten (254, 256) zu übertragenden Daten unter Verwendung des serverseitigen Schmalbandkanal-Schlüsselblocks.
  3. Verfahren nach Anspruch 1 oder 2, wobei das Verfahren weiterhin folgendes aufweist: Bilden eines klientenseitigen Schmalbandkanal-Schlüsselblocks wenigstens teilweise basierend auf der Sicherheitsinformation beim Klienten (254, 256); Empfangen der verschlüsselten Daten, die vom Server (252) zum Klienten (254, 256) übertragen worden sind, über den Schmalbandkanal (258, 262); und Entschlüsseln der verschlüsselten Daten, die vom Server (252) über den Schmalbandkanal (258, 262) empfangen worden sind.
  4. Verfahren nach einem der vorangehenden Ansprüche, wobei das Verfahren weiterhin folgendes aufweist: Übertragen unterschiedlicher Teile der verschlüsselten Daten vom Server (252) zum Klienten (254, 256) über den Schmalbandkanal (258, 262) und den Breitbandkanal (260, 264).
  5. Verfahren nach Anspruch 4, wobei die Verschlüsselung folgendes aufweist: Bilden eines serverseitigen Schmalbandkanal-Schlüsselblocks wenigstens teilweise basierend auf der Sicherheitsinformation beim Server (252); Bilden eines serverseitigen Breitbandkanal-Schlüsselblocks wenigstens teilweise basierend auf der Sicherheitsinformation beim Server (252); Verschlüsseln des Teils der vom Server (252) zum Klienten (254, 256) über den Schmalbandkanal (258, 262) zu übertragenden Daten unter Verwendung des serverseitigen Schmalbandkanal-Schlüsselblocks; und Verschlüsseln des Teils der vom Server (252) zum Klienten (254, 256) über den Breitbandkanal (260, 264) zu übertragenden Daten unter Verwendung des serverseitigen Breitbandkanal-Schlüsselblocks.
  6. Verfahren zum sicheren Überfragen von Daten zwischen einem Klienten (254, 256) und einem Server (252) über einen Schmalbandkanal, wobei der Klient (254, 256) und der Server (252) nicht nur durch den Schmalbandkanal (258, 262) verbindbar sind, sondern auch durch einen Breitbandkanal (260, 264), wobei das Verfahren die folgenden Schritte aufweist: Verbinden des Klienten (254, 256) und des Servers (252) über den Breitbandkanal (260, 264); Austauschen von Sicherheitsinformation zwischen dem Klienten (254, 256) und dem Server (252) über den Breitbandkanal (260, 264); Signieren von vom Server (252) zum Klienten (254, 256) zu übertragenden Daten basierend auf der Sicherheitsinformation; Übertragen der signierten Daten vom Server (252) zum Klienten (254, 256) über den Schmalbandkanal (258, 262); und wobei wenigstens ein Teil des Schmalbandkanals (258, 262) und des Breitbandkanals (260, 264) drahtlos ist.
  7. Funkvorrichtung, die ein Netzwerk von Computern (906) über eine drahtlose Verbindung (904) verbinden kann, wobei die Funkvorrichtung (916) folgendes aufweist: einen Anzeigebildschirm (918), der Graphiken und Text anzeigt; einen Nachrichtenpuffer, der eine Nachricht von einem Computer am Netzwerk von Computern temporär speichert, wobei die Nachricht eine damit verbundenes Dienstkennzeichen hat; eine Anwendung, die die vom Computer am Netzwerk von Computern empfangene Nachricht verwendet; und eine kryptographische Steuerung, die eine Verschlüsselung oder Signatur von abgehenden Nachrichten steuert und die Entschlüsselung oder Authentifizierung von ankommenden Nachrichten steuert, wobei die kryptographische Steuerung arbeitet, um eine sichere Verbindung, über die sie die ankommenden Nachrichten empfängt, durch Verwenden eines Einwegkanals aufzubauen, wobei ein dazugehöriger Zweiwegekanal verwendet wird, um Sicherheitsinformation auszutauschen, die zum Aufbauen der sicheren Verbindung über den Einwegkanal nötig ist.
  8. Computerlesbares Medium, das einen Computerprogrammcode zum sicheren Übertragen von Daten zwischen einem Klienten (254, 256) und einem Server (252) über einen Schmalbandkanal (258, 262) enthält, wobei der Klient (254, 256) und der Server (252) nicht nur durch den Schmalbandkanal (258, 262) verbindbar sind, sondern auch durch einen Breitbandkanal (260, 264), wobei das computerlesbare Medium folgendes aufweist: einen Computerprogrammcode zum Verbinden des Klienten (254, 256) und des Servers (252) über den Breitbandkanal (260, 264); eine Computerprogrammcode zum Austauschen von Sicherheitsinformation zwischen dem Klienten (254, 256) und dem Server (252) über den Breitbandkanal (260, 264); einen Computerprogrammcode zum kryptographischen Verarbeiten von zu übertragenden Daten unter Verwendung der Sicherheitsinformation; und einen Computerprogrammcode zum Übertragen der kryptographisch verarbeiteten Daten vom Server (252) zum Klienten (254, 256) über den Schmalbandkanal (258, 262).
  9. Computerlesbares Medium nach Anspruch 8, wobei der Computerprogrammcode zum kryptographischen Verarbeiten folgendes aufweist: einen Computerprogrammcode zum Bilden eines Schmalbandkanal-Schlüsselblocks wenigstens teilweise basierend auf der Sicherheitsinformation; und einen Computerprogrammcode zum Verschlüsseln der zu übertragenden Daten unter Verwendung des Schmalbandkanal-Schlüsselblocks.
  10. Computerlesbares Medium mit einem Computerprogrammcode zum Übertragen von Daten auf sichere Weise von einem Server (252) zu einem Klienten (254, 256), wobei das computerlesbare Medium folgendes aufweist: einen Computerprogrammcode zum Austauschen von Sicherheitsinformation zwischen dem Klienten (254, 256) und dem Server (252) über einen ersten drahtlosen Kanal zwischen dem Klienten (254, 256) und dem Server (252); einen Computerprogrammcode zum kryptographischen Verarbeiten von vom Server (252) zum Klienten (254, 256) zu übertragenden Daten basierend auf der Sicherheitsinformation; und einen Computerprogrammcode zum Übertragen der kryptographisch verarbeiteten Daten vom Server (252) zum Klienten (254, 256) über einen zweiten drahtlosen Kanal zwischen dem Klienten (254, 256) und dem Server (252), der Daten vom Server (252) zum Klienten (254, 256) trägt.
DE69924573T 1998-09-21 1999-09-21 Verfahren und Anordnung zur Herstellung sicherer Verbindungen über Einwegskanäle Expired - Lifetime DE69924573T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US158317 1998-09-21
US09/158,317 US6317831B1 (en) 1998-09-21 1998-09-21 Method and apparatus for establishing a secure connection over a one-way data path

Publications (2)

Publication Number Publication Date
DE69924573D1 DE69924573D1 (de) 2005-05-12
DE69924573T2 true DE69924573T2 (de) 2005-10-06

Family

ID=22567565

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69924573T Expired - Lifetime DE69924573T2 (de) 1998-09-21 1999-09-21 Verfahren und Anordnung zur Herstellung sicherer Verbindungen über Einwegskanäle

Country Status (7)

Country Link
US (1) US6317831B1 (de)
EP (1) EP0989712B1 (de)
JP (1) JP2000138665A (de)
KR (1) KR20000028706A (de)
CN (1) CN1249586A (de)
AT (1) ATE292866T1 (de)
DE (1) DE69924573T2 (de)

Families Citing this family (283)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6065120A (en) * 1997-12-09 2000-05-16 Phone.Com, Inc. Method and system for self-provisioning a rendezvous to ensure secure access to information in a database from multiple devices
US6721288B1 (en) * 1998-09-16 2004-04-13 Openwave Systems Inc. Wireless mobile devices having improved operation during network unavailability
EP1147640A1 (de) * 1999-02-04 2001-10-24 Apion Telecoms Limited Ein kommunikationsgateway
US6799297B2 (en) * 1999-05-10 2004-09-28 Hewlett-Packard Development Company, Lp. Form printing solutions web server using a java vending machine for pulling a jetsend form print job from a server and outputting to a device
FI108694B (fi) * 1999-05-24 2002-02-28 Nokia Oyj Yhteyskahva
NO311000B1 (no) * 1999-06-10 2001-09-24 Ericsson Telefon Ab L M Sikkerhetslosning for mobile telefoner med WAP
US6584567B1 (en) * 1999-06-30 2003-06-24 International Business Machines Corporation Dynamic connection to multiple origin servers in a transcoding proxy
JP2001053785A (ja) * 1999-08-09 2001-02-23 Mitsubishi Materials Corp 情報送信装置、情報保管装置、情報受信装置、及びその使用方法ならびにその記録媒体
WO2001013255A2 (en) 1999-08-13 2001-02-22 Pixo, Inc. Displaying and traversing links in character array
US6526434B1 (en) * 1999-08-24 2003-02-25 International Business Machines Corporation System and method for efficient transfer of data blocks from client to server
US6775687B1 (en) * 1999-10-12 2004-08-10 International Business Machines Corporation Exchanging supplemental information fields between a client and a server
US6834351B1 (en) * 1999-10-29 2004-12-21 Gateway, Inc. Secure information handling system
US6675219B1 (en) * 1999-11-01 2004-01-06 Nokia Corporation Technique for improving throughput of a gateway interface
US6760601B1 (en) * 1999-11-29 2004-07-06 Nokia Corporation Apparatus for providing information services to a telecommunication device user
US6553240B1 (en) * 1999-12-30 2003-04-22 Nokia Corporation Print option for WAP browsers
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US7624172B1 (en) * 2000-03-17 2009-11-24 Aol Llc State change alerts mechanism
US9736209B2 (en) 2000-03-17 2017-08-15 Facebook, Inc. State change alerts mechanism
JP2001290513A (ja) * 2000-04-10 2001-10-19 Toyota Motor Corp 制御パラメータの提供方法、サーバ装置及び車両制御システム
EP1275231A1 (de) 2000-04-14 2003-01-15 Simojoki, Sampo Verfahren und terminal in einem televerbindungsnetzwerk, televerbindungsnetzwerk und verbindungsprodukt
US6754710B1 (en) * 2000-05-08 2004-06-22 Nortel Networks Limited Remote control of computer network activity
GB0014431D0 (en) * 2000-06-13 2000-08-09 Red M Communications Ltd Wireless network
CN1207876C (zh) 2000-06-15 2005-06-22 国际商业机器公司 短消息网关、向移动电话提供信息服务的系统和方法
WO2002013437A2 (en) * 2000-08-04 2002-02-14 Xtradyne Technologies Ag Method and system for session based authorization and access control for networked application objects
US7035281B1 (en) * 2000-09-13 2006-04-25 Wp Media, Inc. Wireless provisioning device
DE10049146A1 (de) * 2000-10-04 2002-04-11 Orga Kartensysteme Gmbh Informationsübertragung über den Signalisierungskanal eines Mobilfunknetzes
US7684786B2 (en) * 2003-08-26 2010-03-23 Nokia Corporation Method and system for establishing a connection between network elements
FR2817107A1 (fr) * 2000-11-17 2002-05-24 Mercury Technologies Sarl Signature electronique sur le reseau gsm/gprs et umts
FR2817108A1 (fr) * 2000-11-17 2002-05-24 Mercury Technologies Sarl Paiements electroniques sur le reseau gsm/gprs et umts
US7254237B1 (en) * 2001-01-12 2007-08-07 Slt Logic, Llc System and method for establishing a secure connection
US7127742B2 (en) * 2001-01-24 2006-10-24 Microsoft Corporation Establishing a secure connection with a private corporate network over a public network
US7353380B2 (en) * 2001-02-12 2008-04-01 Aventail, Llc, A Subsidiary Of Sonicwall, Inc. Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols
US7360075B2 (en) * 2001-02-12 2008-04-15 Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols
US7383329B2 (en) 2001-02-13 2008-06-03 Aventail, Llc Distributed cache for state transfer operations
EP1237332B1 (de) * 2001-03-02 2003-11-05 Hewlett-Packard Company Bereitstellung von Diensten für tragbare Informationsgeräte über ein Informationstechnologienetz
US7174368B2 (en) * 2001-03-27 2007-02-06 Xante Corporation Encrypted e-mail reader and responder system, method, and computer program product
KR20040034612A (ko) * 2001-06-08 2004-04-28 포스패스 인코포레이티드 무선 장치들과의 양방향 개시 데이터 통신을 위한 방법 및시스템
US7028179B2 (en) * 2001-07-03 2006-04-11 Intel Corporation Apparatus and method for secure, automated response to distributed denial of service attacks
US7363376B2 (en) * 2001-07-31 2008-04-22 Arraycomm Llc Method and apparatus for generating an identifier to facilitate delivery of enhanced data services in a mobile computing environment
DE10138718A1 (de) * 2001-08-07 2003-02-20 Siemens Ag Verfahren zur Übermittlung von Chiffrierungsinformationen an Teilnehmer einer Multicast-Gruppe
US8195950B2 (en) * 2001-08-15 2012-06-05 Optimum Path LLC Secure and seamless wireless public domain wide area network and method of using the same
EP1284568A1 (de) * 2001-08-17 2003-02-19 Siemens Aktiengesellschaft Verfahren und Datenverarbeitungsvorrichtung zum Übertragen von Daten über verschiedene Schittstellen
US6658260B2 (en) 2001-09-05 2003-12-02 Telecommunication Systems, Inc. Inter-carrier short messaging service providing phone number only experience
ITFI20010199A1 (it) 2001-10-22 2003-04-22 Riccardo Vieri Sistema e metodo per trasformare in voce comunicazioni testuali ed inviarle con una connessione internet a qualsiasi apparato telefonico
KR100412041B1 (ko) * 2002-01-04 2003-12-24 삼성전자주식회사 시큐러티 프로토콜의 기능을 수행하는 홈 게이트웨이 및그 방법
US7299349B2 (en) * 2002-01-31 2007-11-20 Microsoft Corporation Secure end-to-end notification
US7657765B2 (en) * 2002-02-19 2010-02-02 Hewlett-Packard Development Company, L.P. Power saving features for computing systems
US7475248B2 (en) 2002-04-29 2009-01-06 International Business Machines Corporation Enhanced message security
JP4218256B2 (ja) * 2002-05-02 2009-02-04 富士ゼロックス株式会社 データ転送方法及びシステム
US7778606B2 (en) * 2002-05-17 2010-08-17 Network Security Technologies, Inc. Method and system for wireless intrusion detection
US7116995B2 (en) * 2002-05-31 2006-10-03 Nokia Corporation System and method for operating intravendor and intervendor messaging systems
AU2003276819A1 (en) * 2002-06-13 2003-12-31 Engedi Technologies, Inc. Out-of-band remote management station
EP1530769A1 (de) * 2002-07-31 2005-05-18 Truecontext Corporation Kontextabhängiges computersystem
US7581096B2 (en) * 2002-08-30 2009-08-25 Xerox Corporation Method, apparatus, and program product for automatically provisioning secure network elements
US7386889B2 (en) * 2002-11-18 2008-06-10 Trusted Network Technologies, Inc. System and method for intrusion prevention in a communications network
US7640306B2 (en) 2002-11-18 2009-12-29 Aol Llc Reconfiguring an electronic message to effect an enhanced notification
US7549159B2 (en) * 2004-05-10 2009-06-16 Liquidware Labs, Inc. System, apparatuses, methods and computer-readable media for determining the security status of a computer before establishing connection thereto
US7591001B2 (en) * 2004-05-14 2009-09-15 Liquidware Labs, Inc. System, apparatuses, methods and computer-readable media for determining the security status of a computer before establishing a network connection
US7660980B2 (en) * 2002-11-18 2010-02-09 Liquidware Labs, Inc. Establishing secure TCP/IP communications using embedded IDs
US7386619B1 (en) * 2003-01-06 2008-06-10 Slt Logic, Llc System and method for allocating communications to processors in a multiprocessor system
US20040203739A1 (en) * 2003-01-22 2004-10-14 Jun Li Mobile communication system
US20040168081A1 (en) * 2003-02-20 2004-08-26 Microsoft Corporation Apparatus and method simplifying an encrypted network
US7392378B1 (en) * 2003-03-19 2008-06-24 Verizon Corporate Services Group Inc. Method and apparatus for routing data traffic in a cryptographically-protected network
US7441267B1 (en) * 2003-03-19 2008-10-21 Bbn Technologies Corp. Method and apparatus for controlling the flow of data across a network interface
US7603710B2 (en) 2003-04-03 2009-10-13 Network Security Technologies, Inc. Method and system for detecting characteristics of a wireless network
US7853250B2 (en) 2003-04-03 2010-12-14 Network Security Technologies, Inc. Wireless intrusion detection system and method
US7426271B2 (en) * 2003-04-25 2008-09-16 Palo Alto Research Center Incorporated System and method for establishing secondary channels
US7669134B1 (en) 2003-05-02 2010-02-23 Apple Inc. Method and apparatus for displaying information during an instant messaging session
WO2004105297A2 (en) 2003-05-19 2004-12-02 Network Security Technologies, Inc. Method and system for providing secure one-way transfer of data
US7840646B2 (en) * 2003-10-08 2010-11-23 Yahoo! Inc. Learned upload time estimate module
US7797529B2 (en) * 2003-11-10 2010-09-14 Yahoo! Inc. Upload security scheme
US7765309B2 (en) * 2004-01-26 2010-07-27 Optimum Path LLC Wireless provisioning device
US8261070B2 (en) * 2004-04-23 2012-09-04 The Boeing Company Authentication of untrusted gateway without disclosure of private information
US20060002334A1 (en) * 2004-06-21 2006-01-05 Washburn E R Iii WiFi network communication security system and method
US7660420B1 (en) * 2004-09-08 2010-02-09 Stryker Corporation Wireless device synchronization
US8799242B2 (en) 2004-10-08 2014-08-05 Truecontext Corporation Distributed scalable policy based content management
US8090844B2 (en) * 2004-10-08 2012-01-03 Truecontext Corporation Content management across shared, mobile file systems
WO2006077481A1 (en) * 2005-01-19 2006-07-27 Truecontext Corporation Policy-driven mobile forms applications
KR100615278B1 (ko) * 2005-05-04 2006-08-25 유엔젤주식회사 발신자 식별 영상의 표시 방법
US8041832B2 (en) * 2005-05-05 2011-10-18 Verizon Services Corp. Network data distribution system and method
CN100450019C (zh) * 2005-07-08 2009-01-07 技嘉科技股份有限公司 无线局域网络的安全设定方法
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
US20070234050A1 (en) * 2006-04-04 2007-10-04 Tomasz Hillar Communications system and method
US8102863B1 (en) * 2006-06-27 2012-01-24 Qurio Holdings, Inc. High-speed WAN to wireless LAN gateway
EP2035948B1 (de) * 2006-06-27 2016-04-13 Waterfall Security Solutions Ltd. Unidirektionale sichere verbindungen zu und von einem sicherheitsengines
IL177756A (en) * 2006-08-29 2014-11-30 Lior Frenkel Encryption-based protection against attacks
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
JP5298391B2 (ja) * 2006-09-18 2013-09-25 マーベル インターナショナル リミテッド 多数のデバイス間のアドホックネットワーク構築
KR100753843B1 (ko) 2006-09-29 2007-08-31 한국전자통신연구원 양 방향 채널 환경에서의 키 교환 프로토콜을 단 방향 채널환경에서의 키 교환 프로토콜로 변환하는 방법
US8687804B2 (en) * 2006-11-01 2014-04-01 Microsoft Corporation Separating control and data operations to support secured data transfers
US20080137860A1 (en) * 2006-12-11 2008-06-12 William Bradford Silvernail Discoverable secure mobile WiFi application with non-broadcast SSID
IL180020A (en) * 2006-12-12 2013-03-24 Waterfall Security Solutions Ltd Encryption -and decryption-enabled interfaces
IL180748A (en) * 2007-01-16 2013-03-24 Waterfall Security Solutions Ltd Secure archive
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8068415B2 (en) * 2007-04-18 2011-11-29 Owl Computing Technologies, Inc. Secure one-way data transfer using communication interface circuitry
US7649452B2 (en) * 2007-06-29 2010-01-19 Waterfall Solutions Ltd. Protection of control networks using a one-way link
US7992209B1 (en) 2007-07-19 2011-08-02 Owl Computing Technologies, Inc. Bilateral communication using multiple one-way data links
CN101378390B (zh) * 2007-08-27 2012-04-18 神乎科技股份有限公司 一种分布式运算的推拉式信息服务系统以及方法
JP4405575B2 (ja) * 2007-09-28 2010-01-27 東芝ソリューション株式会社 暗号管理装置、復号管理装置、およびプログラム
US9053089B2 (en) 2007-10-02 2015-06-09 Apple Inc. Part-of-speech tagging using latent analogy
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US7961878B2 (en) * 2007-10-15 2011-06-14 Adobe Systems Incorporated Imparting cryptographic information in network communications
US8223205B2 (en) 2007-10-24 2012-07-17 Waterfall Solutions Ltd. Secure implementation of network-based sensors
US8620662B2 (en) 2007-11-20 2013-12-31 Apple Inc. Context-aware unit selection
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8327272B2 (en) 2008-01-06 2012-12-04 Apple Inc. Portable multifunction device, method, and graphical user interface for viewing and managing electronic calendars
US8065143B2 (en) 2008-02-22 2011-11-22 Apple Inc. Providing text input using speech data and non-speech data
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8464150B2 (en) 2008-06-07 2013-06-11 Apple Inc. Automatic language identification for dynamic text processing
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
CN101662765B (zh) * 2008-08-29 2013-08-07 深圳富泰宏精密工业有限公司 手机短信保密系统及方法
US8768702B2 (en) 2008-09-05 2014-07-01 Apple Inc. Multi-tiered voice feedback in an electronic device
US8898568B2 (en) 2008-09-09 2014-11-25 Apple Inc. Audio user interface
US8352272B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for text to speech synthesis
US8396714B2 (en) 2008-09-29 2013-03-12 Apple Inc. Systems and methods for concatenation of words in text to speech synthesis
US8352268B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for selective rate of speech and speech preferences for text to speech synthesis
US8712776B2 (en) 2008-09-29 2014-04-29 Apple Inc. Systems and methods for selective text to speech synthesis
US8583418B2 (en) 2008-09-29 2013-11-12 Apple Inc. Systems and methods of detecting language and natural language strings for text to speech synthesis
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
JP5590803B2 (ja) * 2009-01-13 2014-09-17 キヤノン株式会社 通信装置及び通信方法
US8380507B2 (en) 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10540976B2 (en) 2009-06-05 2020-01-21 Apple Inc. Contextual voice commands
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9092069B2 (en) * 2009-06-16 2015-07-28 Intel Corporation Customizable and predictive dictionary
US20100318656A1 (en) * 2009-06-16 2010-12-16 Intel Corporation Multiple-channel, short-range networking between wireless devices
US8776177B2 (en) * 2009-06-16 2014-07-08 Intel Corporation Dynamic content preference and behavior sharing between computing devices
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8682649B2 (en) 2009-11-12 2014-03-25 Apple Inc. Sentiment prediction from textual data
US8600743B2 (en) 2010-01-06 2013-12-03 Apple Inc. Noise profile determination for voice-related feature
US8311838B2 (en) 2010-01-13 2012-11-13 Apple Inc. Devices and methods for identifying a prompt corresponding to a voice input in a sequence of prompts
US8381107B2 (en) 2010-01-13 2013-02-19 Apple Inc. Adaptive audio feedback system and method
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8639516B2 (en) 2010-06-04 2014-01-28 Apple Inc. User-specific noise suppression for voice quality improvements
US8713021B2 (en) 2010-07-07 2014-04-29 Apple Inc. Unsupervised document clustering using latent semantic density analysis
US8719006B2 (en) 2010-08-27 2014-05-06 Apple Inc. Combined statistical and rule-based part-of-speech tagging for text-to-speech synthesis
US8719014B2 (en) 2010-09-27 2014-05-06 Apple Inc. Electronic device with text error correction based on voice recognition data
US10515147B2 (en) 2010-12-22 2019-12-24 Apple Inc. Using statistical language models for contextual lookup
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
CN102025474B (zh) * 2010-12-30 2013-04-03 北京佳讯飞鸿电气股份有限公司 一种网络数据传输方法
US8781836B2 (en) 2011-02-22 2014-07-15 Apple Inc. Hearing assistance system for providing consistent human speech
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US8566922B2 (en) * 2011-05-25 2013-10-22 Barry W. Hargis System for isolating a secured data communication network
US8897344B2 (en) 2011-05-31 2014-11-25 Facebook, Inc. Establishing communication
US10672399B2 (en) 2011-06-03 2020-06-02 Apple Inc. Switching between text data and audio data based on a mapping
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8812294B2 (en) 2011-06-21 2014-08-19 Apple Inc. Translating phrases from one language into another using an order-based set of declarative rules
US8706472B2 (en) 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US8762156B2 (en) 2011-09-28 2014-06-24 Apple Inc. Speech recognition repair using contextual information
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US8775442B2 (en) 2012-05-15 2014-07-08 Apple Inc. Semantic search using a single-source semantic model
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US10019994B2 (en) 2012-06-08 2018-07-10 Apple Inc. Systems and methods for recognizing textual identifiers within a plurality of words
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9736121B2 (en) * 2012-07-16 2017-08-15 Owl Cyber Defense Solutions, Llc File manifest filter for unidirectional transfer of files
US9635037B2 (en) 2012-09-06 2017-04-25 Waterfall Security Solutions Ltd. Remote control of secure installations
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR101334240B1 (ko) 2012-09-20 2013-11-28 한국전력공사 일방향 데이터 전송 시스템
US8935167B2 (en) 2012-09-25 2015-01-13 Apple Inc. Exemplar-based latent perceptual modeling for automatic speech recognition
KR20230137475A (ko) 2013-02-07 2023-10-04 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9977779B2 (en) 2013-03-14 2018-05-22 Apple Inc. Automatic supplementation of word correction dictionaries
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10642574B2 (en) 2013-03-14 2020-05-05 Apple Inc. Device, method, and graphical user interface for outputting captions
US10572476B2 (en) 2013-03-14 2020-02-25 Apple Inc. Refining a search based on schedule items
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US9733821B2 (en) 2013-03-14 2017-08-15 Apple Inc. Voice control to diagnose inadvertent activation of accessibility features
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9922642B2 (en) 2013-03-15 2018-03-20 Apple Inc. Training an at least partial voice command system
US11151899B2 (en) 2013-03-15 2021-10-19 Apple Inc. User training by intelligent digital assistant
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014168730A2 (en) 2013-03-15 2014-10-16 Apple Inc. Context-sensitive handling of interruptions
KR101959826B1 (ko) * 2013-03-15 2019-03-19 페이스북, 인크. 통신의 확립
US9419975B2 (en) 2013-04-22 2016-08-16 Waterfall Security Solutions Ltd. Bi-directional communication over a one-way link
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3937002A1 (de) 2013-06-09 2022-01-12 Apple Inc. Vorrichtung, verfahren und grafische benutzeroberfläche für gesprächspersistenz über zwei oder mehrere instanzen eines digitalen assistenten
KR101809808B1 (ko) 2013-06-13 2017-12-15 애플 인크. 음성 명령에 의해 개시되는 긴급 전화를 걸기 위한 시스템 및 방법
JP6163266B2 (ja) 2013-08-06 2017-07-12 アップル インコーポレイテッド リモート機器からの作動に基づくスマート応答の自動作動
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
EP3480811A1 (de) 2014-05-30 2019-05-08 Apple Inc. Verfahren zur eingabe von mehreren befehlen mit einer einzigen äusserung
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
IL235175A (en) 2014-10-19 2017-08-31 Frenkel Lior Secure desktop remote control
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
WO2016116890A1 (en) * 2015-01-22 2016-07-28 Visa International Service Association Method and system for establishing a secure communication tunnel
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US10193857B2 (en) * 2015-06-30 2019-01-29 The United States Of America, As Represented By The Secretary Of The Navy Secure unrestricted network for innovation
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
IL250010B (en) 2016-02-14 2020-04-30 Waterfall Security Solutions Ltd Secure connection with protected facilities
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
DE102016118998B4 (de) * 2016-10-06 2023-09-28 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Kommunizieren und Kommunikationsmodul für ein Kraftfahrzeug
CN106789919B (zh) * 2016-11-25 2021-01-22 上海交通大学 一种自适应多频段协同安全传输方法及装置
US10505909B2 (en) * 2016-12-21 2019-12-10 Intel Corporation Dual physical channel secure connection
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
CN110166410B (zh) * 2018-02-13 2021-11-02 海能达通信股份有限公司 一种安全传输数据的方法、终端及多模通信终端
CN111837423A (zh) * 2018-03-13 2020-10-27 松下知识产权经营株式会社 设备管理系统、设备以及控制方法
IL268485B (en) 2018-08-13 2022-04-01 Waterfall Security Solutions Ltd Automatic security response using one-way links
CN109660554B (zh) * 2019-01-07 2022-03-25 北京航天晨信科技有限责任公司 一体化通信单元的涉密数据传输设备
US11277381B2 (en) * 2020-04-30 2022-03-15 Kyndryl, Inc. Multi-channel based just-in-time firewall control
CN111818517B (zh) * 2020-06-16 2022-02-11 郑州信大捷安信息技术股份有限公司 多通道安全通信模组、通信系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0704785B1 (de) * 1994-09-30 2003-11-19 Mitsubishi Corporation Datenurheberrechtsverwaltungssystem
GB9516813D0 (en) * 1995-08-16 1995-10-18 Plessey Telecomm Data delivery services
US5657390A (en) * 1995-08-25 1997-08-12 Netscape Communications Corporation Secure socket layer application program apparatus and method
US6138158A (en) 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems
US6374355B1 (en) * 1998-07-31 2002-04-16 Lucent Technologies Inc. Method for securing over-the-air communication in a wireless system

Also Published As

Publication number Publication date
EP0989712A2 (de) 2000-03-29
JP2000138665A (ja) 2000-05-16
ATE292866T1 (de) 2005-04-15
DE69924573D1 (de) 2005-05-12
CN1249586A (zh) 2000-04-05
US6317831B1 (en) 2001-11-13
KR20000028706A (ko) 2000-05-25
EP0989712B1 (de) 2005-04-06
EP0989712A3 (de) 2002-04-17

Similar Documents

Publication Publication Date Title
DE69924573T2 (de) Verfahren und Anordnung zur Herstellung sicherer Verbindungen über Einwegskanäle
DE60026838T2 (de) Dynamische verbindung zu mehreren quellen-servern in einem transcodierungs-proxy
DE60114220T2 (de) System und verfahren zur implementierung des verbesserten transportschicht-sicherheitsprotokolls
DE69923954T2 (de) Kommunikationssystem und verfahren
DE602004010703T2 (de) Eine persistente und zuverlässige sitzung, die neztwerkkomponenten unter verwendung eines verkapselungsprotokolls sicher durchläuft
DE19823666B4 (de) Verschlüsselungs-Kommunikationssystem
EP1595420B1 (de) Verfahren zum bilden und verteilen kryptographischer schlüssel in einem mobilfunksystem und entsprechendes mobilfunksystem
DE60219222T2 (de) Mehrstufiges System und Verfahren zur Verarbeitung von kodierten Nachrichten
DE60222904T2 (de) System und verfahren zum datenzugriff für ein mobiles telekommunikationsendgerät
DE69727641T2 (de) Verfahren zum Senden einer sicheren Botschaft in einem Telekommunikationssystem
DE60017292T2 (de) Authentifizierungsverfahren zwischen einem Teilnehmer und einem Dienstleister, der durch einen Netzbetreiber erreichbar ist, mittels Bereitstellung eines gesicherten Kanals
DE60309576T2 (de) Mobiler zugriff auf LDAP-Server
DE60201522T2 (de) Ermöglichen legales abfangen von ip-verbindungen
DE112006000618T5 (de) System und Verfahren zur Verteilung von Schlüsseln in einem drahtlosen Netzwerk
DE69914340T2 (de) System und verfahren zum unterhalten einer virtuellen verbindung zu einem netzknoten
DE102009037469A1 (de) Aktualisierung und Verteilung von Verschlüsselungsschlüsseln
EP1289227B1 (de) Verfahren, System und Rechner zum Aushandeln einer Sicherheitsbeziehung auf der Anwendungsschicht
EP1982494B1 (de) Verfahren, vorrichtung und computerprogrammprodukt zum verschlüsselten übertragen von mediendaten zwischen dem medienserver und dem teilnehmergerät
EP1283618A2 (de) Verfahren zur Übermittlung von Chiffrierungsinformationen an Teilnehmer einer Multicast-Gruppe
DE10240875B4 (de) Sicheres Referenzdrucken unter Verwendung persönlicher elektronischer Geräte
DE60219076T2 (de) Herunterladung eines applets in einem kommunikationssystem
DE10158739B4 (de) WAP-Browserfähiges Kommunikationssytem sowie Client und Server für ein solches Kommunikationssystem
EP2575385B1 (de) Verfahren zur Initialisierung und/oder Aktivierung wenigstens eines Nutzerkontos, zum Durchführen einer Transaktion, sowie Endgerät
EP1721235A1 (de) Kommunikationssystem und verfahren zur bereitstellung eines mobilen kommunikationsdienstes
EP1240794B1 (de) Verfahren zur Verschlüsselung von Daten und Telekommunikationsendgerät und Zugangsberechtigungskarte

Legal Events

Date Code Title Description
8364 No opposition during term of opposition