MATH 470 Lecture 1
« previous | Tuesday, January 15, 2013 | next »
MATH 470
J. Maurice Rojas
MILN 206
rojas@math.tamu.edu
Homework 1 is online.
Critical Things
Grades
- 10% HW (some from in the book)
- 20% Quizzes
- 35% Midterm
- 35% Final (May 3 15:00—17:00)
There will be some number theory
Textbook: Ch. 1–3, parts of 6, 7, 9, 16
Groups:
- Name
- Email picture of me
Cryptology
κρυπτο(acute) = hidden or secret λογι(acute);α
Broadest sense: Protecting information from
- adversaries
- corruption
- noise
Other etymology (main concerns of course)
- Cryptography = making codes
- Cryptonalysis = breaking codes
Caesar Cipher
ca. 100–44 BC (Julius Caesar)
During this time, a code like the following was used:
Define [1]
Let each number correspond to a letter (A=0, B=1, etc.) and put it through the function:
- HELLO → (7,4,11,11,13) → (10,7,14,14,16) → KHNNP
To decode, invert the function by subtracting 3
This is called a Caesar cipher, where the key is 3
- take plain text (no punctuation or spaces)
- convert to a vector in
- Add a key mod 26 to each element:
- Convert back to letters
Modern View
"The core of cryptography is building and applying one-way functions."
Function should be easy to evaluate, but very hard to invert.
Example: Sound file
- Numbers between -16,383 and 16,384 represent amplitude
- Work in
- Caesar cipher does not hide music at all
- More sophisticated examples do very well.
Moral: The best encryption is (provably) a one-time random pad
- BUT on a computer, random is anything but...
Decoding vs. Breaking
In decoding, you know what you're doing. In breaking, you don't know the exact means of deciphering, but "hack" it
Decoding a Caesar cipher requires the recipient ("Bob") to know about the sender's ("Alice") key .
But how would an adversary ("Eve") break a "Caesar" cipher?
- Frequency analysis [2]: The most commonly used letter is probably a masked version of 'E'
- Brute Force: just try
Vigenere Cipher
Giovan Battista Bellaso (1553)
- Describes what would later and incorrectly be called a "Vigerere Cipher"
Use multiple Caesar ciphers at once:
- Take plain text (FOURSCOREANDSEVENYEARSAGO)
- Convert to vector
- Key is now a vector
- Cipher text becomes
Brute force is now more difficult since there are
Breaking the Vigenere and Beyond
- Charles Babbage (ca. 1853–1856) finds ways to break Vigenere
- Confederates (ca. 1861–1865) use Vigenere
- Kasiski (1863) publishes volume showing how to break vigenere
- Scientific American (1917) says "Vigenere is impossible to break"
- Clifford Cocks (1973) at GCHQ [3] discovers "RSA"
- Rivest Shamir Adleman (1977) "invent" RSA (named after them) [4]
Number Theory
"To speak of cryptography well, we need to know some number theory" because it is the language of modern cryptography
What about multiplying instead of adding? (e.g. use
- HELLO → (7,4,11,11,13) → (21,12,7,7,13) → VMHHO
Now what is ?
- Quick answer: Just multiply by 9 mod 26. That is, the unique solution to x in is
We say that [5]
In general: , where is the "floor of ", or the greatest integer
Example: since and
How do you invert mod ? (e.g. )
- Solve
- , so
- To solve, find with
- Extended Euclidean algorithm makes this easy
Extended Euclidean Algorithm
Standard wikipedia:Euclidean Algorithm is a way to compute GCD
For example: What is GCD(3,26)?
- GCD is 1
The Extended Euclidean Algorithm involves the following:
becomes (put identity matrix on top)
Repeat division steps on the entire matrix:
This means that
From this, we can find that
Footnotes
- ↑ is the set of integers, and is "Z mod 26 Z"
- ↑ The letters in English occur with discernible frequency (E is most common, followed by S, T, A)
- ↑ GCHQ is British equivalent to CIA
- ↑ What's inside is often known before it becomes public on the outside
- ↑ "congruence mod " is true iff their difference is divisible by