Randomness Complexity of Private Circuits for Multiplication Sonia - - PowerPoint PPT Presentation
Randomness Complexity of Private Circuits for Multiplication Sonia - - PowerPoint PPT Presentation
Randomness Complexity of Private Circuits for Multiplication Sonia Belad, Fabrice Benhamouda, Alain Passelgue , Emmanuel Prouff, Adrian Thillard, Damien Vergnaud brief introduction - side-channel attacks - masking - -probing model
brief introduction
- side-channel attacks
- masking
- ๐-probing model
1/16
key-idea: for security at order ๐, split sensitive data ๐ฆ into ๐ + 1 ran andom variables (shares) s.t. ๐ฆ = ๐ฆ0 โ ๐ฆ1 โ โฏ โ ๐ฆ๐ 2/16
key-idea: for security at order ๐, split sensitive data ๐ฆ into ๐ + 1 ran andom variables (shares) s.t. ๐ฆ = ๐ฆ0 โ ๐ฆ1 โ โฏ โ ๐ฆ๐
needs for a lot of randomness
2/16
randomness in cryptography
used everywhere:
- keys
- RSA prime factors
- ...
3/16
randomness in cryptography
used everywhere:
- keys
- RSA prime factors
- ...
strong properties:
- statistically random
- uniformly distributed
- independent
- ...
3/16
where does it come from? 4/16
where does it come from? in the real world: natural randomness 4/16
where does it come from? in the real world: natural randomness in practice:
- need special hardware
- slow
- bias or uneven distribution
4/16
where does it come from? in the real world: natural randomness in practice:
- need special hardware
- slow
- bias or uneven distribution
randomness should be considered as a resource, like space and time
4/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ 0,1 ๐โฒ 0,1 ๐โฒ ๐(๐ฆ)
correctness: ๐ ๐ท ๐ฝ ๐ฆ; ๐ ; ๐ = ๐ ๐ฆ , โ ๐ฆ, ๐, ๐ ๐-priv privacy: for any set ๐ of ๐ wires in ๐ท and for all ๐ฆ, ๐ง โ 0,1 ๐: {๐ท๐(๐ฝ ๐ฆ; ๐ ; ๐ )}๐,๐ = {๐ท๐(๐ฝ ๐ง; ๐ ; ๐ )}๐,๐
โฆ โฆ ๐
2
๐
๐
๐2 ๐โ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ 0,1 ๐โฒ 0,1 ๐โฒ ๐(๐ฆ) โฆ โฆ ๐
2
๐
๐
๐2 ๐โ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ 0,1 ๐โฒ ๐(๐ฆ) โฆ โฆ ๐
2
๐
๐
๐2 ๐โ 0,1 ๐โฒ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ ๐(๐ฆ) โฆ โฆ ๐
2
๐
๐
๐2 ๐โ 0,1 ๐โฒ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ ๐(๐ฆ) โฆ โฆ ๐
2
๐
๐
๐2 ๐โ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ ๐(๐ฆ)
correctness: ๐ ๐ท ๐ฝ ๐ฆ; ๐ ; ๐ = ๐ ๐ฆ , โ ๐ฆ, ๐, ๐
โฆ โฆ ๐
2
๐
๐
๐2 ๐โ
5/16
private circuits
๐: 0,1 ๐ โ 0,1 ๐ encoder ๐ฝ . . .
๐1
circuit ๐ท decoder ๐
๐
1
. . . . . . . . .
๐ฆ ๐(๐ฆ)
correctness: ๐ ๐ท ๐ฝ ๐ฆ; ๐ ; ๐ = ๐ ๐ฆ , โ ๐ฆ, ๐, ๐ ๐-priv privacy: for any set ๐ of ๐ wires in ๐ซ and for all ๐ฆ, ๐ง โ 0,1 ๐: {๐ท๐(๐ฝ ๐ฆ; ๐ ; ๐ )}๐,๐ = {๐ท๐(๐ฝ ๐ง; ๐ ; ๐ )}๐,๐
โฆ โฆ ๐
2
๐
๐
๐2 ๐โ
5/16
ADDITIONS ONLY . . .
๐0๐0 ๐0๐1 ๐0๐2 ๐๐๐๐โ1 ๐๐๐๐
. . .
๐0 ๐1 ๐๐ โ๐ ๐๐ = ๐ โ ๐ โ๐ ๐๐ = ๐ โ๐ ๐๐ = ๐ encoder circuit decoder ๐
1
โฆ ๐
2
๐
๐
๐, ๐ โ 0,1 2 โฆ ๐ โ ๐ โ 0,1
this paper
6/16
ADDITIONS ONLY . . .
๐0๐0 ๐0๐1 ๐0๐2 ๐๐๐๐โ1 ๐๐๐๐
. . .
๐0 ๐1 ๐๐ ๐
1
โฆ ๐
2
๐
๐
6/16
ADDITIONS ONLY . . .
๐0๐0 ๐0๐1 ๐0๐2 ๐๐๐๐โ1 ๐๐๐๐
. . .
๐0 ๐1 ๐๐ ๐
1
โฆ ๐
2
๐
๐
how much randomness is needed? 6/16
Ishai-Sahai-Wagner scheme
๐0๐0 ๐
0,1
๐
0,1 โ ๐0๐1 โ ๐1๐0
๐1๐1 โฏ ๐
0,๐ โ ๐0๐ โ ๐๐๐0
๐
1,๐ โ ๐1๐๐ โ ๐๐๐1
โฎ โฎ โฑ โฎ ๐
0,๐โ1
๐
0,๐
๐
1,๐โ1
๐
1,๐
โฏ ๐
๐โ1,๐ โ ๐๐โ1๐๐ โ ๐๐๐๐โ1
๐๐๐๐ ๐0 ๐1
โฎ
๐๐โ1 ๐๐
7/16
Ishai-Sahai-Wagner scheme randomness complexity: ๐(๐ + 1)/2
๐0๐0 ๐
0,1
๐
0,1 โ ๐0๐1 โ ๐1๐0
๐1๐1 โฏ ๐
0,๐ โ ๐0๐ โ ๐๐๐0
๐
1,๐ โ ๐1๐๐ โ ๐๐๐1
โฎ โฎ โฑ โฎ ๐
0,๐โ1
๐
0,๐
๐
1,๐โ1
๐
1,๐
โฏ ๐
๐โ1,๐ โ ๐๐โ1๐๐ โ ๐๐๐๐โ1
๐๐๐๐ ๐0 ๐1
โฎ
๐๐โ1 ๐๐
7/16
ADDITIONS ONLY . . .
๐0๐0 ๐0๐1 ๐0๐2 ๐๐๐๐โ1 ๐๐๐๐ ๐
1
โฆ ๐
2
๐
๐
8/16 . . .
๐0 ๐1 ๐๐
ADDITIONS ONLY . . .
๐0๐0 ๐0๐1 ๐0๐2 ๐๐๐๐โ1 ๐๐๐๐ ๐
1
โฆ ๐
2
๐
๐
any probe (wire value) has the form: ๐ = เป
๐,๐ โ๐โ 0,โฆ,๐ 2
๐๐๐
๐
โ เป
๐โ๐โ 1,โฆ,๐
๐
๐
8/16 . . .
๐0 ๐1 ๐๐
any probe (wire value) has the form: ๐ = เป
๐,๐ โ๐โ 0,โฆ,๐ 2
๐๐๐
๐
โ เป
๐โ๐โ 1,โฆ,๐
๐
๐
= ิฆ ๐๐ข โ ๐๐ โ ๐ โ ิฆ ๐ก๐
๐ข โ ิฆ
๐ with ิฆ ๐ = ๐0, โฆ , ๐๐ , ๐ = ๐0, โฆ , ๐๐ , ิฆ ๐ = ๐
0, โฆ , ๐ ๐ ,
๐๐ โ 0,1
๐+1 ร ๐+1 , ิฆ
๐ก๐ โ 0,1 ๐ 8/16
any probe (wire value) has the form: ๐ = เป
๐,๐ โ๐โ 0,โฆ,๐ 2
๐๐๐
๐
โ เป
๐โ๐โ 1,โฆ,๐
๐
๐
= ิฆ ๐๐ข โ ๐๐ โ ๐ โ ิฆ ๐ก๐
๐ข โ ิฆ
๐ with ิฆ ๐ = ๐0, โฆ , ๐๐ , ๐ = ๐0, โฆ , ๐๐ , ิฆ ๐ = ๐
0, โฆ , ๐ ๐ ,
๐๐ โ 0,1
๐+1 ร ๐+1 , ิฆ
๐ก๐ โ 0,1 ๐
any sum of probes has the form: ิฆ ๐๐ข โ ๐ โ ๐ โ ิฆ ๐ก๐ข โ ิฆ ๐
8/16
algebraic characterization
condition 1: a set of probes ๐ = ๐1, โฆ , ๐โ satisfies condition 1 iff: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and 1, โฆ , 1 is in the row (or column) space of ๐ 9/16
algebraic characterization
condition 1: a set of probes ๐ = ๐1, โฆ , ๐โ satisfies condition 1 iff: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and 1, โฆ , 1 is in the row (or column) space of ๐ the theorem: ๐ท is ๐-private โ there does not exist ๐ = ๐1, โฆ , ๐โ , โ โค ๐ that satisfies condition 1 9/16
proof sketch
โ assume ๐1, โฆ , ๐โ such that: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and(1, โฆ , 1) is in the column space of ๐
10/16
proof sketch
โ assume ๐1, โฆ , ๐โ such that: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and(1, โฆ , 1) is in the column space of ๐ โ there exists ๐โฒ โ 0,1 ๐+1 s.t. ๐ โ ๐โฒ = (1, โฆ , 1)
10/16
proof sketch
โ assume ๐1, โฆ , ๐โ such that: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and(1, โฆ , 1) is in the column space of ๐ โ there exists ๐โฒ โ 0,1 ๐+1 s.t. ๐ โ ๐โฒ = (1, โฆ , 1) Pr ิฆ ๐๐ข โ ๐ โ ๐ = ๐ = เต 1 2 if ๐ โ ๐ โ (1, โฆ , 1) 1 if ๐ โ ๐ = 1, โฆ , 1
10/16
proof sketch
โ assume ๐1, โฆ , ๐โ such that: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and(1, โฆ , 1) is in the column space of ๐ โ there exists ๐โฒ โ 0,1 ๐+1 s.t. ๐ โ ๐โฒ = (1, โฆ , 1) Pr ิฆ ๐๐ข โ ๐ โ ๐ = ๐ = เต 1 2 if ๐ โ ๐ โ (1, โฆ , 1) 1 if ๐ โ ๐ = 1, โฆ , 1 then, Pr ิฆ ๐๐ข โ ๐ โ ๐ = ๐ > Pr ิฆ ๐๐ข โ ๐ โ ๐ = เดค ๐
10/16
proof sketch
โ assume ๐1, โฆ , ๐โ such that: โจ๐=1
โ
๐๐ = ิฆ ๐๐ข โ ๐ โ ๐ and(1, โฆ , 1) is in the column space of ๐ โ there exists ๐โฒ โ 0,1 ๐+1 s.t. ๐ โ ๐โฒ = (1, โฆ , 1) Pr ิฆ ๐๐ข โ ๐ โ ๐ = ๐ = เต 1 2 if ๐ โ ๐ โ (1, โฆ , 1) 1 if ๐ โ ๐ = 1, โฆ , 1 then, Pr ิฆ ๐๐ข โ ๐ โ ๐ = ๐ > Pr ิฆ ๐๐ข โ ๐ โ ๐ = เดค ๐ โ a lot more technical...
10/16
upper bound
11/16
upper bound th theorem: there exists a ๐-private circuit for multiplication with randomness complexity ร(๐).
11/16 randomness complexity of ISW: ๐ ๐2 needs for a quadratic complexity?
proof sketch
probabilistic method: non-constructive! 12/16
proof sketch
probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1 $
12/16
proof sketch
probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1
๐0๐0 ๐1๐0 ๐0๐1 ๐1๐1 โฏ ๐0๐๐ ๐1๐๐ โฎ โฎ โฑ โฎ ๐๐๐0 ๐๐๐1 โฏ ๐๐๐๐ ๐0 ๐1
โฎ
๐๐
$
12/16
proof sketch
๐0 ๐1
โฎ
๐๐
โฆ
= ๐๐๐
๐
โ โ โ
12/16 probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1 $
proof sketch
๐0 ๐1
โฎ
๐๐
โฆ
= ๐๐๐
๐
โ โ โ โ โ โ
= ๐๐,๐
12/16 probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1 $
proof sketch
๐0 ๐1
โฎ
๐๐
โฆ
= ๐๐๐
๐
โ โ โ โ โ โ
= ๐๐,๐ correctness: ๐๐,๐ = โ๐,๐ ๐๐,๐
12/16 probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1 $
proof sketch
๐0 ๐1
โฎ
๐๐
โฆ
= ๐๐๐
๐
โ โ โ โ โ โ
= ๐๐,๐ correctness: ๐๐,๐ = โ๐,๐ ๐๐,๐ ๐-privacy: if ๐ = ร ๐ , Pr ๐๐ก ๐ก๐๐๐ฃ๐ ๐ > 0 โ at least one algorithm is ๐-private
12/16 probabilistic method: non-constructive! ๐
1, โฆ , ๐ ๐ random bits
๏๐๐,๐ = โ1โค๐โค๐ ๐ฝ๐,๐,๐ โ ๐
๐ with ๐ฝ๐,๐,๐ โ 0,1 $
lower bounds
13/16
lower bounds
theorem:
- 1. ๐-privacy โ at least ๐ random bits (for ๐ โฅ 2)
- 2. ๐-privacy โ at least ๐ + 1 random bits (for ๐ โฅ 3)
13/16
proof sketch of 1.
lemma: ๐0, ๐1 two sets of at most ๐ probes and ๐ก๐ = โ๐โ๐๐ ๐ (๐
๐ โ ๐ก๐, โ๐, ๐) โง (๐ก0 โ ๐ก1 = ๐ โ ๐) โ ๐ท is not ๐-private
14/16
proof sketch of 1.
suppose an algorithm ๐ท with only ๐
1, โฆ , ๐ ๐โ1 and let ๐0, โฆ , ๐๐ the output of ๐ท
let ๐ = ๐๐,๐ 1โค๐โค๐โ1
1โค๐โค๐
โ 0,1 (๐โ1)ร๐ s.t. ๐๐,๐ = 1 โ ๐ ๐ โ ๐
๐
lemma: ๐0, ๐1 two sets of at most ๐ probes and ๐ก๐ = โ๐โ๐๐ ๐ (๐
๐ โ ๐ก๐, โ๐, ๐) โง (๐ก0 โ ๐ก1 = ๐ โ ๐) โ ๐ท is not ๐-private
14/16
proof sketch of 1.
suppose an algorithm ๐ท with only ๐
1, โฆ , ๐ ๐โ1 and let ๐0, โฆ , ๐๐ the output of ๐ท
let ๐ = ๐๐,๐ 1โค๐โค๐โ1
1โค๐โค๐
โ 0,1 (๐โ1)ร๐ s.t. ๐๐,๐ = 1 โ ๐ ๐ โ ๐
๐
๐ has dimension ๐ โ 1 ร ๐ โ ๐ฟ๐๐ ๐ โ 0
lemma: ๐0, ๐1 two sets of at most ๐ probes and ๐ก๐ = โ๐โ๐๐ ๐ (๐
๐ โ ๐ก๐, โ๐, ๐) โง (๐ก0 โ ๐ก1 = ๐ โ ๐) โ ๐ท is not ๐-private
14/16
proof sketch of 1.
suppose an algorithm ๐ท with only ๐
1, โฆ , ๐ ๐โ1 and let ๐0, โฆ , ๐๐ the output of ๐ท
let ๐ = ๐๐,๐ 1โค๐โค๐โ1
1โค๐โค๐
โ 0,1 (๐โ1)ร๐ s.t. ๐๐,๐ = 1 โ ๐
๐ โ ๐ ๐
๐ has dimension ๐ โ 1 ร ๐ โ ๐ฟ๐๐ ๐ โ 0 let ๐ฅ โ ๐ฟ๐๐ ๐ โ {0} ๐0 = ๐0 โช ๐๐ ๐ฅ๐ = 0 and ๐1 = ๐๐ ๐ฅ๐ = 1 satisfy requirements of lemma...
lemma: ๐0, ๐1 two sets of at most ๐ probes and ๐ก๐ = โ๐โ๐๐ ๐ (๐
๐ โ ๐ก๐, โ๐, ๐) โง (๐ก0 โ ๐ก1 = ๐ โ ๐) โ ๐ท is not ๐-private
14/16
automatic tool for finding attacks
- rder
2 3 4 5 6 [BBDFGS15] <1 ms 36 ms 108 ms 6,3 s 26 min this paper <10 ms <10 ms <10 ms <10 ms <10 ms
- based on the algebraic characterization
- relies on coding theory (information set decoding algorithms)
- not perfectly sound...
- much faster than Easycrypt-based [BBDFGS15]