Delegation with (nearly) optimal time/space overhead Justin - - PowerPoint PPT Presentation

delegation with nearly optimal time space overhead
SMART_READER_LITE
LIVE PREVIEW

Delegation with (nearly) optimal time/space overhead Justin - - PowerPoint PPT Presentation

Delegation with (nearly) optimal time/space overhead Justin Holmgren Ron Rothblum MIT MIT Verifiable Computation Verifiable Computation Verifiable Computation M(x)=? M(x) = y Verifiable Computation M(x)=? , challenge , proof


slide-1
SLIDE 1

Delegation with (nearly) optimal time/space overhead

Justin Holmgren MIT Ron Rothblum MIT

slide-2
SLIDE 2

Verifiable Computation

slide-3
SLIDE 3

Verifiable Computation

slide-4
SLIDE 4

Verifiable Computation

“M(x) = y” M(x)=?

slide-5
SLIDE 5

Verifiable Computation

“M(x) = y” M(x)=? , challenge , proof

slide-6
SLIDE 6

Verifiable Computation

accept? “M(x) = y” M(x)=? , challenge , proof

slide-7
SLIDE 7

Verifiable Computation

Complexity
 << evaluating M(x)

accept? “M(x) = y” M(x)=? , challenge , proof

slide-8
SLIDE 8

Verifiable Computation

Complexity
 << evaluating M(x)

accept?

Complexity
 ~evaluating M(x)

“M(x) = y” M(x)=? , challenge , proof

slide-9
SLIDE 9

Verifiable Computation
 In Practice

Walfish, Blumberg ’15

slide-10
SLIDE 10

Verifiable Computation
 In Practice

Walfish, Blumberg ’15

“An additional bottleneck is memory: the prover must materialize a transcript of a computation's execution.”

slide-11
SLIDE 11

Verifiable Computation

Complexity
 << evaluating M(x)

“M(x) = y”, proof accept?

Complexity
 ~evaluating M(x)

  • Prover efficiency
  • Computational assumptions

Our focus: M(x)=?, challenge

slide-12
SLIDE 12

Prior Work

slide-13
SLIDE 13

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR poly(T) poly(T)

slide-14
SLIDE 14

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR T 60? T 60?

slide-15
SLIDE 15

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR T 3? T 3?

slide-16
SLIDE 16

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR SNARKs

[BC12, BCCT12, …]

RAM Non-Falsifiable Succinct Garbling

[GHRW14, KLW15,
 CH15, CCCLLZ15]

RAM Obfuscation T · poly(κ) S · poly(κ) T · poly(κ) S · poly(κ) T 3? T 3?

slide-17
SLIDE 17

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR SNARKs

[BC12, BCCT12, …]

RAM Non-Falsifiable Succinct Garbling

[GHRW14, KLW15,
 CH15, CCCLLZ15]

RAM Obfuscation [this work] TM “Slightly”
 Homomorphic
 Encryption T · poly(κ) S · poly(κ) T · poly(κ) S · poly(κ) T · poly(κ) S + poly(κ) T 3? T 3?

slide-18
SLIDE 18

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR SNARKs

[BC12, BCCT12, …]

RAM Non-Falsifiable Succinct Garbling

[GHRW14, KLW15,
 CH15, CCCLLZ15]

RAM Obfuscation [this work] TM “Slightly”
 Homomorphic
 Encryption T · poly(κ) S · poly(κ) T · poly(κ) S · poly(κ) T · poly(κ) S + poly(κ)

Extends to (cache-efficient) RAM

T 3? T 3?

slide-19
SLIDE 19

Prior Work

Model Assumptions Prover Time Prover Space No-Signaling PCP


[KRR14, KP15, BHK16]

RAM PIR SNARKs

[BC12, BCCT12, …]

RAM Non-Falsifiable Succinct Garbling

[GHRW14, KLW15,
 CH15, CCCLLZ15]

RAM Obfuscation [this work] TM “Slightly”
 Homomorphic
 Encryption T · poly(κ) S · poly(κ) T · poly(κ) S · poly(κ) T · poly(κ) S + poly(κ)

Extends to (cache-efficient) RAM

T 3? T 3?

slide-20
SLIDE 20

Probabilistically Checkable Proofs

slide-21
SLIDE 21

Probabilistically Checkable Proofs

Proof string π

π1 π2 … πL

Verifier

Input x

slide-22
SLIDE 22

Probabilistically Checkable Proofs

Proof string π

π1 π2 … πL

Verifier

Input x i1 i2 i3

slide-23
SLIDE 23

Probabilistically Checkable Proofs

Proof string π

π1 π2 … πL

Verifier

Input x

x ∈ L = ⇒ exists convincing proof

i1 i2 i3

slide-24
SLIDE 24

Probabilistically Checkable Proofs

Proof string π

π1 π2 … πL

Verifier

Input x

x ∈ L = ⇒ exists convincing proof x 62 L = ) every proof convinces
 with low probability

i1 i2 i3

slide-25
SLIDE 25

Probabilistically Checkable Proofs

Proof string π

π1 π2 … πL

Verifier

Input x

x ∈ L = ⇒ exists convincing proof x 62 L = ) every proof convinces
 with low probability

i1 i2 i3

Not a standard-model
 delegation scheme

slide-26
SLIDE 26

PCP-based Delegation

slide-27
SLIDE 27

PCP-based Delegation

PCP proof π PCP verifier

slide-28
SLIDE 28

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

slide-29
SLIDE 29

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

[Biehl-Meyer-Wetzel 98]

slide-30
SLIDE 30

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

  • Not sound in general


[Dwork-Langberg-Naor-Nissim-Reingold 01] [Biehl-Meyer-Wetzel 98]

slide-31
SLIDE 31

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

  • Not sound in general


[Dwork-Langberg-Naor-Nissim-Reingold 01]

  • Sound if the PCP is no-signaling sound


[Kalai-Raz-Rothblum 14] [Biehl-Meyer-Wetzel 98]

slide-32
SLIDE 32

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

  • Not sound in general


[Dwork-Langberg-Naor-Nissim-Reingold 01]

  • Sound if the PCP is no-signaling sound


[Kalai-Raz-Rothblum 14] [Biehl-Meyer-Wetzel 98]

no precomputation!

slide-33
SLIDE 33

PCP-based Delegation

PCP proof π independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

PCP verifier

  • Not sound in general


[Dwork-Langberg-Naor-Nissim-Reingold 01]

  • Sound if the PCP is no-signaling sound


[Kalai-Raz-Rothblum 14] [Biehl-Meyer-Wetzel 98]

no precomputation! general computations!

slide-34
SLIDE 34

PCP proof π PCP verifier

Observation 0

independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

slide-35
SLIDE 35

PCP proof π PCP verifier

Observation 0

independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

FHE ciphertexts

slide-36
SLIDE 36

PCP proof π PCP verifier

Observation 0

  • If PIR = FHE, just need efficient “random-

access” to PCP.

independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

FHE ciphertexts

slide-37
SLIDE 37

PCP proof π PCP verifier

Observation 0

  • If PIR = FHE, just need efficient “random-

access” to PCP.

independent PIR queries

i1 , . . . , ik πi1 , . . . , πik

FHE ciphertexts

No-Signaling PCP with efficient prover $$$ reward

slide-38
SLIDE 38

Our Technical Contributions

slide-39
SLIDE 39

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) (essentially BFLS)

slide-40
SLIDE 40

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S)

Remove major component of KRR, namely “augmented circuit”

(essentially BFLS)

slide-41
SLIDE 41

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

(essentially BFLS)

slide-42
SLIDE 42

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE (essentially BFLS)

slide-43
SLIDE 43

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE time: T · poly(λ) (essentially BFLS)

slide-44
SLIDE 44

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE time: T · poly(λ) S + poly(λ) space: (essentially BFLS)

slide-45
SLIDE 45

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE time: T · poly(λ) S + poly(λ) space: (essentially BFLS)

BFLS already known to be complexity-preserving? [BC12, BTVW14]

slide-46
SLIDE 46

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE time: T · poly(λ) S + poly(λ) space: (essentially BFLS)

BFLS already known to be complexity-preserving? [BC12, BTVW14] for deterministic
 computations

slide-47
SLIDE 47

Our Technical Contributions

1 Simpler and direct NS-PCP for any language L ∈ TISP(T, S) 2 Super-efficient prover: Any symbol computable in ˜ O(T) S + polylog(T) time: space:

Remove major component of KRR, namely “augmented circuit”

2’ Limited efficiency loss under FHE time: T · poly(λ) S + poly(λ) space: (essentially BFLS)

BFLS already known to be complexity-preserving? [BC12, BTVW14] for deterministic
 computations with non-deterministic
 computations

slide-48
SLIDE 48

Talk Outline

slide-49
SLIDE 49

Talk Outline

NOT proving NS-soundness of BFLS for deterministic circuits

slide-50
SLIDE 50

Talk Outline

NOT proving NS-soundness of BFLS for deterministic circuits Part 1: Turing / RAM Machines (non-succinct) deterministic circuits

slide-51
SLIDE 51

Talk Outline

NOT proving NS-soundness of BFLS for deterministic circuits Part 1: Turing / RAM Machines (non-succinct) deterministic circuits Part 2: (part of) BFLS prover efficiency despite non- succinctness.

slide-52
SLIDE 52

Turing Machines as Circuits

TM Configuration

tape

slide-53
SLIDE 53

Turing Machines as Circuits

TM Configuration

tape

slide-54
SLIDE 54

Turing Machines as Circuits

TM Configuration

tape

slide-55
SLIDE 55

Turing Machines as Circuits

TM Configuration

tape

slide-56
SLIDE 56

Config0 Config1

ConfigT-1

Transcript / Circuit

Turing Machines as Circuits

TM Configuration

tape

slide-57
SLIDE 57

Config0 Config1

ConfigT-1

Transcript / Circuit

Turing Machines as Circuits

TM Configuration

tape

slide-58
SLIDE 58

RAM Machines as Circuits

Configuration:

slide-59
SLIDE 59

RAM Machines as Circuits

Configuration:

(diameter log S) leaves = memory

slide-60
SLIDE 60

RAM Machines as Circuits

Configuration:

(diameter log S) leaves = memory

slide-61
SLIDE 61

RAM Machines as Circuits

Configuration:

(diameter log S) leaves = memory

slide-62
SLIDE 62

RAM Machines as Circuits

Configuration:

(diameter log S) leaves = memory

slide-63
SLIDE 63

RAM Machines as Circuits

Configuration: Important for BFLS:
 Graph is “regular”!

(diameter log S) leaves = memory

slide-64
SLIDE 64

RAM Machines as Circuits

Configuration: Transcript / Circuit:

Config0 Config1

ConfigT-1

Important for BFLS:
 Graph is “regular”!

(diameter log S) leaves = memory

slide-65
SLIDE 65

RAM Machines as Circuits

Configuration: Transcript / Circuit:

Config0 Config1

ConfigT-1

Important for BFLS:
 Graph is “regular”!

(diameter log S) leaves = memory

slide-66
SLIDE 66

RAM Machines as Circuits

Configuration: Transcript / Circuit:

Config0 Config1

ConfigT-1

Important for BFLS:
 Graph is “regular”!

(diameter log S) leaves = memory no routing networks!

slide-67
SLIDE 67

RAM Machines as Circuits

Configuration: Transcript / Circuit:

Config0 Config1

ConfigT-1

Important for BFLS:
 Graph is “regular”!

(diameter log S) leaves = memory no Merkle trees! no routing networks!

slide-68
SLIDE 68

The PCP (BFLS) Part 1: Multilinear extension

slide-69
SLIDE 69

The PCP (BFLS) Part 1: Multilinear extension

Let be any function. f : {0, 1}m → F

slide-70
SLIDE 70

The PCP (BFLS) Part 1: Multilinear extension

1 Let be any function. f : {0, 1}m → F

slide-71
SLIDE 71

The PCP (BFLS) Part 1: Multilinear extension

1 multilinear 1

  • 1
  • 2

2 3

  • 2 -3
  • 4 -6

ˆ f : Fm → F Let be any function. f : {0, 1}m → F

slide-72
SLIDE 72

The PCP (BFLS) Part 1: Multilinear extension

1 multilinear 1

  • 1
  • 2

2 3

  • 2 -3
  • 4 -6

ˆ f : Fm → F Let be any function. f : {0, 1}m → F ˆ f( ) = X

x∈{0,1}m

f(x) · ˆ 1x( )

slide-73
SLIDE 73

The PCP (BFLS) Part 1: Multilinear extension

1 multilinear 1

  • 1
  • 2

2 3

  • 2 -3
  • 4 -6

ˆ f : Fm → F Let be any function. f : {0, 1}m → F ˆ f( ) = X

x∈{0,1}m

f(x) · ˆ 1x( )

“funny x” ∈ Fm

slide-74
SLIDE 74

The PCP (BFLS) Part 1: Multilinear extension

1 multilinear 1

  • 1
  • 2

2 3

  • 2 -3
  • 4 -6

ˆ f : Fm → F Let be any function. f : {0, 1}m → F ˆ f( ) = X

x∈{0,1}m

f(x) · ˆ 1x( )

“funny x” ∈ Fm “bold x” ∈ {0, 1}m

slide-75
SLIDE 75

Prover Efficiency

  • 1. Evaluating extension of transcript

sum sum

ˆ C : {0, 1}t+s → {0, 1}

slide-76
SLIDE 76

Prover Efficiency

  • 1. Evaluating extension of transcript

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-77
SLIDE 77

Prover Efficiency

  • 1. Evaluating extension of transcript

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-78
SLIDE 78

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-79
SLIDE 79

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-80
SLIDE 80

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-81
SLIDE 81

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-82
SLIDE 82

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-83
SLIDE 83

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-84
SLIDE 84

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-85
SLIDE 85

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-86
SLIDE 86

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2 2

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-87
SLIDE 87

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2 2

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-88
SLIDE 88

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-89
SLIDE 89

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-90
SLIDE 90

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-91
SLIDE 91

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-92
SLIDE 92

13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-93
SLIDE 93

13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-94
SLIDE 94

13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum was 3,
 now 0

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-95
SLIDE 95
  • 3

13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum was 3,
 now 0

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-96
SLIDE 96
  • 3

13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum was 3,
 now 0

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-97
SLIDE 97
  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

3 1 2 2 5

sum sum was 3,
 now 0

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-98
SLIDE 98
  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-99
SLIDE 99
  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-100
SLIDE 100

+1

  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-101
SLIDE 101

+1

  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-102
SLIDE 102

11 +1

  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-103
SLIDE 103

11 +1

  • 3

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-104
SLIDE 104

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-105
SLIDE 105

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-106
SLIDE 106

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-107
SLIDE 107

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1 Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-108
SLIDE 108

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

Coefficients structured;
 all is still well

Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-109
SLIDE 109

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

Coefficients structured;
 all is still well

Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-110
SLIDE 110

11 +1

  • 3

X

x,y

C(x, y)

10 13

Prover Efficiency

  • 1. Evaluating extension of transcript

Config0 Config1

Coefficients structured;
 all is still well

Config2

3 1 2 2 5

sum sum was 3,
 now 0 implicit
 enumeration


  • f

was 1,
 now 2

… ˆ C : {0, 1}t+s → {0, 1} ˆ C( , ) = X

y,x

C(y, x) · ˆ 1y,x( , )

slide-111
SLIDE 111

Additional Challenges

slide-112
SLIDE 112

Additional Challenges

  • Other (sum-check) polynomials
slide-113
SLIDE 113

Additional Challenges

  • Other (sum-check) polynomials
  • Getting rid of KRR’s augmented circuit
slide-114
SLIDE 114

Additional Challenges

  • Other (sum-check) polynomials
  • Getting rid of KRR’s augmented circuit
  • Prover efficiency under somewhat homomorphic

encryption

slide-115
SLIDE 115

Additional Challenges

  • Other (sum-check) polynomials
  • Getting rid of KRR’s augmented circuit
  • Prover efficiency under somewhat homomorphic

encryption

  • Low multiplicative degree,


O(1) field operations per step

slide-116
SLIDE 116

Additional Challenges

  • Other (sum-check) polynomials
  • Getting rid of KRR’s augmented circuit
  • Prover efficiency under somewhat homomorphic

encryption

  • Low multiplicative degree,


O(1) field operations per step

  • Space stays , not

S + poly(κ) S · poly(κ)

slide-117
SLIDE 117

Summary

Assumptions Prover Time Prover Space No-Signaling PCPs [KRR, …] PIR SNARKs

[BC,BCCT, …]

Non-Falsifiable Succinct Garbling

[GHRW, KLW, …]

Obfuscation/ multilinear maps [this work] ≥ T 3S3 ≥ T 3S3 T · poly(κ) S · poly(κ) T · poly(κ) S · poly(κ) T · poly(κ) S + poly(κ) “Slightly”
 Homomorphic
 Encryption

slide-118
SLIDE 118

Open Questions

  • How does this compare in practice? What are the

remaining bottlenecks?

  • Can PCP query complexity be reduced?
  • Is there an FHE scheme which is extra efficient for
  • ur prover?
  • Efficiently evaluate low-degree arithmetic circuits

(large fields)

slide-119
SLIDE 119

Open Questions

  • How does this compare in practice? What are the

remaining bottlenecks?

  • Can PCP query complexity be reduced?
  • Is there an FHE scheme which is extra efficient for
  • ur prover?
  • Efficiently evaluate low-degree arithmetic circuits

(large fields)

low “asymmetric” degree (GSW) even better