-
Die vorliegende Erfindung betrifft eine Einrichtung und ein System zum sicheren Telefonieren über ein z. B. öffentliches Telefonnetz und ein IP-Netz.
-
Bei einer Übertragung von vertraulichen und sensitiven Informationen über ein Netzwerk werden die zughörigen Daten in der Regel verschlüsselt, um diese vor einem unbefugten Zugriff wie beispielsweise Lesen, Abhören oder Verändern zu schützen.
-
In der Vergangenheit hat sich jedoch gezeigt, dass eine Verschlüsselung der übertragenen Daten alleine noch keinen ausreichenden Schutz vor einem unbefugten Zugriff auf diese Daten bietet. Die Sicherheit einer Datenübertragung kann nicht nur durch Schadsoftware unterlaufen werden, die sich auf einem der zur Übertragung verwendeten Geräte befindet, sondern auch durch nicht dokumentierte Hintertüren, die in die auf den beteiligten Geräten installierte Software oder auch in die Hardware dieser Geräte eingefügt wurden. Siehe hierzu z. B. G. Greenwald, „How the NSA tampers with US-made internet routers“, The Guardian, 12. Mai 2017, und M. Majica, „Cisco kann die Hintertür im eigenen Router nicht schließen“, Zeit Online, 2. Jan. 2014.
-
Zur Nutzung von Telefonnetzen bzw. IP-Netzen für eine Telefonverbindung können SIP-Telefone verwendet werden. SIP-Telefone basieren auf „Voice over IP“ (VoIP) und nutzen typischerweise das „Session Initiation Protocoll“ (SIP). SIP-Telefone können in Form von Hardware (Hardphone) oder Software (Softphone) implementiert sein. Die bei einem Gespräch über das Telefon anfallenden Audiosignale werden in Datenpakete umgewandelt, die dann über das jeweilige Netzwerk, beispielsweise ein ISDN (Integrated Services Digital Network), ein All-IP-Netzwerk, ein NGN (Next Generation Network) oder ein anderes IP-Netz wie beispielsweise das Internet übertragen werden. Telefonnetze unterscheiden sich von IP-Netzen in der Art des verwendeten Adressraums. Während die Adressierung in Telefonnetzen über Telefonnummern erfolgt, werden in IP-Netzen sogenannte IP-Adressen verwendet. Erfolgt die Übertragung der Datenpakete nicht über ein IP-Netz, sondern über ein Telefonnetz, ist für die Anbindung ein geeigneter Umsetzer wie beispielsweise ein SIP-Proxy oder ein Media-Gateway (meist mit integrierter SIP-Proxy-Funktion) erforderlich. In diesem Zusammenhang ist erwähnenswert, dass Telefonnetze - auch wenn sie digital sind - im Hinblick auf die verwendeten Codecs und Bandbreiten auf die Übertragung menschlicher Sprache optimiert sind.
-
Um eine sichere Kommunikationsverbindung zu ermöglichen, muss die Sicherheit über die gesamte Kette der Kommunikationsverbindung gewährleistet sein. Die Glieder dieser Kette umfassen sowohl die Endgeräte und die gegebenenfalls zur Anbindung an das verwendete Netz (der Begriff wird hier synonym zu Netzwerk verwendet) verwendete Soft- und Hardware als auch die Absicherung der Daten in dem jeweiligen Netzwerk.
-
Aus den Erfahrungen der vergangenen Jahre hat sich die Erkenntnis durchgesetzt, dass sowohl Software als auch Hardware, die in der Kommunikationstechnik eingesetzt werden, geheime Hintertüren aufweisen können, über die Dritte Sicherheitsmaßnahmen unwirksam machen oder umgehen können. Viele Prozessoren weisen z. B. nicht dokumentierte Funktionen auf, mit deren Hilfe Angreifer, ohne dass es von außen a priori erkennbar wäre, in die Systeme eindringen können, beispielsweise um Verschlüsselungssoftware zu deaktivieren oder den unverschlüsselten Datenstrom auszuleiten.
-
Um dem zu begegnen sollte sowohl die zur Kommunikation verwendete Software als auch die hierzu verwendete Hardware vertrauenswürdig sein. Zu diesem Zweck schlagen Arnd Weber et al. in „Security, Safety and Fair Market Access by Openness and Control of the Supply Chain“, 2018, http://www.QuattroS-Initiative.org, neben der Verwendung von Open-Source-Software insbesondere die Verwendung von Open-Source-Hardware vor, da nur eine Hardware, deren Architektur bis ins kleinste Detail offengelegt ist, umfassend auf Sicherheitsmängel geprüft werden kann.
-
Die Sicherheit einer Datenübertragung über ein Netzwerk beruht auf der Sicherheit des Verfahrens, das für die Verschlüsselung der zu übertragenden Daten verwendet wird. Zur Verschlüsselung zwischen zwei Endpunkten einer IP-Telefonverbindung kann das kryptographische Schlüsselaustauschprotokoll ZRTP verwendet werden, das 2011 als RFC 6189 veröffentlicht wurde. Das ZRTP-Verfahren nutzt das Diffie-Hellman-Verfahren, um für jede Verbindung abhörsicher einen geheimen Sitzungsschlüssel zu erzeugen. Dieser wird dann für eine VoIP-Datenverbindung nach dem SRTP-Protokoll (Secure Real-Time Transport Protocol) verwendet und nach Beendigung der Verbindung gelöscht. Dadurch kann ein aufgezeichnetes Gespräch auch nachträglich nicht mehr entschlüsselt werden.
-
Da der Diffie-Hellman-Schlüsselaustausch jedoch keine Sicherheit gegen einen Mittelsmannangriff (Man-in-the-Middle-Angriff) bietet, wird bei ZRTP aus den Sitzungsschlüsseln ferner ein „Short Authentification String“ (SAS) generiert und anschließend auf den Endgeräten der Verbindung angezeigt. Zur Überprüfung wird der SAS von einem der beiden Kommunikationspartner über eine Sprachverbindung vorgelesen und von dem anderen Kommunikationspartner mit dem auf seinem Endgerät angezeigten SAS verglichen. Stimmen die beiden angezeigten SAS überein, ist ein Mittelsmannangriff ausgeschlossen. Durch das Zwischenspeichern einiger gehashter Informationen aus dem letzten Schlüssel für die Nutzung im nächsten Anruf ermöglicht ZRTP eine Schlüsselkontinuität, die einen SAS-Vergleich bei nachfolgenden Verbindungen überflüssig macht, einen Mittelsmann aber weiterhin aussperrt.
-
Zum Ermöglichung einer Kommunikation über ein IP-Netz kann zur Überwindung von Network-Address-Translatoren (NAT) ein „Interactive Connectivity Establishment“ (ICE) genanntes Protokoll verwendet werden, bei dem Protokolle, wie zum Beispiel Session Traversal Utilities for NAT („Classic“ STUN, RFC 3489) (STUN, RFC 5389), Traversal Using Relay NAT (TURN, RFC 5766), Session Initiation Protocol (SIP, RFC 3261) eingesetzt werden. ICE basiert darauf, dass jeder Endpunkt einer IP-Kommunikationsverbindung mehrere Kandidaten für eine Transportadresse aufweist, die zur Kommunikation mit einem anderen Endpunkt der Kommunikationsverbindung verwendet werden können. Eine Transportadresse stellt eine Kombination einer IP-Adresse mit einem Port für ein spezielles Transportprotokoll dar. Wenn sich der Endpunkt hinter einem NAT oder einem TURN-Server befindet, gehören auch die an der öffentlichen Seite des NAT und/oder TURN-Servers verwendeten Server-Reflective-Addresses und Relayed-Addresses zu den Kandidaten. Die Kandidaten werden nach Priorität sortiert und in einer Liste, der sogenannten Kandidatenliste, zu dem anderen Endpunkt gesendet (nachfolgend ICE-Offer genannt). Zur Überprüfung, welche der empfangenen Transportadressen für die Kommunikation verwendet werden können, sendet der andere Endpunkt einen STUN-Request (d. h. zur Codierung des Requests wird das STUN-Protokoll verwendet) an den vom anderen Endpunkt empfangenen Kandidaten (Transportadresse). Die Prüfung der Transportadressen erfolgt in der Prioritätsreihenfolge.
-
Dokument
US 7 570 765 B1 offenbart eine Vorrichtung und ein Verfahren, welche das Secure Real-Time Transport Protocol on-the-fly (SRTPotf) ausführen können. Zwischen zwei über ein IP-Netz verbundenen Voice-over-IP (VoIP) Geräten wird nach Aufbau einer Verbindung ausgehandelt, ob beide Geräte SRTP-tauglich sind. Wenn das erste Gerät nicht SRTP-tauglich ist, und das zweite Gerät SRTP-tauglich ist, wird SRTPotf über einen Real-Time Transport Protocol (RTP) Datenstrom übertragen, um die Kommunikation abzusichern. Hierfür kann sich das erste die Kommunikation beginnende Gerät hinter einer SRTP-tauglichen Firewall befinden.
-
Aus
US 2008 / 0 298 593 A1 ist ein Kommunikationsverfahren unter Verwendung gemeinsamer Verschlüsselungs-Keys / Entschlüsselungs-Keys bekannt.
-
Eine weitere Vorrichtung und ein weiteres Verfahren zur Übertragung von verschlüsselten Datenströmen über ein IP-Netz ist aus der
EP 1 738 508 B1 bekannt.
-
Eine Kommunikation zwischen einem IP-Netz und einem Telefonnetz über ein Gateway ist aus der
US 2012 / 0 207 151 A1 bekannt.
-
Grundzüge des OpenRISC Projekts, bei dem es um die Entwicklung einer hochkonfigurierbaren RISC-CPO als Open Hardware geht, sind im Online-Lexikon Wikipedia unter dem Stichwort „OpenRISC“ beschrieben.
-
Das Dokument „RFC 6189; ZRTP: Media Path Key Agreement for Unicast Secure RTP“ der Internet Engineering Task Force IETF, offenbart Details des ZRTP-Protokolls.
-
US 7730309 B2 offenbart ein Verfahren und ein System für ein sicheres Telefonprotokoll, welches unter Verwendung von herkömmlichen Voice over IP Protokollen verwendet werden kann.
-
Angesichts des oben Dargelegten besteht eine Aufgabe der vorliegenden Erfindung in der Angabe einer Vorrichtung und eines Systems, das ein sicheres Telefonieren über ein Netzwerk auf einfache Weise ermöglicht.
-
Diese Aufgabe wird mit den Merkmalen der unabhängigen Ansprüche gelöst. Weiterbildungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
-
Um in einfacher Weise über ein Netzwerk sicher telefonieren zu können, wird eine kryptographische Vorrichtung zur Verschlüsselung und Entschlüsselung von Gesprächsdaten in Form von Audio- und/oder Video angegeben, die zwischen zwei oder mehr miteinander in Verbindung stehenden SIP-Telefonen, die nach dem Session Initiation Protocol arbeiten, ausgetauscht werden, wobei die kryptographische Vorrichtung einen ersten Anschluss, der zur Herstellung einer Kommunikationsverbindung mit einem ersten SIP-Telefon ausgebildet ist, und einen zweiten Anschluss aufweist, der zur Herstellung einer Kommunikationsverbindung mit zumindest einer weiteren kryptographischen Vorrichtung über ein IP-Netz und ein Telefonnetz ausgebildet ist. Alle Softwarekomponenten der kryptographischen Vorrichtung sind Open-Source-Software und alle elektronischen Hardwarekomponenten der kryptographischen Vorrichtung sind Open-Source-Hardware, wobei Software und Hardware der kryptographischen Vorrichtung in Kombination dazu ausgebildet sind, eine zum Übertragen von verschlüsselten Audio- und/oder Videodaten geeignete verschlüsselte Kommunikationsverbindung zwischen der kryptographischen Vorrichtung und der zumindest einen weiteren kryptographischen Vorrichtung über das IP-Netz aufzubauen, von dem ersten SIP-Telefon über den ersten Anschluss empfangene Audio- und/oder Videodaten nach einem für die aufgebaute verschlüsselte Kommunikationsverbindung verwendeten Verschlüsselungsprotokoll zu verschlüsseln und über den zweiten Anschluss auszugeben, und von der zumindest einen weiteren kryptographischen Vorrichtung am zweiten Anschluss empfangene, nach dem Verschlüsselungsprotokoll verschlüsselte Audio- und/oder Videodaten zu entschlüsseln und über den ersten Anschluss an das erste SIP-Telefon auszugeben.
-
Ein schneller Verbindungsaufbau für eine sichere Telefonverbindung wird durch einen Hilfsserver zur Anbindung an ein IP-Netz erreicht, wobei der Hilfsserver ausgebildet ist, von einer mit dem IP-Netz verbundenen ersten kryptographischen Vorrichtung eine erste Kandidatenliste zu empfangen, und wobei die erste kryptographische Vorrichtung zur direkten Verbindung mit einem ersten SIP-Telefon und, wenn die erste kryptographischen Vorrichtung mit dem IP-Netz verbunden ist, zur Herstellung einer Kommunikationsverbindung nach dem Interactive-Connectivity-Establishment-Verfahren ausgebildet ist. Die erste Kandidatenliste enthält Transportadressen, die zur Kommunikation von zumindest einer weiteren kryptographischen Vorrichtung, die zur direkten Verbindung mit einem weiteren SIP-Telefon ausgebildet ist, mit der ersten kryptographischen Vorrichtung verwendet werden können. Der Hilfsserver ist ferner ausgebildet, die erste Kandidatenliste unter einer ersten Registrationsidentifikation zu speichern, die erste Registrationsidentifikation an die erste kryptographische Vorrichtung zu senden, von der mit dem IP-Netz verbundenen zumindest einen weiteren kryptographischen Vorrichtung eine Anfrage nach der unter der ersten Registrationsidentifikation gespeicherten ersten Kandidatenliste zu erhalten und die unter der ersten Registrationsidentifikation gespeicherte erste Kandidatenliste an die zumindest eine weitere kryptographische Vorrichtung zu übertragen.
-
Ein sicheres Telefonieren über ein Netzwerk wird mit einem System zum Aufbau und Unterhalt einer abhörsicheren Verbindung zwischen SIP-Telefonen erreicht, das ein erstes und zumindest ein weiteres, SIP-Telefon, eine erste und zumindest eine weitere kryptographische Vorrichtung, und einen Hilfsserver umfasst, wobei das erste SIP-Telefon über die erste kryptographische Vorrichtung und das zumindest eine weitere SIP-Telefon über die weitere kryptographische Vorrichtung mit einem IP-Netz und einem Telefonnetz verbunden sind und der Hilfsserver an das IP-Netz angebunden ist. Die erste und die zumindest eine weitere kryptographische Vorrichtung sind jeweils ausgebildet, mittels des ICE-Protokolls und des IP-Netzes eine Kandidatenliste zu ermitteln, die Transportadressen enthält, an die aus dem IP-Netz Daten von der jeweils anderen kryptographischen Vorrichtung gesendet werden können, die ermittelte Kandidatenliste an den Hilfsserver zu senden, von dem Hilfsserver eine der ermittelten Kandidatenliste zugeordnete Registrationsidentifikation zu erhalten, die erhaltene Registrationsidentifikation zu speichern und die erhaltene Registrationsidentifikation bei einem Aufbau einer Kommunikationsverbindung über das Telefonnetz zu der jeweils anderen kryptographischen Vorrichtung zu senden. Die erste und die zumindest eine weitere kryptographische Vorrichtung sind ferner ausgebildet, nach einem Aufbau einer Kommunikationsverbindung zwischen dem ersten SIP-Telefon und dem zumindest einen weiteren SIP-Telefon über das Telefonnetz die jeweilige Registrationsidentifikation von der jeweils anderen kryptographischen Vorrichtung über das Telefonnetz zu erhalten, an den Hilfsserver über das IP-Netz eine Anfrage nach der unter der erhaltenen Registrationsidentifikation hinterlegten Kandidatenliste zu senden, die Kandidatenliste von dem Hilfsserver zu empfangen, und aus der empfangenen Kandidatenliste wenigstens einen Kandidaten durch Senden eines STUN-Requests an die zugehörige Transportadresse zu überprüfen. Die erste und die zumindest eine weitere kryptographische Vorrichtung sind weiterhin ausgebildet, eine Verbindung über das IP-Netz aufzubauen, indem jede der kryptographischen Vorrichtungen zumindest einen der erfolgreich überprüften Kandidaten verwendet, und das ZRTP-Verfahren durch zumindest eine der kryptographischen Vorrichtungen zu starten.
-
In diesem Zusammenhang wird darauf hingewiesen, dass die in dieser Beschreibung und den Ansprüchen zur Aufzählung von Merkmalen verwendeten Begriffe „umfassen“, „aufweisen“, „beinhalten“, „enthalten“ und „mit“, sowie deren grammatikalischen Abwandlungen, generell als nichtabschließende Aufzählung von Merkmalen, wie z.B. Komponenten, Verfahrensschritten, Einrichtungen, Bereichen, Größen und dergleichen aufzufassen sind, und in keiner Weise das Vorhandensein anderer oder zusätzlicher Merkmale oder Gruppierungen von anderen oder zusätzlichen Merkmalen ausschließen.
-
Bei vorteilhaften Ausgestaltungen umfasst die elektronische Hardware der kryptographischen Vorrichtung einen mithilfe eines Field Programmable Gate Arrays oder eines Teils eines Field Programmable Gate Array realisierten Prozessor, dessen Schaltungsstruktur durch eine Open-Source-CPU-Definition definiert ist.
-
Bevorzugt handelt es sich bei der verschlüsselten Kommunikationsverbindung um eine nach dem ZRTP-Protokoll aufgebaute Verbindung, wobei Ausgestaltungen der kryptographischen Vorrichtung ferner eine Anzeigeeinrichtung und eine Benutzerschnittstelle aufweisen, und die kryptographische Vorrichtung ferner ausgebildet ist, einen von dem ZRTP-Protokoll generierten Short Authentification String an der Anzeigeeinrichtung anzuzeigen und eine Bestätigung des Short Authentification String über die Benutzerschnittstelle zu ermöglichen.
-
Zur einfachen Bedienung weist die Benutzerschnittstelle bei Ausführungsformen einen Soft-Button und/oder eine Hardware-Taste für eine Eingabe einer Bestätigung eines an der Anzeigeeinrichtung dargestellten Short Authentification Strings und/oder für eine Eingabe, dass ausgehend von einer unverschlüsselten Kommunikationsverbindung eine verschlüsselte Kommunikationsverbindung hergestellt werden soll und/oder für eine Eingabe auf, dass die Verschlüsselung einer Kommunikationsverbindung beendet werden soll,
-
Vorteilhaft sind Ausführungsformen der kryptographischen Vorrichtung so ausgebildet, dass die Verbindung des zweiten Anschlusses der kryptographischen Vorrichtung mit dem IP-Netz und dem Telefonnetz über ein Local Area Network erfolgen kann.
-
Bei Ausführungsformen sind Software und Hardware der kryptographischen Vorrichtung in Kombination dazu ausgebildet, zwischen den wenigstens zwei kryptographischen Vorrichtungen automatisch über das IP-Netz eine verschlüsselte Kommunikationsverbindung aufzubauen, wenn zur Herstellung der unverschlüsselten Kommunikationsverbindung über das Telefonnetz eine Telefonnummer verwendet wird, zu der für die dieses Merkmal (d.h. dass automatisch eine verschlüsselte Verbindung aufgebaut werden soll) in der der kryptographischen Vorrichtung gespeichert ist.
-
Bevorzugte Ausführungsformen der kryptographischen Vorrichtung sind ferner dazu ausgebildet, mittels des Interactive-Connectivity-Establishment-Verfahrens über das IP-Netz eine erste Kandidatenliste mit den Transportadressen zu ermitteln, die für eine routbare Kommunikation mit zumindest einer weiteren kryptographischen Vorrichtung verwendet werden können, die erste Kandidatenliste unter einer ersten Registrationsidentifikation auf einem mit dem IP-Netz verbundenen Hilfsserver zu speichern, auf Aufforderung von zumindest einer weiteren kryptographischen Vorrichtung die erste Registrationsidentifikation anstelle der ersten Kandidatenliste an diese zu senden, und beim Empfang einer weiteren Registrationsidentifikation von der zumindest einen weiteren kryptographischen Vorrichtung, über die ein weiteres SIP-Telefon mit dem IP-Netz und dem Telefonnetz verbunden ist, die unter der weiteren Registrationsidentifikation gespeicherte weitere Kandidatenliste von dem mit dem IP-Netz verbundenen Hilfsserver abzurufen und die unter dieser weiteren Registrationsidentifikation gespeicherte weitere Kandidatenliste zur Herstellung einer routbaren Kommunikationsverbindung zwischen den beiden kryptographischen Vorrichtungen zu nutzen.
-
Um eine Anbindung der kryptographischen Vorrichtung an ein Telefonnetz und ein davon getrenntes IP-Netz zu ermöglichen, weisen Ausführungsformen der kryptographischen Vorrichtung ferner einen dritten Anschluss zur direkten Verbindung mit einem Telefonnetz auf.
-
Konkrete Ausführungsformen der Erfindung werden nachfolgend anhand der Figuren näher erläutert. Es sei darauf hingewiesen, dass die Erfindung nicht auf die Ausführungsformen der beschriebenen Ausführungsbeispiele beschränkt, sondern durch den Umfang der beiliegenden Patentansprüche bestimmt ist. Insbesondere können die einzelnen Merkmale bei erfindungsgemäßen Ausführungsformen in anderer Anzahl und Kombination als bei den nachfolgend angeführten Beispielen verwirklicht sein. Bei der folgenden Erläuterung einiger Ausführungsbeispiele der Erfindung wird auf die beiliegenden Figuren Bezug genommen, von denen
- 1 eine schematische Darstellung eines Systems zum sicheren verschlüsselten Telefonieren über ein IP-Netz zeigt, wobei der Verbindungsaufbau und das Verbindungsmanagement über ein Telefonnetz erfolgen,
- 2 ein Blockschaltbild einer in dem System von 1 eingesetzten Krypto-Box zeigt, und
- 3 eine graphische Darstellung zur Veranschaulichung der Vorgänge beim Aufbau einer verschlüsselten Telefonverbindung mit einem wie in 1 dargestellten System zeigt.
-
Die schematische Darstellung von 1 veranschaulicht den Aufbau eines Systems zur Herstellung einer sicheren, d. h. abhörsicheren, Telefonverbindung zwischen zwei SIP-Telefonen 1 und 1'. Die SIP-Telefone 1 und 1' sind jeweils über eine kryptographische Vorrichtung 2 bzw. 2', nachfolgend auch als Krypto-Box bezeichnet, mit einem Local Area Network (LAN) 3 bzw. 3', beispielsweise einem Unternehmens- oder Heimnetz, verbunden. Jedes der beiden lokalen Netzwerke 3 bzw. 3' ist über einen -Router 4 bzw. 4' mit einem IP-Netz 5 verbunden. Zusätzlich ist jedes der beiden Netzwerke 3 bzw. 3' über eine jeweilige Telekommunikationsnetzschnittstelle 8 bzw. 8' mit einem gegebenenfalls digitalen Telefonnetz 9 verbunden.
-
Bei Nichtvorhandensein eines LAN 3 bzw. 3' zur Anbindung der kryptographischen Vorrichtungen 2 bzw. 2' an ein IP-Netz 5 und ein Telefonnetz 9 kann bzw. können die kryptographische(n) Vorrichtung(en) 2 bzw. 2' direkt an ein IP-Netz 5 und ein Telefonnetz 9 (wenn erforderlich über eine Telekommunikationsnetzschnittstelle 8) angebunden sein.
-
Bei dem in 1 veranschaulichten Telefonnetz 9 kann es sich beispielsweise um ein digitales Telekommunikationsnetz wie beispielsweise ein ISDN oder ein All-IP-Kommunikationsnetz handeln, in wenigen Fällen um ein analoges Netz, bisweilen aber auch um eine Kombination digitaler und analoger Netze. Entsprechende Netze sind in der Regel zur Übermittlung menschlicher Sprache und nicht für eine Übertragung von Daten optimiert und sind daher für die verschlüsselte Datenübertragung (beispielsweise nach dem Secure Real-Time Transport Protocol SRTP oder dem ZRTP) nicht einsetzbar.
-
Daher wird parallel zu einer bestehenden SIP-Telefonverbindung über ein Telefonnetz 9 eine Verbindung zur Übertragung verschlüsselter Datenpakte über das IP-Netz 5 aufgebaut. Dazu müssen die IP-Adressen/Transportadressen der jeweiligen Kommunikationspartner und damit der kryptographischen Vorrichtungen 2 bzw. 2' bekannt sein. Diese Bedingung ist nur selten erfüllt, da Telefonate in Telefonnetzen selten vollständig über All-IP-Netze geführt werden, und auch in IP-Netzen häufig Network-Address-Translatoren (NAT) vorhanden sind, welche die eigentliche IP-Adressen/Transportadressen der Kommunikationsteilnehmer verschleiern (indem sie z.B. nach außen temporäre IP-Adressen verwenden und diese in interne Adressen umwandeln.
-
Eine Verbindung zwischen zwei SIP-Telefonen unter Verwendung einer klassischen Telefonnummer kann über ein Telefonnetz hergestellt werden. Hierzu sind die beiden SIP-Telefone 1 bzw. 1' jeweils mithilfe einer geeigneten Telekommunikationsnetzschnittstelle 8 bzw. 8' an das Telefonnetz 9 angebunden, im in 1 dargestellten Fall jeweils über ein zugehöriges Local Area Network (LAN) 3 bzw. 3'.
-
Bezüglich der Ausgestaltung der beiden SIP-Telefone 1 und 1' bestehen prinzipiell keine Beschränkungen, solange sie als Hardphone mit nur einem Kommunikationsanschluss ausgeführt sind. Bei einem Softphone, das auf einem datenverarbeitenden Gerät ausgeführt wird, besteht prinzipiell die Gefahr, dass über andere Kommunikationskanäle des Geräts Gesprächsdaten und auch ein für eine Verschlüsselung verwendeter Schlüssel unbefugt ausgeleitet werden, beispielsweise durch manipulierte Hard- und/oder Software. Unter Gesprächsdaten sind in dieser Schrift Audio- und/oder Videodaten zu verstehen, d. h. rein auditive Daten wie sie z. B. bei einem klassischen Telefonat anfallen, Videodaten wie sie z. B. bei der Übertragung von Bildern und Filmen anfallen und eine Kombination aus Audio- und Videodaten wie sie z. B. bei einem Bildtelefonat oder einer Videokonferenz anfallen.
-
Wird das SIP-Telefon 1' (angerufenes Telefon) von dem SIP-Telefon 1 (anrufendes Telefon) mithilfe einer Telefonnummer angerufen, erfolgt der Verbindungsaufbau zwischen den beiden SIP-Telefonen 1 und 1' in der gezeigten Ausführungsform über das Telefonnetz 9 unter Einbindung der Telekommunikationsnetzschnittstellen 8, 8' und Einsatz des SIP-Protokolls. Das SIP-Protokoll ist ein offener Standard, der die Verbindungsmodalitäten zwischen zwei Geräten, die auch als Endpunkte bezeichnet werden, regelt.
-
Die Telekommunikationsnetzschnittstellen 8 und 8' zu dem gegebenenfalls digitalen Telefonnetz 9 können von einem SIP-Proxy bzw. Media-Gateway gebildet sein.
-
Für eine Verbindung der beiden SIP-Telefone 1 und 1' über ein IP-Netz 5 sind die beiden LANs 3 und 3' jeweils über einen Router 4 bzw. 4' mit dem IP-Netz 5 verbunden. Die Router 4 und 4' sind in der Regel NAT (Network Address Translation / Netzwerkadressübersetzung) -fähig. Im Prinzip kann auch zwischen dem LAN 3, 3' und dem IP-Netz 5 ein SIP-Proxy (nicht gezeigt) vorgesehen sein. Das SIP-Protokoll lässt zwar auch eine direkte Peer-to-Peer Verbindung zwischen SIP-Telefonen zu. In der Praxis werden aber Telefonnummern verwendet, welche durch einen SIP-Proxy erst in geeignete IP-Adressen umgesetzt werden müssen.
-
In die Verbindung zwischen dem SIP-Telefon 1 und dem LAN 3 ist eine Krypto-Box 2, in die Verbindung zwischen dem SIP-Telefon 1' und dem LAN 3' eine Krypto-Box 2' geschaltet. Die beiden Krypto-Boxen 2 und 2' sind identisch aufgebaut und ausgebildet, den Verbindungsstatus am jeweiligen Endpunkt der Telefonverbindung zu überwachen und im IP-Netz das ICE-Verfahren sowie das ZRTP-Protokoll zu implementieren nachdem eine Verbindung über das Telefonnetz 9 aufgebaut wurde.
-
2 zeigt ein Blockschaltbild einer Krypto-Box 2 bzw. 2'. Um eine sichere Telefonverbindung zu gewährleisten, sind die Krypto-Boxen 2, 2' aus Open-Source-Hardware-Komponenten aufgebaut in der ausschließlich Open-Source-Software eingesetzt wird.
-
Herzstück der Krypto-Boxen 2, 2' ist ein Field Programmable Gate Array (FPGA) 20, dessen Schaltungsstruktur mit Hilfe einer in einer Hardwarebeschreibungssprache formulierten Konfigurationsdatei hergestellt wurde. Die Schaltungsstruktur umfasst eine CPU und vorzugsweise weitere Schaltungen zur Bildung von Hardwaremodulen für die Realisierung zusätzlicher Hardwarefunktionen. Die Hardwaremodule können zur Ausführung zeitkritischer Algorithmen (beispielsweise zur Verschlüsselung und/oder Komprimierung) außerhalb der CPU ausgebildet sein. Vorzugsweise umfasst das FPGA 20 Hardwaremodule zur Ausführung der symmetrischen Verschlüsselung AES und der Hash-Funktion SHA-1. Es können in dem FPGA 20 auch Hardwaremodule zum Realisieren einer Anbindung von externen Komponenten ausgebildet sein. Die Schaltungsstruktur der CPU basiert auf einer Open-Source Architektur, die über eine Hardwarebeschreibungssprache vollständig definiert ist. Bei Ausführungsformen basiert die Schaltungsstruktur der in dem FPGA 20 realisierten CPU auf einer Open-Source CPU-Definition wie dem Open RISC-Projekt (https://openrisc.io), beispielsweise auf der CPU-Definition morlkx, deren komplette Definition in der Hardwarebeschreibungssprache Verilog vorliegt.
-
Eine Krypto-Box 2, 2' weist ferner einen ersten Anschluss 23, der zur Herstellung einer Kommunikationsverbindung mit einem ersten SIP-Telefon ausgebildet ist, und einen zweiten Anschluss 24 auf, der zur Herstellung einer Kommunikationsverbindung mit einem weiteren SIP-Telefon über ein Telefonnetz bzw. ein IP-Netz ausgebildet ist. Vorzugsweise sind beide Anschlüsse als Ethernet-Anschlüsse ausgebildet, sodass die Krypto-Box umstandslos mit dem LAN 3, 3' oder dem SIP-Proxy bzw. Gateway 8, 8' und dem Router 4, 4' verbunden werden kann. Der mit dem FPGA verbundene Speicher 21 dient zum Speichern von für den Betrieb der Krypto-Box 2, 2' erforderlichen Daten. Die Krypto-Box 2, 2' weist ferner eine Benutzerschnittstelle 22 auf, die ein Display zur Anzeige des Verbindungs- und Sicherheitsstatus sowie des SAS umfasst. Die Benutzerschnittstelle 22 kann ferner eine am Gehäuse zugängliche Hardware-Taste umfassen und/oder als graphische Benutzerschnittstelle mit einem Soft-Button ausgebildet sein, über die ein Benutzer einen Prozess manuell starten kann, beispielsweise eine Quittierung eines SAS, der angezeigt wird, wenn nach einer wie oben beschrieben per SIP zunächst über das Telefonnetz 9 aufgebauten Sprachverbindung zu einer verschlüsselten Sprachverbindung über ein IP-Netz gewechselt werden soll. Die Krypto-Box 2, 2' ist hierzu ausgebildet, den Diffie-Hellman-Schlüsselaustausch zum Aufbau einer RTP-Verbindung (SRTP) auszuführen und den SAS zu generieren. Die Krypto-Box 2, 2' ist ferner ausgebildet, nach Aufbau einer ZRTP-Verschlüsselung bei vorliegender Schlüsselkontinuität die Verbindung automatisch als sicher zu signalisieren, so dass dies nicht mehr per Benutzereingabe bestätigt werden muss. Ausführungsformen der Krypto-Box 2, 2' weisen ferner einen dritten (in der Figur nicht dargestellten) Anschluss auf, der ausschließlich zur Herstellung einer Kommunikationsverbindung mit einem weiteren SIP-Telefon über ein Telefonnetz 5 ausgebildet ist, während der zweite Anschluss 24 sowohl zur Herstellung einer Kommunikationsverbindung mit einem weiteren SIP-Telefon über ein IP-Netz 9 als auch zur Verbindung mit einem LAN für die Herstellung einer Kommunikationsverbindung von sowohl mit einem Telefonnetz als auch einem IP-Netz ausgebildet ist. In diesem Fall kann die Krypto-Box sowohl direkt mit einem Telefonnetz und einem IP-Netz verbunden werden als auch indirekt über ein LAN.
-
Die graphische Darstellung von 3 veranschaulicht die Abfolge der Vorgänge zum Aufbau einer verschlüsselten Telefonverbindung mit einem wie in 1 dargestellten System.
-
Wenn das SIP-Telefon 1' von dem SIP-Telefon 1 mit Hilfe einer Telefonnummer angerufen wird, wird zwischen den beiden SIP-Telefonen 1 und 1' unter Einbindung der Telekommunikationsnetzschnittstellen 8, 8' und Ausführung des SIP-Protokolls über das Telefonnetz 9 eine ungesicherte Telefonverbindung aufgebaut, wobei der Verbindungsaufbau nach der Bestätigung des SIP-Responses durch „ACK“ abgeschlossen ist. In 3 ist der Vorgang zum Einrichten einer solchen Verbindung mit A bezeichnet. Danach erfolgt die eigentliche Übertragung von Audiodaten per RTP (Vorgang B).
-
Im darauf folgenden Vorgang C beginnen die beiden Krypto-Boxen mit der ICE-Strategie, d. h. mit dem oben beschriebenen Erstellen der Kandidatenliste, um eine transparente Kommunikation der SIP-Telefone 1 und 1' miteinander über das IP-Netz zu ermöglichen. Dieser Schritt wird nur gestartet, wenn beide SIP-Telefone 1 und 1' über eine Krypto-Box 2 verfügen. Dieser Schritt kann automatisch gestartet werden, oder auf Anforderung durch einen Benutzer einer der beiden Krypto-Boxen. Bei einer Ausführungsform senden beide Krypto-Boxen 2, 2' in Schritt D anschließend ihre jeweilige ICE-Offer mit der zuvor erstellten Kandidatenliste über das Telefonnetz 9 an die jeweils andere Krypto-Box 2', 2, wobei die Daten mithilfe des DTMF-Verfahrens (Mehrfrequenzwahlverfahrens) übertragen werden.
-
Die Übertragung eines kompletten Satzes von Kommunikationsmöglichkeiten einer Kandidatenliste mit Hilfe des DTMF-Verfahrens dauert jedoch ziemlich lange. Daher werden die Kandidatenlisten bei einer besonders bevorzugten Ausführungsform stattdessen in Schritt E an einen ICE-Hilfsserver 6 gesendet, der an das IP-Netz angebunden bzw. in dieses eingebunden ist und der jede der Kandidatenlisten mit den per ICE ermittelten Kommunikationsoptionen (Transportadressen) unter einer eindeutigen Registrationsidentifikation wie beispielsweise einer Registriernummer hinterlegt. Die Hinterlegung kann von der Krypto-Box nach dem Aufbau der ungesicherten Telefonverbindung und dem Erstellen der Kandidatenliste vorgenommen werden, jedoch nicht vorab erfolgen, da die Transportadressen für den Zugang von außen in der Regel nur temporär gültig sind. Da die zur Hinterlegung erforderliche Datenübertragung über ein IP-Netz anders als bei einer DTMF-Übertragung jedoch in Sekundenbruchteilen erfolgt, ist der Vorgang für einen Gesprächsteilnehmer nicht als Verzögerung wahrnehmbar. Nach der Hinterlegung sendet der Hilfsserver 6 die zugeordneten Registrationsidentifikationen an die jeweiligen Krypto-Boxen (Vorgang F). Wenn eine die Vorgänge E und F umfassende Hinterlegung der Kandidatenlisten der Krypto-Boxen 2 und 2' stattgefunden hat, sendet jede der Krypto-Boxen 2, 2' statt der ICE-Offer wie in Vorgang D lediglich die zuvor vom ICE-Hilfsserver erhaltene Registrationsidentifikation per DTMF über die ungesicherte Telefonverbindung an die Krypto-Box 2' (Vorgang G). Nach dem Erhalt der Registrationsidentifikationen ruft jede der Krypto-Boxen 2', 2 die am ICE-Hilfsserver 6 unter der erhaltenen Registrationsidentifikation hinterlegte Kandidatenliste ab (Vorgang H).
-
Bei Verwendung eines Hilfsservers 6 erfolgt die Abfolge der Vorgänge E, F, G und H alternativ zur Ausführung zu Vorgang D. Durch die Einbindung des ICE-Hilfsservers kann die zum Aufbau einer Verbindung erforderliche Zeit stark verkürzt werden. Um die oben beschriebene Hinterlegung von Kandidatenlisten zu ermöglichen, wird die IP-Adresse des Hilfsservers 6 in den Krypto-Boxen 2, 2' vorab hinterlegt.
-
In dem an den Vorgang D bzw. H anschließenden Vorgang I prüft jede der Krypto-Boxen 2, 2' die durch die Transportadressen in der jeweils erhaltenen Kandidatenliste definierten Verbindungen durch Senden eines STUN-Requests an die jeweilige Transportadresse der anderen Krypto-Box 2' 2. Hierdurch können Einschränkungen durch z. B. einen NAT, der auf einem oder beiden der Router 4 und 4' installiert sein kann, oder einen an das IP-Netz 5 angebundenen STUN- und/oder TURN-Server 7 überwunden werden.
-
Im an den Vorgang I anschließenden Vorgang J wird mit den geprüften Verbindungen schließlich eine RTP-Verbindung über das IP-Netz 5 aufgebaut.
-
Nach dem Aufbau der RTP-Verbindung über das IP-Netz 5 wird in Vorgang K das ZRTP-Verfahren durch Ausführung des Diffie-Hellman-Verfahren gestartet und der nach dem Schlüsselaustausch generierte SAS in Vorgang L an den Benutzerschnittstellen 22 der beiden Krypto-Boxen 2 und 2' angezeigt. Wenn der SAS in Vorgang M von beiden Gesprächsteilnehmern über die durch ZRTP gesicherte Sprachverbindung bestätigt wird oder über die ungesicherte Sprachverbindung von Vorgang B bestätigt wird (die in Vorgang A über das Telekommunikationsnetz aufgebaut wurde), gilt die in Vorgang K gestartete verschlüsselte Verbindung als nicht korrumpiert (womit ein Mittelsmannangriff ausgeschlossen ist), sodass die Gesprächsdaten (Audio- und/oder Videodaten) im anschließenden Vorgang N weiterhin verschlüsselt übertragen werden können. Die Übertragung der Gesprächsdaten zwischen den jeweiligen Krypto-Boxen und den an der jeweiligen Krypto-Box direkt angeschlossen SIP-Telefonen erfolgt unverschlüsselt, die Übertragung der Gesprächsdaten zwischen den Krypto-Boxen 2 und 2' erfolgt verschlüsselt. Nach Aufbau der verschlüsselten Verbindung über das IP-Netz erfolgt keine Übertragung von Gesprächsdaten über das Telefonnetz. Die Telefonverbindung über das Telefonnetz muss zur Verwaltung der Verbindung (Beenden, Anrufbereitschaft, Weiterverbinden, Konferenzschaltung) jedoch weiterhin aufrechterhalten werden. Die Bestätigung des SAS entfällt, wenn eine erneute zu verschlüsselnde Verbindung zwischen denselben Krypto-Boxen zu einem späteren Zeitpunkt aufgebaut wird (Schlüsselkontinuität).
-
Die Sicherheit der Verbindung zwischen den Krypto-Boxen wird durch mehrere Faktoren gewährleistet. Hierzu zählen ein Aufbau der Krypto-Boxen aus Open-Source-Hardware, d. h. alle elektronischen Komponenten der Krypto-Boxen werden von Open-Source-Hardwarekomponenten gebildet, und die ausschließliche Verwendung von Open-Source-Software für den Betrieb der Krypto-Boxen. Die Sicherheit wird durch einen wie oben beschriebenen auf die Verschlüsselungsaufgabe spezialisierten FPGA erhöht. Da die SIP-Telefone bei besonders bevorzugten Ausführungsformen über eine Ethernetleitung direkt mit der jeweiligen Krypto-Box verbunden sind, gibt es keine Kommunikationskanäle, über die auf die unverschlüsselten Gesprächsdaten unbefugter weise zugegriffen werden kann.