- RSA (Rivest-Shamir-Adleman)
RSA (Rivest-Shamir-Adleman) คือ อัลกอริทึมการเข้ารหัสข้อมูล ซึ่งเป็นการเข้ารหัสแบบกุญแจอสมมาตร (Public - Key Cryptography) ที่ถูกเผยแพร่ในปี 1977 โดย รอน ริเวสต์ ( Ron Rivest) , อาดี ชามีร์ ( Adi Shamir) และเล็น เอเดิลแมน ( Len Adleman) ซึ่ง RSA นั้นเป็นตัวย่อที่มาจากนามสกุลของทั้ง 3 (Rivest-Shamir-Adleman) การเข้ารหัสแบบ RSA ได้รับการจดสิทธิบัตรโดยสถาบัน MIT สหรัฐอเมริกาเมื่อปี 1983 และได้สิ้นสุดลงเมื่อปี 2000
อัลกอริทึมการเข้ารหัสแบบ RSA เป็นการเข้ารหัสแบบกุญแจอสมมาตร หรือกุญแจคู่ ประกอบด้วย กุญแจสาธารณะ (Public Key) และกุญแจส่วนตัว (Private Key) ซึ่งผู้ใช้ RSA จะสร้างและเผยแพร่กุญแจสาธารณะ โดยยึดตามหลักของ จำนวนเฉพาะ (Prime Numbers) ขนาดใหญ่ 2 ตัว พร้อมกับค่าเสริม (Auxiliary Value) ที่จะถูกเก็บเป็นความลับ ซึ่งบุคคลอื่น ๆ สามารถเข้ารหัสข้อมูลได้โดยใช้กุญแจสาธารณะ (Public Key) แต่ผู้ที่สามารถถอดรหัสได้ จะต้องเป็นผู้ที่รู้ค่าเสริม (Auxiliary Value) เท่านั้น
ความปลอดภัยของ RSA ขึ้นอยู่กับความยากในการแยกตัวประกอบ หรือ Prime Factorization ซึ่งเป็นวิธีการทางคณิตศาสตร์ ที่ค่าใดก็ตามเมื่อนำมาคูณกันแล้ว จะได้ผลลัพธ์เท่ากับจำนวนนั้น หรือจำนวนใดก็ตาม ล้วนมีค่าเท่ากับผลคูณของตัวประกอบของจำนวนนั้นทั้งหมด เช่น ตัวประกอบของ เลข 12 เท่ากับ 2x2x3 หรือตัวประกอบของ 24 เท่ากับ 2x2x2x3 เป็นต้น เพื่อหาจำนวนเฉพาะ (Prime Numbers) ขนาดใหญ่ 2 ตัว ที่ใช้ในการสร้างกุญแจสาธารณะ (Public Key)
RSA เป็นอัลกอริทึมที่ค่อนข้างช้า ด้วยเหตุนี้ จึงไม่นิยมใช้ในการเข้ารหัสข้อมูลผู้ใช้โดยตรง ซึ่งหลาย ๆ ครั้ง RSA ถูกใช้เพื่อส่งกุญแจที่ใช้ร่วมกันสำหรับการเข้ารหัสแบบกุญแจสมมาตร (Symmetric - key Algorithm) ซึ่งใช้สำหรับการเข้ารหัสและถอดรหัสจำนวนมาก
Reference
Outline
- RSA คืออะไร
- ประวัติความเป็นมาของ RSA
- กระบวนการทำงานของ RSA