Pairing: Difference between revisions

From
Jump to navigation Jump to search
Line 49: Line 49:
Der Vorteil des Verfahrens ist, die Authetifizierung bei einem persönlichen Treffen ohne ein dritte Instanz oder ähnliches erfolgt. Dazu sind vier Schritte nötig:
Der Vorteil des Verfahrens ist, die Authetifizierung bei einem persönlichen Treffen ohne ein dritte Instanz oder ähnliches erfolgt. Dazu sind vier Schritte nötig:
# ''Selecting and Counting''
# ''Selecting and Counting''
In der ersten Phase werden die zu tauschenden Daten ausgewählt und die Anzahl der Teilnehmer N festgestellt
In der ersten Phase werden die zu tauschenden Daten ausgewählt und die Anzahl der Teilnehmer N festgestellt
# ''Commitment''
# ''Commitment''
In diesem Schritt wird ein Protokoll Commitment Wert (beispielsweise eine Zufallszahl) erzeugt. Um eine Manipulation der ausgetauschten Daten zu verhindern wird aus dem Protokoll Commitment und den im vorigen Schritt markierten Daten ein Hash erzeugt, das Daten Commitment. Jedes Teilnehmergerät sendet nun dieses Daten Commitment an alle anderen Teilnehmer. Nach diesem Schritt muss jeder neben seinem Eigenen <math>N-1</math> Daten Commitments empfangen haben. Stimmt diese Anzahl nicht, ist davon auszugehen, dass ein Angreifer versucht den Austausch zu behindern oder falsche Daten einzuschleusen.
In diesem Schritt wird ein Protokoll Commitment Wert (beispielsweise eine Zufallszahl) erzeugt. Um eine Manipulation der ausgetauschten Daten zu verhindern wird aus dem Protokoll Commitment und den im vorigen Schritt markierten Daten ein Hash erzeugt, das Daten Commitment. Jedes Teilnehmergerät sendet nun dieses Daten Commitment an alle anderen Teilnehmer. Nach diesem Schritt muss jeder neben seinem Eigenen <math>N-1</math> Daten Commitments empfangen haben. Stimmt diese Anzahl nicht, ist davon auszugehen, dass ein Angreifer versucht den Austausch zu behindern oder falsche Daten einzuschleusen.


==Quellen==
==Quellen==

Revision as of 08:43, 16 September 2010

Vorwort

Der Begriff "Pairing" stammt ursprünglich aus dem Jargon des Bluetooth. Er ist eigentlich eine Umschreibung für Verfahren die der Identifikation und Authentifikation von Kommunikationspartnern dienen. So allgemein formuliert benutzt man selbst beim telefonischen Anruf einen Pairing Mechanismus. Ruft Alice Bob an, kann sie an Hand der Stimme entscheiden ob tatsächlich Bob den Anruf angenommen hat oder nicht. In meinem Vortrag habe ich verschiedene Pairing Mechanismen vorgestellt, ohne jedoch den kryptographischen Hintergrund zu erläutern. Trotz der Allgemeinheit des Begriffs ist das Hauptanwendungsgebiet die Drahtloskommunikation.

Einleitung

Das Ziel aller hier vorgestellten Verfahren ist es, zwei oder mehrer Geräte zum sicheren Datenaustausch über drahtlose Kanäle zu konfigurieren. Sicher soll in diesem Zusammenhang heissen, das die Verbindung abhörsicher ist und die Identität der Kommunikationspartner authentifziert wurde, wobei nicht zwingend krypthographische Sicherheit gemeint ist. Desweiteren sollten die Verfahren schnell sein und komfortabel arbeiten um die benutzerfreundlichkeit zu gewährleisten. Bei den folgenden Verfahren lassen sich zwei grundsätzliche Ansätze unterscheiden. Entweder es wird auf eine dritte vertrauenswürdige Authorität zurück gegriffen oder es existiert ein gemeinsames Geheimniss, über welches die Authentizität sicher gestellt wird und zum Aufbau einer abhörsicheren Verbindung genutzt wird. Beide Verfahren haben naturgemäß ihre Vor- und Nachteile.

Einige Verfahren

===Bluetooth=== [1]

Legacy (vor Bluetooth 2.1)

Bei den ersten Versionen des Bluetoothfunks wurden jediglich PINs abgeglichen. Waren Geräte involviert, die keine Eingabemöglichkeiten besitzen, wurden Standartpins (wie 1234 oder 0000) benutzt. Bei allen anderen Geräten muss vom Benutzer an beiden Geräten die entsprechende PIN eingegeben werden. Dadurch wird ein gemeinsames Geheimniss über einen Out-of-Band-Kanal (Kommunikation ausserhalb des zur Kommunikation genutzten Kanals) hergestellt. Die Sicherheit des so hergestellten Kanals ist offensichtlich nicht sehr hoch beziehungsweise nicht vorhanden.

Secure Simple Parsing (SSP)

SSP ist der Pairing Mechanismus ab Bluetooth 2.1. Es basiert auf einer Public Key Cryptography und hat 4 verschiedene Operationsmodi

Just Works

Eingaben des Nutzers sind nicht erforderlich, es funktioniert einfach. Dieser Modus wird eingesetzt, wenn Geräte ohne Eingabe-/Ausgabemöglichkeiten beteiligt sind. Es ist sicherer als das Legacy Pairing mit Standartpins, schützt jedoch nicht vor einem Man-in-the-Middle Angriff.

Numerischer Vergleich

Dieser Modus setzt bei beiden Geräten ein Display und bei einem Gerät die Möglichkeit einer Binäreingabe (Ja oder Nein) voraus. Während der Verbindungsetablierung wird auf beiden Geräten eine 6-stellige PIN angezeigt, die dann an einem Gerät bestätigt werden muss. Sind die PINs gleich, kann eine Verbindung hergestellt werden. Sind sie verschieden, ist ein drittes Gerät im Spiel. Wird der Vergleich vom Benutzer ordentlich durchgeführt, ist diese Methode gegen Man-in-the-Middle Angriffe gefeit.

Passkey

Sind zwei Geräte beteiligt, von denen wenigstens eins ein Display besitzt und das Andere eine Möglichkeit zur Zifferneingabe, wird der Passkeymodus verwendet. Dabei wird auf dem ersten Gerät eine 6-stellige PIN angezeigt, die dann am anderen Gerät eingegeben werden muss. Auch besteht die Möglichkeit, einfach an beiden Geräten die selbe PIN einzugeben.

Out of Band

Es besteht beim Bluetooth die Möglichkeit mit Hilfe von Informationen eines anderen Kanals eine sichere Bluetoothverbindung zu erstellen. Denkbar wäre hier zum Beispiel Informationen von Bildern (Visueller Kanal), Tönen (Audiokanal) oder einen NFC-Kanal zu nutzen. Die Sicherheit hängt hier vom benutzten Out of Band Verfahren ab.

Seeing is Believing

Seeing is Believing ist ein Out of Band Verfahren, dass einen visuellen Kanal nutzt und so naturgemäß nur mit Geräten verwendbar ist, die ein Display und eine Kamera haben. In dem Paper [2], in dem das Verfahren vorgestellt wurde benutzt zur Implementations eines Testsystems Mobiltelefone mit integrierter Kamera.

Die Basis bildet eine Pubic Key Verschlüsselung. Hierbei werden die öffentlichen Schlüssel als zwei dimensionale Barcodes repräsentiert. Diese werden dann auf dem Display des Telefons angezeigt und vom anderen Telefon abfotografiert. So werden die nötigen Informationen zur Erstellung eines sicheren Kanals ausgetauscht. Die Autoren des Papers nennen diese Methode "demonstrative identification"

Shake them Up

Dieses Verfahren wurde 2005 am INRIA in Frankreich entwickelt [3]. Es zielt speziell auf rechenschwache Geräte, wie zum Beispiel drahtlose Sensoren, ab. Notwendig für das Verfahren ist ein anonymer Kanal. Das heisst die Quelle eines Datenpakets soll nicht bestimmbar sein. Um diese Forderung zu erfüllen, wird die Annahme getroffen, dass das Paket selbst keine Informationen über den Absender enthält.

das Verfahren selbst heisst "Keyless Key Agreement" und arbeitet wie folgt. Alice und Bob senden jeweils ein zufälliges Wort der Länge 2n und zeitlich randomisiert aus. Der daraus abgeleitete geheime Schlüssel besteht aus den Zeichen , sodass . Der ist durchschnittlich n Zeichen lang. Das Problem dieses Verfahrens liegt darin, dass sich an Hand der Signalstärken bestimmen lässt, welche Daten zu A oder B gehören und sich so auch das Schlüsselgeheimniss kompromitiert wird.

Um diesem Problem zu begegnen, müssen die beiden beteiligten Geräte um einander bewegt werden, um auch die Signallevel zu randomisieren und das Schlüsselgeheimniss zu bewahren.

SPATE

Small Group PKI-less Authenticated Trust Establishment oder SPATE ist ein Protokoll, dass zum Austausch sicherer und authetischer Daten innerhalb von kleinen Gruppen (max. etwa 10 Teilnehmer) über geringe Entfernungen (zum Beispiel bei einem persönlichen Treffen). Die Entwickler des Verfahrens [4] sehen seine Stärke im sicheren Austausch authtifizierter Kommunikationsdaten, wie zum Beispiel Emailaddressen mit den dazu gehörigen öffentlichen PGP-Schlüsseln zur weiterführenden gesicherten Kommunikation.

Der Vorteil des Verfahrens ist, die Authetifizierung bei einem persönlichen Treffen ohne ein dritte Instanz oder ähnliches erfolgt. Dazu sind vier Schritte nötig:

  1. Selecting and Counting

In der ersten Phase werden die zu tauschenden Daten ausgewählt und die Anzahl der Teilnehmer N festgestellt

  1. Commitment

In diesem Schritt wird ein Protokoll Commitment Wert (beispielsweise eine Zufallszahl) erzeugt. Um eine Manipulation der ausgetauschten Daten zu verhindern wird aus dem Protokoll Commitment und den im vorigen Schritt markierten Daten ein Hash erzeugt, das Daten Commitment. Jedes Teilnehmergerät sendet nun dieses Daten Commitment an alle anderen Teilnehmer. Nach diesem Schritt muss jeder neben seinem Eigenen Daten Commitments empfangen haben. Stimmt diese Anzahl nicht, ist davon auszugehen, dass ein Angreifer versucht den Austausch zu behindern oder falsche Daten einzuschleusen.

Quellen

  1. Wikipedia – Bluetooth [[1]]
  2. Seeing is Believing Jonathan M. McCune, Adrian Perrig, Michael K. Reiter, Carnegie Mellon University, 2004. [[2]]
  3. Shake Them Up Claude Castellucia, Pars Mutaf, Institut National de Recherche en Informatique et en Automatique, 2005. [[3]]
  4. Spate: Small-group pki-less authenticated trust establishment Yue-hsun Lin , Ahren Studer , Hsu-chun Hsiao , Jonathan M. Mccune , King-hang Wang , Maxwell Krohn , Phen-lan Lin , Adrian Perrig , Hung-min Sun , Bo-yin Yang, National Tsing Hua University, Carnegie Mellon University, Academia Sinica, Providence University, 2009. [[4]]