ข้ามไปเนื้อหา

การเข้ารหัสแบบกุญแจอสมมาตร

จากวิกิพีเดีย สารานุกรมเสรี
(เปลี่ยนทางจาก กุญแจสาธารณะ)
จำนวนที่คาดเดาไม่ได้ (มักจะใหญ่และถูกสุ่ม) ถูกเลือกเพื่อใช้สร้างคู่กุญแจที่ใช้ในการเข้ารหัสแบบกุญแจอสมมาตรได้
ในการเข้ารหัสแบบกุญแจอสมมาตร ใครๆ ก็สามารถใช้กุญแจสาธารณะเพื่อเข้ารหัสข้อมูลได้ แต่เฉพาะผู้ที่ถือครองกุญแจส่วนตัว ที่เข้าคู่กันเท่านั้น ที่จะถอดรหัสข้อความได้ ความปลอดภัยของการเข้ารหัสแบบกุญแจอสมมาตรจะเกิดขึ้นได้หากกุญแจส่วนตัวถูกเก็บเป็นความลับ
ในกลไกการแลกเปลี่ยนกุญแจดิฟพี่-เฮลล์แมน (Diffie–Hellman key exchange) แต่ละฝ่ายจะสร้างคู่กุญแจสาธารณะ/ส่วนตัวและแจกจ่ายเฉพาะกุญแจสาธารณะ หลังจากได้รับกุญแจสาธารณะของอีกผ่าย จะสามารถคำนวณหาข้อความลับได้โดยไม่ต้องเชื่อมต่อกัน ข้อความลับนี้สามารถเป็นกุญแจของการเข้ารหัสแบบกุญแจอสมมาตรได้ ซึ่งเร็วกว่าการเข้ารหัสแบบกุญแจอสมมาตรมาก
ในตัวอย่างนี้ ข้อความนั้นได้ถูกลงลายเซ็นดิจิตัลด้วยกุญแจส่วนตัวของอลิส แต่ตัวข้อความของอลิสเองนั้นไม่ถูกเข้ารหัส 1) อลิสลงลายเซ็นข้อความด้วยกุญแจส่วนตัวของเธอ 2) บ็อบสามารถยืนยันได้ว่าข้อความไม่ถูกดัดแปลง และอลิสเป็นผู้เขียน ได้โดยการใช้กุญแจสาธารณะ ของ อลิส

การเข้ารหัสแบบกุญแจอสมมาตร (อังกฤษ: asymmetric cryptography) หรือ การเข้ารหัสกุญแจสาธารณะ (อังกฤษ: Public-key cryptography) คือระบบการเข้ารหัสโดยใช้กุญแจที่เข้าคู่กัน กุญแจแต่ละคู่จะประกอบด้วย กุญแจสาธารณะ (อังกฤษ: public key) และ กุญแจส่วนตัว (อังกฤษ: private key) แม่แบบ:Ref RFC[1] คู่ของกุญแจนั้นจะสร้างขึ้นโดยใช้อัลกอริทึมเข้ารหัสที่มีพื้นฐานมาจากปัญหาทางคณิตศาสตร์ที่เรียกว่าฟังก์ชันวันเวย์ (อังกฤษ: one-way function) ความปลอดภัยของการเข้ารหัสแบบกุญแจอสมมาตรจะเกิดขึ้นได้หากกุญแจส่วนตัวถูกเก็บเป็นความลับ ส่วนกุญแจสาธารณะนั้นสามารถแจกจ่ายออกไปได้โดยที่ไม่ส่งผลเสียต่อความปลอดภัย[2]

ใช้เข้ารหัสจะแตกต่างกับกุญแจที่ใช้ถอดรหัส นั่นคือการเข้ารหัสและการถอดรหัสจำเป็นต้องใช้กุญแจเป็นคู่ โดยที่บุคคลที่จะเข้ารหัสข้อมูลจะได้รับ กุญแจสาธารณะ (public key) ในการเข้ารหัส ส่วนบุคคลที่สามารถถอดรหัสได้คือบุคคลที่มี กุญแจส่วนตัว (private key) เท่านั้น กล่าวคือใคร ๆ ก็สามารถเข้ารหัสได้เพราะทุกคนมีกุญแจสาธารณะ แต่จะมีคนเดียวเท่านั้นที่ถอดรหัสได้คือคนที่มีกุญแจส่วนตัวซึ่งต้องถูกเก็บไว้อย่างรัดกุม การเข้ารหัสแบบกุญแจอสมมาตร นั้นเป็นหลักการพื้นฐานในกลไกเข้ารหัสในปัจจุบัน รวมไปถึงแอปพลิเคชันและ[[ โพรโทคอล]]ต่างๆ เพื่อให้สามารถเก็บความลับได้ ยืนยันความถูกต้องได้ และไม่สามารถตีกลับการเป็นผู้เขียน (อังกฤษ: non-repudiability)ได้ มาตรฐานอินเตอร์เน็ตจำนวนมากจึงพึ่งพิงการเข้ารหัสเช่น แบบกุญแจอสมมาตร เช่น TLS, SSH, S/MIME และ PGP อัลกอริทึมการเข้ารหัสแบบกุญแจอสมมาตรนั้น บางตัวใช้ในการกระจายกุญแจ (อังกฤษ: key distribution) บางตัวใช้ในการลงลายเซ็นดิจิตัล (อังกฤษ: digital signatures) บางตัวก็ทำได้ทั้งสองอย่างเช่นอาร์เอสเอ (อังกฤษ: RSA) เมื่อเทียบกับ การเข้ารหัสแบบกุญแจสมมาตรแล้ว การเข้ารหัสแบบกุญแจอสมมาตรนั้นทำงานได้ช้ากว่า และช้าเกินไปสำหรับวัตถุประสงค์หลายประการ [3] ระบบเข้ารหัสปัจจุบันจึงนิยมที่จะใช้ทั้งการเข้ารหัสแบบกุญแจสมมาตรและการเข้ารหัสแบบกุญแจอสมมาตร ส่วนใหญ่จะอยู่ในรูปแบบที่ใช้การเข้ารหัสแบบกุญแจอสมมาตรในการแลกเปลี่ยนกุญแจลับอย่างปลอดภัย แล้วจึงใช้กุญแจลับนั้นในการเข้ารหัสแบบกุญแจสมมาตรต่อไป

อ้างอิง

[แก้]
  1. Bernstein, Daniel J.; Lange, Tanja (2017-09-14). "Post-quantum cryptography". Nature (ภาษาอังกฤษ). 549 (7671): 188–194. Bibcode:2017Natur.549..188B. doi:10.1038/nature23461. ISSN 0028-0836. PMID 28905891. S2CID 4446249.
  2. Stallings, William (3 May 1990). Cryptography and Network Security: Principles and Practice (ภาษาอังกฤษ). Prentice Hall. p. 165. ISBN 9780138690175.
  3. Alvarez, Rafael; Caballero-Gil, Cándido; Santonja, Juan; Zamora, Antonio (2017-06-27). "Algorithms for Lightweight Key Exchange". Sensors (ภาษาอังกฤษ). 17 (7): 1517. doi:10.3390/s17071517. ISSN 1424-8220. PMC 5551094. PMID 28654006.