Strongly Secure One-Round GAKE
Strongly Secure One-Round Group Authenticated Key Exchange in the Standard Model
Yong Li, Zheng Yang
Ruhr-University Bochum CANS 2013
1 / 40
Strongly Secure One-Round Group Authenticated Key Exchange in the - - PowerPoint PPT Presentation
Strongly Secure One-Round GAKE Strongly Secure One-Round Group Authenticated Key Exchange in the Standard Model Yong Li, Zheng Yang Ruhr-University Bochum CANS 2013 1 / 40 Introduction, Motivation and Contributions GAKE Security Model
Strongly Secure One-Round GAKE
1 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
2 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I video conferencing I collaborative applications, etc.
I Confidentiality I Integrity I Authentication 3 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I a shared symmetric session key for group members I secure multicasting network layer among the parties using
Party 1 Party n m
Confidential Channel
C:=Enc(k,m) m:=Dec(k,C) m Party i m
C
f i d e n t i a l C h a n n e l C
f i d e n t i a l C h a n n e l
Internet
n-Party Group
4 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Let G and GT be two cyclic groups of prime order p,
I Party A: skA: a
$
I Party B: skB: b
$
I Party C: skC: c
$
5 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
Party (A)
a Zp* A := ga K := e(B, C)a
Party (B)
b Zp* B := gb K := e(A, C)b
party (C)
c Zp* C := gc K := e(A, B)c A B
Session key
5 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
Party (A)
a Zp*, A := ga K := e(D1, D3)a
Attacker (D)
d1, d2, d3 Zp* D1:= gd1 , D1:= gd2 , D1:= gd3
A D1
KA := e(A, D3)d1, KB := e(B, D1)d2, KC := e(C, D2)d3
D1 B
Party (C)
c Zp*, C := gc K := e(D2, D3)c
Party (A)
b Zp*, B := gb K := e(D1, D2)b
5 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
6 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
7 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
8 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
1: Chosenn Message 2: Known Session Key
1: Chosenn Message 2: Known Session Key 3: Adaptive Corruption 1: Chosenn Message 2: Known Session Key 3: Adaptive Corruption 3.1: Perfect Forward Secrecy 4: Leakage of Session States 1: Chosenn Message 2: Known Session Key 3: Adaptive Corruption 3.1: Weak Perfect Forward Secrecy 3.2: Key Compromise Impersonation 4: Leakage of Session States 5: Chosen Identity and Public Key
8 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
9 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
10 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
11 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A
12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
Send (πi
s ,m)
m’
Send-query 12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
Corrupt(IDi)
Corrupt-query 12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
RegisterCorrupt(ID*, pkID*, proof ID*) for dishonest parties ID*
12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
RevealKey(πi
s)
Session Key: Ki
s
RevealKey-query 12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
StateReveal(πi
s)
State sti
s
StateReveal-query 12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ID1 IDi ID2 IDi+1 IDl-1 IDl
Adversary A GAKE Security Game
Test (πi
s)
Kb Test-query Flip b ∈{0,1} K0=rand, K1= K* 12 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
13 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
13 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
i ,j6=i be a set
14 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
15 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
16 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
17 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I output: a set of system parameters storing in a variable
$
I output: (skID, pkID) 2 {PK, SK} for party ID and a
$
I output: a message mIDi to be sent in a protocol pass.
I output: session key K 2 KORGAKE. 18 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
19 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
20 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Symmetric bilinear groups
$
$
I A target collision resistant hash function
$
I A pseudo-random function family
21 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Party ˆ
A = a
$
p, hA = TCRHF(A)
A = (A, tA) = (A = ga,tA = (uh3
A
4 uh2
A
3 uhA 2 u1)a)
I Party ˆ
B = b
$
p, hB = TCRHF(B)
B = (B, tB) = (A = gb,tB = (uh3
B
4 uh2
B
3 uhB 2 u1)b)
I Party ˆ
C = c
$
p, hC = TCRHF(C)
C = (C, tC) = (C = gc,tC = (u h3
C
4 uh2
C
3 uhC 2 u1)c)
22 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Party ˆ
$
p, X := gx
X
4 uh2
X
3 uhX 2 u1)x
I Party ˆ
$
p, Y := gy
1 uh2
Y
2 uh3
Y
3 )y
I Party ˆ
$
p, Z := gz
1 uh2
Z
2 uh3
Z
3 )z
23 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I sid := ˆ
I hB = TCRHF(B), hC = TCRHF(C), hY = TCRHF(Y) and
24 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I if e(tB, g) 6= e(u0uhB
1 uh2
B
2 uh3
B
3 , B) or
1 uh2
C
2 u h3
C
3 , C) or
1 uh2
Y
2 uh3
Y
3 , Y) or
1 uh2
Z
2 uh3
Z
3 , Z)
I then “rejects” I else k := e(BY, CZ)a+x and ke := PRF(k, sid) I Return the session key: ke 25 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
26 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
ˆ A
x
$
Z∗
p, X = gx
k := e(BY, CZ)a+x sk ˆ
A = a $
← Z∗
p
pk ˆ
A = (A, tA) := (ga, (u h3 A 4 u h2 A 3 uhA 2 u1)a)
Ke := PRF(k, sid) tX := (uh3
X
4 uh2
X
3 uhX 2 u1)x
Reject if either
sid = ˆ A||A||tA||X||tX|| ˆ B||B||tB||Y ||tY || ˆ C||C||tC||Z||tZ
hB := TCRHF(B) hC := TCRHF(C) hY := TCRHF(Y ) hZ := TCRHF(Z) UB := uh3
B
4 uh2
B
3 uhB 2 u1
UC := uh3
C
4 uh2
C
3 uhC 2 u1
UY := uh3
Y
4 uh2
Y
3 uhY 2 u1
UZ := uh3
Z
4 uh2
Z
3 uhZ 2 u1
e(tB, g) 6= e(UB, B) or e(tC, g) 6= e(UC, C) or e(tY , g) 6= e(UY , Y ) or e(tZ, g) 6= e(UZ, Z)
ˆ B
y
$
Z∗
p, Y = gy
k := e(AX, CZ)b+y sk ˆ
B = b $
← Z∗
p
pkB = (B, tB) := (gb, (u
h3 B 4 u h2 B 3 uhB 2 u1)b)
Ke := PRF(k, sid) tY := (uh3
Y
4 uh2
Y
3 uhY 2 u1)y
Reject if either hA := TCRHF(A) hC := TCRHF(C) hX := TCRHF(X) hZ := TCRHF(Z) UA := uh3
A
4 uh2
A
3 uhA 2 u1
UC := uh3
C
4 uh2
C
3 uhC 2 u1
UX := uh3
X
4 uh2
X
3 uhX 2 u1
UZ := uh3
Z
4 uh2
Z
3 uhZ 2 u1
e(tA, g) 6= e(UA, A) or e(tC, g) 6= e(UC, C) or e(tX, g) 6= e(UX, X) or e(tZ, g) 6= e(UZ, Z)
ˆ C
z
$
Z∗
p, Z = gz
k := e(AX, BY )c+z sk ˆ
C = c $
← Z∗
p
pk ˆ
C = (C, tC) := (gc, (u h3 C 4 u h2 C 3 uhC 2 u1)c)
Ke := PRF(k, sid) tZ := (uh3
Z
4 uh2
Z
3 uhZ 2 u1)z
Reject if either hA := TCRHF(A) hB := TCRHF(B) hX := TCRHF(X) hY := TCRHF(Y ) UA := uh3
A
4 uh2
A
3 uhA 2 u1
UB := uh3
B
4 uh2
B
3 uhB 2 u1
UX := uh3
X
4 uh2
X
3 uhX 2 u1
UY := uh3
Y
4 uh2
Y
3 uhY 2 u1
e(tA, g) 6= e(UA, A) or e(tB, g) 6= e(UB, B) or e(tX, g) 6= e(UX, X) or e(tY , g) 6= e(UY , Y ) broadcast( ˆ A, A, tA, X, tX) broadcast( ˆ B, B, tB, Y, tY ) broadcast( ˆ C, C, tC, Z, tZ) Target Collision Resistant Hash Function (3, Poly)-wPHF PRF
27 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Let PG = (G, g, GT, p, e) denote the description of
I Given (g, ga, T) decide whether or not T = e(g, g)a3 28 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
29 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I n-mulitilinear groups
$
$
$
I a target collision resistant hash function
$
I a pseudo-random function family PRF(·, ·) :
30 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Party ˆ
Di = di
$
p and hDi = TCRHF(Di)
Di = (Di, tDi) = (Di = gdi, tDi = (Qn+1 j=0 u hj
Di
j
31 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I party ˆ
$
p, Xi := gxi
j=0 u hj
Xi
j
32 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I sid := ˆ
I hDl = TCRHF(Dl), hXl = TCRHF(Xl), where 1 l !, l 6= i 33 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I if me(tDl, g, . . . , g) 6= me(Qn+1
j=0 u hj
Dl
j
j=0 u hj
Xl
j
I then “rejects” I else k :=
(n + 1 − ω) Φ
I Return the session key: ke 34 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
I Let MLG = (G, GT, g, p, me) denote the description of
I Given (g, ga, T) decide whether or not T = me(g, . . . , g)an+1 35 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
36 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
37 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
38 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
39 / 40
Strongly Secure One-Round GAKE Introduction, Motivation and Contributions GAKE Security Model (G-eCK Model) Formal Definition of One-round GAKE Stongly Secure One-Round GAKE in the Standard Model
40 / 40