Shared Secrets Keeping secrets on the web
Encryption Goal : hidden in plain sight
Encryption Goal : hidden in plain sight – Internet is plain sight
Encryption Goal : hidden in plain sight – Internet is plain sight – Encryption is only form of privacy
Caesar Cipher Shift each letter in a message a certain amount:
Caesar Cipher Right shift of three: – Key: is +3 Encrypted message:
Breaking a Cipher Guess and check
XOR XOR with 0 = don't change XOR with 1 = change In0In1Out In0In1Out
Binary Keys 1 or 0 with XOR = 1 bit encryption – 1 or 0 is key… 2 possibilities
Binary Keys 1 or 0 with XOR = 1 bit encryption – 1 or 0 is key… 2 possibilities For stronger key, need more bits: – 32 bit key = 4 billion possibilities – Real encryption uses 128/256/512/1025/2048 bits!
Binary Keys XOR key with message to produce encrypted message W i k i ??? Ä ý w
XOR key with encrypted message to reproduce message ??? Ä ý w W i k i More info: Binary Keys
Shared Keys Need to share a key – How do we do it if someone is always listening?
Secret Colors Deriving a secret color:
Secret Colors Deriving a secret color: – Pick a public color
Secret Colors Deriving a secret color: – Pick private colors
Secret Colors Deriving a secret color: – Make public mixtures with private colors
Secret Colors Deriving a secret color: – Mix other person's public with your private
Secret Colors Eve can't reproduce color – too much red
Attempting with Math Not so secret…
Attempting with Math Not so secret…
One Way Function One way function: – Can not be reversed Multiplication two way x ∙ 7 = 42
Clock Math
Modulo Modulo ( mod or % ) – Divide and keep remainder 14 mod 12 = 2 8 mod 12 = 8 19 mod 12 = 7 24 mod 12 = 0 26 mod 12 = 2
Calculating Mods Wolfram Alpha
One Way Math Clock Math/Modulo is One Way X mod 12 = 2 …what is X???
One Way Math Clock Math/Modulo is One Way X mod 12 = 2 …what is X??? 14 mod 12 = 2 26 mod 12 = 2 38 mod 12 = 2 …
Hard Math Some problems are relatively slow to solve: – Factoring numbers – Taking logarithms
Hard Math Some problems are relatively slow to solve: – Factoring numbers – Taking logarithms Slow is good for encryption – Avoid brute force attacks
Diffie Hellman Derive a secret number
Diffie Hellman Derive a secret number – Pick two public numbers – clock size and base Clock size: 11 Base : 2
Powers of 2 Mod 11 Powers of 2 mod 11: Mod 11 means 10 possible values then cycle… Power of 2ValueMod
Powers of 2 Mod 4 Powers of 2 mod 4: Prime clock sizes work better… Power of 2ValueMod
Diffie Hellman Derive a secret number – Pick two public numbers – clock size and base Clock size: 11 Base : 2
Diffie Hellman Derive a secret number – Pick private numbers
Diffie Hellman Derive a secret number – Calculate public-private numbers…
Public Private Number
Diffie Hellman
Derive a secret number – Use other ppn as base to calculate shared secret
Shared Secret Number
Diffie Hellman
Sue's dilemma Sue knows: 2 x mod 11 = 6 2 y mod 11 = 3 6 y mod 11 = ssn 3 x mod 11 = ssn Where y = your private number And x = Arnolds
Sue's dilemma Sue knows: 2 x mod 11 = 6 2 y mod 11 = 3 6 y mod 11 = ssn 3 x mod 11 = ssn Mod is one way – must guess and check
Sue's dilemma Sue knows: 2 x mod 11 = 6 2 y mod 11 = 3 6 y mod 11 = ssn 3 x mod 11 = ssn Solving for x or y involves logarithms – very slow for computers
What is our secret? Calculate our shared secret: clock size = 13, base = 4 Then go to: faculty.chemeketa.edu/ascholer/SSN.html Your Private Number: 8 My Private Number: ?? Your PPN: 4 8 mod 13 = 3 My PPN: 4 ?? mod 13 = 10 SSN = (myPPN) (your private number) mod (clock size)