Lesson 01: RSA
Rivest–Shamir–Adleman (1977) · Keygen · Encrypt/Decrypt · Extended Euclidean · Attacks
1. RSA Key Generator
Chọn hai số nguyên tố p, q từ danh sách — hệ thống tính n, φ(n), e, d tự động. Xem toàn bộ quá trình Extended Euclidean.
p = 11
q = 13
Extended Euclidean — tính d từng bước
2. Mã hóa & Giải mã
Nhập message m (0 < m < n). Xem c = m^e mod n và giải mã lại.
3. Fast Exponentiation (Square-and-Multiply)
Tính base^exp mod n bằng bình phương lặp — O(log exp) phép nhân thay vì O(exp).
4. Attack Demos
4a. Small Exponent Attack
Nếu e=3 và m nhỏ (m³ < n), thì c = m³ chính xác — không có phép mod. Recover m = ∛c đơn giản.
4b. Common Modulus Attack
Cùng n, hai exponent e₁, e₂ với gcd(e₁,e₂)=1, hai ciphertext c₁=m^e₁, c₂=m^e₂ → recover m dùng Extended Euclidean.