towards bidirectional ratcheted key exchange - iacr crypto · ratcheted key exchange crypto 2018...

72
2018-08-20 Information Security Group Royal Holloway, University of London Horst Görtz Institute for IT Security Chair for Network and Data Security Ruhr University Bochum Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler

Upload: others

Post on 26-Jun-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

2018-08-20

Information Security Group

Royal Holloway, University of London

Horst Görtz Institute for IT Security

Chair for Network and Data Security

Ruhr University Bochum

Towards Bidirectional Ratcheted Key Exchange

CRYPTO 2018

Bertram Poettering Paul Rösler

Page 2: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 2

Introduction

• Alice and Bob communicate

• Active adversary

Page 3: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 3

Introduction

• Alice and Bob communicate

• Active adversary

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Page 4: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 4

Introduction

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Page 5: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 5

Introduction

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

• Practical protocols w/o precise security definition

• E.g., Signal

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Page 6: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 6

What is Ratcheting?

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

• Practical protocols w/o precise security definition

• E.g., Signal

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Page 7: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 7

What is Ratcheting?

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

• Practical protocols w/o precise security definition

• E.g., Signal

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

ga

ga

gb

Page 8: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 8

What is Ratcheting?

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

• Practical protocols w/o precise security definition

• E.g., Signal

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

ga

ga

gb

gab

gab

Page 9: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 9

What is Ratcheting?

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

• Practical protocols w/o precise security definition

• E.g., Signal

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

ga

ga

gb

gab

gab

H ( )→ k k

H ( )→ k k

Page 10: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 10

Natural Security Notion for Ratcheting?

• Alice and Bob communicate

• Active adversary

• Long term communication

• Local (full) state temporarily exposed

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Question:

What is a natural security notion?

(Definition based only on trivial attacks)

Page 11: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 11

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Bellare et al. on unidirectional communication C’17

• Bob cannot be exposed

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Question:

What is a natural security notion?

(Definition based only on trivial attacks)

Page 12: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 12

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Bellare et al. on unidirectional communication C’17

• Bob cannot be exposed

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Question:

What is a natural security notion?

(Definition based only on trivial attacks)

Our models require and

constructions provide full

security under:

• Asynchronous

communication

• Exposure of both parties

Page 13: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 13

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 14: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 14

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Page 15: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 15

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

init

Page 16: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 16

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

• Sending & receiving

Hey Bob! ❤

Love you ❤

Darling?

1 year later? That’s a secret!

init

snd

rcv

snd

snd

Page 17: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 17

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

• Sending & receiving

snd

snd

rcv rcv

rcv snd

init

rcv

snd

Page 18: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 18

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

• Sending & receiving

• Key exchange • Consecutive

establishment of keys in session

≠ Authenticated key exchange!

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Page 19: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 19

Natural Security Notion for Ratcheting?

• Natural security notion • Definition based only

on trivial attacks

• Syntax: • Initialization

• Sending & receiving

• Key exchange • Composition in Bellare

et al. C’17

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Page 20: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 20

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Page 21: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 21

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional key establishment

snd

rcv kB1

kB1

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 22: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 22

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional key establishment

• Alice initiates computation of new key

• Bob does not respond

snd

rcv kB1

kB1

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 23: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 23

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional ratcheted key exchange (RKE)

snd

rcv kB1

kB1

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 24: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 24

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional RKE

• Sesquidirectional RKE

• Bob contributes (but cannot establish keys)

• Adds security (sesqui = 1.5)

kB1

kB1

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 25: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 25

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional RKE

• Sesquidirectional RKE

• Symmetric roles

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Page 26: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 26

Three Variants of Ratcheting

• Bidirectional ratcheting is complicated

→ Understand its components:

• Unidirectional RKE

• Sesquidirectional RKE

• Symmetric roles

• Bidirectional RKE = 2x Sesquid. RKE (extended version)

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Page 27: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 27

Bidirectional RKE

Symmetric roles

(extended version)

Unidirectional RKE (+ Exposure of Bob)

No responses from Bob

Sesquidirectional RKE

Bob’s responses only help to recover

Three Variants of Ratcheting ●

kB1

kB1

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

snd

rcv kB1

kB1

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 28: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 28

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 29: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 29

Modeling Ratcheted Key Exchange

• Active adversary • Control whole network

traffic

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Adversary

Page 30: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 30

Modeling Ratcheted Key Exchange

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Adversary

k$

Challenge

Page 31: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 31

Modeling Ratcheted Key Exchange

• Active adversary • Control whole network

traffic

• Analyze key indistinguishability

• Multi-challenge real or random key

• Model exposures of local state

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Adversary

Expose

k$

Challenge

Page 32: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 32

Modeling Ratcheted Key Exchange

• Active adversary • Control whole network

traffic

• Analyze key indistinguishability

• Multi-challenge real or random key

• Model exposures of local state

• Single session

• Init abstracted

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

Adversary

Expose

k$

Challenge

Page 33: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 33

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 34: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 34

snd

rcv kB1

kB1

Modeling Unidirectional RKE

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Page 35: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 35

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kX1

kX2

Adversary

Expose

snd

snd

kX1

kX2

Page 36: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 36

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

• Expose Bob → Allowed in our model

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Expose rcv kA3

Page 37: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 37

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Expose rcv kA3

Page 38: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 38

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge if synchronous (= if no previous active attack)

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kX1

kX2

Adversary

Expose

Page 39: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 39

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge if synchronous

⇒ Exposure of Alice (solely) “okay”

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Expose

Page 40: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 40

Modeling Unidirectional RKE

• Impersonation ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge if synchronous

⇒ Exposure of Alice (solely) “okay”

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 41: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 41

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 42: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 42

Constructing Unidirectional RKE

• Expose Alice okay

• Expose Bob ⇒ No future Challenge if synchronous

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 43: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 43

Constructing Unidirectional RKE

• Expose Alice okay → Public key crypto

• Expose Bob ⇒ No future Challenge if synchronous

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

Page 44: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 44

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

pk

sk

enc ( )→$ c k pk dec ( )→$ k sk c

Adversary

Page 45: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 45

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

enc ( )→$ c k pk dec ( )→$ k sk c

Page 46: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 46

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous → Forward secrecy of Bob’s state

snd

rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

pk’

pk’’

sk’’

sk’

enc ( )→$ c k pk dec ( )→$ k sk c

Page 47: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 47

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous → Forward secrecy of Bob’s state → Divergence of states

snd

rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

pk’

pk’’

sk*

sk’

enc ( )→$ c k pk dec ( )→$ k sk c

Page 48: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 48

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous → Forward secrecy of Bob’s state → Divergence of states → Random oracle:

snd

rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

pk’

pk’’

sk*

sk’

enc ( )→$ c k pk dec ( )→$ k sk c

H ( )→ kXn c k sk

Page 49: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 49

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous → Forward secrecy of Bob’s state → Divergence of states → Random oracle:

snd

rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary pk

sk

pk’

pk’’

sk*

sk’

enc ( )→$ c k pk dec ( )→$ k sk c

H ( )→ kXn c k sk

gen ( )→ sk pk

Page 50: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 50

Constructing Unidirectional RKE

• Expose Alice okay → KEM:

• Expose Bob ⇒ No future Challenge if synchronous → Forward secrecy of Bob’s state → Divergence of states → Random oracle:

snd

rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary enc ( )→$ c k pk dec ( )→$ k sk c

gen ( )→ sk pk

H ( )→ kXn c k sk

enc H

gen

enc H

gen

enc H

gen

dec H

dec H

dec H

Page 51: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 51

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 52: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 52

Modeling Unidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge if synchronous

snd

rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 53: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 53

Modeling Sesquidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Expose Bob ⇒ No future Challenge if synchronous

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 54: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 54

Modeling Sesquidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Impersonation B → A ⇒ No future Challenge on Alice

• Expose Bob ⇒ No future Challenge if synchronous

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 55: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 55

Modeling Sesquidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Impersonation B → A ⇒ No future Challenge on Alice

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Expose

rcv kA2

Page 56: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 56

Modeling Sesquidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Impersonation B → A ⇒ No future Challenge on Alice

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Expose

rcv kA2

Page 57: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 57

Modeling Sesquidirectional RKE

• Impersonation A → B ⇒ No future Challenge on Bob

• Impersonation B → A ⇒ No future Challenge on Alice

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 58: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 58

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 59: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 59

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 60: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 60

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

Page 61: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 61

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

pk

gen

Page 62: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 62

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

pk

gen

Page 63: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 63

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

pk

gen

Difficulty:

Diverge states independently

and forward securely

in asynchronous bidirectional

setting

Page 64: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 64

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states → Update key pair

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

pk

gen

Difficulty:

Diverge states independently

and forward securely

in asynchronous bidirectional

setting

Page 65: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 65

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states → Update key pair

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

up ( , T)→ sk sk

up ( , T)→ pk pk

pk

gen

Difficulty:

Diverge states independently

and forward securely

in asynchronous bidirectional

setting

Page 66: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 66

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states → Update key pair

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

Adversary

up ( , T)→ sk sk

up ( , T)→ pk pk

pk

gen

Difficulty:

Diverge states independently

and forward securely

in asynchronous bidirectional

setting

Can be instantiated from HIBE

del ( ,ID=T)→ sk sk

Page 67: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 67

Constructing Sesquidirectional RKE

• Expose Bob ⇒ No future Challenge if synchronous until Bob recovered → Forward secrecy and recovery of Bob’s state → Send new → Divergence of states → Update key pair

snd

snd

rcv rcv

rcv

snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

up ( , T)→ sk sk

up ( , T)→ pk pk

pk

enc H

gen

enc H

gen

enc H

gen

dec H

dec H

dec H

up

gen

up

up

up

Adversary

Page 68: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 68

Agenda

1. The Primitive Ratcheted Key Exchange

2. General Adversary Model

3. Unidirectional Ratcheting → Model and Construction

4. Sesquidirectional Ratcheting → Model and Construction

5. Results

Page 69: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 69

• Unidirectional RKE • KEM + ROM (+ MAC)

Results

ia.cr/2018/296 (ext. version) @roeslpa

Page 70: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 70

• Unidirectional RKE • KEM + ROM (+ MAC)

• Sesquidirectional RKE • Key updatable KEM (+ signatures)

• # = #crossing ciphertexts → Depth of HIBE practically bounded

Results

ia.cr/2018/296 (ext. version) @roeslpa

c pk

c up ( T) sk

Page 71: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 71

• Unidirectional RKE • KEM + ROM (+ MAC)

• Sesquidirectional RKE • Key updatable KEM (+ signatures)

• # = #crossing ciphertexts → Depth of HIBE practically bounded

• Multi encapsulation → Bounded in ping-pong pattern

→ Alternative: key updatable signatures

Results

ia.cr/2018/296 (ext. version) @roeslpa

pk

pk

up ( T) sk

c c

Page 72: Towards Bidirectional Ratcheted Key Exchange - IACR Crypto · Ratcheted Key Exchange CRYPTO 2018 Bertram Poettering Paul Rösler. What is Ratcheting? Modeling RKE Construction Intuition

What is Ratcheting?

Modeling RKE

Construction Intuition

Results

Towards Bidirectional Ratcheted Key Exchange CRYPTO 2018 | Paul Rösler | Santa Barbara | 2018-08-20 72

• Unidirectional RKE • KEM + ROM (+ MAC)

• Sesquidirectional RKE • Key updatable KEM (+ signatures)

• # = #crossing ciphertexts → Depth of HIBE practically bounded

• Multi encapsulation → Bounded in ping-pong pattern

→ Alternative: key updatable signatures

• BRKE = 2x SRKE + OT signatures → Build SRKE, BRKE too complex!

Results

ia.cr/2018/296 (ext. version) @roeslpa

up ( T) sk

kB1

kB1

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kB1

kA3

kA1

kB1

kA2

kA3

kB1

kB1

snd

snd

rcv rcv

rcv snd

init

rcv

snd

kA1

kA2

kA3

kA1

kA2

kA3

+

+ = gen sig vfy