ที่ การแลกเปลี่ยนคีย์ Diffie-Hellman เป็นการเข้ารหัสคีย์สาธารณะตัวแรกที่พัฒนาโดย Whitfield Diffie และ Martin Hellman ในปี 1976 เป็นอัลกอริธึมการแลกเปลี่ยนคีย์ที่ช่วยให้ทั้งสองฝ่ายสามารถสร้างคีย์ลับที่ใช้ร่วมกันผ่านช่องทางการสื่อสารที่ไม่ปลอดภัย โดยพื้นฐานแล้ว เนื้อหาของความลับใดๆ จะปลอดภัยตราบใดที่คีย์ส่วนตัวยังคงไม่เปิดเผยตัวตน
มันเป็นแนวคิดที่ก้าวล้ำสำหรับการเข้ารหัส เพราะถึงแม้ผู้ดักฟังจะดักจับกุญแจสาธารณะ พวกเขาก็ไม่สามารถสืบมาความลับได้อย่างง่ายดายโดยไม่รู้จักความลับส่วนตัว ความยากของมันเกิดจากปัญหาลอการิทึมแบบไม่ต่อเนื่องที่ปกป้องคีย์ส่วนตัว ซึ่งต้องใช้ทรัพยากรมากในการแก้ไข
กระบวนการในการตั้งค่าและใช้การแลกเปลี่ยนคีย์ Diffie-Hellman เริ่มต้นโดยทั้งสองฝ่ายตกลงกันเรื่องตัวเลขสองตัว: ไพรม์ขนาดใหญ่และโมดูโลรากดั้งเดิม จากนั้นแต่ละฝ่ายจะเลือกคีย์ส่วนตัวที่เป็นความลับ แต่ละฝ่ายจะคำนวณคีย์สาธารณะและแบ่งปันให้กับอีกฝ่ายโดยใช้จำนวนเฉพาะที่ตกลงร่วมกันและรูทดั้งเดิม แต่ละฝ่ายจะรวมคีย์ส่วนตัวของตนเข้ากับคีย์สาธารณะของอีกฝ่ายเพื่อคำนวณคีย์ลับที่ใช้ร่วมกัน
คำอธิบายอย่างง่ายของการแลกเปลี่ยนคีย์ Diffie-Hellman
เพื่อให้คำอธิบายนี้ง่ายขึ้น เราใช้บุคคลสองคน ได้แก่ เชอร์รี่และคาร์ล และระบายสีแทนตัวเลข
ในการเริ่มต้น เชอร์รี่และคาร์ลตัดสินใจอย่างเปิดเผยเกี่ยวกับสีเริ่มต้นของสีเหลือง แต่ละคนเลือกสีส่วนตัวพร้อมกัน: สีแดงสำหรับเชอร์รี่และสีฟ้าสำหรับคาร์ล ขั้นตอนสำคัญคือการที่ Sherry และ Carl ผสมสีลับของตนกับสีที่ตกลงร่วมกัน ส่งผลให้เกิดการผสมกันเป็นสีส้มแทนและสีฟ้าอ่อนตามลำดับ จากนั้นพวกเขาก็สลับสีผสมเหล่านี้อย่างเปิดเผย สุดท้าย แต่ละสีจะผสมสีที่ได้รับจากคู่ของตนด้วยสีส่วนตัว ทำให้ได้สีที่ผสมกัน (ในกรณีนี้คือสีน้ำตาลเหลือง) ซึ่งสะท้อนการผสมผสานสีขั้นสุดท้ายของคู่ของตน
หากความลับถูกดักจับ จะรู้เพียงสีทั่วไป (สีเหลือง) และสีผสมแรก (สีส้ม-แทนและสีฟ้าอ่อน) เท่านั้น แต่สีลับ (สีเหลือง-น้ำตาล) คงจะทราบได้ยาก
เข้าสู่การแลกเปลี่ยนในชีวิตจริงโดยใช้ตัวเลขแทนการใช้สี การกำหนดนี้มีราคาแพงในการคำนวณ (ต้องใช้พลังในการคำนวณมาก) โดยพื้นฐานแล้ว เป็นไปไม่ได้เลยที่จะคำนวณหมายเลขส่วนตัวในเวลาที่เหมาะสม แม้แต่ในซูเปอร์คอมพิวเตอร์ในปัจจุบันก็ตาม
มีความกังวลว่าคอมพิวเตอร์ควอนตัมในอนาคตสามารถคำนวณได้เร็วมากจนทำลายการเข้ารหัสนี้ อย่างไรก็ตาม จนกว่าจะถึงเวลานั้น การเข้ารหัสนี้จะยังคงปลอดภัยเนื่องจากต้องใช้เวลานานในการถอดรหัส
การเข้ารหัส คีย์ การมิเรอร์ เงื่อนไขความปลอดภัย