nonlinear shi registers
play

Nonlinear Shi, Registers: A Survey and Open Problems Tor - PowerPoint PPT Presentation

Nonlinear Shi, Registers: A Survey and Open Problems Tor Helleseth University of Bergen NORWAY Outline Introduc9on Nonlinear Shi> Registers (NLFSRs)


  1. Nonlinear ¡Shi, ¡Registers: ¡ ¡ A ¡Survey ¡and ¡Open ¡Problems ¡ Tor ¡Helleseth ¡ University ¡of ¡Bergen ¡ NORWAY ¡

  2. Outline ¡ • Introduc9on ¡ • Nonlinear ¡Shi> ¡Registers ¡(NLFSRs) ¡ – Some ¡basic ¡theory ¡ • De ¡Bruijn ¡Graph ¡ – De ¡Bruijn ¡graph ¡ – Golomb’s ¡conjecture/Mykkeltveit’s ¡proof ¡ ¡ • Period ¡of ¡NLFRs ¡ • Connec9ons ¡to ¡Finite ¡Fields ¡ – Cross-­‑join ¡pairs ¡ – Cycle-­‑joining ¡and ¡cyclotomy ¡ ¡

  3. ¡ Linear ¡Recursion ¡ • Linear ¡recurrence ¡ ¡ ¡ ¡ ¡ ¡ ¡s t+n ¡ + ¡c n-­‑1 ¡ s t+n-­‑1 ¡ + ¡… ¡+ ¡c 0 s t ¡ = ¡0, ¡ ¡ ¡c i ¡, ¡s i ¡ ∈ ¡GF(p) ¡ • Characteris9c ¡polynomial ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ f(x) ¡ ¡= ¡x n ¡ ¡ + ¡c n-­‑1 ¡ x n-­‑1 ¡ ¡ + ¡… ¡+ ¡c 0 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Ω(f) ¡ ¡= ¡The ¡2 n ¡binary ¡sequences ¡generated ¡by ¡recursion ¡ • Proper9es ¡ – “Easy” ¡to ¡find ¡period ¡of ¡the ¡sequences ¡in ¡Ω(f) ¡from ¡f(x) ¡ • Period ¡determined ¡by ¡smallest ¡e ¡such ¡that ¡f(x) ¡| ¡x e ¡ ¡-­‑ ¡ ¡1 ¡ • All ¡sequences ¡in ¡Ω(f) ¡have ¡period ¡e ¡ • Smallest ¡period ¡for ¡at ¡least ¡one ¡sequences ¡in ¡Ω(f) ¡ – Bounds ¡on ¡the ¡distribu9on ¡of ¡elements ¡in ¡(s t ) ¡are ¡ evaluated ¡using ¡methods ¡from ¡finite ¡fields ¡

  4. m-­‑sequences ¡ Linear ¡recurrence ¡ ¡ ¡ ¡ ¡ ¡s t+4 ¡ + ¡s t+1 ¡ + ¡s t ¡ = ¡0 ¡ Primi9ve ¡polynomial ¡ ¡ ¡ ¡ ¡f(x) ¡= ¡x 4 ¡ + ¡x ¡+ ¡1 ¡ (s t ¡ ) ¡: ¡ ¡000100110101111 ¡. ¡. ¡. ¡ ¡ ¡ ¡ General ¡proper9es ¡of ¡m-­‑sequences ¡ • ¡Period ¡ ε ¡= ¡2 n ¡ -­‑ ¡1 ¡ • ¡Balanced ¡(except ¡for ¡a ¡missing ¡0) ¡ • ¡Run ¡property ¡ • ¡s t ¡ -­‑ ¡s t+ τ = ¡s t+ γ ¡ ¡ ¡, ¡ ¡s 2t ¡ = ¡s t+ δ ¡ • ¡During ¡a ¡period ¡all ¡nonzero ¡n-­‑tuples ¡occur ¡

  5. Nonlinear Shift Registers s 0 ¡ s 1 ¡ s n-­‑1 ¡ ... ¡ f(s 0 ,s 1 , ¡…,s n-­‑1 ) ¡ • The ¡feedback ¡polynomial ¡is ¡nonlinear ¡of ¡the ¡form ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡f(s 0 ,s 1 ,…s n-­‑1 ) ¡= ¡Σ ¡ Iε{0,1}n ¡c I ¡ s 0 i0 ¡ s 1 i1 ¡ … ¡ s n-­‑1 in-­‑1 ¡ ¡ • Determined ¡by ¡truth ¡table ¡giving ¡f(s 0 ,s 1 ,…s n-­‑1 ) ¡ ¡for ¡all ¡ possible ¡2 n ¡values ¡ • Number ¡of ¡nonlinear ¡polynomials ¡(Boolean ¡func9ons) ¡in ¡ n ¡variables ¡is ¡2 2n ¡

  6. Nonlinear Shift Registers - Challenges Mo9va9on ¡ • NLSRs ¡are ¡used ¡as ¡building ¡blocks ¡in ¡many ¡modern ¡stream ¡ciphers ¡ (Grain, ¡Trivium, ¡Mickey, ¡Pomaranch, ¡…) ¡ • Increase ¡complexity ¡of ¡the ¡key ¡stream ¡in ¡stream ¡ciphers ¡ Challenges ¡for ¡NLFSRs ¡ • How ¡to ¡determine ¡the ¡period ¡of ¡sequences ¡from ¡NLFSRs ¡ • No ¡general ¡theory ¡exists ¡and ¡many ¡ad-­‑hoc ¡techniques ¡have ¡to ¡be ¡ invented ¡for ¡these ¡problems ¡ • Construc9ng ¡efficiently ¡large ¡classes ¡long ¡sequences ¡of ¡period ¡2 n ¡ (de ¡Bruijn ¡sequences)/Classify ¡de ¡Bruijn ¡sequences ¡ • Find ¡algebraic ¡methods ¡to ¡analyze ¡NLFSRs ¡ • Find ¡the ¡distribu9on ¡of ¡the ¡elements ¡in ¡sequences ¡generated ¡by ¡ an ¡NLFSR ¡

  7. Nonlinear Shift Register - Example • A nonlinear recursion in n-variables can be described using its truth table (Example n=3) s 0 s 1 s 2 f(s 0 s 1 s 2 ) S 1 ¡ ¡S 0 ¡ S 2 ¡ S 2 ¡ 0 0 0 0 0 0 1 0 • 0 1 0 0 . 0 1 1 1 1 0 0 1 f(s 0 ,s 1 ,s 2 ) = s 0 +s 1 s 2 1 0 1 1 1 1 0 1 ( s t+2 = s t + s t+1 s t+2 ) 1 1 1 0 • The number of Boolean functions in n-variables are 2 2n • The number of linear Boolean functions are 2 n

  8. Example – de Bruijn Sequence • Let f(s 0 ,s 1 ,s 2 ) = 1+s 0 +s 1 +s 1 s 2 110 111 101 010 011 100 001 000 • This ¡gives ¡a ¡maximal ¡sequence ¡of ¡length ¡2 n ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡… ¡11010001 ¡… ¡ ¡ ¡ ¡ ¡ ¡and ¡is ¡called ¡a ¡de ¡Bruijn ¡sequence ¡ • Number ¡of ¡de ¡Bruijn ¡sequences ¡of ¡period ¡2 n ¡are ¡2 2n-­‑1 ¡ ¡-­‑n ¡

  9. Example – Singular f ¡ ¡ • Let ¡f(s 0 ,s 1 ,s 2 ) ¡= ¡1+s 0 +s 1 +s 2 +s 0 s 1 +s 0 s 2 +s 1 s 2 ¡ ¡ 001 101 010 000 111 100 110 011 • Contains ¡ “ branch ¡point ” and ¡such ¡an ¡f ¡is ¡called ¡singular ¡ • f ¡is ¡nonsingular ¡if ¡and ¡only ¡if ¡f ¡= ¡s 0 ¡ + ¡g(s 1 ,…,s n-­‑1 ) ¡ • Then ¡(s 0 , ¡s 1 , ¡…. ¡, ¡s n-­‑1 ) → (s 1 , ¡s 2 , ¡…. ¡, ¡s n-­‑1 , ¡f(s 1 ,s 2 ,….,s n-­‑1 )) ¡is ¡a ¡ permuta9on ¡of ¡B n ¡

  10. De ¡Bruijn ¡Graph ¡ • Directed ¡graph ¡ • 2 n ¡nodes ¡(states) ¡ ¡↔ ¡ ¡(s 0 ,s 1 ,...,s n-­‑1 ) ¡ • Each ¡state ¡has ¡two ¡successors ¡ ¡ ( α 1 α 2 ··· α n-1 0) ( α 0 α 1 ··· α n-1 ) ( α 1 α 2 ··· α n-1 1) • Each ¡state ¡has ¡two ¡predecessors ¡ (0 α 1 α 2 ··· α n-1 ) ( α 1 α 2 ··· α n-1 0) ( α 1 α 2 ··· α n-1 1) (1 α 1 α 2 ··· α n-1 )

  11. De ¡Bruijn ¡Graphs ¡(B 2 ¡and ¡B 3 ) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡B 2 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡B 3 ¡ 000 0 0 001 100 0 1 1 0 010 101 1 1 011 110 111

  12. De ¡Bruijn ¡graph ¡B 4 ¡ 0000 ¡ 0001 ¡ 1000 ¡ 0010 ¡ 0100 ¡ 1001 ¡ 0011 ¡ 0101 ¡ 1010 ¡ 1100 ¡ 0110 ¡ 1011 ¡ 1101 ¡ 1110 ¡ 0111 ¡ 1111 ¡

  13. Pure ¡Cycling ¡Register ¡(PCR n ) ¡ • Let ¡f(s 0 ,s 1 ,...,s n-­‑1 ) ¡= ¡s 0 ¡ ¡i.e., ¡g=0 ¡ (since ¡f=s 0 +g(s 1 ,...,s n )) ¡ – Weight ¡of ¡truth ¡table ¡of ¡g ¡is ¡0 ¡ – Cycle ¡structure ¡(PCR n ) ¡ ¡ ¡ ¡ ¡ ¡n=3 ¡ ¡ ¡ ¡(0), ¡(1), ¡(001), ¡ ¡(011) ¡ ¡ ¡ ¡ ¡n=4 ¡ ¡ ¡ ¡(0), ¡(1), ¡ ¡ ¡(01), ¡(0001), ¡(0011), ¡(0111) ¡ • Number ¡of ¡cycles ¡of ¡B n ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ 1 = ∑ ϕ n / d Z ( n ) ( d ) 2 ( even number ) = n d | n

  14. Pure ¡Cycling ¡Register ¡(PCR 3 ) ¡: ¡(f ¡= ¡s 0 ) ¡ • Decomposi9on ¡of ¡B 3 ¡for ¡Boolean ¡func9on ¡f=s 0 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ (0) 000 (001) 001 100 010 f = s 0 101 (101) 011 110 (1) 111 Number ¡of ¡cycles ¡ ¡ ¡ ¡ ¡ ¡ ¡Z(3) ¡= ¡4 ¡

  15. Pure ¡Cycling ¡Register ¡(PCR 4 ) ¡ (0) ¡ 0000 ¡ 0001 ¡ 1000 ¡ (0001) ¡ 0010 ¡ 0100 ¡ 1001 ¡ (1001) ¡ (01) ¡ 0011 ¡ 0101 ¡ 1010 ¡ 1100 ¡ 0110 ¡ 1011 ¡ 1101 ¡ (1011) ¡ 1110 ¡ 0111 ¡ 1111 ¡ ¡ ¡ ¡ ¡(1) ¡

  16. Golomb’s ¡Conjecture ¡ Golomb’s ¡conjecture ¡(1967) ¡ The ¡maximum ¡number ¡of ¡cycles ¡obtained ¡in ¡any ¡decomposi9on ¡of ¡ the ¡de ¡Bruijn ¡graph ¡B n ¡(for ¡all ¡nonlinear ¡func9ons ¡f) ¡is ¡Z(n). ¡This ¡ occurs ¡for ¡the ¡PCR n ¡when ¡g=0 ¡(but ¡also ¡in ¡many ¡other ¡cases). ¡ ¡ History ¡(approx.) ¡ S. ¡Golomb ¡n=5 ¡/ ¡H. ¡Fredricksen ¡n=6, ¡7 ¡/ ¡A. ¡Lempel ¡ ¡n=8, ¡9, ¡10 ¡/ ¡J. ¡Mykkeltveit ¡ • and ¡Fredriksen ¡n=11,12 ¡.. ¡ Proved ¡by ¡J. ¡Mykkeltveit ¡(1972), ¡for ¡all ¡n ¡(one ¡year ¡of ¡work ¡to ¡color ¡B n ) ¡ ¡ • ¡ Main ¡idea ¡ ¡ Select ¡one ¡node ¡from ¡each ¡cycle ¡in ¡PCR n ¡(i.e, ¡Z(n) ¡nodes) ¡such ¡that: ¡ any ¡cycle ¡in ¡B n ¡ contains ¡at ¡least ¡one ¡of ¡these ¡nodes. ¡ ¡

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