secret sharing through cellular automata
play

Secret Sharing through Cellular Automata Luca Mariot 1 , 2 1 - PowerPoint PPT Presentation

Secret Sharing through Cellular Automata Luca Mariot 1 , 2 1 Dipartimento di Informatica, Sistemistica e Comunicazione (DISCo) Universit degli Studi Milano - Bicocca luca.mariot@disco.unimib.it 2 Laboratoire dInformatique, Signaux et


  1. Secret Sharing through Cellular Automata Luca Mariot 1 , 2 1 Dipartimento di Informatica, Sistemistica e Comunicazione (DISCo) Università degli Studi Milano - Bicocca luca.mariot@disco.unimib.it 2 Laboratoire d’Informatique, Signaux et Systèmes de Sophia Antipolis (I3S) Université Nice Sophia Antipolis mariot@i3s.unice.fr May 24, 2016

  2. One-Dimensional Cellular Automata (CA) Definition One-dimensional cellular automaton: triple � n , r , f � where n ∈ N is the number of cells arranged on a one-dimensional array, r ∈ N is the radius and f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is the local rule. Luca Mariot Secret Sharing through Cellular Automata

  3. One-Dimensional Cellular Automata (CA) Definition One-dimensional cellular automaton: triple � n , r , f � where n ∈ N is the number of cells arranged on a one-dimensional array, r ∈ N is the radius and f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is the local rule. Example: n = 8, r = 1, f ( s i − 1 , s i , s i + 1 ) = s i − 1 ⊕ s i ⊕ s i + 1 (Rule 150) ··· 0 ··· 0 1 1 0 1 0 0 0 0 1 0 1 ⇓ Parallel update Global rule F ↓ f ( 1 , 1 , 0 ) = 1 ⊕ 1 ⊕ 0 0 1 0 0 1 1 0 Luca Mariot Secret Sharing through Cellular Automata

  4. One-Dimensional Cellular Automata (CA) Definition One-dimensional cellular automaton: triple � n , r , f � where n ∈ N is the number of cells arranged on a one-dimensional array, r ∈ N is the radius and f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is the local rule. Example: n = 8, r = 1, f ( s i − 1 , s i , s i + 1 ) = s i − 1 ⊕ s i ⊕ s i + 1 (Rule 150) ··· 0 ··· 0 1 1 0 1 0 0 0 0 1 0 1 ⇓ Parallel update Global rule F ↓ f ( 1 , 1 , 0 ) = 1 ⊕ 1 ⊕ 0 0 1 0 0 1 1 0 Remark : No boundary conditions ⇒ The array “shrinks” Luca Mariot Secret Sharing through Cellular Automata

  5. Secret Sharing Schemes (SSS) ◮ Secret sharing scheme: a procedure enabling a dealer to share a secret S among a set P of n players ◮ In ( k , n ) threshold schemes, at least k players out of n are required to recover S Luca Mariot Secret Sharing through Cellular Automata

  6. Secret Sharing Schemes (SSS) ◮ Secret sharing scheme: a procedure enabling a dealer to share a secret S among a set P of n players ◮ In ( k , n ) threshold schemes, at least k players out of n are required to recover S Example: ( 2 , 3 ) –scheme Setup Recovery B 1 P 1 P 1 B 1 S B 2 P 2 P 2 B 2 S S S B 3 P 3 P 3 B 3 Luca Mariot Secret Sharing through Cellular Automata

  7. Bipermutive Rules ◮ Rule f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is called bipermutive if there exists g : { 0 , 1 } 2 r − 1 → { 0 , 1 } such that: f ( x 1 , x 2 , ··· , x 2 r , x 2 r + 1 ) = x 1 ⊕ g ( x 2 , ··· , x 2 r ) ⊕ x 2 r + 1 Luca Mariot Secret Sharing through Cellular Automata

  8. Bipermutive Rules ◮ Rule f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is called bipermutive if there exists g : { 0 , 1 } 2 r − 1 → { 0 , 1 } such that: f ( x 1 , x 2 , ··· , x 2 r , x 2 r + 1 ) = x 1 ⊕ g ( x 2 , ··· , x 2 r ) ⊕ x 2 r + 1 ◮ A preimage p ∈ { 0 , 1 } m + 2 r of c ∈ { 0 , 1 } m is uniquely determined by a block of 2 r cells Luca Mariot Secret Sharing through Cellular Automata

  9. Bipermutive Rules ◮ Rule f : { 0 , 1 } 2 r + 1 → { 0 , 1 } is called bipermutive if there exists g : { 0 , 1 } 2 r − 1 → { 0 , 1 } such that: f ( x 1 , x 2 , ··· , x 2 r , x 2 r + 1 ) = x 1 ⊕ g ( x 2 , ··· , x 2 r ) ⊕ x 2 r + 1 ◮ A preimage p ∈ { 0 , 1 } m + 2 r of c ∈ { 0 , 1 } m is uniquely determined by a block of 2 r cells p = p = ? ? ? ? 0 1 ? ? 1 0 0 0 0 1 0 1 c = c = 1 0 0 1 1 0 1 0 0 1 1 0 (a) Initialization (b) Complete preimage Figure : Example with bipermutive rule 150 Luca Mariot Secret Sharing through Cellular Automata

  10. Basic ( n , n ) Secret Sharing Scheme - Setup Phase 1. The dealer D sets the secret S as an m -bit configuration of a CA, and selects a bipermutive rule of radius r such that 2 r | m t = 0 S Luca Mariot Secret Sharing through Cellular Automata

  11. Basic ( n , n ) Secret Sharing Scheme - Setup Phase 2. D evolves the CA backwards for T = m ( n − 1 ) / 2 r iterations, randomly choosing an initial 2 r -bit block at each step ← → w 1 t = 1 t = 0 S Luca Mariot Secret Sharing through Cellular Automata

  12. Basic ( n , n ) Secret Sharing Scheme - Setup Phase 2. D evolves the CA backwards for T = m ( n − 1 ) / 2 r iterations, randomly choosing an initial 2 r -bit block at each step ← → w 2 t = 2 ← → w 1 t = 1 t = 0 S Luca Mariot Secret Sharing through Cellular Automata

  13. Basic ( n , n ) Secret Sharing Scheme - Setup Phase 3. After T = m ( n − 1 ) / 2 r iterations, the dealer splits the resulting preimage in n blocks of m bits ··· B 1 B n t = T ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ← → w 2 t = 2 ← → w 1 t = 1 t = 0 S Luca Mariot Secret Sharing through Cellular Automata

  14. Basic ( n , n ) Secret Sharing Scheme - Setup Phase 4. D securely sends one block to each player and publishes the bipermutive rule used P 1 P n ↑ ↑ ··· B 1 B n t = T ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ← → w 2 t = 2 ← → w 1 t = 1 t = 0 S Luca Mariot Secret Sharing through Cellular Automata

  15. Basic ( n , n ) Secret Sharing Scheme - Recovery Phase 1. The n players pool their shares in the correct order to get the complete preimage of the CA P 1 P n ↓ ↓ ··· B 1 B n t = 0 Luca Mariot Secret Sharing through Cellular Automata

  16. Basic ( n , n ) Secret Sharing Scheme - Recovery Phase 2. The players evolve the CA forward, using the local rule published by the dealer P 1 P n ↓ ↓ ··· B 1 B n t = 0 t = 1 Luca Mariot Secret Sharing through Cellular Automata

  17. Basic ( n , n ) Secret Sharing Scheme - Recovery Phase 2. The players evolve the CA forward, using the local rule published by the dealer P 1 P n ↓ ↓ ··· B 1 B n t = 0 t = 1 t = 2 Luca Mariot Secret Sharing through Cellular Automata

  18. Basic ( n , n ) Secret Sharing Scheme - Recovery Phase 3. The configuration obtained after T = m ( n − 1 ) / 2 r iterations is the secret S . P 1 P n ↓ ↓ ··· B 1 B n t = 0 t = 1 t = 2 ··· ··· ··· ··· ··· ··· ··· ··· t = T S Luca Mariot Secret Sharing through Cellular Automata

  19. Secret Juxtaposition (1/4) 1. Append a copy of the secret S to the right of the final CA image P 1 P k ↑ ↑ ··· B 1 B k ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· S S Luca Mariot Secret Sharing through Cellular Automata

  20. Secret Juxtaposition (2/4) 2. Update the preimages by completing them rightwards (note that it is not necessary to pick extra random bits) P 1 P k ↑ ↑ ··· B 1 B k ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· → S S Luca Mariot Secret Sharing through Cellular Automata

  21. Secret Juxtaposition (3/4) 2. Update the preimages by completing them rightwards (note that it is not necessary to pick extra random bits) P 1 P k ↑ ↑ ··· B 1 B k ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· → → S S Luca Mariot Secret Sharing through Cellular Automata

  22. Secret Juxtaposition (4/4) 3. The last preimage contains an additional block for the new player. The sets { P 1 , ··· , P k } and { P 2 , ··· , P k + 1 } can recover S P 1 P k P k + 1 ↑ ↑ ↑ → ··· B 1 B k B k + 1 ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· ··· → → S S Luca Mariot Secret Sharing through Cellular Automata

  23. Access Structure of the Scheme ◮ ( k , n ) -sequential threshold: at least k consecutive shares are necessary to recover the secret ◮ By continuing to append copies of the secret, the shares will eventually repeat ⇒ cyclic access structure Luca Mariot Secret Sharing through Cellular Automata

  24. Access Structure of the Scheme ◮ ( k , n ) -sequential threshold: at least k consecutive shares are necessary to recover the secret ◮ By continuing to append copies of the secret, the shares will eventually repeat ⇒ cyclic access structure ··· w w B B ··· S S S h ≤ 2 2 r Luca Mariot Secret Sharing through Cellular Automata

  25. Access Structure of the Scheme ◮ ( k , n ) -sequential threshold: at least k consecutive shares are necessary to recover the secret ◮ By continuing to append copies of the secret, the shares will eventually repeat ⇒ cyclic access structure ··· w w B B ··· S S S h ≤ 2 2 r What about real threshold schemes with CA? Luca Mariot Secret Sharing through Cellular Automata

  26. A Different Angle: Latin Squares Definition A Latin square of order N is a N × N matrix L from such that every row and every column are permutations of [ N ] = { 1 , ··· , N } 1 3 4 2 4 2 1 3 3 2 4 1 3 1 2 4 Luca Mariot Secret Sharing through Cellular Automata

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend