inversion of mutually orthogonal ca
play

Inversion of Mutually Orthogonal CA Luca Mariot, Alberto Leporati - PowerPoint PPT Presentation

Inversion of Mutually Orthogonal CA Luca Mariot, Alberto Leporati Bicocca Security Lab (BiSLab) Dipartimento di Informatica, Sistemistica e Comunicazione (DISCo) Universit degli Studi Milano - Bicocca ACRI 2018 Como, September 17-21, 2018


  1. Inversion of Mutually Orthogonal CA Luca Mariot, Alberto Leporati Bicocca Security Lab (BiSLab) Dipartimento di Informatica, Sistemistica e Comunicazione (DISCo) Università degli Studi Milano - Bicocca ACRI 2018 – Como, September 17-21, 2018

  2. Euler’s 36 Officers Problem « A very curious question [...] revolves around arranging 36 officers to be drawn from 6 differ- ent ranks and also from 6 different regiments so that they are ranged in a square so that in each line (both horizontal and vertical) there are 6 officers of different ranks and different regiments. » L. Euler, Sur une nouvelle espèce de quarrés magiques , 1782 Luca Mariot Inversion of Mutually Orthogonal CA

  3. Latin Squares Definition A Latin square of order N is a N × N matrix L such that every row and every column are permutations of [ N ] = { 1 , ··· , N } 1 3 4 2 4 2 1 3 2 4 3 1 3 1 2 4 Luca Mariot Inversion of Mutually Orthogonal CA

  4. Orthogonal Latin Squares (OLS) Definition Two Latin squares L 1 and L 2 of order N are orthogonal if their superposition yields all the pairs ( x , y ) ∈ [ N ] × [ N ] . 1 3 4 2 1 4 2 3 1,1 3,4 4,2 2,3 4 2 1 3 3 2 4 1 4,3 2,2 1,4 3,1 2,4 4,1 3,3 1,2 2 4 3 1 4 1 3 2 3,2 1,3 2,4 4,1 3 1 2 4 2 3 4 1 (a) L 1 (b) L 2 (c) ( L 1 , L 2 ) A set of n pairwise orthogonal Latin squares is denoted as n -MOLS Luca Mariot Inversion of Mutually Orthogonal CA

  5. Secret Sharing Schemes (SSS) ( k , n ) Threshold Secret Sharing Scheme: a procedure enabling a dealer to share a secret S among n players so that at least k players out of n can recover S [Shamir79]. Example: ( 2 , 3 ) –scheme Setup Recovery B 1 P 1 P 1 B 1 S = B 2 P 2 P 2 B 2 B 3 P 3 P 3 B 3 Remark: ( 2 , n ) –scheme ⇔ set of n -MOLS Luca Mariot Inversion of Mutually Orthogonal CA

  6. One-Dimensional Cellular Automata (CA) Definition One-dimensional CA: triple � m , n , f � where n ∈ N is the number of cells on a one-dimensional array, n ∈ N is the neighborhood and f : { 0 , 1 } n → { 0 , 1 } is the local rule. 0 00 Example: f ( x 1 , x 2 , x 3 ) = x 1 ⊕ x 2 ⊕ x 3 (Rule 150) 1 1 0 1 0 0 0 0 1 0 1 10 01 1 f ( 1 , 0 , 0 ) = 1 1 0 0 1 1 0 0 0 11 1 Luca Mariot Inversion of Mutually Orthogonal CA

  7. Latin Squares through Bipermutive CA (1/2) ◮ Idea: determine which CA induce orthogonal Latin squares ◮ Bipermutive CA: local rule f is defined as f ( x 1 , ··· , x n ) = x 1 ⊕ ϕ ( x 2 , ··· , x n − 1 ) ⊕ x n ◮ ϕ : { 0 , 1 } n − 2 → { 0 , 1 } : generating function of f Lemma ([Eloranta93, Mariot16]) Let � 2 ( n − 1 ) , n , f � be a CA with bipermutive rule. Then, the global rule F generates a Latin square of order N = 2 n − 1 y n − 1 n − 1 y x x L ( x , y ) L ( x , y ) n − 1 Luca Mariot Inversion of Mutually Orthogonal CA

  8. Latin Squares through Bipermutive CA (2/2) ◮ Example: CA � 4 , 1 , f � , f ( x 1 , x 2 , x 3 ) = x 1 ⊕ x 2 ⊕ x 3 (Rule 150) ◮ Encoding: 00 �→ 1 , 10 �→ 2 , 01 �→ 3 , 11 �→ 4 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 1 1 0 1 1 0 1 4 3 2 1 0 0 0 1 0 1 0 1 0 0 1 1 0 1 1 2 3 4 1 1 0 0 1 1 1 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 1 1 1 4 1 2 3 1 1 0 0 1 0 0 1 1 1 0 0 1 1 1 0 1 1 0 1 1 1 1 1 3 2 1 4 0 1 1 0 0 0 1 1 (b) Latin square L 150 (a) Rule 150 on 4 bits Mutually Orthogonal Cellular Automata (MOCA): set of n bipermutive CA generating n -MOLS Luca Mariot Inversion of Mutually Orthogonal CA

  9. MOCA by Linear CA ◮ Bipermutive Linear rule: f ( x ) = x 1 ⊕ a 2 x 2 ⊕···⊕ a n − 1 x n − 1 ⊕ x n ◮ Associated polynomial: f �→ P f ( X ) = a 1 + a 2 X + ··· + a n X n − 1 Theorem ([Mariot16]) A set of bipermutive linear CA are MOCA if and only if their associated polynomials are pairwise coprime 1,1 4,2 3,3 2,4 1 4 3 2 1 2 3 4 2,2 3,1 4,4 1,3 2 3 4 1 2 1 4 3 3 3 4,3 1,4 2,1 3,2 4 1 2 4 1 2 3 2 1 4 4 3 2 1 3,4 2,3 1,2 4,1 (a) Rule 150 (b) Rule 90 (c) Superposition Figure: P 150 ( X ) = 1 + X + X 2 , P 90 ( X ) = 1 + X 2 (coprime) Luca Mariot Inversion of Mutually Orthogonal CA

  10. Inversion Problem in OCA ◮ Input : A pair w , z ∈ { 0 , 1 } n − 1 of final configurations ◮ Output : The unique preimage x generating w , z under the action of two OCA ↓ 1,1 4,2 3,3 2,4 ? ? ? ? 1 1 0 0 2,2 3,1 4,4 1,3 0 1 0 1 4,3 1,4 2,1 3,2 1 1 1 1 3,4 2,3 1,2 4,1 → (b) Input (c) Output (a) rule 90-150 Luca Mariot Inversion of Mutually Orthogonal CA

  11. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 100 1 1 1 , 1 1 , 1 010 0 1 0 , 0 110 1 0 10 01 001 1 1 0 , 1 101 0 0 1 , 0 1 , 0 011 1 0 11 111 0 1 0 , 1 ? ? ? ? 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  12. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 1 , 1 1 , 1 100 1 1 010 0 1 0 , 0 10 01 110 1 0 001 1 1 0 , 1 1 , 0 1 , 0 101 0 0 11 011 1 0 111 0 1 0 , 1 ? ? ? ? 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  13. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 1 , 1 1 , 1 100 1 1 010 0 1 0 , 0 10 01 110 1 0 0 , 1 001 1 1 1 , 0 1 , 0 101 0 0 11 011 1 0 111 0 1 0 , 1 1 1 ? ? 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  14. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 1 , 1 1 , 1 100 1 1 010 0 1 0 , 0 10 01 110 1 0 0 , 1 001 1 1 1 , 0 101 0 0 1 , 0 11 011 1 0 111 0 1 0 , 1 1 1 ? ? 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  15. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 100 1 1 1 , 1 1 , 1 010 0 1 0 , 0 110 1 0 10 01 001 1 1 0 , 1 101 0 0 1 , 0 1 , 0 011 1 0 11 111 0 1 0 , 1 0 1 ? ? 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  16. Coupled De Bruijn Graph Idea : Walk on the De Bruijn graph labelled with both rules until a matching path is found. 0 , 0 ( x 1 , x 2 , x 3 ) f 90 f 150 000 0 0 00 1 , 1 100 1 1 1 , 1 010 0 1 0 , 0 110 1 0 10 01 001 1 1 0 , 1 101 0 0 1 , 0 1 , 0 011 1 0 11 111 0 1 0 , 1 0 1 0 0 0 1 1 1 Luca Mariot Inversion of Mutually Orthogonal CA

  17. Inversion Algorithm I nvert -OCA ( G DB ( f , g ) , w , z ) V := V ertex ( G DB ( f , g )) E := E dges ( G DB ( f , g )) l := L abels ( G DB ( f , g )) c := NIL while e ∈ { ( v 1 , v 2 ) ∈ E : l ( v 1 , v 2 ) = ( w 1 , z 1 ) } AND c = NIL do c := DFS-M od ( V , E , l , v 1 , w , z ) end while return c Theorem Given two OCA rules f , g : { 0 , 1 } n → { 0 , 1 } and two final configurations w , z ∈ { 0 , 1 } n − 1 , algorithm I nvert -OCA returns the preimage x ∈ { 0 , 1 } 2 ( n − 1 ) of w , z in O ( n · 2 n ) steps Luca Mariot Inversion of Mutually Orthogonal CA

  18. Conclusions and Future Directions Summing up: ◮ We considered the problem of inverting a pair of final configurations under the action of two OCA ◮ We devised an algorithm which solves the problem in exponential time wrt the CA diameter (but can be brought down to linear with parallelization!) Future directions: ◮ Design a cheater-immune SSS based on I nv -O ca ◮ Apply Genetic Programming (GP) to evolve MOCA with compact representation Luca Mariot Inversion of Mutually Orthogonal CA

  19. References [delRey05] del Rey, Á.M., Mateus, J.P ., Sánchez, G.R.: A secret sharing scheme based on cellular automata. Appl. Math. Comput. 170(2), 1356–1364 (2005) [Eloranta93] Eloranta, K.: Partially Permutive Cellular Automata. Nonlinearity 6(6), 1009–1023 (1993) [Mariot17] Mariot, L., Picek, S., Jakobovic, D., Leporati, A.: Evolutionary Algorithms for the Design of Orthogonal Latin Squares based on Cellular Automata. In: Proceedings of GECCO’17 (2017) [Mariot16] Mariot, L., Formenti, E., Leporati, A.: Construting Orthogonal Latin Squares from Linear Cellular Automata. In: Exploratory papers of AUTOMATA 2016 (2016) [Mariot14] Mariot, L., Leporati, A.: Sharing Secrets by Computing Preimages of Bipermutive Cellular Automata. In: Proceedings of ACRI 2014. LNCS vol. 8751, pp. 417–426. Springer (2014) [Shamir79] Shamir, A.: How to share a secret. Commun. ACM 22(11):612–613 (1979) [Tompa88] Tompa, M., Woll, H.: How to share a secret with cheaters. J. Cryptology 1(2), 133–138 (1988) Luca Mariot Inversion of Mutually Orthogonal CA

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