Lecture 8
Computational number theory/arithmetic
We want to have a easy-to-use one-way functions for cryptography.
How to find quickly. are positive integers. We want to reduce
Example:
Find the binary representation of . e.g. express as sums of powers of 2.
x=39=bin(1,0,0,1,1,1)
Repeatedly square times.
The total multiplication steps is
looks like fast exponentiation right?
Goal: is a one-way function, for certain choice of (and assumptions)
A group (Nice day one for MODERN ALGEBRA)
A group is a set with, a binary operation . and ,
- such that
- such that
Example:
- with addition , with identity element . .
- A even simpler group is with addition.
- with multiplication (we can do division here! yeah...).
- If is prime, then
- If , then
- Identity is .
- Let , by Euclidean algorithm, , such that
- . Want to show . If , then some prime . so , which means or . In either case, or , which contradicts that
Euler's totient function
Example: , , ,
Euler's Theorem
For any ,
Consequence: ,
a^x\equiv a^{K \cdot \phi (N) +r}\equiv ( a^{\phi(n)} )^K \cdot a^r \mod N$So computing is polynomial in by reducing and
Corollary: Fermat's little theorem: