RSA ในความปลอดภัยเครือข่ายคืออะไร?
อัลกอริทึมการเข้ารหัสแบบ Public Key Cryptography ที่ใช้กันทั่วโลก ชื่อมาจากผู้สร้าง 3 คน: Ron Rivest, Adi Shamir, Leonard Adleman (พัฒนาในปี 1977)
RSA Algorithm อธิบายพร้อมตัวอย่าง
Public Key Encryption แบบ Asymmetric พัฒนาที่ MIT Plaintext และ Ciphertext เป็นจำนวนเต็มระหว่าง 0 ถึง n-1 (n เดียวกัน)
RSA Algorithm ใช้ทำอะไร?
เข้ารหัสข้อมูลสำคัญที่ส่งผ่านอินเทอร์เน็ตที่ไม่ปลอดภัย ใช้คู่กุญแจ (Key Pair): Public Key (เผยต่อสาธารณะ) และ Private Key (เก็บไว้ลับ) เรียกว่า Public Key Cryptography
ทำไม RSA จึงปลอดภัย?
ความยากในการแยกตัวประกอบ (Factorization) ของจำนวนเต็มขนาดใหญ่ (Large Integers) ที่เป็นผลคูณของเฉพาะสองตัว (Prime Numbers) คอมพิวเตอร์ยุคนี้ยังแยกตัวประกอบเลขใหญ่ได้ยาก
RSA ใช้สำหรับ Confidentiality และ Authentication ได้ไหม?
ได้ RSA ใช้ทั้งการเข้ารหัส (Confidentiality) และลายเซ็นดิจิทัล (Authentication) Browser, Email, VPN ใช้กันทั่วไป
RSA ให้ความปลอดภัยข้อมูลอย่างไร?
ความยากในการคูณเฉพาะสองตัวใหญ่ -> ได้จำนวนเต็มขนาดใหญ่ (Modulus n) สร้าง Key Pair: Public (e, n) และ Private (d, n) Key Length = ความยาวบิต (เช่น 2048-bit, 4096-bit)
RSA ใช้ที่ไหน?
- TLS/SSL (HTTPS)
- PGP/GPG Email Encryption
- VPN (OpenVPN, IPsec)
- Web Browsers, Email Clients, Chat Apps
- SSH Keys
RSA ให้ความปลอดภัยอย่างไร?
Public Key ประกอบด้วยเฉพาะสองตัวใหญ่สุ่ม (p, q) ความปลอดภัยอาศัย: การแยกตัวประกอบ n = p x q ยากมาก (One-way Function)
RSA ย่อมาจากอะไรในความเสี่ยง (Risk)?
Risk Self Assessment (การประเมินความเสี่ยงด้วยตนเอง) - เรื่องการเงิน
RSA vs AES: อันไหนปลอดภัยกว่า?
AES = Symmetric Encryption (เร็ว, ใช้เข้ารหัสข้อมูลจริง) RSA = Asymmetric (ช้า, ใช้แลกเปลี่ยน Key) SSL/TLS ใช้ RSA แลก Key แล้วค่อยใช้ AES เข้ารหัสข้อมูล (Hybrid Cryptosystem)
ตัวอย่าง RSA (ง่ายๆ)
Bob อยากให้ Alice ส่งเพชรคุณค่า แต่ถ้าส่งโดยไม่ป้องกัน จะโดนขโมย -> ใช้ Public Key ของ Bob เข้ารหัส -> แค่ Bob ที่มี Private Key ถอดรหัสได้
ขั้นตอนของ RSA Algorithm
- Key Generation: สร้าง p, q (Prime) -> n = p*q -> φ(n) -> เลือก e -> หา d (mod inverse)
- Key Distribution: แจก Public Key (e, n)
- Encryption: C = M^e mod n
- Decryption: M = C^d mod n
ความลับ: หา d จาก e, n ยากมาก (Discrete Log Problem)
ขั้นตอน Key Generation พร้อมตัวอย่าง
- เลือก p=61, q=53 (Prime)
- n = p*q = 3233
- φ(n) = (p-1)(q-1) = 3120
- เลือก e=17 (gcd(e, φ(n))=1)
- หา d = e^-1 mod φ(n) = 2753
- Public Key: (e=17, n=3233) Private Key: (d=2753, n=3233)
ทำไมจึงใช้ RSA?
Cryptosystem ที่ใช้ Public Key Cryptography เข้ารหัสข้อมูลละเอียดอ่อนส่งผ่านเครือข่ายที่ไม่ปลอดภัย
RSA ใช้กันกว้างขวางหรือไม่?
ใช่ มาตรฐานอุตสาหกรรม: TLS, PGP, SSH, VPN, S/MIME, DNSSEC
ทำให้ RSA Encryption ปลอดภัยขึ้นอย่างไร?
ใช้ Padding Scheme: OAEP (Optimal Asymmetric Encryption Padding) เพิ่ม Randomness ก่อนเข้ารหัส ป้องกัน Chosen Ciphertext Attacks
RSA แตกได้หรือไม่ (Is RSA Crackable)?
ยังแตกไม่ได้ (สำหรับ Key Size 2048-bit+) แต่มี Vulnerabilities: Side-channel Attacks, Bad Random Number Generators, Small Exponent Attacks ต้อง Implementation ที่ถูกต้อง
RSA ปลอดภัยสำหรับส่งข้อความเข้ารหัสหรือไม่?
ปลอดภัย 99.8% หากใช้ถูกต้อง (Key Size 2048-bit+, OAEP Padding, Secure RNG) ไม่ปลอดภัยหาก: Key เล็ก, ไม่ Padding, ใช้ซ้ำ Key, RNG อ่อนแอ