Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Project Juno: Draw passwords!

1,105 views

Published on

Simple project for "draw passwords, rather than typing a string". Used Life-Like Cellular Automata for hashing images.

Published in: Technology
  • Be the first to comment

Project Juno: Draw passwords!

  1. 1. Juno [u∶no∶] draw passwords 연세대학교 수학과 설진석
  2. 2. Abstract • alternative cryptographic hash function • image based • using Life-Like Cellular Automata • algorithm development
  3. 3. Preliminaries • Classical Mathematics • Automata Theory
  4. 4. Cryptographic Hash Function • given a function f: X → H, H = L(w{n}) • f is called cryptographic hash function if • • • Pa, b ∈ X (f(a)=f(b)) ≦ p -1 for ∀h ∈ H, “answering f (h)” is a NP-problem where • X : given set • p : desired probability • n : natural number
  5. 5. Cellular Automata • In n dimensional grid, given a • • T : transition rule • • S : set of states B : neighbor Each cell’s next state is determined by current state of the cell and neighbor applied by transition rule.
  6. 6. one-dimensional CA example • each row denotes step • each column denotes cell’s state history
  7. 7. Life-Like Cellular Automata • In two-dimensional grid • S : “alive” or “dead” • T : “survive”, “birth”, or “death” determined by number of “alive” cells in neighbor • B : Moore neighborhood (adjacent 8 cells)
  8. 8. LLCA example: Conway’s Game of Life • rule string B3/S23 • A cell survives if 2 or 3 neighbor is alive, and births if 2 neighbor is alive. Otherwise, it dies.
  9. 9. Object • drawing password, rather than inserting string • using LLCA as cryptographic hash function
  10. 10. Algorithm Raw Drawing Simplify Encode Hash via LLCA
  11. 11. Encoding 1 0 0 0 1 Original 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 Binary 8611d Result fixed sized image = fixed sized string 8 6 1 1 d Hex
  12. 12. LLCA as Hash? • LLCA is a function • • CA itself is a deterministic inverse LLCA is NP • checking answer is P • using “number of live neighbors”, so inverse can be calculated with non-deterministic turing machine
  13. 13. Limitations • sparse initial state generates sparse output • • requires minimum alive cells to be meaningful value infeasible to control or calculate collision probability p
  14. 14. Benefits and Applications • At least, it is valid cryptographic hash function • Calculation can be parallelized • Easy to control complexity • • • changing rule string terminating condition Can be used for signature authentication, or fingerprints
  15. 15. Implementation • Using coffee-script based LLCA library “Plasmid” • • http://nyamukoong.github.io/plasmid/ Result: https://theeluwin.kr/juno/

×