-
HINTERGRUND
-
Einzelhandelslösungen konzentrieren sich zunehmend auf die Kommunikation zwischen Peripheriegeräten und einem Kassensystem. Peripheriegeräte, die mit dem Kassensystem kommunizieren, können sensible Informationen übertragen, wie zum Beispiel Kreditkartendaten und/oder personenbezogene Informationen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
In den beigefügten Zeichnungen beziehen sich gleiche Nummerierungen auf gleiche Komponenten oder Blöcke, wobei:
-
1A eine Übersichtszeichnung eines Beispielkabels ist, das einen Steckverbinder und eine aktive Komponente für die sichere Datenübertragung zu einem Datenverarbeitungsgerät umfasst;
-
1B eine Übersichtszeichnung eines Beispielkabels mit einem zusätzlichen Steckverbinder und einer aktiven Komponente für die sichere Datenübertragung zwischen einem Peripheriegerät und einem Datenverarbeitungsgerät ist;
-
2 ein Kommunikationsdiagramm für eine Beispielkommunikation zwischen einem Datenverarbeitungsgerät und einem Peripheriegerät über ein Kabel mit einem Steckverbinder und einer aktiven Komponente ist;
-
3 ein Ablaufschema für ein Beispielverfahren zur Bestimmung der Kopfdaten und der Rahmendaten für die Verschlüsselung der Rahmendaten durch eine im Kabel integrierte aktive Komponente ist;
-
4 ein Ablaufschema für ein Beispielverfahren zur Identifizierung eines Datenverarbeitungsgeräts ist, welches mit einem Kabel für die Sicherheit kompatibel ist, Übermittlung eines für das Datenverarbeitungsgerät spezifischen Schlüssels an eine im Kabel integrierte aktive Komponente für die Verschlüsselung und Entschlüsselung sowie Bestimmung der Kopfdaten und Rahmendaten für die Verschlüsselung der Rahmendaten; und
-
5 eine Übersichtszeichnung eines Beispiel-Datenverarbeitungsgeräts mit einem Prozessor zur Identifizierung von Kopfdaten im Datenstrom, Verschlüsselung der mit den Kopfdaten verbundenen Rahmendaten durch Empfang eines für das Datenverarbeitungsgerät spezifischen Schlüssels und Übermittlung der verschlüsselten Rahmendaten ist.
-
DETAILLIERTE BESCHREIBUNG
-
Peripheriegeräte, die mit Kassensystemen kommunizieren, können sensible Informationen übertragen, die anfällig für Manipulationen und/oder Datenschutzprobleme sein können. Die Übertragung der sensiblen Informationen (d. h. Daten) zwischen verschiedenen Geräten kann unsicher sein. Zum Beispiel können Daten verschlüsselt werden, wenn sie auf Geräteebene empfangen werden, was es Personen ermöglichen kann, die über das Kabel übertragenen Daten zu manipulieren.
-
Zusätzlich ist es kostenintensiv, einen Verschlüsselungsschutz für jedes Gerät zur Verfügung zu stellen, da sich dadurch die Kosten der Komponenten und die Komplexität der Konstruktion erhöhen.
-
Zur Lösung dieser Probleme sehen die hier aufgezeigten Ausführungsbeispiele ein Kabel vor, das einen Steckverbinder für die Datenübertragung zu und von einem Datenverarbeitungsgerät umfasst. Zusätzlich umfasst das Kabel eine aktive Komponente, die mit dem Steckverbinder gekoppelt und in dem Kabel eingebettet ist. Die aktive Komponente soll mindestens eine der Funktionen der Verschlüsselung und Entschlüsselung der über das Kabel übertragenen Daten ausführen. Die Verschlüsselung und/oder Entschlüsselung auf Ebene des Kabels bietet einen sicheren Mechanismus für die Übertragung sensibler Daten zwischen verschiedenen Geräten. Darüber hinaus ermöglicht die Verschlüsselung und/oder Entschlüsselung auf Ebene des Kabels statt in jedem Gerät die Bewegung der Daten innerhalb eines Systems ohne höhere Kosten oder eine erhöhte Komplexität der Konstruktion. Außerdem schafft die Verschlüsselung und/oder Entschlüsselung innerhalb des Kabels eine einheitlichere Umsetzung des Schutzes über verschiedene Systeme hinweg.
-
In einer anderen Ausführungsform nutzt die aktive Komponente einen für das Datenverarbeitungsgerät spezifischen Schlüssel zur Ausführung von mindestens einer der Funktionen der Verschlüsselung und Entschlüsselung der über das Kabel übertragenen Daten. Die Nutzung eines für das Datenverarbeitungsgerät spezifischen Schlüssels verhindert einen unbefugten Austausch des Kabels, da das Datenverarbeitungsgerät die Vertrauenswürdigkeit des Kabels überprüfen kann. Das stellt eine zusätzliche Sicherheitsfunktion dar, um Manipulationen durch einen Austausch des Kabels zum Anfangen der sensiblen Daten zu verhindern.
-
In einer weiteren Ausführungsform bleibt die in dem Kabel eingebettete aktive Komponente passiv, bis sie den für das Datenverarbeitungsgerät spezifischen Schlüssel erhält. Wenn es passiv bleibt, führt das Kabel keine Verschlüsselung bzw. Entschlüsselung aus, bis es den Schlüssel erhält. Das ermöglicht es dem Datenverarbeitungsgerät, ein vertrauenswürdiges Gerät zu erkennen und den Schlüssel für die Verschlüsselung bzw. Entschlüsselung an das Kabel zu übergeben. Das bietet zusätzliche Sicherheit, da das Kabel keine Verschlüsselung bzw. Entschlüsselung ausführen kann, wenn es für den Betrieb mit einem anderen Datenverarbeitungsgerät in ein anderes System gebracht wird. Der Erhalt des spezifischen Schlüssels für das Datenverarbeitungsgerät dient der sicheren Kopplung des Kabels mit dem System.
-
Zusammenfassend bieten die hier aufgezeigten Ausführungsbeispiele einen sicheren Mechanismus für die Verschlüsselung und/oder Entschlüsselung sensibler Daten innerhalb eines Kabels für die Übertragung zwischen verschiedenen Geräten. Darüber hinaus bieten die hier aufgezeigten Ausführungsbeispiele eine standardmäßige Umsetzung für den Schutz über verschiedene Systeme hinweg.
-
Mit Bezug auf die Abbildungen ist 1A ein Blockdiagramm eines Kabels 102 mit einem Steckverbinder 104 und einer aktiven Komponente 108 für die sichere Datenübertragung zu einem Datenverarbeitungsgerät 110.
-
Das Datenverarbeitungsgerät 110 umfasst einen Anschlussbereich 112 für den Anschluss des Steckverbinders 104 zur Datenübertragung über das Kabel 102 zwischen einem Datenverarbeitungsgerät 110 und einem Peripheriegerät. Das Peripheriegerät 114 ist in 1B dargestellt.
-
Das Kabel 102 umfasst den Steckverbinder 104, das Gehäuse 106 und die eingebettete oder integrierte aktive Komponente 108 zur Ausführung mindestens einer der Funktionen der Verschlüsselung und Entschlüsselung von Datenkommunikationen, die über das Kabel 102 übertragen werden. Die Datenkommunikationen können Bits, Bytes, Datenpakete und/oder Datenströme für die Übertragung zwischen den Geräten 110 bzw. 114 umfassen. Das Kabel 102 kann als solches Leitungen, Isolierung und andere Materialien zur Übertragung der Daten durch die Leitungen an die Geräte 110 bzw. 114. Die Ausführung mindestens einer der Funktionen der Verschlüsselung und Entschlüsselung der über das Kabel 102 übertragenen Daten durch die im Kabel 102 integrierte Komponente 108 bietet einen gewissen Sicherheitsgrad für sensible Daten. Ausführungsformen des Kabels 102 umfassen ein USB-Kabel (Universal Serial Bus), ein Glasfaserkabel, ein Faserkabel, ein Netzwerkkabel, ein Stromkabel, ein Koaxialkabel oder eine andere Art von Kabel, die in der Lage ist, Datenübertragungen zwischen dem Datenverarbeitungsgerät 110 und/oder dem Peripheriegerät 114 zu ermöglichen. In einer weiteren Ausführungsform erhält die aktive Komponente 108 einen spezifischen Schlüssel für das Datenverarbeitungsgerät 110, um mindestens einer der Funktionen der Verschlüsselung und Entschlüsselung der über das Kabel 102 übertragenen Daten auszuführen. Die Bereitstellung eines für das Datenverarbeitungsgerät 110 spezifischen Schlüssels verhindert einen unbefugten Austausch des Kabels 102 in einem anderen System mit einem anderen Datenverarbeitungsgerät, da nach der Installation des Kabels 102 mit dem System nach 1A das Kabel 102 wieder in einen passiven Kabeltyp umgewandelt werden kann. Die Rückumwandlung in einen passiven Kabeltyp verhindert einen unbefugten Austausch (z. B. das Auswechseln) des Kabels 102 und/oder des Systems, in dem das Kabel 102 benutzt wird. Der passive Kabeltyp übermittelt Daten, ohne mindestens eine der Funktionen der Verschlüsselung oder Entschlüsselung auszuführen. In einer weiteren Ausführungsform wird das Kabel 102, nachdem die aktive Komponente 108 den spezifischen Schlüssel für das Datenverarbeitungsgerät 110 erhalten hat, als aktiver Kabeltyp betrachtet, da es mindestens einer der Funktionen der Verschlüsselung und Entschlüsselung der über das Kabel 102 übertragenen Daten ausführt. Die Installation des Kabels 102 in dem System nach 1A ermöglicht es dem Kabel 102, in einem bestimmten System mit diesem bestimmten Datenverarbeitungsgerät 110 zu arbeiten. Ein Hacker kann zum Beispiel das Kabel 102 gegen ein unsicheres Kabel austauschen (d. h. ohne die aktive Komponente 108), welches keine Sicherheit für die über das Kabel 102 übermittelten Daten bietet.
-
Die aktive Komponente 108 ist eine elektrische Komponente, die mit dem Steckverbinder 104 gekoppelt und in dem Kabel 102 integriert ist und der Verschlüsselung bzw. Entschlüsselung der über das Kabel 102 übertragenen Daten dient. So kann die aktive Komponente 108 in dem Kabel 102 eingebettet, integriert und/oder ein wesentlicher Bestandteil davon sein. Die aktive Komponente 108 umfasst ein Gehäuse 106 als Teil des Kabels 102, das die aktive Komponente 108 vor äußeren Einwirkungen schützen soll.
-
Die aktive Komponente 108 umfasst maschinenausführbare Anweisungen für den Empfang der Daten für die Übertragung der Daten über das Kabel 102 zur Ausführung der Verschlüsselung und/oder Entschlüsselung der Daten. Die Verschlüsselung und/oder Entschlüsselung der Daten im Kabel 102 durch die aktive Komponente 108 bietet eine einheitlichere Sicherheit, ohne die Konstruktionskosten und die Komplexität auf jeder Geräteebene zu erhöhen. Zusätzlich verhindert dies die Manipulation der Daten über das Kabel 102, da die Daten vor der Übertragung über das Kabel 102 verschlüsselt werden können. In einer anderen Ausführungsform bleibt die aktive Komponente 108 passiv (d. h. ohne die Ausführung der Verschlüsselung bzw. Entschlüsselung), bis sie einen spezifischen Schlüssel für das Datenverarbeitungsgerät 110 für die Ausführung der Verschlüsselung der Daten über das Kabel 102 erhält. Ausführungsformen der aktiven Komponente umfassen beispielsweise einen Siliziumchip, einen Steuerbaustein, einen Prozessor, einen integrierten Schaltkreis, eine Zentraleinheit (CPU) oder eine andere Art einer elektronischen Komponente, die in der Lage ist, die Verschlüsselung und/oder Entschlüsselung der über das Kabel 102 übertragenen Daten auszuführen.
-
Bei dem Gehäuse 106 handelt es sich um eine äußere Hülle, die Störungen der aktiven Komponente 108 durch Partikel und andere äußere Einwirkungen verhindert. Das Gehäuse 106 schützt die aktive Komponente 108 vor verschiedenen Umwelteinwirkungen wie beispielsweise Stößen, Vibrationen, Wasser, Staub usw., um die Unversehrtheit der aktiven Komponente 108 und ihrer verschiedenen Verbindungen zu gewährleisten. In einer weiteren Ausführungsform bietet das Gehäuse 106 Sicherheit, indem es die aktive Komponente 108 von äußeren Einflüssen abschirmt. Die äußere Hülle des Gehäuses 106 kann aus verschiedenen Materialien wie zum Beispiel Kunststoff, Silikon oder anderen Materialarten bestehen, die den Schutz der aktiven Komponente 108 gewährleisten.
-
Der Steckverbinder 104 dient der Verbindung des Kabels 102 mit dem Datenverarbeitungsgerät 110. Bei dem Steckverbinder 104 handelt es sich um eine elektromechanische Komponente des Kabels 102 für den Anschluss des Kabels 102 an das Datenverarbeitungsgerät 110 zur Herstellung einer elektrischen Verbindung zwischen dem Kabel 102 und dem Datenverarbeitungsgerät 110. Obwohl 1A den Steckverbinder 104 als standardmäßigen USB-Stecker Typ A darstellt, sollen die Ausführungsformen nicht auf diese Darstellung beschränkt sein, da der Steckverbinder 104 auch einen standardmäßigen USB-Stecker Typ B umfassen kann. Zusätzlich sollte der Steckverbinder 104 nicht auf standardmäßige USB-Stecker als Form des für die Systeme nach den 1A–1B genutzten Steckverbinders 104 beschränkt sein, abhängig vom Typ des Kabels 102. Zum Beispiel kann mit einem Ethernet-Kabel ein modularer Stecker wie zum Beispiel 8P8C verwendet werden, während mit einem Kabel des Typs RS-232 D-Subminiatur-Steckverbinder eingesetzt werden können. Solche Ausführungsformen des Steckverbinders 104 umfassen einen modularen Stecker, einen D-Subminiatur-Steckverbinder, einen USB-Stecker, einen Stromstecker, einen Hochfrequenzstecker, einen Gleichstromstecker bzw. irgendeine Kombination der Steckertypen. Weiter kann das Kabel 102 einen zusätzlichen Steckverbinder wie in 1B für die Verbindung mit einem Peripheriegerät umfassen. Das Kabel 102 überträgt verschlüsselte und entschlüsselte Daten zwischen dem Datenverarbeitungsgerät 110 und dem Peripheriegerät 114.
-
Das Datenverarbeitungsgerät 110 umfasst den Anschlussbereich 112 zur Aufnahme des Steckverbinders 104 für die Datenkommunikation über das Kabel 102 zu einem anderen Datenverarbeitungsgerät oder dem Peripheriegerät 114. In einer anderen Ausführungsform empfängt das Datenverarbeitungsgerät 110 verschlüsselte Daten über das Kabel 102 für den Empfang durch eine Anwendung bzw. ein Betriebssystem auf dem Datenverarbeitungsgerät 110. In dieser Ausführungsform entschlüsselt das Datenverarbeitungsgerät 110 die Daten für die Verarbeitung. In einer weiteren Ausführungsform empfängt das Datenverarbeitungsgerät 110 verschlüsselte Daten über das Kabel 102 zur Übertragung an ein Netzwerk für die Verarbeitung der verschlüsselten Daten. In dieser Ausführungsform werden die verschlüsselten Daten über das Netzwerk übertragen und dann in dem Netzwerk entschlüsselt. Ausführungsform des Datenverarbeitungsgeräts 110 umfassen ein Host-Gerät, ein Kassensystem, einen Personal Computer, einen Desktop-Computer, einen Laptop, ein Mobilgerät, ein Tablet, eine Spielkonsole oder ein anderes Elektrogerät, das einen Anschlussbereich 112 für die Kommunikation zwischen Geräten durch die Datenübertragung über das Kabel 102 umfassen kann.
-
1B ist eine Übersichtszeichnung eines Beispielkabels 102 mit einem zusätzlichen Steckverbinder 118 und einer aktiven Komponente 108 für die sichere Datenübertragung zwischen einem Peripheriegerät 114 und einem Datenverarbeitungsgerät 110. 1B stellt das andere Ende des Kabels 102 mit dem zusätzlichen Steckverbinder 118 dar, um die Anschlüsse für die Datenübertragung zwischen den Geräten 110 und 114 zu illustrieren. Zusätzlich, obwohl 1A und 1B die aktive Komponente 108 als einzelne Komponente für die Verschlüsselung und/oder Entschlüsselung darstellen, kann das Kabel 102 mindestens zwei aktive Komponenten 108 für die Verschlüsselung vor der Übertragung und die Entschlüsselung beim Empfang für die Verarbeitung auf dem Gerät 110 oder 114 umfassen. Das Kabel 102 und das Gehäuse 120 können in ihrer Struktur dem Kabel 102 und dem Gehäuse 106 gemäß 1A ähneln.
-
Der zusätzliche Steckverbinder 118 stellt das entgegengesetzte Ende des Kabels 102 vom Steckverbinder 104 dar. Der zusätzliche Steckverbinder 118 verbindet das Peripheriegerät 114 über den Anschluss 116 mit dem Kabel 102. Durch die Verbindung mit dem Peripheriegerät 114 kann das Kabel 102 Daten zwischen den Geräten 110 und 114 übertragen. Zusätzlich, um die Daten zwischen den Geräten 110 und 114 sicher zu übertragen, umfasst das Kabel 102 die integrierte aktive Komponente 108, um mindestens eine der Funktionen der Verschlüsselung bzw. Entschlüsselung der Daten auszuführen. Außerdem, obwohl 1B den zusätzlichen Steckverbinder 118 als standardmäßigen Stecker darstellt, sollen die Ausführungsformen nicht auf die für Illustrationszwecke dargestellte Form beschränkt sein. Zum Beispiel kann es sich bei dem zusätzlichen Steckverbinder 118 um einen anderen Steckertyp als den Steckverbinder 104 nach 1A handeln, oder die Steckverbinder 104 und 118 können ähnliche Steckertypen umfassen. Die Ausführungsformen des zusätzlichen Steckverbinders 118 umfassen einen modularen Stecker, einen D-Subminiatur-Steckverbinder, einen USB-Stecker, einen Stromstecker, einen Hochfrequenzstecker, einen Gleichstromstecker bzw. irgendeine Kombination der Steckertypen.
-
Der Anschluss 116 ist der Bereich an dem Peripheriegerät 116 für den Anschluss des anderen Endes des Kabels 102 zur Datenübertragung zwischen den Geräten 110 und 114. Das Peripheriegerät 114 umfasst ein elektronisches Gerät wie zum Beispiel ein Kassensystem für Datenkommunikationen mit dem Datenverarbeitungsgerät 110 über das Kabel 102. Zum Beispiel kann das Peripheriegerät 114 einen Kreditkartenleser umfassen und davon die Daten zur Verarbeitung an eine Anwendung auf dem Datenverarbeitungsgerät 110 übertragen. Die von dem Peripheriegerät 114 übertragenen Kreditkarteninformationen können sensibel im Hinblick auf Manipulationen sein und können daher vor der Übertragung über das Kabel 102 an das Datenverarbeitungsgerät 110 in der aktiven Komponente 108 verschlüsselt werden.
-
Ausführungsformen des Peripheriegeräts 114 umfassen einen Strichcode-Scanner, Zubehörteile von Datenverarbeitungsgeräten, eine Maus, eine Tastatur, einen Scanner, einen Drucker, einen Kassenzetteldrucker, ein Strichcode-Lesegerät, eine Waage, eine Kassenschublade oder andere Elektrogeräte, die in der Lage sind, Daten durch das Kabel 102 zu übertragen und zu empfangen.
-
2 ist ein Kommunikationsdiagramm für eine Beispielkommunikation zwischen einem Datenverarbeitungsgerät 210 und einem Peripheriegerät 214 über ein Kabel 202 mit einem Steckverbinder 204 und einer aktiven Komponente 208. Das Datenverarbeitungsgerät 210, das Kabel 202, der Steckverbinder 204, die aktive Komponente 208 und das Peripheriegerät 214 können in ihrem Aufbau und ihrer Funktion dem Datenverarbeitungsgerät 110, dem Kabel 102, dem Steckverbinder 104, der aktiven Komponente 108 und dem Peripheriegerät 114 nach 1A–1B ähneln.
-
Das Datenverarbeitungsgerät 210 überträgt einen Datenstrom über das Kabel 202 und durch den Steckverbinder 204 an die aktive Komponente 208. Die aktive Komponente 208 identifiziert die Kopfdaten und die dazugehörigen Rahmendaten im Datenstrom. Durch die Identifizierung der Kopfdaten und der Rahmendaten kann die aktive Komponente 208 die Rahmendaten zur Verschlüsslung von den Kopfdaten trennen. Die aktive Komponente 208 kann weiter einen Schlüssel von dem Datenverarbeitungsgerät 210 empfangen, um die aus dem Datenstrom identifizierten Rahmendaten zu verschlüsseln. Die Kopfdaten gelten als ergänzende Daten, die zu Beginn des Datenstroms stehen und die übrigen Daten (d. h. die Rahmendaten) zu beschreiben, ohne die anderen Daten direkt zu enthalten. Die Kopfdaten umfassen ergänzende Daten, um die aktive Komponente 208 anzuweisen, die übrigen Daten zu verschlüsseln. Die Rahmendaten sind der Teil des Datenstroms, der möglicherweise sensible Daten umfasst. Zum Beispiel können die Kopfdaten den Umfang der Rahmendaten beschreiben und die Rahmendaten können Kreditkarteninformationen zur Verarbeitung auf dem Datenverarbeitungsgerät 210 enthalten.
-
Die Identifizierung der Kopfdaten ermöglicht es der aktiven Komponente 208, den Anfang eines Datenstroms zu erkennen und den Aspekt der Daten zu identifizieren, die eventuell aufgrund ihrer sensiblen Natur und von Datenschutzbestimmungen geschützt werden müssen. Die aktive Komponente 208 kann dann diese sensiblen Daten (d. h. die Rahmendaten) mit dem von dem Datenverarbeitungsgerät 210 erhaltenen Schlüssel verschlüsseln, um sie dann an das Peripheriegerät 214 zu übertragen. Das Peripheriegerät 214 erhält die verschlüsselten Rahmendaten zur Entschlüsselung und weiteren Verarbeitung. Das Peripheriegerät 214 kann die verschlüsselten Rahmendaten mithilfe des spezifischen Schlüssels des Datenverarbeitungsgeräts 210 entschlüsseln. Der Schlüssel dient als Werkzeug zur Verschlüsselung bzw. Entschlüsselung der Daten und kann auf dem Peripheriegerät 214 gespeichert sein oder zusammen mit den verschlüsselten Rahmendaten übertragen werden. Die in dem Kabel 202 eingebettete aktive Komponente 208 kann den Schlüssel für die Berechnung der Hashfunktion der Rahmendaten nutzen, während das Peripheriegerät 214 mithilfe des Schlüssels die Hashfunktion bei den Daten rückgängig machen kann.
-
In diesem Zusammenhang können das Datenverarbeitungsgerät 210, das Kabel 202 und das Peripheriegerät 214 einen gemeinsamen Schlüssel haben. Der gemeinsame Schlüssel kann anhand einer Liste authentifizierter Geräte 210 und 214 autorisiert oder mit den verschlüsselten Rahmendaten übertragen werden.
-
In einer anderen Ausführungsform kann die aktive Komponente 208 den Schlüssel dazu nutzen, über das Kabel 202 übertragene verschlüsselte Daten vor deren Eingang auf dem Datenverarbeitungsgerät 210 oder dem Peripheriegerät 214 zu entschlüsseln. In einer weiteren Ausführungsform hat das Datenverarbeitungsgerät 210 einen spezifischen Schlüssel, um einen unbefugten Austausch des Kabels 202 zu verhindern. Zum Beispiel kann das Datenverarbeitungsgerät 210 ein Signal von der in dem Kabel 202 integrierten aktiven Komponente 208 erhalten, um vor der Übertragung des Schlüssels die Vertrauenswürdigkeit des Kabels 202 zu überprüfen. Das Signal kann eine Art Kennung enthalten, an der das Datenverarbeitungsgerät 210 erkennen kann, dass das Kabel 202 vertrauenswürdig ist. Die Benutzung eines spezifischen Schlüssels für das Datenverarbeitungsgerät 210 bietet zusätzliche Sicherheit bzw. zusätzlichen Schutz, da sich die aktive Komponente 208 gegenüber dem Datenverarbeitungsgerät 210 identifizieren muss, um den Schlüssel von dem Datenverarbeitungsgerät 210 zu erhalten. Zusätzlich verhindert dies einen eventuellen unbefugten Austausch des Kabels 202 und/oder des Datenverarbeitungsgeräts 210.
-
3 ist ein Flussdiagramm für ein Beispielverfahren zur Bestimmung der Kopfdaten und der Rahmendaten für die Verschlüsselung der Rahmendaten durch eine im Kabel integrierte aktive Komponente. Bei der Beschreibung von 3 sind Bezugnahmen auf die Komponenten den 1A–1B möglich, um kontextuelle Beispiele anzubringen. Außerdem, obwohl 3 als an den aktiven Komponenten 108 und 208 gemäß den 1–2 umgesetzt beschrieben wird, kann sie auch an anderen geeigneten Komponenten ausgeführt werden. Zum Beispiel kann 3 in Form von ausführbaren Anweisungen auf einem maschinenlesbaren Speichermedium 504 gemäß 5 umgesetzt werden.
-
In Vorgang 302 bestimmt die aktive Komponente die Kopfdaten. In einer anderen Ausführungsform empfängt Vorgang 302 einen Datenstrom, der Kopfdaten und Rahmendaten enthält. Die Kopfdaten beschreiben die anderen über das Kabel übertragenen Daten und können Informationen enthalten wie die Art der Daten, die Daten des Geräts, von dem der Datenstrom ausgeht, den Umfang des Datenstroms, ob die Daten verschlüsselt oder entschlüsselt werden, oder ob die Daten synchron oder asynchron sind usw. Die Kopfdaten können auch als Flag dienen, um der aktiven Komponente anzuzeigen, dass der Datenstrom sensible Daten enthält und die sensiblen Daten verschlüsselt werden sollen. In einer weiteren Ausführungsform verschlüsselt die aktive Komponente die Rahmendaten, ohne die Kopfdaten zu verschlüsseln. Auf diese Weise kann der Datenstrom, der sowohl die Kopfdaten als auch die verschlüsselten Rahmendaten enthält, von dem Datenverarbeitungsgerät bzw. dem Peripheriegerät zur Entschlüsselung und Verarbeitung durch eine Anwendung auf dem Datenverarbeitungsgerät bzw. dem Peripheriegerät erkannt werden.
-
In Vorgang 304 bestimmt die in dem Kabel integrierte aktive Komponente die mit den Kopfdaten verbundenen Rahmendaten. Nach der Identifizierung der Kopfdaten in Vorgang 302 bestimmt die aktive Komponente die Rahmendaten, die in Vorgang 306 verschlüsselt werden sollen.
-
In Vorgang 306 verschlüsselt die in dem Kabel integrierte aktive Komponente die Rahmendaten. In einer Ausführungsform erhält die aktive Komponente einen für das Datenverarbeitungsgerät spezifischen Schlüssel für die Verschlüsselung und Entschlüsselung der Rahmendaten. In einer anderen Ausführungsform umfasst der Vorgang 306 den Empfang von verschlüsselten Daten durch ein Betriebssystem oder eine Anwendung auf dem Datenverarbeitungssystem. In einer weiteren Ausführungsform umfasst Vorgang 306 die Übertragung der verschlüsselten Daten von einem Datenverarbeitungsgerät an eine Anwendung in einem Netzwerk.
-
4 ist ein Ablaufschema für ein Beispielverfahren zur Identifizierung eines Datenverarbeitungsgeräts, das mit einem Kabel für die Sicherheit kompatibel ist, Übermittlung eines für das Datenverarbeitungsgerät spezifischen Schlüssels an eine im Kabel integrierte aktive Komponente für die Verschlüsselung und Entschlüsselung sowie Bestimmung der Kopfdaten und Rahmendaten für die Verschlüsselung der Rahmendaten. Bei der Beschreibung von 4 sind Bezugnahmen auf Komponenten der 1A–1B möglich, um kontextuelle Beispiele anzubringen. Außerdem, obwohl 4 als an den aktiven Komponenten 108 und 208 gemäß den 1–2 umgesetzt beschrieben wird, kann sie auch an anderen geeigneten Komponenten ausgeführt werden. Zum Beispiel kann 4 in Form von ausführbaren Anweisungen auf einem maschinenlesbaren Speichermedium 504 gemäß 5 umgesetzt werden.
-
In Vorgang 402 kann die aktive Komponente das Datenverarbeitungsgerät als kompatibel und/oder vertrauenswürdig für die Benutzung mit dem Kabel identifizieren. Vorgang 402 kann die Übertragung eines Signals von der aktiven Komponente an das Datenverarbeitungsgerät zur Authentifizierung beinhalten. In einer anderen Ausführungsform kann die aktive Komponente das Datenverarbeitungsgerät als Teil einer Klasse von Datenverarbeitungsgeräten identifizieren, mit denen das Kabel für die Ausführung mindestens einer der Funktionen der Verschlüsselung oder Entschlüsselung kompatibel ist. Die Klasse von Datenverarbeitungsgeräten kann als die Geräte identifiziert werden, die für die Benutzung mit dem Kabel vertrauenswürdig sind. In einer weiteren Ausführungsform umfasst die Identifizierung des Datenverarbeitungsgeräts als kompatibel mit dem Kabel die Übertragung eines gemeinsamen Schlüssels für jedes vertrauenswürdige Gerät zur Verschlüsselung und/oder Entschlüsselung in Vorgang 410.
-
In Vorgang 404 empfängt die in dem Kabel integrierte aktive Komponente einen Schlüssel für die Verschlüsselung und/oder Entschlüsselung der Daten über das Kabel. Damit eine Anwendung, ein Dienst und/oder ein Gerät auf die verschlüsselten Daten zugreifen können, müssen diese ggf. auf einen privaten Schlüssel für die Entschlüsselung der verschlüsselten Daten zugreifen. In einer Ausführungsform wird eine Authentifizierungsliste von Geräten und/oder Anwendungen bereitgehalten, sodass zugelassene Einheiten Zugriff auf den Schlüssel haben. Die Pflege der Authentifizierungsliste bietet ein zusätzliches Maß an Sicherheit, sodass vertrauenswürdige Einheiten Zugriff auf den Schlüssel haben. Zum Beispiel können fünf Kreditkartenlesegeräte mit bestimmten Seriennummern für die Verschlüsselung der Kreditkarteninformationen über ein bestimmtes Kabel autorisiert sein. Die Kreditkarteninformationen können dann in diesem bestimmten Kabel verschlüsselt werden, wenn sie zur weiteren Verarbeitung an ein Host-Gerät übertragen werden. Diese Kreditkartenlesegeräte können einen gemeinsamen Schlüssel für die Verschlüsselung der Daten über das Kabel vom Host-Gerät erhalten.
-
Bei den Vorgängen 406–408 bestimmt die aktive Komponente in dem Kabel die Kopfdaten und ermittelt die zu den Kopfdaten gehörenden Rahmendaten. In Vorgang 410 verschlüsselt die aktive Komponente die in Vorgang 408 identifizierten Rahmendaten. Die Vorgänge 406–408 können in ihrem Aufbau den Vorgängen 302–306 gemäß 3 ähneln.
-
5 ist eine Übersichtszeichnung eines Beispiel-Datenverarbeitungsgeräts 500 mit einem Prozessor 502 zur Identifizierung von Kopfdaten in einem Datenstrom, Verschlüsselung der mit den Kopfdaten verbundenen Rahmendaten durch Empfang eines für das Datenverarbeitungsgerät spezifischen Schlüssels und Übermittlung der verschlüsselten Rahmendaten. Obwohl das Datenverarbeitungsgerät 500 einen Prozessor 502 und ein maschinenlesbares Speichermedium 504 umfasst, kann es auch andere Komponenten beinhalten, die für eine fachkundige Person nützlich sind. Zum Beispiel kann das Datenverarbeitungsgerät 500 einen Anschlussbereich 112 gemäß 1 umfassen. Zusätzlich kann das Datenverarbeitungsgerät 500 in seiner Struktur und Funktion den Datenverarbeitungsgeräten 110 und 210 gemäß den Darstellungen in 1 bzw. 2 ähnlich sein.
-
Der Prozessor 502 kann Anweisungen 506–512 abrufen, entschlüsseln und ausführen. Ausführungen des Prozessors umfassen einen Mikrochip, einen Chipsatz, einen Mikroprozessor, einen Halbleiter, einen Mikrocontroller, einen Controller, einen Siliziumchip, eine Zentraleinheit (CPU), einen Grafikprozessor (GPU oder VPU) oder andere programmierbare Geräte, die in der Lage sind, die Anweisungen 506–512 auszuführen.
-
Insbesondere führt der Prozessor 502: die Anweisungen 506 zur Identifizierung der Kopfdaten in einem Datenstrom; die Anweisungen 508 zur Verschlüsselung der zu den Kopfdaten gehörenden Rahmendaten; die Anweisungen 510 zum Empfang eines für das Datenverarbeitungsgerät spezifischen Schlüssels für die Verschlüsselung der Rahmendaten; und die Anweisungen 512 zur Übertragung der verschlüsselten Rahmendaten aus.
-
Das maschinenlesbare Speichermedium 504 umfasst Anweisungen 506–512, die der Prozessor 502 abruft, entschlüsselt und ausführt. Das maschinenlesbare Speichermedium 504 kann eine elektronische, magnetische, optische Speicher- oder Archivierungsvorrichtung, ein Flash-Speicher oder ein anderes physisches Gerät sein, das ausführbare Anweisungen enthält oder speichert. Daher kann das maschinenlesbare Speichermedium 504 zum Beispiel ein Random Access Memory (RAM), einen nichtflüchtigen Speicherbaustein (EEPROM), einen mobilen Datenspeicher, einen Zwischenspeicher, einen Netzwerkspeicher, eine Compactdisc mit Nur-Lese-Speicher (CD-ROM) oder ähnliches umfassen. Das maschinenlesbare Speichermedium 504 als solches kann eine Anwendung und/oder Firmware beinhalten, die unabhängig und/oder zusammen mit dem Prozessor 502 zum Abrufen, Entschlüsseln bzw. Ausführen der Anweisungen auf dem maschinenlesbaren Speichermedium 504 genutzt werden kann. Die Anwendung bzw. Firmware kann auf dem maschinenlesbaren Speichermedium 504 und/oder an einem anderen Speicherort des Datenverarbeitungsgeräts 500 gespeichert werden. In der Beschreibung von 5 wird auf die Komponenten der 1A–1B und 2 Bezug genommen, um kontextuelle Beispiele anzubringen.
-
Bei Anweisung 506 identifiziert eine in dem Kabel integrierte aktive Komponente die Kopfdaten aus einem Datenstrom. Der Datenstrom, der über das Kabel zwischen einem Datenverarbeitungsgerät und einem Peripheriegerät übertragen wird, beinhaltet Kopfdaten und Rahmendaten. Die aktive Komponente in dem Kabel empfängt den Datenstrom und unterscheidet die Kopfdaten von den Rahmendaten. Auf diese Weise identifiziert die aktive Komponente die Daten, die sensibel sein können und verschlüsselt die Daten bei Anweisung 508.
-
Bei Anweisung 508 verschlüsselt die aktive Komponente die mit den Kopfdaten verbundenen Rahmendaten, die bei Anweisung 506 identifiziert wurden. Die Rahmendaten gelten als der Teil des Datenstroms, der sensible Daten wie zum Beispiel Kreditkarteninformationen und/oder andere personenbezogene Informationen enthalten kann. Die Verschlüsselung der Rahmendaten durch die im Kabel eingebettete aktive Komponente bietet eine Sicherheit auf Ebene des Kabels, die Manipulationen der sensiblen Informationen durch Dritte auf Geräteebene verhindert. In einer anderen Ausführungsform verschlüsselt die aktive Komponente die Rahmendaten mithilfe eines spezifischen Schlüssels für das Datenverarbeitungsgerät gemäß Anweisung 510.
-
Bei Anweisung 510 empfängt die aktive Komponente den spezifischen Schlüssel für das Datenverarbeitungsgerät für die Verschlüsselung und/oder Entschlüsselung der Rahmendaten. In einer anderen Ausführungsform wird bei Anweisung 510 eine Klasse von Datenverarbeitungsgeräten identifiziert, die mit der in dem Kabel integrierten aktiven Komponente kompatibel sind.
-
Bei Anweisung 512 werden die bei Anweisung 508 verschlüsselten Daten entweder an das Datenverarbeitungsgerät oder das Peripheriegerät übertragen. Anweisung 512 kann die Entschlüsselung der Rahmendaten entweder in dem Datenverarbeitungsgerät oder in dem Peripheriegerät zur Verarbeitung der Informationen in den Rahmendaten beinhalten.
-
Zusammenfassend bieten die hier aufgezeigten Ausführungsbeispiele einen sicheren Mechanismus für die Verschlüsselung und/oder Entschlüsselung sensibler Daten innerhalb eines Kabels für die Übertragung zwischen verschiedenen Geräten. Weiter bieten die hier aufgezeigten Ausführungsbeispiele eine standardmäßige Umsetzung für den Schutz über verschiedene Systeme hinweg.