Title: Cryptographic Randomness
1Cryptographic Randomness
- Haile Eyob
- CS 240 Software Project
- May 13, 2003
2Cryptographic Randomness
- Cryptography
- Classic Cryptography
- Symmetric Cryptography
- Public-Key Cryptosystem
- Pseudorandom Numbers
- Rule 30 Randomness
- Conclusion
3What is Cyptography?
- Cryptography is science of hiding data
- Plaintext - Data that can be read
- Ciphertext - in unreadable text.
- Encryption C E(M)
- Decryption D(C) M.
4Caesar Cipher
Encryption C (M 3) MOD(26) SOFTWAREPROJECTCO
URSE VRIEWDUHSURMHFWFRXUVH Decryption M (C -
3) MOD(26) VRIEWDUHSURMHFWFRXUVH SOFTWAREPROJECT
COURSE
5Caesar Cipher cont.
- Relative Frequency of Letters in English Text 8
6Vigenère Cipher
- Polyalphabetic substitution cipher
- Suppresses the normal frequency data
- Example
- Plaintext SOFTWAREPROJECTCOURSE
- Key PRIVATEKEYPRIVATEKEYPRIV
- Cipher HFNOWTVOTPDAMXTVSEVQT
7Vigenère Cipher cont.
- The modern Vigenère tableau 8
8Rotor Machine
9Rotor Machines cont.
Rotor1 "KNYIHTCSQGFBWZPMAXULVOJRDE" Rotor2
"VDBFPLNMJISAZEXWOHYTUQGKRC" Rotor3
"OWTVSKYPJIFMLUAHRQECNDBZGX" Example Plaintext
SOFTWAREPROJECTCOURSE Cipher
JWZOYSGUANMRQWWNCIHNM
10Data Encryption Standard (DES)
- 64-bit text and 56 bit-key
- Secret key shared
- Key for encryption and decryption
- Three operations XOR, substitution, and
permutation.
11Data Encryption Standard cont
Simplified DES scheme 8
12Data Encryption Standard cont.
- Key Generation for Simplified DES (Schaeffer97
13Public Key Cryptography
- No shared key
- Pair of keys public and private key
- Public key for encryption
- Private key for decryption
- Difficulty of factoring
- RSA
- Choose primes, p and q
- n p ? q
- C ? Me mod n
- M ? Cd mod n
14Public Key Cryptography cont
Example p 2503 q 3011 n p q
7536533 f(n) (p 1)(q 1) 7531020 e
753103 d ? e-1 mod(f(n)) 2259307 M
373737 C ? Me mod n 6486063
15Pseudorandom Numbers
- Generated by software functions.
- Sequence is deterministic.
- Random numbers - No correlations
- Difficult to predict the next number
16Random Number Generation
- Physical sources - pulse detectors of ionizing
radiation events, gas discharge tubes,
radioactive source. - Hardware device keystrokes, hard disks
- Random numbers contain correlations.
- Provide fewer real bits of unpredictability
17Linear Congruential Generator (LCG)
- Linear recurrence             xn axn-1 b
(mod m) - RANDU
- m 231, a 65539, b 0, x0 1
- Better
- m 231 - 1, a 16807, b 0
- Period m 1
18Linear Congruential Generator - RANDU
19Linear Congruential Generator - RANDU
- Distribution of points obtained from RANDU
20Linear Congruential Generator (LCG)
- Fast and easy
- Partial output is needed to get a, b, m
- Seed recovered in polynomial time.
21Linear Feedback Shift Register (LFSR)
- LFSR generates binary bits
- Bits shifted right by one position
- Function - XOR of some bits
- Feedback put in leftmost cell
- Oututput LSB
22Linear Feedback Shift Register cont.
- Linear shift feedback register with 4 bit register
23Linear Feedback Shift Register cont.
- Maximum period 2n 1
- States represented by polynomial function.
- LFSRs are based on running rule 60 in registers
with a limited number of cells and with a certain
type of spiral boundary conditions.
24Linear Feedback Shift Register cont
- Example of LSFR with 4 bits
- Initial state 1010
- 1010 1001 1000 0111
- 1101 0100 1100 1011
- 0110 0010 1110 0101
- 0011 0001 1111 1010
- Sequence 0101100100011110
- Maximum period 24 1 15.
25Blum-Blum-Shub (BBS)
- Cryptographically strong generator
- p ? q ? 3 mod 4,
- n p?q.
- xi x2i-1 mod n.
- p ? q ? 3 mod 4,
- To determine xi is QR is intractable.
- Difficulty of factoring n
- Computation intensive
26Blum-Blum-Shub cont.
p 366571831 q 652367675 n
239139613109962925 x0 986960469269329 Bits
generated 1101101001110010001000100000100101101
110011010010
27Rule 30 Randomness
- Intrinsic randomness
- Physical processes
- Physical laws are deterministic
- LCG
- LSFR
- BBS
28Rule 30 Randomness cont.
- Pattern produced by rule 30
29Simple Encryption
- A simple encryption scheme 9.
30Repeated Encryption Sequence
- Repeated encryption key 9.
31Cellule Automata Encryption
- Encryption using rule 60 9.
32Evolution of Rule 60
- Evolution of rule 60 both downward and sideways
9.
33Cellule Automata Additive Property
- Rule 60 is additive
- Given some segment of the encrypting sequence,
find a row - Rule 30 is not additive
- Determine the color of a cell means enumerating
all initial conditions.
34Cellule Automata Encryption cont.
- Encryption using rule 30 9.
35Randomness using RULE 30 (Wolfram)
- One can find the form of a row in the cellular
automaton, if given some segment of the
encrypting sequence, corresponding to a
particular column. Rule 30 is not additive and to
determine the color of a cell from the colors of
its neighbor columns is the same as enumerating
all possible initial conditions.
36Evolution of Rule 30
- Evolution of rule 30 both downward and sideways
9.