public-seed pseudorandom permutationsย ยท kdm-secure symmetric key enc. (kdm) point function...

178
Public-seed Pseudorandom Permutations Pratik Soni Stefano Tessaro UC Santa Barbara UC Santa Barbara EUROCRYPT 2017

Upload: lyphuc

Post on 04-Aug-2019

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Public-seed Pseudorandom Permutations

Pratik Soni Stefano Tessaro

UC Santa Barbara UC Santa Barbara

EUROCRYPT 2017

Page 2: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Cryptographic schemes often built from generic building blocks

Page 3: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Cryptographic schemes often built from generic building blocks

Typically: Block ciphers, hash/compression functions!

๐ป

๐พ โŠ• ๐‘–๐‘๐‘Ž๐‘‘ || ๐‘€

๐พ โŠ• ๐‘œ๐‘๐‘Ž๐‘‘

๐ป

hash function (e.g., SHA-3)

๐ธ๐พ

๐‘€1

๐ผ๐‘‰

๐‘€2

๐ธ๐พ

๐‘€โ„“

block cipher (e.g., AES)

Page 4: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Cryptographic schemes often built from generic building blocks

Typically: Block ciphers, hash/compression functions!

Is there a universal and simple building block for efficient symmetric cryptography?

๐ป

๐พ โŠ• ๐‘–๐‘๐‘Ž๐‘‘ || ๐‘€

๐พ โŠ• ๐‘œ๐‘๐‘Ž๐‘‘

๐ป

hash function (e.g., SHA-3)

๐ธ๐พ

๐‘€1

๐ผ๐‘‰

๐‘€2

๐ธ๐พ

๐‘€โ„“

block cipher (e.g., AES)

Page 5: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recent trend: Start from seedless permutation

Page 6: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recent trend: Start from seedless permutation

Page 7: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recent trend: Start from seedless permutation

Sponge paradigm

Page 8: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recent trend: Start from seedless permutation

Sponge paradigm

Page 9: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recent trend: Start from seedless permutation

โ€ฆ

Sponge paradigm

Page 10: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Here: ๐œ‹ is an efficiently computable and invertible one-to-one function

Recent trend: Start from seedless permutation

โ€ฆ

Sponge paradigm

Page 11: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Permutations

โ€œโ€ฆ it would be nice, now, if permutations can be called

the Swiss Army Knife [of cryptography]โ€ โ€” Joan Daemen, Passwords^12

Hashing Garbling

PRNGs Authenticated Encryption

MACs KDFs

Page 12: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Typical instantiations

Page 13: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Typical instantiations

Ad-hoc construction

e.g., in KECCAK, NORX, โ€ฆ

Designed to withstand cryptanalysis

Page 14: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Typical instantiations

Fixed-key block ciphers

Ad-hoc construction

e.g., in KECCAK, NORX, โ€ฆ

Designed to withstand cryptanalysis

e.g., ๐œ‹ โˆถ ๐‘ฅ โ†’ AES(0128, ๐‘ฅ) ๐ด๐ธ๐‘†

0128

Page 15: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Typical instantiations

Fixed-key block ciphers

Ad-hoc construction

e.g., in KECCAK, NORX, โ€ฆ

Designed to withstand cryptanalysis

e.g., ๐œ‹ โˆถ ๐‘ฅ โ†’ AES(0128, ๐‘ฅ)

Faster, no re-keying costs!

๐ด๐ธ๐‘†

0128

Faster Hash functions [RS08], fast garbling [BHKR13]

Page 16: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Permutations assumptions

Permutations are great in practice, but what about theory?

Page 17: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Permutations assumptions

Goal: Standard-model reduction: โ€œIf ๐œ‹ satisfies ๐‘‹ then ๐ถ[๐œ‹] satisfies ๐‘Œ.โ€

Permutations are great in practice, but what about theory?

๐‘†0 0

0

๐œ‹ ๐œ‹ ๐œ‹

Page 18: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Permutations assumptions

Goal: Standard-model reduction: โ€œIf ๐œ‹ satisfies ๐‘‹ then ๐ถ[๐œ‹] satisfies ๐‘Œ.โ€

e.g., ๐ถ = KECCAK;

๐‘Œ = Anything non-trivial

๐‘‹ = ? ? ?

Permutations are great in practice, but what about theory?

๐‘†0 0

0

๐œ‹ ๐œ‹ ๐œ‹

Page 19: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Permutations assumptions

Goal: Standard-model reduction: โ€œIf ๐œ‹ satisfies ๐‘‹ then ๐ถ[๐œ‹] satisfies ๐‘Œ.โ€

e.g., ๐ถ = KECCAK;

๐‘Œ = Anything non-trivial

๐‘‹ = ? ? ?

Common approach: Use random permutation (RP) model

๐œ‹ is random + adversary given oracle access to ๐œ‹ and ๐œ‹โˆ’1

Permutations are great in practice, but what about theory?

Observation: No standard-model proofs known for permutation-based constructions!

๐‘†0 0

0

๐œ‹ ๐œ‹ ๐œ‹

Page 20: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

Page 21: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

RP model proofs only yield security for generic attacks

Page 22: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

RP model proofs only yield security for generic attacks

Quite different state of affairs than for hash functions:

Hash functions

ideal model

random oracle

Page 23: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

RP model proofs only yield security for generic attacks

Quite different state of affairs than for hash functions:

Hash functions

ideal model standard model

random oracle CRHF, OWFs, UOWHFs,

CI, UCEsโ€ฆ

Page 24: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

RP model proofs only yield security for generic attacks

Quite different state of affairs than for hash functions:

Hash functions

Permutations

ideal model standard model

random oracle

RP

CRHF, OWFs, UOWHFs, CI, UCEsโ€ฆ

????

Page 25: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

But: random permutations do not exist [CGH98]

RP model proofs only yield security for generic attacks

Quite different state of affairs than for hash functions:

Hash functions

Permutations

ideal model standard model

random oracle

RP

CRHF, OWFs, UOWHFs, CI, UCEsโ€ฆ

????

What cryptographic hardness can we expect from a permutation? No one-wayness, no compression, no pseudorandomness โ€ฆ

Page 26: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

First plausible and useful standard-model security assumption for permutations.

Page 27: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

Page 28: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

We address two main questions:

Page 29: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

We address two main questions:

Can we get psPRPs at all?

Page 30: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

We address two main questions:

Can we get psPRPs at all?

Are psPRPs useful?

Page 31: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

inspired by the UCE framework [BHK13]

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

We address two main questions:

Can we get psPRPs at all?

Are psPRPs useful?

Page 32: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

This work, in a nutshell

inspired by the UCE framework [BHK13]

First plausible and useful standard-model security assumption for permutations.

โ€œPublic-seed Pseudorandom Permutationsโ€ (psPRPs)

We address two main questions:

Can we get psPRPs at all?

Are psPRPs useful?

Yes! Yes!

Page 33: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Page 34: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Deterministic & Hedged PKE

Immunizing backdoored PRGs

CCA-secure Enc. (CCA)

โ€ฆ

Hardcore functions (HC)

KDM-secure symmetric key Enc. (KDM)

Point function Obfuscation (PFOB)

Efficient garbling from fixed-key block-ciphers

Message-locked Encryption (MLE) ๐’‘๐’”๐‘ท๐‘น๐‘ท

Page 35: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Deterministic & Hedged PKE

Immunizing backdoored PRGs

CCA-secure Enc. (CCA)

โ€ฆ

Hardcore functions (HC)

KDM-secure symmetric key Enc. (KDM)

Point function Obfuscation (PFOB)

Efficient garbling from fixed-key block-ciphers

Message-locked Encryption (MLE) ๐’‘๐’”๐‘ท๐‘น๐‘ท ๐‘ผ๐‘ช๐‘ฌ

Page 36: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Deterministic & Hedged PKE

Immunizing backdoored PRGs

CCA-secure Enc. (CCA)

โ€ฆ

Hardcore functions (HC)

KDM-secure symmetric key Enc. (KDM)

Point function Obfuscation (PFOB)

Efficient garbling from fixed-key block-ciphers

Message-locked Encryption (MLE) ๐’‘๐’”๐‘ท๐‘น๐‘ท ๐‘ผ๐‘ช๐‘ฌ

Sponges

Page 37: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Deterministic & Hedged PKE

Immunizing backdoored PRGs

CCA-secure Enc. (CCA)

โ€ฆ

Hardcore functions (HC)

KDM-secure symmetric key Enc. (KDM)

Point function Obfuscation (PFOB)

Message-locked Encryption (MLE) ๐’‘๐’”๐‘ท๐‘น๐‘ท ๐‘ผ๐‘ช๐‘ฌ

Efficient garbling from fixed-key block-ciphers

Sponges

Page 38: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs have many applications

Deterministic & Hedged PKE

Immunizing backdoored PRGs

CCA-secure Enc. (CCA)

โ€ฆ

Hardcore functions (HC)

KDM-secure symmetric key Enc. (KDM)

Point function Obfuscation (PFOB)

Message-locked Encryption (MLE) ๐’‘๐’”๐‘ท๐‘น๐‘ท ๐‘ผ๐‘ช๐‘ฌ

Efficient garbling from fixed-key block-ciphers

Sponges

Feistel

Page 39: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Roadmap

1.Definitions

2.Constructions & Applications

3.Conclusions

Co-related input hash

Functions (CIH)

Page 40: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1) ๐œ‹ โˆถ 0,1 ๐‘› โ†’ 0,1 ๐‘›

We consider seeded permutations

Page 41: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐บ๐‘’๐‘› ๐‘ฅ ๐œ‹๐‘  ๐‘ฅ

๐œ‹ โˆถ 0,1 ๐‘› โ†’ 0,1 ๐‘›

๐œ‹๐‘  1๐œ† ๐‘ 

Seed generation

๐‘ฆ ๐œ‹๐‘ โˆ’1 ๐‘ฆ ๐œ‹๐‘ 

โˆ’1

Forward evaluation

Backward evaluation

Efficient (poly-time) algorithms

(2) โˆ€๐‘ฅ โˆถ ๐œ‹๐‘ โˆ’1 ๐œ‹๐‘  ๐‘ฅ = ๐‘ฅ

(1) ๐œ‹๐‘  โˆถ 0,1 ๐‘› โ†’ 0,1 ๐‘›

We consider seeded permutations

Page 42: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Traditional security notion if seed is secret: Pseudorandom Permutation

Page 43: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ท

๐‘  โ† Gen(1๐œ†)

๐œ‹s / ๐œ‹๐‘ โˆ’1

๐œŒ โ† Perms(๐‘›)

๐œŒ/๐œŒโˆ’1 โ‰ˆ

Traditional security notion if seed is secret: Pseudorandom Permutation

0/1

Page 44: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ท

๐‘  โ† Gen(1๐œ†)

๐œ‹s / ๐œ‹๐‘ โˆ’1

๐œŒ โ† Perms(๐‘›)

๐œŒ/๐œŒโˆ’1 โ‰ˆ

Traditional security notion if seed is secret: Pseudorandom Permutation

0/1

Page 45: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ท

๐‘  โ† Gen(1๐œ†)

๐œ‹s / ๐œ‹๐‘ โˆ’1

5

๐œŒ โ† Perms(๐‘›)

๐œŒ/๐œŒโˆ’1 โ‰ˆ

Stage 1: โ€ข Oracle access โ€ข Secret seed

Stage 2: โ€ข Learns seed โ€ข No oracle access

Traditional security notion if seed is secret: Pseudorandom Permutation

0/1

Page 46: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ท

๐‘  โ† Gen(1๐œ†)

๐œ‹s / ๐œ‹๐‘ โˆ’1

5

๐œŒ โ† Perms(๐‘›)

๐œŒ/๐œŒโˆ’1 โ‰ˆ

Stage 1: โ€ข Oracle access โ€ข Secret seed

Stage 2: โ€ข Learns seed โ€ข No oracle access

Traditional security notion if seed is secret: Pseudorandom Permutation

Limited information

flow

0/1

Page 47: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

UCE security

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

Bellare Hoang Keelveedhi

Page 48: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

Bellare Hoang Keelveedhi

Page 49: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

Bellare Hoang Keelveedhi

Page 50: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ฟ

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

distinguisher

๐ท

Bellare Hoang Keelveedhi

Page 51: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ฟ

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

distinguisher

๐ท

Bellare Hoang Keelveedhi

๐’”

๐‘  โ† Gen(1๐œ†)

Page 52: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ฟ

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

distinguisher

๐ท

Bellare Hoang Keelveedhi

0/1

๐’”

Page 53: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘“ โ† Funcs(๐‘š, ๐‘›) ๐‘“

๐‘  โ† Gen(1๐œ†)

โ„Ž๐‘ 

UCE security

๐‘† source

๐ฟ

๐ป = (๐บ๐‘’๐‘›, โ„Ž)

distinguisher

๐ท

Bellare Hoang Keelveedhi

0/1

๐’”

โ‰ˆ

Page 54: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘†

๐ท

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 55: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘†

๐ท

Makes forward and backward queries!

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 56: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘†

๐ฟ

๐ท

๐’”

Makes forward and backward queries!

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 57: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘†

๐ฟ

๐ท 0/1

๐’”

Makes forward and backward queries!

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 58: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , left and right are indistinguishable.

๐‘†

๐ฟ

๐ท 0/1

๐’”

Makes forward and backward queries!

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 59: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , left and right are indistinguishable.

๐‘†

๐ฟ

๐ท 0/1

๐’”

Makes forward and backward queries!

๐‘  โ† Gen(1๐œ†)

psPRP security

๐…๐’”/๐…๐’”โˆ’๐Ÿ ๐† โ† ๐๐ž๐ซ๐ฆ๐ฌ(๐’)

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

๐†/๐†โˆ’๐Ÿ

Page 60: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

Page 61: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

Page 62: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

Page 63: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ ๐‘ฆ

Page 64: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐ฟ = ๐‘ฆ

๐ท

๐’”

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ ๐‘ฆ

Page 65: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐ฟ = ๐‘ฆ

๐ท

๐’”

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ

Outputs 1 iff ๐‘ฆ = ๐œ‹๐‘  0๐‘›

๐‘ฆ

Page 66: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐ฟ = ๐‘ฆ

๐ท

๐’”

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ

Outputs 1 iff ๐‘ฆ = ๐œ‹๐‘  0๐‘›

1 with prob. 1

๐‘ฆ

Page 67: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐ฟ = ๐‘ฆ

๐ท

๐’”

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ

Outputs 1 iff ๐‘ฆ = ๐œ‹๐‘  0๐‘›

1

1

with prob. 1

with prob. 1/2๐‘›

๐‘ฆ

Page 68: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

(+, 0๐‘›) (+, 0๐‘›)

๐‘  โ† Gen(1๐œ†)

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

๐‘†

๐ฟ = ๐‘ฆ

๐ท

๐’”

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-secure if โˆ€ PPT ๐‘†, ๐ท , โ€ฆ

๐‘ฆ

Outputs 1 iff ๐‘ฆ = ๐œ‹๐‘  0๐‘›

1

1

with prob. 1

with prob. 1/2๐‘›

๐‘ฆ

๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ-security is impossible against all sources!

โ‰ˆ

Page 69: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Sources need to be restricted

all sources

๐‘ƒ = (Gen, ๐œ‹, ๐œ‹โˆ’1)

Page 70: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Sources need to be restricted

all sources

๐’ฎ

๐‘ƒ = (Gen, ๐œ‹, ๐œ‹โˆ’1)

Page 71: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Sources need to be restricted

๐‘ƒ is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ]-secure if โˆ€ ๐‘† โˆˆ ๐’ฎ and โˆ€ PPT

๐ท, left and right are indistinguishable.

all sources

๐’ฎ

๐‘ƒ = (Gen, ๐œ‹, ๐œ‹โˆ’1)

๐‘†

๐ฟ

๐ท 0/1

๐’”

๐‘  โ† Gen(1๐œ†) ๐œ‹๐‘ /๐œ‹๐‘ 

โˆ’1 ๐œŒ โ† Perms(๐‘›) ๐œŒ/๐œŒโˆ’1

Page 72: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

This talk โ€“ unpredictable and reset-secure sources

Page 73: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

๐’ฎ๐‘ ๐‘ข๐‘ unpredictable

This talk โ€“ unpredictable and reset-secure sources

Page 74: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

๐’ฎ๐‘ ๐‘Ÿ๐‘  ๐’ฎ๐‘ ๐‘ข๐‘ unpredictable

reset-secure

This talk โ€“ unpredictable and reset-secure sources

Page 75: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

๐’ฎ๐‘ ๐‘Ÿ๐‘  ๐’ฎ๐‘ ๐‘ข๐‘ unpredictable

reset-secure

This talk โ€“ unpredictable and reset-secure sources

Both restrictions model that ๐ท cannot predict the queries made by the sources!

Page 76: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

๐’ฎ๐‘ ๐‘Ÿ๐‘  ๐’ฎ๐‘ ๐‘ข๐‘ unpredictable

reset-secure

This talk โ€“ unpredictable and reset-secure sources

Both restrictions model that ๐ท cannot predict the queries made by the sources!

๐’ฎ๐‘ ๐‘ข๐‘ โŠ† ๐’ฎ๐‘ ๐‘Ÿ๐‘ 

Page 77: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

all

sources

๐’ฎ๐‘ ๐‘Ÿ๐‘  ๐’ฎ๐‘ ๐‘ข๐‘ unpredictable

reset-secure

This talk โ€“ unpredictable and reset-secure sources

Both restrictions model that ๐ท cannot predict the queries made by the sources!

๐’ฎ๐‘ ๐‘ข๐‘ โŠ† ๐’ฎ๐‘ ๐‘Ÿ๐‘  ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  is a stronger

assumption than ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘ข๐‘ โŸน

Page 78: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

๐ด

๐œŒ โ† Perms(๐‘›)

Page 79: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐ด

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

Page 80: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐ด

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

Page 81: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐‘ฆ๐‘–

๐ด

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

Page 82: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐‘ฆ๐‘–

๐ด

๐ฟ

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

Page 83: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐‘ฆ๐‘–

๐ด

๐ฟ

๐‘„โ€ฒ

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

Pr [ ๐‘„โ€ฒ โˆฉ ๐‘„ โ‰  ๐œ™] = negl(๐œ†)

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

It should be hard for ๐ด to predict any of ๐‘†โ€™s queries or its inverse

Page 84: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐‘ฆ๐‘–

๐ด

๐ฟ

๐‘„โ€ฒ

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

Pr [ ๐‘„โ€ฒ โˆฉ ๐‘„ โ‰  ๐œ™] = negl(๐œ†)

โŠ†

๐’ฎ๐‘ ๐‘ข๐‘: ๐ด is computationally unbounded

๐’ฎ๐‘๐‘ข๐‘: ๐ด is PPT

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

It should be hard for ๐ด to predict any of ๐‘†โ€™s queries or its inverse

Page 85: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ unpredictability

๐‘† ๐œŒ/๐œŒโˆ’1

(๐œŽ, ๐‘ฅ๐‘–)

๐‘ฆ๐‘–

๐ด

๐ฟ

๐‘„โ€ฒ

๐‘„ โ† ๐‘„ โˆช { ๐œŽ, ๐‘ฅ๐‘– , (๐œŽ , ๐‘ฆ๐‘–)}

Pr [ ๐‘„โ€ฒ โˆฉ ๐‘„ โ‰  ๐œ™] = negl(๐œ†)

โŠ†

๐’ฎ๐‘ ๐‘ข๐‘: ๐ด is computationally unbounded

๐’ฎ๐‘๐‘ข๐‘: ๐ด is PPT ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘๐‘ข๐‘] impossible if iO

exists [BFM14]

๐œŒ โ† Perms(๐‘›)

๐œŽ โˆˆ {+,โˆ’}

It should be hard for ๐ด to predict any of ๐‘†โ€™s queries or its inverse

Page 86: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

Page 87: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐œŒ โ† Perms(๐‘›)

Page 88: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐œŒ โ† Perms(๐‘›)

Page 89: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

๐œŒ โ† Perms(๐‘›)

Page 90: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

0/1

๐œŒ โ† Perms(๐‘›)

Page 91: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

0/1

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

0/1

๐œŒ1/๐œŒ1โˆ’1

๐œŒ โ† Perms(๐‘›) ๐œŒ โ† Perms(๐‘›)

๐œŒ1 โ† Perms(๐‘›)

Page 92: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

Source restrictions โ€“ reset-security

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

0/1

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

0/1

๐œŒ1/๐œŒ1โˆ’1

๐œŒ โ† Perms(๐‘›) ๐œŒ โ† Perms(๐‘›)

๐œŒ1 โ† Perms(๐‘›)

Page 93: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

Source restrictions โ€“ reset-security

โŠ†

๐’ฎ๐‘ ๐‘Ÿ๐‘ : ๐‘… is computationally unbounded

๐’ฎ๐‘๐‘Ÿ๐‘ : ๐‘… is PPT

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

0/1

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

0/1

๐œŒ1/๐œŒ1โˆ’1

๐œŒ โ† Perms(๐‘›) ๐œŒ โ† Perms(๐‘›)

๐œŒ1 โ† Perms(๐‘›)

Page 94: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

Source restrictions โ€“ reset-security

โŠ†

๐’ฎ๐‘ ๐‘Ÿ๐‘ : ๐‘… is computationally unbounded

๐’ฎ๐‘๐‘Ÿ๐‘ : ๐‘… is PPT

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

๐œŒ/๐œŒโˆ’1

0/1

๐‘† ๐œŒ/๐œŒโˆ’1

๐‘…

๐ฟ

0/1

๐œŒ1/๐œŒ1โˆ’1

๐œŒ โ† Perms(๐‘›) ๐œŒ โ† Perms(๐‘›)

๐œŒ1 โ† Perms(๐‘›)

๐’ฎ๐‘๐‘ข๐‘ โŠ† ๐’ฎ๐‘๐‘Ÿ๐‘ 

Page 95: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]

๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘ข๐‘]

Recap

Page 96: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]

๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘ข๐‘]

Recap

Page 97: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recap

Page 98: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recap

Central assumption in UCE theory

Page 99: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Recap

Central assumption in UCE theory

Page 100: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Roadmap

1.Definitions

2.Constructions & Applications

3.Conclusions

Co-related input hash

Functions (CIH)

Page 101: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Page 102: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Page 103: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Constructions of UCEs

Direct applications Garbling from fixed-key

block ciphers

Page 104: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Constructions of UCEs

Direct applications Garbling from fixed-key

block ciphers

Page 105: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Constructions of UCEs

Direct applications Garbling from fixed-key

block ciphers

Page 106: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Constructions of UCEs

Direct applications Garbling from fixed-key

block ciphers

Common denominator: A new, restricted notion of indifferentiability!

Page 107: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Next

Co-related input hash

Functions (CIH)

Can we get psPRPs at all?

Are psPRPs useful?

Constructions from UCEs

Heuristic Instantiations

Constructions of UCEs

Direct applications Garbling from fixed-key

block ciphers

Common denominator: A new, restricted notion of indifferentiability! CP-sequential

indifferentiability

Page 108: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ถ

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Indifferentiability[MRH04]

Page 109: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ด ๐ด

๐ถ

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Indifferentiability[MRH04]

Page 110: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ด ๐ด

๐ถ

? ๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Indifferentiability[MRH04]

Page 111: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ด ๐ด

๐ถ

๐‘†๐‘–๐‘š ๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Indifferentiability[MRH04]

Page 112: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

๐ด ๐ด โ‰ˆ

๐ถ

0/1

๐‘†๐‘–๐‘š

0/1

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Indifferentiability[MRH04]

Page 113: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

0/1

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

0/1

CP-sequential indifferentiability

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Page 114: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

0/1

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

0/1

CP-sequential indifferentiability

๐ถ ๐‘…๐‘ƒ โˆผ๐‘๐‘๐‘– ๐‘…๐‘‚ โ‡” โˆƒ PPT ๐‘†๐‘–๐‘š โˆ€ PPT (๐ด1, ๐ด2):

left and right are indistinguishable.

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Page 115: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

Remarks:

๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

0/1

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

0/1

CP-sequential indifferentiability

๐ถ ๐‘…๐‘ƒ โˆผ๐‘๐‘๐‘– ๐‘…๐‘‚ โ‡” โˆƒ PPT ๐‘†๐‘–๐‘š โˆ€ PPT (๐ด1, ๐ด2):

left and right are indistinguishable.

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Page 116: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

โ‰ˆ

1. Full indifferentiability โŸน CP-seq indiff.

2. Reverse ordering: seq. indifferentiability [MPS12]

Remarks:

๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

0/1

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

0/1

CP-sequential indifferentiability

๐ถ ๐‘…๐‘ƒ โˆผ๐‘๐‘๐‘– ๐‘…๐‘‚ โ‡” โˆƒ PPT ๐‘†๐‘–๐‘š โˆ€ PPT (๐ด1, ๐ด2):

left and right are indistinguishable.

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐‘…๐‘‚

๐‘“

๐œŒ โ† Perms(๐‘›)

๐‘“ โ† Funcs(โˆ—, ๐‘›)

Page 117: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

Theorem:

Page 118: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

Page 119: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚ +

๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

Page 120: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚ โŸน +

๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐ถ[๐‘ƒ]

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1

Page 121: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚ โŸน +

๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure. ๐ถ[๐‘ƒ]

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1

Page 122: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚ โŸน +

๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure. ๐ถ[๐‘ƒ]

Similar result proved in [BHK14], but: โ€ข Need full indifferentiability โ€ข Only stated for UCE domain extension

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1

Page 123: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs

๐ถ ๐‘…๐‘ƒ โˆผcpi ๐‘…๐‘‚ โŸน +

๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure. ๐ถ[๐‘ƒ]

Similar result proved in [BHK14], but: โ€ข Need full indifferentiability โ€ข Only stated for UCE domain extension

๐ถ

Theorem:

๐‘…๐‘ƒ

๐œŒ/๐œŒโˆ’1

Corollary: Every perm-based indiff. hash-function transforms a psPRP into a UCE!

๐œ‹๐‘ /๐œ‹๐‘ โˆ’1

Page 124: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Sponges

๐‘ฆ โˆˆ {0,1}๐‘Ÿ

๐‘€ โˆˆ {0,1}โˆ—

๐‘†0 ๐‘Ÿ

n โˆ’ ๐‘Ÿ

0

0

๐œŒ

๐‘Ÿ

๐œŒ ๐œŒ

๐‘€1 ๐‘€2 ๐‘€๐‘™

Page 125: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Sponges

๐‘ฆ โˆˆ {0,1}๐‘Ÿ

Theorem [BDVP08]: Sponge[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐‘‚.

๐‘€ โˆˆ {0,1}โˆ—

๐‘†0 ๐‘Ÿ

n โˆ’ ๐‘Ÿ

0

0

๐œŒ

๐‘Ÿ

๐œŒ ๐œŒ

๐‘€1 ๐‘€2 ๐‘€๐‘™

Page 126: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Sponges

๐‘ฆ โˆˆ {0,1}๐‘Ÿ

Theorem [BDVP08]: Sponge[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐‘‚.

๐‘€ โˆˆ {0,1}โˆ—

๐‘†0 ๐‘Ÿ

n โˆ’ ๐‘Ÿ

0

0

๐œŒ

๐‘Ÿ

๐œŒ ๐œŒ

๐‘€1 ๐‘€2 ๐‘€๐‘™

๐œ‹๐‘  ๐œ‹๐‘  ๐œ‹๐‘ 

Page 127: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Sponges

๐‘ฆ โˆˆ {0,1}๐‘Ÿ

Corollary: ๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน Sponge[๐‘ƒ] ๐‘ˆ๐ถ๐ธ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure.

Theorem [BDVP08]: Sponge[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐‘‚.

๐‘€ โˆˆ {0,1}โˆ—

๐‘†0 ๐‘Ÿ

n โˆ’ ๐‘Ÿ

0

0

๐œŒ

๐‘Ÿ

๐œŒ ๐œŒ

๐‘€1 ๐‘€2 ๐‘€๐‘™

๐œ‹๐‘  ๐œ‹๐‘  ๐œ‹๐‘ 

Page 128: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Sponges

๐‘ฆ โˆˆ {0,1}๐‘Ÿ

Corollary: ๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน Sponge[๐‘ƒ] ๐‘ˆ๐ถ๐ธ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure.

Theorem [BDVP08]: Sponge[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐‘‚.

๐‘€ โˆˆ {0,1}โˆ—

๐‘†0 ๐‘Ÿ

n โˆ’ ๐‘Ÿ

0

0

๐œŒ

๐‘Ÿ

๐œŒ ๐œŒ

๐‘€1 ๐‘€2 ๐‘€๐‘™

๐œ‹๐‘  ๐œ‹๐‘  ๐œ‹๐‘ 

Validates the Sponge paradigm for UCE applications!

Page 129: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

CP-sequentially indiff. constructions that are not fully indiff.?

Page 130: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop CP-sequentially indiff. constructions that are not fully indiff.?

Page 131: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

๐œŒ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 132: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

๐‘ฅ โˆˆ {0,1}๐‘› ๐œŒ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 133: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

๐‘ฅ โˆˆ {0,1}๐‘› ๐œŒ ๐‘› ๐‘›

CP-sequentially indiff. constructions that are not fully indiff.?

Page 134: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

๐‘ฅ โˆˆ {0,1}๐‘›

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 135: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 136: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 137: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

Chop ๐‘…๐‘ƒ is not indifferentiable

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 138: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

Chop ๐‘…๐‘ƒ is not indifferentiable

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐œ‹๐‘  ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 139: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

Corollary: ๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน Chop[๐‘ƒ] ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Chop ๐‘…๐‘ƒ is not indifferentiable

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐œ‹๐‘  ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 140: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

Corollary: ๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน Chop[๐‘ƒ] ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Chop ๐‘…๐‘ƒ is not indifferentiable

๐‘ˆ๐ถ๐ธ ๐’ฎ๐‘ ๐‘ข๐‘ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘ข๐‘

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐œ‹๐‘  ๐‘› ๐‘› ๐‘Ÿ

CP-sequentially indiff. constructions that are not fully indiff.?

Page 141: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From psPRPs to UCEs โ€“ Chop

Theorem: Chop[๐‘…๐‘ƒ] โˆผcpi ๐‘…๐น when ๐‘› โˆ’ ๐‘Ÿ โˆˆ ๐œ”(log ๐œ†).

Corollary: ๐‘ƒ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน Chop[๐‘ƒ] ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Chop ๐‘…๐‘ƒ is not indifferentiable

๐‘ˆ๐ถ๐ธ ๐’ฎ๐‘ ๐‘ข๐‘ ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ ๐’ฎ๐‘ ๐‘ข๐‘

๐‘ฅ โˆˆ {0,1}๐‘› ๐‘ฆ โˆˆ {0,1}๐‘Ÿ

truncates ๐‘›-bits to ๐‘Ÿ-bits

๐œŒ ๐œ‹๐‘  ๐‘› ๐‘› ๐‘Ÿ

From Chop ๐‘ƒ to VIL UCE: Domain extension techniques [BHK14]

CP-sequentially indiff. constructions that are not fully indiff.?

Page 142: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs from UCEs Theorem:

Page 143: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs from UCEs

โ‰ˆ ๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

๐‘โ€ฒ

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

๐‘โ€ฒ

๐‘…๐‘‚

๐‘…๐‘ƒ

๐ถ ๐‘…๐‘‚ โˆผcpi ๐‘…๐‘ƒ

Theorem:

Page 144: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs from UCEs

โ‰ˆ ๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

๐‘โ€ฒ

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

๐‘โ€ฒ

๐‘…๐‘‚

๐‘…๐‘ƒ

๐ถ ๐‘…๐‘‚ โˆผcpi ๐‘…๐‘ƒ โŸน +

๐ป ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐ถ ๐ป ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Theorem:

Page 145: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

psPRPs from UCEs

โ‰ˆ ๐ด1 ๐ถ

๐ด2

๐‘ ๐‘ก

๐‘โ€ฒ

๐ด1

๐ด2

๐‘ ๐‘ก

๐‘†๐‘–๐‘š

๐‘โ€ฒ

๐‘…๐‘‚

๐‘…๐‘ƒ

Corollary: Every hash-function-based indiff. permutation transforms a UCE into a psPRP.

๐ถ ๐‘…๐‘‚ โˆผcpi ๐‘…๐‘ƒ โŸน +

๐ป ๐‘ˆ๐ถ๐ธ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure ๐ถ ๐ป ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Theorem:

Page 146: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From UCEs to psPRPs โ€“ Feistel

๐‘›

๐‘›

๐‘“1 ๐‘“2 ๐‘“3 ๐‘“4 ๐‘“5

๐‘‹1 ๐‘‹2 ๐‘‹3 ๐‘‹4 ๐‘‹5 ๐‘‹6

๐‘‹0 ๐‘‹5

๐‘Œ โˆˆ {0,1}2๐‘›

๐œ“5[๐’‡]

๐‘‹ โˆˆ {0,1}2๐‘›

๐‘›

๐‘›

๐‘›

๐‘›

Page 147: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From UCEs to psPRPs โ€“ Feistel

impossible

[CPS08]

[HKT11] [DS16] [DSKT16]

#rounds for indifferentiability

???

๐‘›

๐‘›

๐‘“1 ๐‘“2 ๐‘“3 ๐‘“4 ๐‘“5

๐‘‹1 ๐‘‹2 ๐‘‹3 ๐‘‹4 ๐‘‹5 ๐‘‹6

๐‘‹0 ๐‘‹5

๐‘Œ โˆˆ {0,1}2๐‘›

๐œ“5[๐’‡]

๐‘‹ โˆˆ {0,1}2๐‘›

๐‘›

๐‘›

๐‘›

๐‘›

Page 148: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

From UCEs to psPRPs โ€“ Feistel

impossible

[CPS08]

[HKT11] [DS16] [DSKT16]

#rounds for indifferentiability

???

๐‘›

๐‘›

๐‘“1 ๐‘“2 ๐‘“3 ๐‘“4 ๐‘“5

๐‘‹1 ๐‘‹2 ๐‘‹3 ๐‘‹4 ๐‘‹5 ๐‘‹6

๐‘‹0 ๐‘‹5

๐‘Œ โˆˆ {0,1}2๐‘›

๐œ“5[๐’‡]

๐‘‹ โˆˆ {0,1}2๐‘›

๐‘›

๐‘›

๐‘›

๐‘›

psPRPs exist in the standard model if UCEs exist!!!

Page 149: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Can we reduce the round-complexity of Feistel for UCE to psPRP transformation?

Page 150: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

[HKT11] [DS16] [DSKT16]

#rounds for CP-sequential indifferentiability

Can we reduce the round-complexity of Feistel for UCE to psPRP transformation?

Page 151: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Theorem: 5-round Feistel (๐œ“5[๐’‡]) โˆผcpi ๐‘…๐‘ƒ.

[HKT11] [DS16] [DSKT16]

#rounds for CP-sequential indifferentiability

This work!!!

Can we reduce the round-complexity of Feistel for UCE to psPRP transformation?

Page 152: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Corollary: ๐‘ฏ ๐‘ˆ๐ถ๐ธ ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure โŸน ๐œ“5[๐‘ฏ] ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘Ÿ๐‘ ]-secure.

Theorem: 5-round Feistel (๐œ“5[๐’‡]) โˆผcpi ๐‘…๐‘ƒ.

[HKT11] [DS16] [DSKT16]

#rounds for CP-sequential indifferentiability

This work!!!

Can we reduce the round-complexity of Feistel for UCE to psPRP transformation?

Page 153: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

5-round proof is technically involved

Page 154: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

5-round proof is technically involved

Our 5-round Sim:

โ€ข Relies on chain completion techniques

โ€ข Heavily exploits query ordering

โ€ข Very different chain-completion strategy from previous works, no recursion needed

๐‘“1 ๐‘“2 ๐‘“3 ๐‘“4 ๐‘“5

๐‘‹1 ๐‘‹2 ๐‘‹3 ๐‘‹4 ๐‘‹5 ๐‘‹6

๐‘‹0 ๐‘‹5 Set

uniform Set

uniform

forceVal forceVal

detect detect

Page 155: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

5-round proof is technically involved

Our 5-round Sim:

impossible

[LR88]

[HKT11] [DS16] [DSKT16]

#rounds of Feistel for psPRP-security

This work!!! Open: Do 4-rounds suffice?

โ€ข Relies on chain completion techniques

โ€ข Heavily exploits query ordering

โ€ข Very different chain-completion strategy from previous works, no recursion needed

๐‘“1 ๐‘“2 ๐‘“3 ๐‘“4 ๐‘“5

๐‘‹1 ๐‘‹2 ๐‘‹3 ๐‘‹4 ๐‘‹5 ๐‘‹6

๐‘‹0 ๐‘‹5 Set

uniform Set

uniform

forceVal forceVal

detect detect

???

Page 156: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Heuristic Instantiations

Page 157: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Heuristic Instantiations

๐ธ

๐‘  โ† {0,1}๐‘˜

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

From Block-ciphers e.g. AES

๐บ๐‘’๐‘›:

๐œ‹:

Page 158: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Heuristic Instantiations

๐ธ

๐‘  โ† {0,1}๐‘˜

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

psPRP ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure

From Block-ciphers e.g. AES

Ideal-Cipher model

๐บ๐‘’๐‘›:

๐œ‹:

Page 159: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Heuristic Instantiations

๐ธ

๐‘  โ† {0,1}๐‘˜

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

psPRP ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure

๐œ‹

๐‘  โ† {0,1}๐‘˜

From Permutations e.g. the Keccak permutation

From Block-ciphers e.g. AES

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

Ideal-Cipher model

๐บ๐‘’๐‘›:

๐œ‹:

๐œ‹:

๐บ๐‘’๐‘›:

Page 160: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Heuristic Instantiations

๐ธ

๐‘  โ† {0,1}๐‘˜

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

psPRP ๐’ฎ๐‘ ๐‘Ÿ๐‘  -secure

psPRP ๐’ฎ๐‘ ๐‘ข๐‘ -secure ๐œ‹

๐‘  โ† {0,1}๐‘˜

From Permutations e.g. the Keccak permutation

From Block-ciphers e.g. AES

๐‘ƒ = (๐บ๐‘’๐‘›, ๐œ‹, ๐œ‹โˆ’1)

Ideal-Cipher model

RP model

๐บ๐‘’๐‘›:

๐œ‹:

๐œ‹:

๐บ๐‘’๐‘›:

Page 161: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 162: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs Fast garbling from [BHKR13]

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 163: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs Fast garbling from [BHKR13]

โ€ข Only calls fixed-key block cipher

๐‘ฅ โ†’ ๐ธ(0๐‘˜ , ๐‘ฅ)

โ€ข Very fast โ€“ no key-schedule

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 164: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs Fast garbling from [BHKR13]

โ€ข Only calls fixed-key block cipher

๐‘ฅ โ†’ ๐ธ(0๐‘˜ , ๐‘ฅ)

โ€ข Proof in RP model

โ€ข Very fast โ€“ no key-schedule

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 165: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs

This work: Replace ๐ธ 0๐‘˜ , ๐‘ฅ by ๐œ‹๐‘  for a random seed

generated upon garbling.

Fast garbling from [BHKR13]

โ€ข Only calls fixed-key block cipher

๐‘ฅ โ†’ ๐ธ(0๐‘˜ , ๐‘ฅ)

โ€ข Proof in RP model

โ€ข Very fast โ€“ no key-schedule

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 166: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Fast Garbling from psPRPs

This work: Replace ๐ธ 0๐‘˜ , ๐‘ฅ by ๐œ‹๐‘  for a random seed

generated upon garbling.

Fast garbling from [BHKR13]

โ€ข Only calls fixed-key block cipher

๐‘ฅ โ†’ ๐ธ(0๐‘˜ , ๐‘ฅ)

โ€ข Proof in RP model

โ€ข Very fast โ€“ no key-schedule

Theorem: Secure garbling when ๐œ‹๐’” is ๐‘๐‘ ๐‘ƒ๐‘…๐‘ƒ[๐’ฎ๐‘ ๐‘ข๐‘].

Garbled And

๐ธ 0๐‘›, ๐พ10 โŠ• ๐พ10 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ01 โŠ• ๐พ01 โŠ• ๐‘ฅ๐‘”0

๐ธ 0๐‘›, ๐พ11 โŠ• ๐พ11 โŠ• ๐‘ฅ๐‘”1

๐ธ 0๐‘›, ๐พ00 โŠ• ๐พ00 โŠ• ๐‘ฅ๐‘”0

๐‘ฅ๐‘Ž0, ๐‘ฅ๐‘Ž

1 ๐‘ฅ๐‘”0, ๐‘ฅ๐‘”

1 And ๐‘ฅ๐‘

0, ๐‘ฅ๐‘1

Page 167: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Roadmap

1.Definitions

2.Constructions & Applications

3.Conclusions

Co-related input hash

Functions (CIH)

Page 168: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Conclusion

psPRPs

Page 169: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Conclusion

First standard model assumptions on permutations

psPRPs

Page 170: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Constructions

Conclusion

First standard model assumptions on permutations

psPRPs

Page 171: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Constructions

Conclusion

First standard model assumptions on permutations

Applications psPRPs

Page 172: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

Page 173: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

psPRPs:

Page 174: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

psPRPs:

Public-seed Pseudorandomness - general paradigm:

Page 175: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

โ€ข Applications of public-seed Ideal Ciphers?

psPRPs:

Public-seed Pseudorandomness - general paradigm:

Page 176: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข Simpler assumptions on permutations?

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

โ€ข Applications of public-seed Ideal Ciphers?

psPRPs:

Public-seed Pseudorandomness - general paradigm:

Beyond psPRPs:

Page 177: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข Simpler assumptions on permutations?

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

โ€ข Applications of public-seed Ideal Ciphers?

psPRPs:

Public-seed Pseudorandomness - general paradigm:

Beyond psPRPs:

Is SHA-3 a CRHF under any non-trivial assumption?

Page 178: Public-seed Pseudorandom Permutationsย ยท KDM-secure symmetric key Enc. (KDM) Point function Obfuscation (PFOB) Message-locked ๐’‘๐’”๐‘ท๐‘น๐‘ท ... is -secure if โˆ€ PPT , , left

Many open questionsโ€ฆ

โ€ข Simpler assumptions on permutations?

โ€ข More applications: psPRP-based PRNGs, authenticated encryption?

โ€ข More efficient constructions: Round complexity of Feistel for psPRPs?

โ€ข Applications of public-seed Ideal Ciphers?

psPRPs:

Public-seed Pseudorandomness - general paradigm:

Beyond psPRPs:

Is SHA-3 a CRHF under any non-trivial assumption?

Thank you!