On the construction of PIR schemes
Julien Lavauzelle
IRMAR, Université de Rennes 1
Séminaire GREYC 27/02/2019
On the construction of PIR schemes Julien Lavauzelle IRMAR, - - PowerPoint PPT Presentation
On the construction of PIR schemes Julien Lavauzelle IRMAR, Universit de Rennes 1 Sminaire GREYC 27/02/2019 Outline 1. Private information retrieval 2. PIR schemes for common storage systems Distributed storage systems A PIR scheme on
Séminaire GREYC 27/02/2019
1/22
Séminaire GREYC – On the construction of PIR schemes –
1/22
Séminaire GREYC – On the construction of PIR schemes –
2/22
Séminaire GREYC – On the construction of PIR schemes –
2/22
Séminaire GREYC – On the construction of PIR schemes –
3/22
Séminaire GREYC – On the construction of PIR schemes –
3/22
Séminaire GREYC – On the construction of PIR schemes –
3/22
Séminaire GREYC – On the construction of PIR schemes –
3/22
Séminaire GREYC – On the construction of PIR schemes –
4/22
Séminaire GREYC – On the construction of PIR schemes –
4/22
Séminaire GREYC – On the construction of PIR schemes –
◮ for IT-privacy, no better solution than full download, ◮ computational privacy is possible (but remains expensive as of now). 4/22
Séminaire GREYC – On the construction of PIR schemes –
5/22
Séminaire GREYC – On the construction of PIR schemes –
5/22
Séminaire GREYC – On the construction of PIR schemes –
5/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
z∈Z1×Z2 Fz and sends a to
6/22
Séminaire GREYC – On the construction of PIR schemes –
◮ |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.
z∈Z1×Z2 Fz and sends a to
6/22
Séminaire GREYC – On the construction of PIR schemes –
7/22
Séminaire GREYC – On the construction of PIR schemes –
◮ Communication: 8
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ Communication: 8
◮ 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.
◮ Communication: b2bM1/b = n log(n)M1/log(n) uploaded bits, n
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ PIR with 3 servers and subpolynomial communication [Yek08, Efr09] ◮ PIR with 2 servers and subpolynomial communication [DG16] ◮ lower storage overhead with PIR codes [FVY15]
◮ capacity of PIR [SJ17, BU18] ◮ (nearly) capacity-achieving schemes [SRR14, CHY15, TR16, ...] 8/22
Séminaire GREYC – On the construction of PIR schemes –
8/22
Séminaire GREYC – On the construction of PIR schemes –
8/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
q, pairwise distinct.
10/22
Séminaire GREYC – On the construction of PIR schemes –
q, pairwise distinct.
◮ every codeword c ∈ C can be reconstructed from any k-subset of
◮ any subset of d⊥(C) − 1 = k coordinates of c are independent. 10/22
Séminaire GREYC – On the construction of PIR schemes –
q, pairwise distinct.
◮ every codeword c ∈ C can be reconstructed from any k-subset of
◮ any subset of d⊥(C) − 1 = k coordinates of c are independent.
qs
10/22
Séminaire GREYC – On the construction of PIR schemes –
q, pairwise distinct.
◮ every codeword c ∈ C can be reconstructed from any k-subset of
◮ any subset of d⊥(C) − 1 = k coordinates of c are independent.
qs
10/22
Séminaire GREYC – On the construction of PIR schemes –
10/22
Séminaire GREYC – On the construction of PIR schemes –
11/22
Séminaire GREYC – On the construction of PIR schemes –
◮ Originally [TR16], then extended and reformulated [TGKFH18, TGR18]. ◮ Scalable. ◮ Optimal PIR rate for t = 1 and M → ∞. ◮ PIR rate conjectured optimal for M → ∞.
11/22
Séminaire GREYC – On the construction of PIR schemes –
12/22
Séminaire GREYC – On the construction of PIR schemes –
q the storage code, C ∈ CM the coded database
q a query code of dual distance d⊥(D) = t + 1
c1 ci “goal” cM J
12/22
Séminaire GREYC – On the construction of PIR schemes –
q the storage code, C ∈ CM the coded database
q a query code of dual distance d⊥(D) = t + 1
c1 ci “goal” cM J
d1 di + 1J dM J
12/22
Séminaire GREYC – On the construction of PIR schemes –
q the storage code, C ∈ CM the coded database
q a query code of dual distance d⊥(D) = t + 1
c1 ci “goal” cM J
d1 di + 1J dM J
12/22
Séminaire GREYC – On the construction of PIR schemes –
q of Q,
c1[j] cM[j] q1[j] qM[j]
13/22
Séminaire GREYC – On the construction of PIR schemes –
q of Q, and has to compute
c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]
rj
13/22
Séminaire GREYC – On the construction of PIR schemes –
q of Q, and has to compute
c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]
rj
13/22
Séminaire GREYC – On the construction of PIR schemes –
q of Q, and has to compute
c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]
rj
M
m=1
13/22
Séminaire GREYC – On the construction of PIR schemes –
q of Q, and has to compute
c1[j] cM[j] q1[j] qM[j] c1[j]q1[j] + . . . + cM[j]qM[j]
rj
M
m=1
m=1 dm ⋆ cm,
∑M
m=1 cm ⋆ dm
ci[J]
13/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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/22
Séminaire GREYC – On the construction of PIR schemes –
14/22
Séminaire GREYC – On the construction of PIR schemes –
◮ low communication complexity ◮ computationally inefficient (linear in |F| = ∑M
m=1 |Fm|)
◮ optimal computation (|rj| for each server Sj) ◮ remove the assumption s ≫ M ◮ moderate communication complexity 15/22
Séminaire GREYC – On the construction of PIR schemes –
15/22
Séminaire GREYC – On the construction of PIR schemes –
◮ X a set of points, |X| = N = ns,
Séminaire GREYC – On the construction of PIR schemes –
◮ X a set of points, |X| = N = ns, ◮ groups G = {Gj}1≤j≤n satisfying
n
j=1
16/22
Séminaire GREYC – On the construction of PIR schemes –
◮ X a set of points, |X| = N = ns, ◮ groups G = {Gj}1≤j≤n satisfying
n
j=1
◮ blocks B ∈ B satisfying
Séminaire GREYC – On the construction of PIR schemes –
17/22
Séminaire GREYC – On the construction of PIR schemes –
◮ length(C) = |X|, ◮ dim(C) = dim(ker M), ◮ every B ∈ B gives an h ∈ C⊥ such that wt(h|Gj) = 1, ∀j = 1, . . . , n. 17/22
Séminaire GREYC – On the construction of PIR schemes –
18/22
Séminaire GREYC – On the construction of PIR schemes –
18/22
Séminaire GREYC – On the construction of PIR schemes –
q be a code based on a TD(n, s).
19/22
Séminaire GREYC – On the construction of PIR schemes –
q be a code based on a TD(n, s).
19/22
Séminaire GREYC – On the construction of PIR schemes –
q be a code based on a TD(n, s).
j: i/ ∈Gj
b∈B\{i}
19/22
Séminaire GREYC – On the construction of PIR schemes –
20/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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) 20/22
Séminaire GREYC – On the construction of PIR schemes –
◮ 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)
20/22
Séminaire GREYC – On the construction of PIR schemes –
20/22
Séminaire GREYC – On the construction of PIR schemes –
◮ X = Fm
q , m ≥ 2,
◮ G a set of q disjoint hyperplanes partitionning X, ◮ B = {affine lines L secant to each group of G}.
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
21/22
Séminaire GREYC – On the construction of PIR schemes –
◮ X = Fm
q , m ≥ 2,
◮ G a set of q disjoint hyperplanes partitionning X, ◮ B = {affine lines L secant to each group of G}.
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
21/22
Séminaire GREYC – On the construction of PIR schemes –
21/22
Séminaire GREYC – On the construction of PIR schemes –
◮ concentrated a lot of recent research, ◮ involves nice mathematical tools, ◮ but in practice ... relies on questionable assumptions (collusions,
22/22
Séminaire GREYC – On the construction of PIR schemes –
◮ concentrated a lot of recent research, ◮ involves nice mathematical tools, ◮ but in practice ... relies on questionable assumptions (collusions,
22/22
Séminaire GREYC – On the construction of PIR schemes –