Secret Handshakes: Difference between revisions

From
Jump to navigation Jump to search
Line 25: Line 25:
Bei den Secret Handshakes wird eine spezielle bilineare Abbildung ''ê: G_1 x G_1 → G_2'' benötigt. Diese hat muss folgende Eigenschaften besitzen:
Bei den Secret Handshakes wird eine spezielle bilineare Abbildung ''ê: G_1 x G_1 → G_2'' benötigt. Diese hat muss folgende Eigenschaften besitzen:
* ''G_1'' und ''G_2'' sind zyklische Gruppen mit der Primordnung ''q''
* ''G_1'' und ''G_2'' sind zyklische Gruppen mit der Primordnung ''q''
* für alle ''a,b'' Element aus ''Z_q'' gilt: ''ê(aP, bQ) = ê(P, Q)^ab''
* für alle ''a, b'' Element aus ''Z_q'' gilt: ''ê(aP, bQ) = ê(P, Q)^ab''


''Z_q'' soll hier für einen Restklassenring stehen.
''Z_q'' soll hier für einen Restklassenring stehen.

Revision as of 15:50, 28 June 2007

[TODO] Einleitung

Mathemathische Grundlagen

Um die nachfolgenden Funktionsweise eines Secret Handshakes besser zu verstehen, gehen wir zunächst kurz auf die verwendeten mathematischen Konstrukte ein.

Gruppen

Eine Gruppe G(M, *) besteht aus einer Menge M und einer Verknüpfung *. Weiterhin ist in der Menge M das neutrale Element der Gruppe G enthalten. Ein Gruppe besitzt ein inverses Element. Abschließend ist die Verknüpfung einer Gruppe assoziativ.

Bei Secret Handshakes werden allerdings zyklische Gruppen verwendet.

zyklische Gruppen

Beispiel (zyklische) Gruppen

Eine endliche zyklische Gruppe G(M, *) heißt zyklisch, wenn die Menge M mindestens ein Element g mit der Eigenschaft M = {g¹, g², g³, ... , g^n} enthält. Man nennt g dann erzeugendes Element der Gruppe. n stellt die Ordnung der Gruppe dar. Gruppen mit einer primen Ordnung q sind immer zyklisch.

bilineare Abbildungen

Ein weiteres wichtiges Thema zum Verständnis der Secret Handshakes sind bilineare Abbildungen.

Eine Abbildung f: E x F → G nennt man bilinear, wenn folgenes gilt:

  • für festes x: Die Abbildung f(x, ·): F → G ist linear.
  • für festes y: Die Abbildung f(·, y): E → G ist linear.

speziell benötigte lineare Abbildung

das bilineare Diffie-Hellman-Problem

Bei den Secret Handshakes wird eine spezielle bilineare Abbildung ê: G_1 x G_1 → G_2 benötigt. Diese hat muss folgende Eigenschaften besitzen:

  • G_1 und G_2 sind zyklische Gruppen mit der Primordnung q
  • für alle a, b Element aus Z_q gilt: ê(aP, bQ) = ê(P, Q)^ab

Z_q soll hier für einen Restklassenring stehen.

Modifizierte [Weil]- und [Tate]-Paarungen über supersinguläre [elliptische Kurven] sind Beispiele für solche bilineare Abbildungen. Diese sind effizient berechenbar, nicht degenerativ und das bilineare [Diffie-Hellman]-Problem gilt für sie als schwer berechenbar.

Hashfunktionen

Allgemeines Prinzip

[TODO]

Pairing Based Handshake Schema

[TODO]

Ablauf im Detail

[TODO]

Sicherheit gegen Abhören

[TODO]

Zusätzliche Eigenschaften

[TODO]

Anpassung des TLS Handshakes

[TODO]

Beweisskizze für die formale Sicherheit

[TODO]

Quellen

  • Secret Handshakes from Pairing-Based Key Agreements (2003) Dirk Balfanz, Glenn Durfee, Narendar Shankar, Diana Smetters, Jessica Staddon, Hao-Chi Wong. [1]