เหตุใดจึงมีการสร้างคีย์ที่แตกต่างกันสำหรับตัวเริ่มต้นและตัวตอบกลับสำหรับการเข้ารหัส
อัลกอริทึมการเข้ารหัสบางตัว (เช่น GCM และ ChaCha/Poly1305) จะไม่ปลอดภัยหากตัวเข้ารหัสหลายตัวสามารถใช้คีย์เดียวกันได้ สิ่งนี้สามารถจัดการได้ (ในตัวอย่างข้างต้น โดยตรวจสอบให้แน่ใจว่าทั้งสองฝ่ายใช้ nonces ที่แตกต่างกัน เช่น ผู้ริเริ่มใช้ nonces คู่เสมอ และผู้ตอบกลับใช้ nonces คี่เสมอ) อย่างไรก็ตาม จำเป็นต้องใช้วิธีอื่นสำหรับอัลกอริทึมการเข้ารหัสดังกล่าวทุกวิธี ง่ายกว่ามากและพิสูจน์ให้โง่กว่ามากเพียงแค่มีกุญแจแยกต่างหากสำหรับทิศทางที่แยกจากกัน
การใช้คีย์ต่างๆ ที่ได้รับจาก SKEYSEED ใน IKE อย่างชัดเจนคืออะไร
SKd - คีย์นั้นใช้เมื่อได้รับ "SA ลูก" นั่นคือการเชื่อมโยงความปลอดภัยที่สร้างขึ้นจากสิ่งนี้ สิ่งเหล่านี้สามารถเป็นได้ทั้ง IKE SA และ IPsec SA
SKe - เป็นคีย์ที่ใช้ในการเข้ารหัสข้อความ IKE
SKa - คีย์เหล่านี้ใช้เพื่อเพิ่มการป้องกันความสมบูรณ์ให้กับข้อความ IKE (สมมติว่ามีการเจรจาการแปลงความสมบูรณ์อย่างชัดเจน เช่น HMAC หรือ CMAC หากใช้โหมดรวม เช่น GCM จะไม่ใช้และมีความยาวเป็นศูนย์) .
SKp - สิ่งเหล่านี้ใช้เป็นส่วนหนึ่งของสูตรที่ใช้ในการคำนวณ/ตรวจสอบเพย์โหลด AUTH ซึ่งมีจุดประสงค์เพื่อตรวจสอบตัวตนของอีกฝ่ายหนึ่ง (ตรงกันข้ามกับคีย์ SKa ซึ่งมุ่งเป้าไปที่การยืนยันว่าข้อความที่ส่งมาจากอีกฝ่าย ด้านข้างคือข้อความที่ได้รับ)