Overview Part 1: Malicious QFactory Functionality Required - - PowerPoint PPT Presentation

overview
SMART_READER_LITE
LIVE PREVIEW

Overview Part 1: Malicious QFactory Functionality Required - - PowerPoint PPT Presentation

Overview Part 1: Malicious QFactory Functionality Required assumptions Protocol description Security Protocol Extensions (e.g. verification) Part 2: Functions implementation QHBC QFactory functions Malicious


slide-1
SLIDE 1
slide-2
SLIDE 2

Overview

 Part 1: Malicious QFactory

 Functionality  Required assumptions  Protocol description  Security  Protocol Extensions (e.g. verification)

 Part 2: Functions implementation

 QHBC QFactory functions  Malicious QFactory functions

slide-3
SLIDE 3

II. Classical delegation of secret qubits against Malicious Adversaries

  • r

Malicious 4-states QFactory

slide-4
SLIDE 4

Malicious 4-states QFactory functionality

|𝑃𝑣𝑢𝑞𝑣𝑢⟩ ՚

$ {|0⟩, |1⟩, |+⟩, |−⟩}

|𝑃𝑣𝑢𝑞𝑣𝑢⟩ 𝑃𝑣𝑢𝑞𝑣𝑢

slide-5
SLIDE 5

Motivation

There exist protocols for most of these applications where quantum communication

  • nly consists of

the qubits 0 , 1 , + , −

slide-6
SLIDE 6

Motivation

There exist protocols for most of these applications where quantum communication

  • nly consists of

the qubits 0 , 1 , + , − Functionality of Malicious 4- states QFactory ⇒ classical delegation of quantum computation (against malicious adversaries)

slide-7
SLIDE 7

Motivation

There exist protocols for most of these applications where quantum communication

  • nly consists of

the qubits 0 , 1 , + , − Functionality of Malicious 4- states QFactory ⇒ classical delegation of quantum computation (against malicious adversaries) as long as the basis of qubits is hidden from any adversary

slide-8
SLIDE 8

Malicious 4-states QFactory Required Assumptions

except if you have the trapdoor 𝑢𝑙 associated to the index function 𝑙 This function is hard to invert. 2 preimages for any element in 𝐽𝑛 𝑔

𝑙

Without the trapdoor 𝑢𝑙, hard to find 𝑦 ≠ 𝑦’ such that 𝑔

𝑙(𝑦) = 𝑔 𝑙(𝑦′)

slide-9
SLIDE 9

𝑕𝑙: 𝐸 → 𝑆 injective, homomorphic, quantum-safe, trapdoor one-way;

Malicious 4-states QFactory Required Assumptions

This function is hard to invert. 2 preimages for any element in 𝐽𝑛 𝑔

𝑙

Without the trapdoor 𝑢𝑙, hard to find 𝑦 ≠ 𝑦’ such that 𝑔

𝑙(𝑦) = 𝑔 𝑙(𝑦′)

𝑔

𝑙 𝑦, 𝑑 = ቊ𝑕𝑙 𝑦 ,

𝑗𝑔 𝑑 = 0 𝑕𝑙 𝑦 ⋆ 𝑕𝑙 𝑦0 = 𝑕𝑙 𝑦 + 𝑦0 , 𝑗𝑔 𝑑 = 1 𝑔

𝑙 ∶ 𝐸 × 0, 1 → 𝑆

except if you have the trapdoor 𝑢𝑙 associated to the index function 𝑙

where 𝑦0 is chosen by the Client at random from the domain of 𝑕𝑙

slide-10
SLIDE 10

𝑕𝑙: 𝐸 → 𝑆 injective, homomorphic, quantum-safe, trapdoor one-way;

ℎ𝑚

Has the same domain as 𝑕𝑙 and outputs a single bit.

ℎ𝑚 𝑦1 ⊕ ℎ𝑚(𝑦2) = ℎ𝑚(𝑦2 − 𝑦1)

When 𝑦 is sampled uniformly at random, it is hard to distinguish ℎ𝑚 𝑦 from a random bit.

Malicious 4-states QFactory Required Assumptions

This function is hard to invert. 2 preimages for any element in 𝐽𝑛 𝑔

𝑙

Without the trapdoor 𝑢𝑙, hard to find 𝑦 ≠ 𝑦’ such that 𝑔

𝑙(𝑦) = 𝑔 𝑙(𝑦′)

𝑔

𝑙 𝑦, 𝑑 = ቊ𝑕𝑙 𝑦 ,

𝑗𝑔 𝑑 = 0 𝑕𝑙 𝑦 ⋆ 𝑕𝑙 𝑦0 = 𝑕𝑙 𝑦 + 𝑦0 , 𝑗𝑔 𝑑 = 1 𝑔

𝑙 ∶ 𝐸 × 0, 1 → 𝑆

except if you have the trapdoor 𝑢𝑙 associated to the index function 𝑙

where 𝑦0 is chosen by the Client at random from the domain of 𝑕𝑙

slide-11
SLIDE 11

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

Malicious 4-states QFactory Protocol

slide-12
SLIDE 12

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

Malicious 4-states QFactory Protocol

slide-13
SLIDE 13

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-14
SLIDE 14

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-15
SLIDE 15

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩ → σ𝑦∈𝐸𝑝𝑛 𝑔𝑙 𝑦 |0𝑛⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-16
SLIDE 16

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩ → σ𝑦∈𝐸𝑝𝑛 𝑔𝑙 𝑦 |0𝑛⟩ → σ𝑦∈𝐸𝑝𝑛 𝑔𝑙 𝑦 |𝑔 𝑦 ⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-17
SLIDE 17

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩ → σ𝑦∈𝐸𝑝𝑛 𝑔𝑙 𝑦 |0𝑛⟩ → σ𝑦∈𝐸𝑝𝑛 𝑔𝑙 𝑦 𝑔 𝑦 = σ𝑧∈𝐽𝑛 𝑔𝑙 ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-18
SLIDE 18

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩ → ෍

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 |0𝑛⟩ → ෍

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩

𝑦 = (𝑨, 0) 𝑦’ = (𝑨′, 1)

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-19
SLIDE 19

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

0𝑜⟩ 0𝑛⟩ → ෍

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 |0𝑛⟩ → ෍

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩)

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-20
SLIDE 20

𝐷ℎ𝑝𝑝𝑡𝑓 (𝑙, 𝑢𝑙) 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-21
SLIDE 21

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-22
SLIDE 22

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩}

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-23
SLIDE 23

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

Malicious 4-states QFactory Protocol

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

𝑦 = 𝑨, 0 𝑦′ = (𝑨′, 1)

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-24
SLIDE 24

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

𝑸𝒔𝒑𝒆𝒗𝒅𝒇𝒕 |𝑷𝒗𝒖𝒒𝒗𝒖⟩

Malicious 4-states QFactory Protocol

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

𝑦 = 𝑨, 0 𝑦′ = (𝑨′, 1)

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-25
SLIDE 25

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

𝑧, 𝑐 𝑸𝒔𝒑𝒆𝒗𝒅𝒇𝒕 |𝑷𝒗𝒖𝒒𝒗𝒖⟩

Malicious 4-states QFactory Protocol

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

𝑦 = 𝑨, 0 𝑦′ = (𝑨′, 1)

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-26
SLIDE 26

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

𝑧, 𝑐

(𝑦, 𝑦’) = 𝐽𝑜𝑤(𝑢𝑙, 𝑧) 𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝐶1, 𝐶2

𝑸𝒔𝒑𝒆𝒗𝒅𝒇𝒕 |𝑷𝒗𝒖𝒒𝒗𝒖⟩ 𝑦 = 𝑨, 0 𝑦′ = (𝑨′, 1)

Malicious 4-states QFactory Protocol

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-27
SLIDE 27

𝐷ℎ𝑝𝑝𝑡𝑓 𝑙, 𝑢𝑙 𝐷ℎ𝑝𝑝𝑡𝑓 𝑚

𝑙, 𝑚

𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝑢ℎ𝑓 𝑑𝑗𝑠𝑑𝑣𝑗𝑢

𝑦∈𝐸𝑝𝑛 𝑔𝑙

𝑦 𝑔 𝑦 = ෍

𝑧∈𝐽𝑛 𝑔𝑙

( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ → ( 𝑦 + |𝑦′⟩) ⊗ |𝑧⟩ = (|𝑨⟩|0⟩ + |𝑨′⟩|1⟩) ⊗ |𝑧⟩ → (|𝑨⟩|0⟩|0⟩ + |𝑨′⟩|1⟩|0⟩) → |𝑨⟩|0⟩|ℎ(𝑨)⟩ + |𝑨′⟩|1⟩|ℎ(𝑨′)⟩ ⇒ |𝑷𝒗𝒖𝒒𝒗𝒖⟩

𝑨 𝑑 0

෪ 𝑉ℎ |𝑨⟩ |𝑑⟩ |ℎ(𝑨) ⟩

𝑧, 𝑐

(𝑦, 𝑦’) = 𝐽𝑜𝑤(𝑢𝑙, 𝑧) 𝐷𝑝𝑛𝑞𝑣𝑢𝑓 𝐶1, 𝐶2

𝑸𝒔𝒑𝒆𝒗𝒅𝒇𝒕 |𝑷𝒗𝒖𝒒𝒗𝒖⟩ 𝑯𝒇𝒖𝒕 𝑷𝒗𝒖𝒒𝒗𝒖

Malicious 4-states QFactory Protocol

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

𝑦 = 𝑨, 0 𝑦′ = (𝑨′, 1)

𝑉ℎ𝑚 𝑉

𝑔𝑙

slide-28
SLIDE 28

Security (in the quantum malicious setting)

▪ 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ ▪ 𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ If 𝐶1 = 0 then 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} and if 𝐶1 = 1 then 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩}

  • Blindness of the basis 𝐶1 of |𝑃𝑣𝑢𝑞𝑣𝑢⟩

against malicious adversaries.

  • Theorem: No matter what Bob does,

he cannot determine 𝐶1.

  • Server cannot do better than a random guess:

𝐶1 is a hard-core predicate (wrt the function g);

slide-29
SLIDE 29

Security (in the quantum malicious setting)

➢ 𝐶1 is a hard-core predicate ⟹ basis-bli lindness ss ➢ The basis-blindness is the “maximum” security: ➢ Even after an honest run we can at most guarantee basis blindness, but not full blindness about the output state: ➢ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} ➢ Then the Adversary can determine 𝐶2 with probability at least

3 4:

➢ Makes a random guess ෪ 𝐶1 and then measures 𝑃𝑣𝑢𝑞𝑣𝑢 in the ෪ 𝐶1 basis, obtaining measurement outcome ෪ 𝐶2 : if ෪ 𝐶1 = 𝐶1 then ෪ 𝐶2 = 𝐶2 with probability 1, otherwise ෪ 𝐶2 = 𝐶2 with probability

1 2 ;

➢ Basis-blindness is proven to be sufficient for many secure computation protocols, e.g. blind quantum computation (UBQC protocol); ➢ Basis-blindness is required for classical verification of QFactory; ⟹ classical verification of quantum computations

slide-30
SLIDE 30

Security (in the quantum malicious setting)

Recall:

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

slide-31
SLIDE 31

Security (in the quantum malicious setting)

𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} ⇔ 𝐶1 = 0 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩} ⇔ 𝐶1 = 1

⇒ 𝐼𝑗𝑒𝑗𝑜𝑕 the basis equivalent to hiding 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

Recall:

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

slide-32
SLIDE 32

Security (in the quantum malicious setting)

𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} ⇔ 𝐶1 = 0 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩} ⇔ 𝐶1 = 1

⇒ 𝐼𝑗𝑒𝑗𝑜𝑕 the basis equivalent to hiding 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

Recall:

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

  • Using the definition of 𝑔:

𝑔 𝑨, 𝑑 = 𝑕 𝑨 + 𝑑 ⋅ 𝑕 𝑨0 =

ℎ𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 𝑕 𝑨 + 𝑑 ⋅ 𝑨0

slide-33
SLIDE 33

Security (in the quantum malicious setting)

𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} ⇔ 𝐶1 = 0 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩} ⇔ 𝐶1 = 1

⇒ 𝐼𝑗𝑒𝑗𝑜𝑕 the basis equivalent to hiding 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

Recall:

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

  • Using the definition of 𝑔:

𝑔 𝑨, 𝑑 = 𝑕 𝑨 + 𝑑 ⋅ 𝑕 𝑨0 =

ℎ𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 𝑕 𝑨 + 𝑑 ⋅ 𝑨0

  • 𝑕 is injective, the 2 preimages of 𝑔 are:

𝑦 = 𝑨, 0 𝑏𝑜𝑒 𝑦’ = 𝑨 + 𝑨0, 1 ⇒ 𝑨’ = 𝑨 + 𝑨0

slide-34
SLIDE 34

Security (in the quantum malicious setting)

𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} ⇔ 𝐶1 = 0 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩} ⇔ 𝐶1 = 1

⇒ 𝐼𝑗𝑒𝑗𝑜𝑕 the basis equivalent to hiding 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

Recall:

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

  • Using the definition of 𝑔:

𝑔 𝑨, 𝑑 = 𝑕 𝑨 + 𝑑 ⋅ 𝑕 𝑨0 =

ℎ𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 𝑕 𝑨 + 𝑑 ⋅ 𝑨0

  • 𝑕 is injective, the 2 preimages of 𝑔 are:

𝑦 = 𝑨, 0 𝑏𝑜𝑒 𝑦’ = 𝑨 + 𝑨0, 1 ⇒ 𝑨’ = 𝑨 + 𝑨0

  • ℎ is homomorphic:

𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨′ = ℎ 𝑨′ − 𝑨 = ℎ(𝑨0)

slide-35
SLIDE 35

Recall:

  • Using the definition of 𝑔:

𝑔 𝑨, 𝑑 = 𝑕 𝑨 + 𝑑 ⋅ 𝑕 𝑨0 =

ℎ𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 𝑕 𝑨 + 𝑑 ⋅ 𝑨0

  • 𝑕 is injective, the 2 preimages of 𝑔 are:

𝑦 = 𝑨, 0 𝑏𝑜𝑒 𝑦’ = 𝑨 + 𝑨0, 1 ⇒ 𝑨’ = 𝑨 + 𝑨0

  • ℎ is homomorphic:

𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨′ = ℎ 𝑨′ − 𝑨 = ℎ(𝑨0)

  • ℎ is hardcore predicate:

𝐶1 = ℎ 𝑨0 𝑗𝑡 ℎ𝑗𝑒𝑒𝑓𝑜

𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩ , |1⟩ , |+⟩ , |−⟩} 𝑃𝑣𝑢𝑞𝑣𝑢 = 𝐼𝐶1𝑌𝐶2|0⟩ 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

𝐶2 = σ 𝑦𝑗 ⊕ 𝑦𝑗′ ⋅ 𝑐𝑗 𝑛𝑝𝑒 2 ⋅ 𝐶1 ⊕ [ℎ 𝑨 ⋅ 1 ⊕ 𝐶1 ]

Security (in the quantum malicious setting)

𝐶1 = the basis bit of 𝑃𝑣𝑢𝑞𝑣𝑢 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|0⟩, |1⟩} ⇔ 𝐶1 = 0 ▪ 𝑃𝑣𝑢𝑞𝑣𝑢 ∈ {|+⟩, |−⟩} ⇔ 𝐶1 = 1

⇒ 𝐼𝑗𝑒𝑗𝑜𝑕 the basis equivalent to hiding 𝐶1 = ℎ 𝑨 ⊕ ℎ 𝑨’

slide-36
SLIDE 36

 The client picks at random 𝑨0 and then sends 𝐿′ = 𝐿, 𝑕𝐿 𝑨0

to the Server (as the public description of 𝑔)

 As the basis of the output qubit is 𝐶1 = ℎ(𝑨0), then the basis is basically fixed

by the Client at the very beginning of the protocol.

 The output basis depends only on the Client’s random choice of 𝑨0 and is

independent of the Server’s communication.

 Then, no matter how the Server deviates and no matter what are the

messages (𝑧, 𝑐) sent by Server, to prove that the basis 𝐶1 = ℎ(𝑨0) is completely hidden from the Server, is sufficient to use that ℎ is a hardcore predicate.

Security (in the quantum malicious setting)

Overview

slide-37
SLIDE 37

Extensions of QFactory

slide-38
SLIDE 38

Malicious 8-states QFactory

 To use Malicious 4-states QFactory for applications where communication consists

  • f |+𝜄⟩, with 𝜄 ∈ {0, 𝜌

4 , … , 7𝜌 4 }, we provide a gadget that achieves such a state from

2 outputs of Malicious 4-states QFactory.

slide-39
SLIDE 39

Malicious 8-states QFactory

 To use Malicious 4-states QFactory for applications where communication consists

  • f |+𝜄⟩, with 𝜄 ∈ {0, 𝜌

4 , … , 7𝜌 4 }, we provide a gadget that achieves such a state from

2 outputs of Malicious 4-states QFactory.

𝑝𝑣𝑢 = 𝑆 𝑀1𝜌 + 𝑀2 𝜌 2 + 𝑀3 𝜌 4 + 𝑀3 = 𝐶1 𝑀2 = 𝐶1

′ ⊕ [ 𝐶2 ⊕ 𝑡2 ⋅ 𝐶1]

𝑀1 = 𝐶2

′ ⊕ 𝐶2 ⊕ [𝐶1 ⋅ (𝑡1 ⊕ 𝑡2)]

slide-40
SLIDE 40

Malicious 8-states QFactory

To use Malicious 4-states QFactory for applications where communication consists of |+𝜄⟩, with 𝜄 ∈ {0, 𝜌

4 , … , 7𝜌 4 }, we provide a gadget that achieves such a state from 2

  • utputs of Malicious 4-states QFactory.

No information about the bases (𝑀2, 𝑀3) of the new output state |𝑝𝑣𝑢⟩ is leaked:

We prove the basis blindness of the output of the gadget by a reduction to the basis-blindness of 1 of the 2 outputs of Malicious 4-states QFactory; If you could determine 𝑀2 and 𝑀3, then you would determine 𝐶1 or 𝐶1′. 𝑝𝑣𝑢 = 𝑆 𝑀1𝜌 + 𝑀2 𝜌 2 + 𝑀3 𝜌 4 + 𝑀3 = 𝐶1 𝑀2 = 𝐶1

′ ⊕ [ 𝐶2 ⊕ 𝑡2 ⋅ 𝐶1]

𝑀1 = 𝐶2

′ ⊕ 𝐶2 ⊕ [𝐶1 ⋅ (𝑡1 ⊕ 𝑡2)]

slide-41
SLIDE 41

Blind Measurements

 Perform a measurement on a first qubit of an arbitrary state |𝜔⟩ in such a way

that the adversary is oblivious whether he is performing a measurement in 1

  • ut of 2 possible basis (e.g. 𝑌 or 𝑎 basis).

 Useful for classical verification of quantum computations;

 Achieved using the following gadget:

slide-42
SLIDE 42

Blind Measurements

 Perform a measurement on a first qubit of an arbitrary state |𝜔⟩ in such a way

that the adversary is oblivious whether he is performing a measurement in 1

  • ut of 2 possible basis (e.g. 𝑌 or 𝑎 basis).

 Useful for classical verification of quantum computations (Mahadev FOCS18);

 Achieved using the following gadget:

slide-43
SLIDE 43

Blind Measurements

 Perform a measurement on an arbitrary state |𝜔⟩ in such a way that the

adversary is oblivious whether he is performing a measurement in 1 out of 2 possible basis (e.g. 𝑌 or 𝑎 basis).

 Useful for classical verification of quantum computations (Mahadev FOCS18);

 Achieved using the following gadget:  No information about the basis of the measurement is leaked;

 We prove the measurement blindness of the output of the gadget by a reduction to

the basis-blindness of Malicious 4-states QFactory;

slide-44
SLIDE 44

Classical verification of quantum computations

 Basis-blindness is not sufficient for verifiable blind quantum computation;  To achieve verification, we combine Basis Blindness and Self-Testing;

slide-45
SLIDE 45

Classical verification of quantum computations

 Basis-blindness is not sufficient for verifiable blind quantum computation;  To achieve verification, we combine Basis Blindness and Self-Testing;  Self-Testing

 Given measurement statistics, classical parties are certain that some untrusted

quantum states, that 2 non-communicating quantum parties share, are the states that the classical parties believe to have;

 In our case, we replace the non-communication property with the basis-blindness

condition;

slide-46
SLIDE 46

{ 0 , 1 , + , − }

8 states hidden bases Self-Testing

|+𝜄⟩, 𝜄 ∈ {0,

𝜌 4 , … , 7𝜌 4 }

4 states hidden bases

Classical verification of quantum computations

slide-47
SLIDE 47

Verification Protocol

1.

We repeat Malicious 8-states QFactory multiple times – independent runs;

Classical verification of quantum computations

slide-48
SLIDE 48

Verification Protocol

1.

We repeat Malicious 8-states QFactory multiple times – independent runs;

2.

The Client chooses and announces a random fraction of the output qubits of these runs to use them for a test;

Classical verification of quantum computations

slide-49
SLIDE 49

Verification Protocol

1.

We repeat Malicious 8-states QFactory multiple times – independent runs;

2.

The Client chooses and announces a random fraction of the output qubits of these runs to use them for a test;

3.

The Server is instructed by the Client to measure the test qubits in random angles and sends the measurement results to the Client;

Classical verification of quantum computations

slide-50
SLIDE 50

Verification Protocol

1.

We repeat Malicious 8-states QFactory multiple times – independent runs;

2.

The Client chooses and announces a random fraction of the output qubits of these runs to use them for a test;

3.

The Server is instructed by the Client to measure the test qubits in random angles and sends the measurement results to the Client;

4.

With the measurement results, the client knowing the basis of the test qubits and the measurement angles, he can check their statistics;

Classical verification of quantum computations

slide-51
SLIDE 51

Verification Protocol

1.

We repeat Malicious 8-states QFactory multiple times – independent runs;

2.

The Client chooses and announces a random fraction of the output qubits of these runs to use them for a test;

3.

The Server is instructed by the Client to measure the test qubits in random angles and sends the measurement results to the Client;

4.

With the measurement results, the client knowing the basis of the test qubits and the measurement angles, he can check their statistics;

5.

Since the server does not know the basis bits of these test states, he is unlikely to succeed in guessing the correct statistics unless he is honest.

Classical verification of quantum computations

slide-52
SLIDE 52

QHBC QFactory Function Construction

slide-53
SLIDE 53

QHBC QFactory

Required Assumptions:

slide-54
SLIDE 54

I. Function Constructions

 We propose 2 generic constructions, using:

 A) A bijective, quantum-safe, trapdoor one-way function 𝑕𝑙: 𝐸 → 𝑆

slide-55
SLIDE 55

I. Function Constructions

 We propose 2 generic constructions, using:

 A) A bijective, quantum-safe, trapdoor one-way function 𝑕𝑙: 𝐸 → 𝑆  B) An injective, homomorphic, quantum-safe, trapdoor one-way function 𝑕𝑙: 𝐸 → 𝑆 where 𝑦0 is chosen by the Client at random from the domain of 𝑕𝑙

slide-56
SLIDE 56

Injective, homomorphic, quantum-safe, trapdoor one-way function

Construction based on the Micciancio and Peikert trapdoor function – derived from the Learning With Errors problem: 𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 → ℤq m

𝑕𝐿 𝑡, 𝑓 = 𝐿𝑡 + 𝑓 𝑛𝑝𝑒 𝑟 𝑥ℎ𝑓𝑠𝑓 𝐿 ՚ ℤq

𝑛×𝑜 and 𝑓𝑗 ∈ 𝜓 𝑗𝑔 𝑓𝑗 ≤ 𝜈 = 𝑟 4

slide-57
SLIDE 57

Homomorphic property

 𝑕𝐿(𝑡, 𝑓) + 𝑕𝐿(𝑡0, 𝑓0) 𝑛𝑝𝑒 𝑟 = (𝐿𝑡 + 𝑓 + 𝐿𝑡0 + 𝑓0) 𝑛𝑝𝑒 𝑟 = 𝑕𝐿

𝑡 + 𝑡0 𝑛𝑝𝑒 𝑟, 𝑓 + 𝑓0

slide-58
SLIDE 58

Homomorphic property

 𝑕𝐿(𝑡, 𝑓) + 𝑕𝐿(𝑡0, 𝑓0) 𝑛𝑝𝑒 𝑟 = (𝐿𝑡 + 𝑓 + 𝐿𝑡0 + 𝑓0) 𝑛𝑝𝑒 𝑟 = 𝑕𝐿

𝑡 + 𝑡0 𝑛𝑝𝑒 𝑟, 𝑓 + 𝑓0

 Issue: domain of 𝑕𝐿 imposes that each component of 𝑓 + 𝑓0 must be bounded by 𝜈 !  Otherwise, we will just have 1 preimage;

slide-59
SLIDE 59

Homomorphic property

 𝑕𝐿(𝑡, 𝑓) + 𝑕𝐿(𝑡0, 𝑓0) 𝑛𝑝𝑒 𝑟 = (𝐿𝑡 + 𝑓 + 𝐿𝑡0 + 𝑓0) 𝑛𝑝𝑒 𝑟 = 𝑕𝐿

𝑡 + 𝑡0 𝑛𝑝𝑒 𝑟, 𝑓 + 𝑓0

 Issue: domain of 𝑕𝐿 imposes that each component of 𝑓 + 𝑓0 must be bounded by 𝜈 !  Otherwise, we will just have 1 preimage;  To solve this:

 We are sampling 𝑓0 from a smaller set, such that when added with a random input 𝑓, the total

noise 𝑓 + 𝑓0 is bounded by 𝜈 with high probability;

 We showed that if 𝑓0 is sampled such that it is bounded by 𝜈’ =

𝜈 𝑛, then 𝑓 + 𝑓0 lies in the domain

  • f the function with constant probability

𝑔 is 2-regular with constant probability

 However, what we must show is that when 𝑓0 is restricted to this smaller domain 𝑕𝐿(𝑡0, 𝑓0) is still

hard to invert.

slide-60
SLIDE 60

Homomorphic property

 𝑕𝐿(𝑡, 𝑓) + 𝑕𝐿(𝑡0, 𝑓0) 𝑛𝑝𝑒 𝑟 = (𝐿𝑡 + 𝑓 + 𝐿𝑡0 + 𝑓0) 𝑛𝑝𝑒 𝑟 = 𝑕𝐿

𝑡 + 𝑡0 𝑛𝑝𝑒 𝑟, 𝑓 + 𝑓0

 Issue: domain of 𝑕𝐿 imposes that each component of 𝑓 + 𝑓0 must be bounded by 𝜈 !  Otherwise, we will just have 1 preimage;  To solve this:

 We are sampling 𝑓0 from a smaller set, such that when added with a random input 𝑓, the total

noise 𝑓 + 𝑓0 is bounded by 𝜈 with high probability;

 We showed that if 𝑓0 is sampled such that it is bounded by 𝜈’ =

𝜈 𝑛, then 𝑓 + 𝑓0 lies in the domain

  • f the function with constant probability

𝑔 is 2-regular with constant probability

 However, what we must show is that when 𝑓0 is restricted to this smaller domain 𝑕𝐿(𝑡0, 𝑓0) is still

hard to invert.

 Finally, we show there exists an explicit choice of parameters such that both 𝑕 and the

restriction of 𝑕 to the domain of 𝑓0 are one-way functions and such that all the other properties of 𝑕 are preserved.

slide-61
SLIDE 61

Malicious QFactory Function Construction

slide-62
SLIDE 62

𝑕𝑙: 𝐸 → 𝑆 injective, homomorphic, quantum-safe, trapdoor one-way;

ℎ𝑚

Has the same domain as 𝑕𝑙 and outputs a single bit.

ℎ𝑚 𝑦1 ⊕ ℎ𝑚(𝑦2) = ℎ𝑚(𝑦2 − 𝑦1)

When 𝑦 is sampled uniformly at random, it is hard to distinguish ℎ𝑚 𝑦 from a random bit.

Malicious QFactory Required Assumptions

This function is hard to invert. 2 preimages for any element in 𝐽𝑛 𝑔

𝑙

Without the trapdoor 𝑢𝑙, hard to find 𝑦 ≠ 𝑦’ such that 𝑔

𝑙(𝑦) = 𝑔 𝑙(𝑦′)

𝑔

𝑙 𝑦, 𝑑 = ቊ𝑕𝑙 𝑦 ,

𝑗𝑔 𝑑 = 0 𝑕𝑙 𝑦 ⋆ 𝑕𝑙 𝑦0 = 𝑕𝑙 𝑦 + 𝑦0 , 𝑗𝑔 𝑑 = 1 𝑔

𝑙 ∶ 𝐸 × 0, 1 → 𝑆

except if you have the trapdoor 𝑢𝑙 associated to the index function 𝑙

slide-63
SLIDE 63

Malicious QFactory functions

“QHBC” functions:

ത 𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 → ℤq m

ҧ 𝑔

𝐿′ ∶ ℤq n × 𝜓𝑛 × 0, 1 → ℤq m

𝐿 ՚

$ ℤq 𝑛×𝑜

𝐿′ = 𝐿, ത 𝑕𝐿 𝑡0, 𝑓0 ത 𝑕𝐿 𝑡, 𝑓 = 𝐿𝑡 + 𝑓 𝑛𝑝𝑒 𝑟 ҧ 𝑔𝐿′ 𝑡, 𝑓, 𝑑 = ത 𝑕𝐿 𝑡, 𝑓 + 𝑑 ⋅ ത 𝑕𝐿 𝑡0, 𝑓0

slide-64
SLIDE 64

Malicious QFactory functions

“QHBC” functions:

ҧ 𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 → ℤq m

ҧ 𝑔

𝐿′ ∶ ℤq n × 𝜓𝑛 × 0, 1 → ℤq m

𝐿 ՚

$ ℤq 𝑛×𝑜

𝐿′ = 𝐿, ҧ 𝑕𝐿 𝑡0, 𝑓0 ҧ 𝑕𝐿 𝑡, 𝑓 = 𝐿𝑡 + 𝑓 𝑛𝑝𝑒 𝑟 ҧ 𝑔𝐿′ 𝑡, 𝑓, 𝑑 = ҧ 𝑕𝐿 𝑡, 𝑓 + 𝑑 ⋅ ҧ 𝑕𝐿 𝑡0, 𝑓0

“Malicious” functions:

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑔

𝐿′ ∶ ℤq n × 𝜓𝑛 × 0, 1 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ҧ 𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 𝑔𝐿′ 𝑡, 𝑓, 𝑒, 𝑑 = 𝑕𝐿 𝑡, 𝑓, 𝑒 + 𝑑 ⋅ 𝑕𝐿 𝑡0, 𝑓0, 𝑒0

where 𝑤 =

𝑟 2

… ∈ ℤm.

slide-65
SLIDE 65

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

slide-66
SLIDE 66

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

ℎ ∶ ℤq

n × 𝜓𝑛 × 0, 1 → {0, 1}

ℎ 𝑡, 𝑓, 𝑒 = 𝑒

slide-67
SLIDE 67

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

ℎ ∶ ℤq

n × 𝜓𝑛 × 0, 1 → {0, 1}

ℎ 𝑡, 𝑓, 𝑒 = 𝑒

  • 1. Homomorphic:

𝑕𝐿 𝑡1, 𝑓1, 𝑒1 + 𝑕𝐿 𝑡2, 𝑓2, 𝑒2 = ҧ 𝑕𝐿 𝑡1, 𝑓1 + 𝑒1 ⋅ 𝑤 + ҧ 𝑕𝐿 𝑡2, 𝑓2 + 𝑒2 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = ҧ 𝑕𝐿 𝑡1 + 𝑡2 𝑛𝑝𝑒 𝑟 , 𝑓1 + 𝑓2 + 𝑒1 + 𝑒2 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 =

ҧ 𝑕𝐿 𝑡1 + 𝑡2 𝑛𝑝𝑒 𝑟 , 𝑓1 + 𝑓2, 𝑒1 ⊕ 𝑒2

Properties of 𝑕

slide-68
SLIDE 68

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

ℎ ∶ ℤq

n × 𝜓𝑛 × 0, 1 → {0, 1}

ℎ 𝑡, 𝑓, 𝑒 = 𝑒

  • 1. Homomorphic:

𝑕𝐿 𝑡1, 𝑓1, 𝑒1 + 𝑕𝐿 𝑡2, 𝑓2, 𝑒2 = ҧ 𝑕𝐿 𝑡1, 𝑓1 + 𝑒1 ⋅ 𝑤 + ҧ 𝑕𝐿 𝑡2, 𝑓2 + 𝑒2 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = ҧ 𝑕𝐿 𝑡1 + 𝑡2 𝑛𝑝𝑒 𝑟 , 𝑓1 + 𝑓2 + 𝑒1 + 𝑒2 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 =

ҧ 𝑕𝐿 𝑡1 + 𝑡2 𝑛𝑝𝑒 𝑟 , 𝑓1 + 𝑓2, 𝑒1 ⊕ 𝑒2

  • 2. One-way:

𝑆𝑓𝑒𝑣𝑑𝑢𝑗𝑝𝑜 𝑢𝑝 𝑢ℎ𝑓 𝑝𝑜𝑓 − 𝑥𝑏𝑧𝑜𝑓𝑡𝑡 𝑝𝑔 ҧ 𝑕𝐿: 𝑈𝑝 𝑗𝑜𝑤𝑓𝑠𝑢 𝑧 = ҧ 𝑕𝐿(𝑡, 𝑓) : 𝑒 ՚

$

0, 1 𝑧′ ՚ 𝑧 + 𝑒 ⋅ 𝑤 𝑡′, 𝑓′, 𝑒′ ՚ 𝐵𝐿 𝑧′ 𝑠𝑓𝑢𝑣𝑠𝑜 (𝑡′, 𝑓′)

Properties of 𝑕

slide-69
SLIDE 69

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ҧ 𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅ 𝑟 2 … 𝑛𝑝𝑒 𝑟

  • 3. Injective:

➢ 𝑇𝑣𝑞𝑞𝑝𝑡𝑓 ∃ 𝑡1, 𝑓1, 𝑒1 , 𝑡2, 𝑓2, 𝑒2 𝑡. 𝑢. 𝑕𝐿 𝑡1, 𝑓1, 𝑒1 = 𝑕𝐿 𝑡2, 𝑓2, 𝑒2 ➢ ത

𝑕𝐿 𝑡1, 𝑓1 − ത 𝑕𝐿 𝑡2, 𝑓2 + 𝑒1 − 𝑒2 ⋅ 𝑤 = 0 𝑛𝑝𝑒 𝑟

➢ 𝐽𝑔 𝑒1 = 𝑒2 𝑢ℎ𝑓𝑜 ത

𝑕𝐿 𝑡1, 𝑓1 = ത 𝑕𝐿 𝑡2, 𝑓2 ⇒ 𝑡1 = 𝑡2 , 𝑓1 = 𝑓2

Properties of 𝑕

slide-70
SLIDE 70

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ҧ 𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅ 𝑟 2 … 𝑛𝑝𝑒 𝑟

  • 3. Injective:

➢ 𝑇𝑣𝑞𝑞𝑝𝑡𝑓 ∃ 𝑡1, 𝑓1, 𝑒1 , 𝑡2, 𝑓2, 𝑒2 𝑡. 𝑢. 𝑕𝐿 𝑡1, 𝑓1, 𝑒1 = 𝑕𝐿 𝑡2, 𝑓2, 𝑒2 ➢

ҧ 𝑕𝐿 𝑡1, 𝑓1 − ҧ 𝑕𝐿 𝑡2, 𝑓2 + 𝑒1 − 𝑒2 ⋅ 𝑤 = 0 𝑛𝑝𝑒 𝑟

➢ 𝐽𝑔 𝑒1 = 𝑒2 𝑢ℎ𝑓𝑜

ҧ 𝑕𝐿 𝑡1, 𝑓1 = ҧ 𝑕𝐿 𝑡2, 𝑓2 ⇒ 𝑡1 = 𝑡2 , 𝑓1 = 𝑓2

➢ 𝐽𝑔 𝑒1 ≠ 𝑒2 ⇒

ҧ 𝑕𝐿 𝑡1, 𝑓1 − ҧ 𝑕𝐿 𝑡2, 𝑓2 = 𝑤 ⟺ 𝐿 𝑡1 − 𝑡2 + 𝑓1 − 𝑓2 =

𝑟 2

… 𝑛𝑝𝑒 𝑟 ∗

➢ 𝐿 =

𝐿1 ഥ 𝐿 , 𝑓1 − 𝑓2 = 𝑓 = 𝑓′ ҧ 𝑓

ቐ 𝐿

1, 𝑡1 − 𝑡2 + 𝑓′ = 𝑟 2

(1) ഥ 𝐿 𝑡1 − 𝑡2 + ҧ 𝑓 = 0 (2)

➢ 𝐶𝑣𝑢

ҧ 𝑕ഥ

𝐿 𝑗𝑡 𝑏𝑚𝑡𝑝 𝑗𝑜𝑘𝑓𝑑𝑢𝑗𝑤𝑓 ( ҧ

𝑕 𝑗𝑡 𝑗𝑜𝑘𝑓𝑑𝑢𝑗𝑤𝑓 ∀ 𝑛 = Ω 𝑜 )

2 𝑡1 = 𝑡2 1 𝑓′ = 𝑟

2 . 𝐶𝑣𝑢 𝑓′ = 𝑓1,1 − 𝑓2,1 ≤ 𝑓1,1| + |𝑓2,1 < 𝑟 2 . 𝐷𝑝𝑜𝑢𝑠𝑏𝑒𝑗𝑑𝑢𝑗𝑝𝑜

Properties of 𝑕

slide-71
SLIDE 71

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

ℎ ∶ ℤq

n × 𝜓𝑛 × 0, 1 → {0, 1}

ℎ 𝑡, 𝑓, 𝑒 = 𝑒

1.

𝐼𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 ℎ 𝑦1 ⊕ ℎ(𝑦2) = ℎ(𝑦2 − 𝑦1)

ℎ 𝑡1, 𝑓1, 𝑒1 ⊕ ℎ 𝑡2, 𝑓2, 𝑒2 = 𝑒1 ⊕ 𝑒2 = ℎ(𝑡2 − 𝑡1 𝑛𝑝𝑒 𝑟, 𝑓2 − 𝑓1, 𝑒2 ⊕ 𝑒1)

Properties of ℎ

slide-72
SLIDE 72

Construction of the function ℎ

𝑕𝐿 ∶ ℤq

n × 𝜓𝑛 × 0, 1 → ℤq m

𝑕𝐿 𝑡, 𝑓, 𝑒 = ത

𝑕𝐿 𝑡, 𝑓 + 𝑒 ⋅ 𝑤 𝑛𝑝𝑒 𝑟 = 𝐿𝑡 + 𝑓 + 𝑒 ⋅

𝑟 2 … 𝑛𝑝𝑒 𝑟

ℎ ∶ ℤq

n × 𝜓𝑛 × 0, 1 → {0, 1}

ℎ 𝑡, 𝑓, 𝑒 = 𝑒

1.

𝐼𝑝𝑛𝑝𝑛𝑝𝑠𝑞ℎ𝑗𝑑 ℎ 𝑦1 ⊕ ℎ(𝑦2) = ℎ(𝑦2 − 𝑦1)

ℎ 𝑡1, 𝑓1, 𝑒1 ⊕ ℎ 𝑡2, 𝑓2, 𝑒2 = 𝑒1 ⊕ 𝑒2 = ℎ(𝑡2 − 𝑡1 𝑛𝑝𝑒 𝑟, 𝑓2 − 𝑓1, 𝑒2 ⊕ 𝑒1)

2.

𝐼𝑏𝑠𝑒𝑑𝑝𝑠𝑓 𝑞𝑠𝑓𝑒𝑗𝑑𝑏𝑢𝑓 (𝑥𝑠𝑢 𝑕):

𝐻𝑗𝑤𝑓𝑜 (𝐿, 𝑕𝐿 𝑡, 𝑓, 𝑒 ) 𝑗𝑡 ℎ𝑏𝑠𝑒 𝑢𝑝 𝑕𝑣𝑓𝑡𝑡 𝑒

𝐼𝑏𝑠𝑒 𝑢𝑝 𝑒𝑗𝑡𝑢𝑗𝑜𝑕𝑣𝑗𝑡ℎ: 𝐸1 = 𝐿, 𝐿𝑡 + 𝑓 𝑏𝑜𝑒 𝐸2 = {𝐿, 𝐿𝑡 + 𝑓 + 𝑤}

𝐺𝑠𝑝𝑛 𝑒𝑓𝑑𝑗𝑡𝑗𝑝𝑜𝑏𝑚 𝑀𝑋𝐹: 𝐸1 ≈

𝑑

𝐿, 𝑣 , 𝑣 ՚

𝑣 ℤq m

𝑤 𝑗𝑡 𝑏 𝑔𝑗𝑦𝑓𝑒 𝑤𝑓𝑑𝑢𝑝𝑠: 𝐸2 ≈

𝑑

𝐿, 𝑣 ≈

𝑑 𝐸1

Properties of ℎ

slide-73
SLIDE 73

Summary and Future work

QFactory: simulates quantum channel from classical channel;

Solve blind delegated quantum computations using quantum client → classical client;

Protocol is secure in the malicious setting;

Several extensions of the protocol can be achieved, including classical verification

  • f quantum computations;
slide-74
SLIDE 74

Summary and Future work

QFactory: simulates quantum channel from classical channel;

Solve blind delegated quantum computations using quantum client → classical client;

Protocol is secure in the malicious setting;

Several extensions of the protocol can be achieved, including classical verification

  • f quantum computations;

Next:

Improve the efficiency of the QFactory protocol, by looking at other post-quantum solutions;

Prove the security of the QFactory module in the composable setting;

Explore new possible applications (e.g. multiparty quantum computation).

slide-75
SLIDE 75

Thank you!

1) “On the possibility of classical client blind quantum computing” (Cojocaru, Colisson, Kashefi, Wallden)

 https://arxiv.org/abs/1802.08759

2) “QFactory: classically-instructed remote secret qubits preparation”(Cojocaru, Colisson, Kashefi, Wallden)

 https://arxiv.org/abs/1904.06303

slide-76
SLIDE 76

MP Trapdoor function

 𝑟 = 2𝑙  𝑕𝑢 = 20 21 … 2𝑙 −1 ∈ ℤq

k

 𝐻 = 𝐽𝑜 ⊗ 𝑕𝑢 ∈ ℤq

n×𝑜k

slide-77
SLIDE 77

MP Trapdoor function

 I) Invert ത

𝑐 = 𝑕𝑕𝑢 𝑡, 𝑓 = 𝑡 ⋅ 𝑕𝑢 + 𝑓𝑢, where 𝑓 ∈ ℤ𝑙 , 𝑡 = 𝑡𝑙 −1𝑡𝑙 −2 … 𝑡1𝑡0 ∈ ℤq , 𝑡𝑗 ∈ {0,1} and 𝑓𝑗 ∈ −

𝑟 4 , 𝑟 4

slide-78
SLIDE 78

MP Trapdoor function

 I) Invert ത

𝑐 = 𝑕𝑕𝑢 𝑡, 𝑓 = 𝑡 ⋅ 𝑕𝑢 + 𝑓𝑢, where 𝑓 ∈ ℤ𝑙 , 𝑡 = 𝑡𝑙 −1𝑡𝑙 −2 … 𝑡1𝑡0 ∈ ℤq , 𝑡𝑗 ∈ {0,1} and 𝑓𝑗 ∈ −

𝑟 4 , 𝑟 4

ത 𝑐 = 20 ⋅ 𝑡 + 𝑓0 , 21 ⋅ 𝑡 + 𝑓1 , … , 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 2𝑡1 + … + 2𝑙 −1𝑡𝑙 −1 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟 = 𝑟

2 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟

slide-79
SLIDE 79

MP Trapdoor function

 I) Invert ത

𝑐 = 𝑕𝑕𝑢 𝑡, 𝑓 = 𝑡 ⋅ 𝑕𝑢 + 𝑓𝑢, where 𝑓 ∈ ℤ𝑙 , 𝑡 = 𝑡𝑙 −1𝑡𝑙 −2 … 𝑡1𝑡0 ∈ ℤq , 𝑡𝑗 ∈ {0,1} and 𝑓𝑗 ∈ −

𝑟 4 , 𝑟 4

ത 𝑐 = 20 ⋅ 𝑡 + 𝑓0 , 21 ⋅ 𝑡 + 𝑓1 , … , 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 2𝑡1 + … + 2𝑙 −1𝑡𝑙 −1 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟 = 𝑟

2 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟

 If ത

𝑐𝑙 −1 is closer to 𝑟

2 than to 0, then 𝑡0 = 1, otherwise 𝑡0 = 0.

slide-80
SLIDE 80

MP Trapdoor function

 I) Invert ത

𝑐 = 𝑕𝑕𝑢 𝑡, 𝑓 = 𝑡 ⋅ 𝑕𝑢 + 𝑓𝑢, where 𝑓 ∈ ℤ𝑙 , 𝑡 = 𝑡𝑙 −1𝑡𝑙 −2 … 𝑡1𝑡0 ∈ ℤq , 𝑡𝑗 ∈ {0,1} and 𝑓𝑗 ∈ − 𝑟

4 , 𝑟 4

ത 𝑐 = 20 ⋅ 𝑡 + 𝑓0 , 21 ⋅ 𝑡 + 𝑓1 , … , 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡 + 𝑓𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 2𝑡1 + … + 2𝑙 −1𝑡𝑙 −1 + 𝑓𝑙 −1

ത 𝑐𝑙 −1 = 2𝑙 −1 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟 =

𝑟 2 ⋅ 𝑡0 + 𝑓𝑙 −1 𝑛𝑝𝑒 𝑟

 If ത

𝑐𝑙 −1 is closer to 𝑟

2 than to 0, then 𝑡0 = 1, otherwise 𝑡0 = 0.

ത 𝑐𝑙 −2 = 2𝑙 −2 ⋅ 𝑡0 + 2𝑡1 + ⋯ + 2𝑙 −1𝑡𝑙 −1 + 𝑓𝑙 −2

ത 𝑐𝑙 −2 = 2𝑙 −2𝑡0 + 2𝑙 −1𝑡1 + 𝑓𝑙 −2 𝑛𝑝𝑒 𝑟

ത 𝑐𝑙 −2 − 2𝑙 −2𝑡0 =

𝑟 2 𝑡1 + 𝑓𝑙 −2 𝑛𝑝𝑒 𝑟

 If ത

𝑐𝑙 −2 − 2𝑙 −2𝑡0 is closer to

𝑟 2 than to 0, then 𝑡1 = 1, otherwise 𝑡1 = 0.

And so on …

slide-81
SLIDE 81

MP Trapdoor function

 II) Invert ധ

𝑐 = 𝑕𝐻 𝑡, 𝑓 = 𝑡𝑢 ⋅ 𝐻 + 𝑓𝑢 where 𝑡 = 𝑡0 𝑡1 … 𝑡𝑜 −1 ∈ ℤq

𝑜 and 𝑓 = 𝑓0 … 𝑓𝑜𝑙 − 1 ∈ ℤ𝑜𝑙

ധ 𝑐 = 𝑡0 ⋅ 𝑕𝑢 , 𝑡1 ⋅ 𝑕𝑢 , … , 𝑡𝑜 −1 ⋅ 𝑕𝑢 + 𝑓0 … 𝑓𝑜𝑙 − 1

ധ 𝑐 = 𝑕𝑕𝑢 𝑡0, 𝑓 1 , 𝑕𝑕𝑢 𝑡1, 𝑓 2 , … , 𝑕𝑕𝑢 𝑡𝑜−1, 𝑓 𝑜 ,

 where 𝑓(1) are the first 𝑜 elements of 𝑓, 𝑓(2) - the next 𝑜 elements of 𝑓 and so on;

 Then, we run Invert 𝑕𝑕𝑢 𝑡, 𝑓 𝑜 times for each component of ധ

𝑐

slide-82
SLIDE 82

MP Trapdoor function

III) Generate Key & Trapdoor

Idea: For an arbitrary index 𝐿, the trapdoor 𝑢𝐿 is such that 𝐿 ⋅ 𝑆 𝐽 = 𝐻

slide-83
SLIDE 83

MP Trapdoor function

III) Generate Key & Trapdoor

Idea: For an arbitrary index 𝐿, the trapdoor 𝑢𝐿 is such that 𝐿 ⋅ 𝑆 𝐽 = 𝐻

1) 𝑆 ՚

$ ℤ 𝑛 −𝑜𝑙 ×𝑜𝑙

2) 𝑈 = 𝐽𝑛 −𝑜𝑙 𝑆 𝐽𝑜𝑙 ⟹ 𝑈−1 = 𝐽𝑛 −𝑜𝑙 −𝑆 𝐽𝑜𝑙

3) ҧ 𝐵 ՚

$ ℤq 𝑜×(𝑛 − 𝑜𝑙)

4) 𝐵′ = ҧ 𝐵 𝐻] ∈ ℤq

𝑜×(𝑜𝑙 + 𝑛 − 𝑜𝑙)

5) 𝐿 = 𝐵′ ⋅ 𝑈−1 ∈ ℤq

𝑜×𝑛

6) 𝐿 = ҧ 𝐵 𝐻] ⋅ 𝐽𝑛 −𝑜𝑙 −𝑆 𝐽𝑜𝑙 = ҧ 𝐵 𝐻 − ҧ 𝐵𝑆]

𝐿 is close to uniform as long as ҧ 𝐵 ҧ 𝐵𝑆] is close to uniform;

7) 𝐿 ⋅ 𝑆 𝐽 = ҧ 𝐵 𝐻 − ҧ 𝐵𝑆] ⋅ 𝑆 𝐽 = ҧ 𝐵𝑆 + 𝐻 − ҧ 𝐵𝑆 = 𝐻

Output 𝐿 , 𝑢𝐿 = 𝑆

slide-84
SLIDE 84

MP Trapdoor function

 IV) Invert 𝑐 = 𝑕𝐿 𝑡, 𝑓 , 𝑢𝐿  𝑐 = 𝑡𝑢 ⋅ 𝐿 + 𝑓𝑢  𝑐′ ՚ 𝑐 ⋅ 𝑢𝐿

𝐽 = 𝑡𝑢 ⋅ 𝐿 ⋅ 𝑢𝐿 𝐽 + 𝑓𝑢 ⋅ 𝑢𝐿 𝐽 = 𝑡𝑢 ⋅ 𝐻 + 𝑓𝑢 ⋅ 𝑢𝐿 𝐽 = 𝑕𝐻 𝑡, 𝑓𝑢 ⋅ 𝑢𝐿 𝐽

 Run 𝐽𝑜𝑤𝑓𝑠𝑢𝐻 𝑐′

⟹ 𝑡 , 𝑓 = 𝑐 − 𝑡𝑢 ⋅ 𝐿