Elementary Cryptography Topics
1. Congruence
Definition:
Two integers a and b are congruent modulo n if they leave the same remainder when divided by
n.
Mathematically:
a ≡ b (mod n) means n divides (a - b).
Properties:
• Reflexive: a ≡ a (mod n)
• Symmetric: If a ≡ b (mod n), then b ≡ a (mod n)
• Transitive: If a ≡ b (mod n) and b ≡ c (mod n), then a ≡ c (mod n)
Cryptographic Use:
• Modular arithmetic in RSA, AES, and other block ciphers
• Efficient encryption/decryption algorithms
2. System of Linear Congruences
Definition:
A set of congruences that must be satisfied by a common unknown variable.
Example:
x ≡ 1 (mod 2)
x ≡ 2 (mod 3)
x ≡ 3 (mod 5)
Solving Strategy:
• Use successive substitutions
• Or use Chinese Remainder Theorem (CRT) if moduli are pairwise coprime
Cryptographic Use:
• Shamir’s Secret Sharing
• Error correction systems
• Basis for multi-modulus cryptography
3. Chinese Remainder Theorem (CRT)
Statement:
If you have:
x ≡ a1 (mod m1)
x ≡ a2 (mod m2)
...
x ≡ ak (mod mk)
where m1, m2, ..., mk are pairwise coprime, then there exists a unique solution modulo M = m1
* m2 * ... * mk.
Algorithm:
1. Compute M = m1 * m2 * ... * mk
2. For each i, compute Mi = M / mi
3. Find the modular inverse yi such that (Mi * yi) ≡ 1 (mod mi)
4. Final solution:
x ≡ Σ (ai * Mi * yi) mod M
Cryptographic Use:
• Speeds up RSA decryption with smaller prime moduli
• Used in secret reconstruction schemes
4. Discrete Logarithm
Definition:
Given integers a, b, and a prime p, find integer x such that:
a^x ≡ b (mod p)
This x is called the discrete logarithm of b to the base a modulo p.
Example:
Find x such that 2^x ≡ 5 (mod 11)
2^1 = 2
2^2 = 4
2^3 = 8
2^4 = 16 ≡ 5 (mod 11)
So, x = 4
Cryptographic Use:
• Hardness of Discrete Logarithm Problem (DLP) ensures security for:
o Diffie–Hellman Key Exchange
o ElGamal Encryption
o Digital Signature Algorithm (DSA)