On the construction of PIR schemes Julien Lavauzelle IRMAR, - - PowerPoint PPT Presentation

on the construction of pir schemes
SMART_READER_LITE
LIVE PREVIEW

On the construction of PIR schemes Julien Lavauzelle IRMAR, - - PowerPoint PPT Presentation

On the construction of PIR schemes Julien Lavauzelle IRMAR, Universit de Rennes Sminaire C2 25/01/2019 Outline 1. Private information retrieval 2. PIR schemes for common storage systems Distributed storage systems A PIR scheme on


slide-1
SLIDE 1

On the construction of PIR schemes

Julien Lavauzelle

IRMAR, Université de Rennes

Séminaire C2 25/01/2019

slide-2
SLIDE 2

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

1/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-3
SLIDE 3

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

1/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-4
SLIDE 4

Problem statement

Private information retrieval (PIR):

Given a remote database F ∈ ΣM and i ∈ [1, M], can we retrieve the entry/file Fi, without leaking information on the index i?

2/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-5
SLIDE 5

Problem statement

Private information retrieval (PIR):

Given a remote database F ∈ ΣM and i ∈ [1, M], can we retrieve the entry/file Fi, without leaking information on the index i?

Trivial solution: full download.

2/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-6
SLIDE 6

Definition of PIR

Introduced in:

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Database F stored (in some way) on n servers S1, . . . , Sn, user U wants to recover Fi privately. A Private Information Retrieval protocol is a set of algorithms (Q, A, R):

3/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-7
SLIDE 7

Definition of PIR

Introduced in:

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Database F stored (in some way) on n servers S1, . . . , Sn, user U wants to recover Fi privately. A Private Information Retrieval protocol is a set of algorithms (Q, A, R):

  • 1. U generates a query vector

q = (q1, . . . , qn) ← Q(i) and sends qj to server Sj

U . . .

S1 S2 Sn (q1, . . . , qn)

3/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-8
SLIDE 8

Definition of PIR

Introduced in:

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Database F stored (in some way) on n servers S1, . . . , Sn, user U wants to recover Fi privately. A Private Information Retrieval protocol is a set of algorithms (Q, A, R):

  • 1. U generates a query vector

q = (q1, . . . , qn) ← Q(i) and sends qj to server Sj

  • 2. Each server Sj computes

rj = A(qj, F|Sj) and sends it back to U

U . . .

S1 S2 Sn (q1, . . . , qn) (r1, . . . , rn)

3/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-9
SLIDE 9

Definition of PIR

Introduced in:

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Database F stored (in some way) on n servers S1, . . . , Sn, user U wants to recover Fi privately. A Private Information Retrieval protocol is a set of algorithms (Q, A, R):

  • 1. U generates a query vector

q = (q1, . . . , qn) ← Q(i) and sends qj to server Sj

  • 2. Each server Sj computes

rj = A(qj, F|Sj) and sends it back to U

  • 3. U recovers Fi = R(q, r, i)

U . . .

S1 S2 Sn (q1, . . . , qn) (r1, . . . , rn)

3/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-10
SLIDE 10

Privacy

A collusion of servers: set of servers {Sj : j ∈ T}, where T ⊂ [1, n], which exchange information about queries, data, etc. t := max{|T|, T ⊆ [1, n] is a collusion} ≥ 1

4/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-11
SLIDE 11

Privacy

A collusion of servers: set of servers {Sj : j ∈ T}, where T ⊂ [1, n], which exchange information about queries, data, etc. t := max{|T|, T ⊆ [1, n] is a collusion} ≥ 1

  • Information-theoretic privacy:

I(i; q|T) = 0, ∀T ⊆ [1, n], |T| ≤ t.

  • Computational privacy: by varying the index i, distributions of queries

q|T = Q(i)|T are computationally indistinguishable.

4/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-12
SLIDE 12

Privacy

A collusion of servers: set of servers {Sj : j ∈ T}, where T ⊂ [1, n], which exchange information about queries, data, etc. t := max{|T|, T ⊆ [1, n] is a collusion} ≥ 1

  • Information-theoretic privacy:

I(i; q|T) = 0, ∀T ⊆ [1, n], |T| ≤ t.

  • Computational privacy: by varying the index i, distributions of queries

q|T = Q(i)|T are computationally indistinguishable. Theorem [CGKS95, CG97]. If t = n (in particular if n = 1), then:

◮ for IT-privacy, no better solution than full download, ◮ computational privacy is possible (but remains expensive as of now). 4/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-13
SLIDE 13

Main parameters of PIR schemes

We focus on IT-privacy

(hence we need n ≥ 2 servers)

5/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-14
SLIDE 14

Main parameters of PIR schemes

We focus on IT-privacy

(hence we need n ≥ 2 servers)

Parameters to be taken into account: – communication complexity (upload and download) – computation complexity (client and servers) – global server storage overhead – maximum size of collusions (t)

5/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-15
SLIDE 15

Main parameters of PIR schemes

We focus on IT-privacy

(hence we need n ≥ 2 servers)

Parameters to be taken into account: – communication complexity (upload and download) – computation complexity (client and servers) – global server storage overhead – maximum size of collusions (t) Several possible settings: – bounded vs. unbounded number of entries in the database – replicated database vs. coded database – small entries vs. large entries – dynamic database vs. static database – unresponsive or byzantine servers

5/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-16
SLIDE 16

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-17
SLIDE 17

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2 X1 X2

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-18
SLIDE 18

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00,

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-19
SLIDE 19

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00, – (X1∆{i1}, X2 ) to S10,

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-20
SLIDE 20

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00, – (X1∆{i1}, X2 ) to S10, – ( X1 , X2∆{i2}) to S01,

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-21
SLIDE 21

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00, – (X1∆{i1}, X2 ) to S10, – ( X1 , X2∆{i2}) to S01, – (X1∆{i1}, X2∆{i2}) to S11.

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-22
SLIDE 22

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

XOR this data

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00, – (X1∆{i1}, X2 ) to S10, – ( X1 , X2∆{i2}) to S01, – (X1∆{i1}, X2∆{i2}) to S11.

  • 2. At reception of (Z1, Z2), each server

computes a =

z∈Z1×Z2 Fz and sends a to

the user.

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-23
SLIDE 23

Seminal work [CGKS’95-98]

Private Information Retrieval. Chor, Goldreich, Kushilevitz, Sudan. FOCS. 1995.

Settings:

◮ |F| = M bits, with M = L2, and [1, M] ≃ [1, L]2. ◮ n = 4 servers S00, S01, S10, S11, each storing a replica of F. ◮ Goal: retrieve Fi = F(i1,i2), for 1 ≤ i1, i2 ≤ L.

i1 i2

XORed 4× XORed 2× XORed 1×

  • 1. U generates at random two subsets X1, X2
  • f [1, L]. Then U sends:

– ( X1 , X2 ) to S00, – (X1∆{i1}, X2 ) to S10, – ( X1 , X2∆{i2}) to S01, – (X1∆{i1}, X2∆{i2}) to S11.

  • 2. At reception of (Z1, Z2), each server

computes a =

z∈Z1×Z2 Fz and sends a to

the user.

  • 3. User XORs the 4 bits and retrieves Fi.

6/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-24
SLIDE 24

Features of the PIR scheme in [CGKS’95-98]

Correct, and secure if no collusion.

7/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-25
SLIDE 25

Features of the PIR scheme in [CGKS’95-98]

Correct, and secure if no collusion. With n = 4 servers:

◮ Communication: 8√n uploaded bits, 4 downloaded bits, ◮ Storage: replication of F over 4 servers, ◮ Complexity:

◮ for each server: in average, XOR of (L/2)2 = M/4 bits ◮ for the user: XOR of n = 4 bits.

7/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-26
SLIDE 26

Features of the PIR scheme in [CGKS’95-98]

Correct, and secure if no collusion. With n = 4 servers:

◮ Communication: 8√n uploaded bits, 4 downloaded bits, ◮ Storage: replication of F over 4 servers, ◮ Complexity:

◮ for each server: in average, XOR of (L/2)2 = M/4 bits ◮ for the user: XOR of n = 4 bits.

Generalisable to n = 2b servers:

◮ Communication: b2bM1/b = n log(n)M1/log(n) uploaded bits, n

downloaded bits,

◮ Storage: replication of F over n servers, ◮ Complexity:

◮ for each server: in average, XOR of M/n bits ◮ for the user: XOR of n bits.

7/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-27
SLIDE 27

(Short) state of the art

  • 1995: first definition [CGKS95]
  • 2000: reduction from smooth locally decodable codes [KT00]
  • 2000-10’s: many improvements

◮ PIR with 3 servers and subpolynomial communication [Yek08, Efr09] ◮ PIR with 2 servers and subpolynomial communication [DG16] ◮ lower storage overhead with PIR codes [FVY15]

  • 2016-now: capacity-achieving schemes, schemes dedicated to storage systems

◮ capacity of PIR [SJ17, BU18] ◮ (nearly) capacity-achieving schemes [SRR14, CHY15, TR16, ...] 8/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-28
SLIDE 28

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

8/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-29
SLIDE 29

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

8/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-30
SLIDE 30

Context

Storage systems use codes to cope with node failures.

◮ Before 2010: mostly replication or parity-check. ◮ 2010’s: MDS storage (e.g. [14, 10] Reed-Solomon code for Facebook). ◮ Recently: codes with locality (e.g. Hadoop Xorbas). 9/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-31
SLIDE 31

Context

Storage systems use codes to cope with node failures.

◮ Before 2010: mostly replication or parity-check. ◮ 2010’s: MDS storage (e.g. [14, 10] Reed-Solomon code for Facebook). ◮ Recently: codes with locality (e.g. Hadoop Xorbas).

Given a code C of length n: S1 S2 Sn c1 ∈ C c2 ∈ C cM ∈ C

9/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-32
SLIDE 32

Example: Reed-Solomon storage systems

Definition (Reed-Solomon code). Let x = (x1, . . . , xn) ∈ Fn

q, pairwise distinct.

RSq(k, n) := {(f(x1), . . . , f(xn)), f ∈ Fq[X], deg f < k}

10/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-33
SLIDE 33

Example: Reed-Solomon storage systems

Definition (Reed-Solomon code). Let x = (x1, . . . , xn) ∈ Fn

q, pairwise distinct.

RSq(k, n) := {(f(x1), . . . , f(xn)), f ∈ Fq[X], deg f < k} C = RSq(k, n) is MDS:

◮ every codeword c ∈ C can be reconstructed from any k-subset of

coordinates of c,

◮ any subset of d⊥(C) − 1 = k coordinates of c are independent. 10/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-34
SLIDE 34

Example: Reed-Solomon storage systems

Definition (Reed-Solomon code). Let x = (x1, . . . , xn) ∈ Fn

q, pairwise distinct.

RSq(k, n) := {(f(x1), . . . , f(xn)), f ∈ Fq[X], deg f < k} C = RSq(k, n) is MDS:

◮ every codeword c ∈ C can be reconstructed from any k-subset of

coordinates of c,

◮ any subset of d⊥(C) − 1 = k coordinates of c are independent.

File storage: a file Fi ∈ Σ ≃ Fk

qs

is encoded into ci ∈ RSq(k, n) ⊗ Fqs

10/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-35
SLIDE 35

Example: Reed-Solomon storage systems

Definition (Reed-Solomon code). Let x = (x1, . . . , xn) ∈ Fn

q, pairwise distinct.

RSq(k, n) := {(f(x1), . . . , f(xn)), f ∈ Fq[X], deg f < k} C = RSq(k, n) is MDS:

◮ every codeword c ∈ C can be reconstructed from any k-subset of

coordinates of c,

◮ any subset of d⊥(C) − 1 = k coordinates of c are independent.

File storage: a file Fi ∈ Σ ≃ Fk

qs

is encoded into ci ∈ RSq(k, n) ⊗ Fqs Main assumption (can be discussed):

s ≫ M

10/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-36
SLIDE 36

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

10/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-37
SLIDE 37

Presentation

Usual goal (assuming s ≫ M): a large PIR rate ρ := |Fi| |r| .

11/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-38
SLIDE 38

Presentation

Usual goal (assuming s ≫ M): a large PIR rate ρ := |Fi| |r| . Next, we present a PIR scheme for RS-coded databases.

◮ Originally [TR16], then extended and reformulated [TGKFH18, TGR18]. ◮ Scalable. ◮ Optimal PIR rate for t = 1 and M → ∞. ◮ PIR rate conjectured optimal for M → ∞.

[TR16] PIR from MDS Coded Data in Distributed Storage Systems. Tajeddine, El

  • Rouayheb. ISIT. 2016.

[TGKFH18] Robust PIR from Coded Systems with Byzantine and Colluding Servers. Tajeddine, Gnilke, Karpuk, Freij-Hollanti, Hollanti. ISIT. 2018. [TGR18] PIR from MDS Coded Data in Distributed Storage Systems. Tajeddine, Gnilke, El

  • Rouayheb. IEEE-TIT. 2018.

11/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-39
SLIDE 39

The protocol: query generation

Notation: a ⋆ b := (a1b1, . . . , anbn) C ⋆ C′ := {c ⋆ c′ | c ∈ C, c′ ∈ C′}

12/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-40
SLIDE 40

The protocol: query generation

Notation: a ⋆ b := (a1b1, . . . , anbn) C ⋆ C′ := {c ⋆ c′ | c ∈ C, c′ ∈ C′} System parameters: C ⊆ Fn

q the storage code, C ∈ CM the coded database

D ⊆ Fn

q a query code of dual distance d⊥(D) = t + 1

J ⊆ [1, n] an information set for C ⋆ D, and J := [1, n] \ J S1 S2 Sn

c1 ci “goal” cM J

12/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-41
SLIDE 41

The protocol: query generation

Notation: a ⋆ b := (a1b1, . . . , anbn) C ⋆ C′ := {c ⋆ c′ | c ∈ C, c′ ∈ C′} System parameters: C ⊆ Fn

q the storage code, C ∈ CM the coded database

D ⊆ Fn

q a query code of dual distance d⊥(D) = t + 1

J ⊆ [1, n] an information set for C ⋆ D, and J := [1, n] \ J S1 S2 Sn

c1 ci “goal” cM J

Queries:

  • 1. the user generates at random M words

d1, . . . , dM ∈ D and defines Q as follows:

  • 2. the j-th column of Q is sent to server Sj

S1 S2 Sn

d1 di + 1J dM J

12/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-42
SLIDE 42

The protocol: query generation

Notation: a ⋆ b := (a1b1, . . . , anbn) C ⋆ C′ := {c ⋆ c′ | c ∈ C, c′ ∈ C′} System parameters: C ⊆ Fn

q the storage code, C ∈ CM the coded database

D ⊆ Fn

q a query code of dual distance d⊥(D) = t + 1

J ⊆ [1, n] an information set for C ⋆ D, and J := [1, n] \ J S1 S2 Sn

c1 ci “goal” cM J

Queries:

  • 1. the user generates at random M words

d1, . . . , dM ∈ D and defines Q as follows:

  • 2. the j-th column of Q is sent to server Sj

Remark: queries remain private against collusions of servers of size ≤ t. S1 S2 Sn

d1 di + 1J dM J

12/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-43
SLIDE 43

The protocol: server answers and reconstruction

Server answers: server Sj receives as a query a column Q(j) ∈ FM

q of Q,

server Sj holds receives

c1[j] cM[j] q1[j] qM[j]

13/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-44
SLIDE 44

The protocol: server answers and reconstruction

Server answers: server Sj receives as a query a column Q(j) ∈ FM

q of Q, and has to compute

rj = Q(j), C(j) ∈ Fq.

server Sj holds receives

c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]

=

rj

13/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-45
SLIDE 45

The protocol: server answers and reconstruction

Server answers: server Sj receives as a query a column Q(j) ∈ FM

q of Q, and has to compute

rj = Q(j), C(j) ∈ Fq.

server Sj holds receives

c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]

=

rj

Reconstruction:

13/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-46
SLIDE 46

The protocol: server answers and reconstruction

Server answers: server Sj receives as a query a column Q(j) ∈ FM

q of Q, and has to compute

rj = Q(j), C(j) ∈ Fq.

server Sj holds receives

c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]

=

rj

Reconstruction: The user collects r = (r1, . . . , rn) =

M

m=1

dm ⋆ cm

  • ∈C⋆D

+ 1J ⋆ ci

=ci on J

r =

13/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-47
SLIDE 47

The protocol: server answers and reconstruction

Server answers: server Sj receives as a query a column Q(j) ∈ FM

q of Q, and has to compute

rj = Q(j), C(j) ∈ Fq.

server Sj holds receives

c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]

=

rj

Reconstruction: The user collects r = (r1, . . . , rn) =

M

m=1

dm ⋆ cm

  • ∈C⋆D

+ 1J ⋆ ci

=ci on J

and interpolates on J to recover – ∑M

m=1 dm ⋆ cm,

– then ci[|J].

∑M

m=1 cm ⋆ dm

r =

+

ci[J]

13/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-48
SLIDE 48

Analysis

Features for 1 run of the protocol.

◮ download cost: n symbols over Fqs ◮ upload cost: an (M × n)-matrix over Fq (negligible if s ≫ M) ◮ retrieval of |J| = n − dim(C ⋆ D) symbols of the desired file ◮ the protocol is private against collusions of size ≤ d⊥(D) − 1 14/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-49
SLIDE 49

Analysis

Features for 1 run of the protocol.

◮ download cost: n symbols over Fqs ◮ upload cost: an (M × n)-matrix over Fq (negligible if s ≫ M) ◮ retrieval of |J| = n − dim(C ⋆ D) symbols of the desired file ◮ the protocol is private against collusions of size ≤ d⊥(D) − 1

For Reed-Solomon codes: C = RSq(k, n) and D = RSq(t, n): d⊥(D) − 1 = t and C ⋆ D = RSq(k + t − 1, n) ⇒ |J| = n − k − t + 1

14/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-50
SLIDE 50

Analysis

Features for 1 run of the protocol.

◮ download cost: n symbols over Fqs ◮ upload cost: an (M × n)-matrix over Fq (negligible if s ≫ M) ◮ retrieval of |J| = n − dim(C ⋆ D) symbols of the desired file ◮ the protocol is private against collusions of size ≤ d⊥(D) − 1

For Reed-Solomon codes: C = RSq(k, n) and D = RSq(t, n): d⊥(D) − 1 = t and C ⋆ D = RSq(k + t − 1, n) ⇒ |J| = n − k − t + 1 If (n − k − t + 1) | k, then repeating several runs gives a (download) PIR rate: ρ = n − k − t + 1 n = 1 − k + t − 1 n .

14/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-51
SLIDE 51

Analysis

Features for 1 run of the protocol.

◮ download cost: n symbols over Fqs ◮ upload cost: an (M × n)-matrix over Fq (negligible if s ≫ M) ◮ retrieval of |J| = n − dim(C ⋆ D) symbols of the desired file ◮ the protocol is private against collusions of size ≤ d⊥(D) − 1

For Reed-Solomon codes: C = RSq(k, n) and D = RSq(t, n): d⊥(D) − 1 = t and C ⋆ D = RSq(k + t − 1, n) ⇒ |J| = n − k − t + 1 If (n − k − t + 1) | k, then repeating several runs gives a (download) PIR rate: ρ = n − k − t + 1 n = 1 − k + t − 1 n . Otherwise, striping methods allow to achieve the same PIR rate.

14/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-52
SLIDE 52

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

14/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-53
SLIDE 53

Regenerating codes !!! Sorry for the notation !!!

15/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-54
SLIDE 54

Regenerating codes !!! Sorry for the notation !!!

Definition: C is an (n, k, d, α, β, B)-regenerating code if:

◮ C is a linear space of dimension B, consisting in (α × n)-matrices over Fq, ◮ every c ∈ C is fully determined by any k-subset of columns, ◮ every column of c can be “repaired”, by downloading β ≤ α symbols

from any d-subset of columns (hence dβ ≥ α).

15/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-55
SLIDE 55

Regenerating codes !!! Sorry for the notation !!!

Definition: C is an (n, k, d, α, β, B)-regenerating code if:

◮ C is a linear space of dimension B, consisting in (α × n)-matrices over Fq, ◮ every c ∈ C is fully determined by any k-subset of columns, ◮ every column of c can be “repaired”, by downloading β ≤ α symbols

from any d-subset of columns (hence dβ ≥ α). Main bound (cut-set bound [WDR07]): B ≤

k−1

i=0

min(α, (d − i)β) .

15/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-56
SLIDE 56

Regenerating codes !!! Sorry for the notation !!!

Definition: C is an (n, k, d, α, β, B)-regenerating code if:

◮ C is a linear space of dimension B, consisting in (α × n)-matrices over Fq, ◮ every c ∈ C is fully determined by any k-subset of columns, ◮ every column of c can be “repaired”, by downloading β ≤ α symbols

from any d-subset of columns (hence dβ ≥ α). Main bound (cut-set bound [WDR07]): B ≤

k−1

i=0

min(α, (d − i)β) . A particular optimal point (minimum-bandwidth repair, MBR): dβ = α. Then, B =

  • kd − k(k − 1)

2

  • β .

15/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-57
SLIDE 57

Product-matrix MBR codes [RSK11]

Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction. Rashmi, Shah, Kumar. IEEE-TIT. 2011.

We set β = 1, hence α = d.

16/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-58
SLIDE 58

Product-matrix MBR codes [RSK11]

Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction. Rashmi, Shah, Kumar. IEEE-TIT. 2011.

We set β = 1, hence α = d.

  • 1. Message symbols are arranged in a

(d × d)-matrix A =

  • S

T⊤ T

  • where S is (k × k)-symmetric.

d k 16/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-59
SLIDE 59

Product-matrix MBR codes [RSK11]

Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction. Rashmi, Shah, Kumar. IEEE-TIT. 2011.

We set β = 1, hence α = d.

  • 1. Message symbols are arranged in a

(d × d)-matrix A =

  • S

T⊤ T

  • where S is (k × k)-symmetric.
  • 2. Let G be a (d × n) generator matrix for

RSq(d, n), echelonized in degree (i.e. a Vandermonde matrix). Codewords are then: C = AG ∈ Fd×n

q

.

d k ev(1) ev(x) ev(xd−1) C1 C2 Cd n 16/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-60
SLIDE 60

Product-matrix MBR codes [RSK11]

Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction. Rashmi, Shah, Kumar. IEEE-TIT. 2011.

We set β = 1, hence α = d.

  • 1. Message symbols are arranged in a

(d × d)-matrix A =

  • S

T⊤ T

  • where S is (k × k)-symmetric.
  • 2. Let G be a (d × n) generator matrix for

RSq(d, n), echelonized in degree (i.e. a Vandermonde matrix). Codewords are then: C = AG ∈ Fd×n

q

. Remark: row Cj of C is a word of a RS code – of dimension k, if j > k, – of dimension d > k otherwise.

d k ev(1) ev(x) ev(xd−1) C1 C2 Cd n 16/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-61
SLIDE 61

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

ev(xd−1) ev(1) ev(x)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-62
SLIDE 62

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xk−1) ev(1) ev(x)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-63
SLIDE 63

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xk−1) ev(1) ev(x)

C1 C2 Cd

Retrieval rate: 1 − k

n

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-64
SLIDE 64

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xk−1) ev(1) ev(x)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-65
SLIDE 65

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xk−1) ev(1) ev(x)

C1 C2 Cd

Retrieval rate: 1 − k

n

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-66
SLIDE 66

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1) ev(x)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-67
SLIDE 67

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1) ev(x)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-68
SLIDE 68

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xk−1) ev(1)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-69
SLIDE 69

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1)

C1 C2 Cd

Retrieval rate: 1 − k

n

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-70
SLIDE 70

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-71
SLIDE 71

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(1) ev(xk−2)

C1 C2 Cd

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-72
SLIDE 72

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1)

C1 C2 Cd

Retrieval rate: 1 − k−1

n

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-73
SLIDE 73

PIR scheme on PM-MBR codes with no collusion

Private Information Retrieval Schemes with Regenerating Codes. L., Tajeddine, Freij-Hollanti, Hollanti. arxiv:1811.02898. 2018.

PIR scheme with no collusion (t = 1).

  • For row j = d down to k + 1:

– Run a RS(k)-coded PIR scheme with randomness D. – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

  • For row j = k down to 1:

– Run a RS(j)-coded PIR scheme with randomness D. – Use symmetry of A and previously recovered data for the reconstruction (high-degree terms can be eliminated). – Interpolate random values ∑ dm ⋆ Cj,m. – Recover row Cj, then row Aj.

ev(xd−1) ev(1)

C1 C2 Cd

Retrieval rate: 1 − j

n

17/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-74
SLIDE 74

PIR scheme on PM-MBR codes

We get a PIR rate: ρ = 1 − k

n

1 − k(k+1)(k−1)

nB

> 1 − k n

18/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-75
SLIDE 75

PIR scheme on PM-MBR codes

We get a PIR rate: ρ = 1 − k

n

1 − k(k+1)(k−1)

nB

> 1 − k n

10 15 20 25 30 35 40 0.2 0.4 0.6 0.8 1 d PIR rate Our scheme Scheme in [DN18] 10 15 20 25 30 35 40 0.8 0.85 0.9 d PIR rate Our scheme 1 − k

n

1 − B

dn

1 − B+(d−1)

dn

Comparison of PIR rates for n = 40 and k = 7. 18/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-76
SLIDE 76

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

18/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-77
SLIDE 77

Context

Previous schemes:

◮ low communication complexity ◮ computationally inefficient (linear in |F| = ∑M

m=1 |Fm|)

Our goal:

◮ optimal computation (|rj| for each server Sj) ◮ remove the assumption s ≫ M ◮ moderate communication complexity 19/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-78
SLIDE 78

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

19/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-79
SLIDE 79

Transversal designs

A transversal design TD(n, s) = (X, B, G) is given by:

◮ X a set of points, |X| = N = ns,

. . .

  • 20/28
  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-80
SLIDE 80

Transversal designs

A transversal design TD(n, s) = (X, B, G) is given by:

◮ X a set of points, |X| = N = ns, ◮ groups G = {Gj}1≤j≤n satisfying

X =

n

j=1

Gj and |Gj| = s , . . .

  • G1 G2

Gn−1Gn

20/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-81
SLIDE 81

Transversal designs

A transversal design TD(n, s) = (X, B, G) is given by:

◮ X a set of points, |X| = N = ns, ◮ groups G = {Gj}1≤j≤n satisfying

X =

n

j=1

Gj and |Gj| = s ,

◮ blocks B ∈ B satisfying

– B ⊂ X and |B| = n; – for all {i, j} ⊂ X, {i, j} lie: either in a single group G ∈ G,

  • r in a unique block B ∈ B
  • G1 G2

Gn−1Gn

j i

  • 20/28
  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-82
SLIDE 82

Codes from designs

Let T be a transversal design TD(n, s) = (X, B, G). Its incidence matrix M has size |B| × |X| and is defined by: Mi,j = 1 if xj ∈ Bi

  • therwise.

21/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-83
SLIDE 83

Codes from designs

Let T be a transversal design TD(n, s) = (X, B, G). Its incidence matrix M has size |B| × |X| and is defined by: Mi,j = 1 if xj ∈ Bi

  • therwise.

The code C based on T over Fq is the Fq-linear code admitting M as a parity-check matrix (C⊥ is generated by M).

◮ length(C) = |X|, ◮ dim(C) = dim(ker M), ◮ every B ∈ B gives an h ∈ C⊥ such that wt(h|Gj) = 1, ∀j = 1, . . . , n. 21/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-84
SLIDE 84

Example

The transversal design TD(3, 3) represented by:

  • G1 G2 G3

B =

  • B1

  • B2

  • B3

gives an incidence matrix

M =             1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1            

Its rank over F3 is 6 = ⇒ the associated code C is a [9, 3]3 code.

22/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-85
SLIDE 85

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

22/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-86
SLIDE 86

The PIR scheme

Let C ⊆ FN

q be a code based on a TD(n, s).

23/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-87
SLIDE 87

The PIR scheme

Let C ⊆ FN

q be a code based on a TD(n, s).

  • Initialisation. User U encodes F → c ∈ C, and gives c|Gj to server Sj.

23/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-88
SLIDE 88

The PIR scheme

Let C ⊆ FN

q be a code based on a TD(n, s).

  • Initialisation. User U encodes F → c ∈ C, and gives c|Gj to server Sj.
  • To recover Fi = ci, with i ∈ X:
  • 1. User U randomly picks a block B ∈ B containing i.

Then U defines: qj = Q(i)j := unique ∈ B ∩ Gj if i / ∈ Gj a random point in Gj

  • therwise.
  • 2. Each server Sj sends back cqj
  • 3. U recovers

ci = − ∑

j: i/ ∈Gj

cqj = − ∑

b∈B\{i}

cb

23/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-89
SLIDE 89

Privacy and parameters

  • Theorem. This PIR protocol is information-theoretically private.

Proof: – the only server which holds Fi received a random query; – for each other server Sj, query qj gives no information on the block B which has been picked ⇒ no information leaks on i.

24/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-90
SLIDE 90

Privacy and parameters

  • Theorem. This PIR protocol is information-theoretically private.

Proof: – the only server which holds Fi received a random query; – for each other server Sj, query qj gives no information on the block B which has been picked ⇒ no information leaks on i.

Features.

◮ communication complexity: n log s uploaded bits, n log q downloaded bits ◮ computational complexity:

◮ only 1 read for each server (somewhat optimal) ◮ ≤ n additions over Fq for the user

◮ storage overhead: (ns − M) log q bits, where M = dim(C) 24/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-91
SLIDE 91

Privacy and parameters

  • Theorem. This PIR protocol is information-theoretically private.

Proof: – the only server which holds Fi received a random query; – for each other server Sj, query qj gives no information on the block B which has been picked ⇒ no information leaks on i.

Features.

◮ communication complexity: n log s uploaded bits, n log q downloaded bits ◮ computational complexity:

◮ only 1 read for each server (somewhat optimal) ◮ ≤ n additions over Fq for the user

◮ storage overhead: (ns − M) log q bits, where M = dim(C)

Question: transversal designs with good dim(C) depending on (n, s)?

24/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-92
SLIDE 92

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

24/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-93
SLIDE 93

Instances with geometric designs

TA, the classical affine transversal design:

◮ X = Fm

q , m ≥ 2,

◮ G a set of q disjoint hyperplanes partitionning X, ◮ B = {affine lines L secant to each group of G}.

The code has: – length ns = qm, – “locality” n = q.

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 210 215 220 225 230 235 240 245 m=2 m=3 m=4 m=5

25/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-94
SLIDE 94

Instances with geometric designs

TA, the classical affine transversal design:

◮ X = Fm

q , m ≥ 2,

◮ G a set of q disjoint hyperplanes partitionning X, ◮ B = {affine lines L secant to each group of G}.

The code has: – length ns = qm, – “locality” n = q. rate M/N

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 210 215 220 225 230 235 240 245 m=2 m=3 m=4 m=5

length N = ns = 2em

25/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-95
SLIDE 95

Instances with geometric designs

TA, the classical affine transversal design:

◮ X = Fm

q , m ≥ 2,

◮ G a set of q disjoint hyperplanes partitionning X, ◮ B = {affine lines L secant to each group of G}.

The code has: – length ns = qm, – “locality” n = q. rate M/N

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 210 215 220 225 230 235 240 245 m=2 m=3 m=4 m=5

length N = ns = 2em Question: better instances?

25/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-96
SLIDE 96

Instances with orthogonal arrays

An orthogonal array OA(t, n, s) of strength t is a list A of words – of length n, – over a finite set S, |S| = s, – such that, for every I ⊂ [1, n] of size t, A|I = St. Equivalently, an OA(t, n, s) is a code A ⊂ Sn with dual distance t + 1. S = {a, b} OA(2, 3, 2) =     a b b b b a b a b a a a    

26/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-97
SLIDE 97

Instances with orthogonal arrays

An orthogonal array OA(t, n, s) of strength t is a list A of words – of length n, – over a finite set S, |S| = s, – such that, for every I ⊂ [1, n] of size t, A|I = St. Equivalently, an OA(t, n, s) is a code A ⊂ Sn with dual distance t + 1. Construction OA → TD :

◮ X = S × [1, n] ◮ G = {S × {i}, 1 ≤ i ≤ n}

S = {a, b} OA(2, 3, 2) =     a b b b b a b a b a a a     (a, 1) (a, 2) (a, 3) (b, 1) (b, 2) (b, 3)

26/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-98
SLIDE 98

Instances with orthogonal arrays

An orthogonal array OA(t, n, s) of strength t is a list A of words – of length n, – over a finite set S, |S| = s, – such that, for every I ⊂ [1, n] of size t, A|I = St. Equivalently, an OA(t, n, s) is a code A ⊂ Sn with dual distance t + 1. Construction OA → TD :

◮ X = S × [1, n] ◮ G = {S × {i}, 1 ≤ i ≤ n} ◮ B = {{(ci, i), 1 ≤ i ≤ n}, c ∈ OA}

S = {a, b} OA(2, 3, 2) =     a b b b b a b a b a a a     (a, 1) (a, 2) (a, 3) (b, 1) (b, 2) (b, 3)

26/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-99
SLIDE 99

Instances with orthogonal arrays

An orthogonal array OA(t, n, s) of strength t is a list A of words – of length n, – over a finite set S, |S| = s, – such that, for every I ⊂ [1, n] of size t, A|I = St. Equivalently, an OA(t, n, s) is a code A ⊂ Sn with dual distance t + 1. Construction OA → TD :

◮ X = S × [1, n] ◮ G = {S × {i}, 1 ≤ i ≤ n} ◮ B = {{(ci, i), 1 ≤ i ≤ n}, c ∈ OA}

S = {a, b} OA(2, 3, 2) =     a b b b b a b a b a a a     (a, 1) (a, 2) (a, 3) (b, 1) (b, 2) (b, 3)

26/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-100
SLIDE 100

Instances with orthogonal arrays

An orthogonal array OA(t, n, s) of strength t is a list A of words – of length n, – over a finite set S, |S| = s, – such that, for every I ⊂ [1, n] of size t, A|I = St. Equivalently, an OA(t, n, s) is a code A ⊂ Sn with dual distance t + 1. Construction OA → TD :

◮ X = S × [1, n] ◮ G = {S × {i}, 1 ≤ i ≤ n} ◮ B = {{(ci, i), 1 ≤ i ≤ n}, c ∈ OA}

S = {a, b} OA(2, 3, 2) =     a b b b b a b a b a a a     (a, 1) (a, 2) (a, 3) (b, 1) (b, 2) (b, 3)

26/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-101
SLIDE 101

Resisting collusions

  • Proposition. For t = 2, an OA(t, n, s) gives a TD(n, s).

27/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-102
SLIDE 102

Resisting collusions

  • Proposition. For t = 2, an OA(t, n, s) gives a TD(n, s).

Experimentally, for t = 2 and small n and s, codes based on classical affine TDs have the largest dimension.

27/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-103
SLIDE 103

Resisting collusions

  • Proposition. For t = 2, an OA(t, n, s) gives a TD(n, s).

Experimentally, for t = 2 and small n and s, codes based on classical affine TDs have the largest dimension. For t ≥ 3, we get TDs such that: for every t-set T of points lying in t different groups, there exists a unique block B ∈ B such that T ⊂ B. ⇒ The PIR protocol resists t − 1 colluding servers.

27/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-104
SLIDE 104

Resisting collusions

  • Proposition. For t = 2, an OA(t, n, s) gives a TD(n, s).

Experimentally, for t = 2 and small n and s, codes based on classical affine TDs have the largest dimension. For t ≥ 3, we get TDs such that: for every t-set T of points lying in t different groups, there exists a unique block B ∈ B such that T ⊂ B. ⇒ The PIR protocol resists t − 1 colluding servers.

◮ OAs with t > 2 exist (e.g. from Reed-Solomon codes) ◮ But associated TDs lead to codes with poor rates (except for t ≪ n)

Private Information Retrieval from Transversal Designs. L.. IEEE-TIT. 2019.

27/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-105
SLIDE 105

Outline

  • 1. Private information retrieval
  • 2. PIR schemes for common storage systems

Distributed storage systems A PIR scheme on RS-coded databases A PIR scheme with regenerating codes

  • 3. PIR schemes with low computation

Transversal designs and codes A PIR scheme with transversal designs Instances

  • 4. Conclusion

27/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-106
SLIDE 106

Conclusion

Private information retrieval:

◮ concentrated a lot of recent research, ◮ involves nice mathematical tools, ◮ but in practice ... relies on questionable assumptions (collusions,

size of entries, communication channels)

28/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –

slide-107
SLIDE 107

Conclusion

Private information retrieval:

◮ concentrated a lot of recent research, ◮ involves nice mathematical tools, ◮ but in practice ... relies on questionable assumptions (collusions,

size of entries, communication channels)

Questions?

28/28

  • J. Lavauzelle

Séminaire C2 – On the construction of PIR schemes –