Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

PGP ใช้คีย์อะไรในการรักษาความปลอดภัยข้อมูล?


PGP สร้างการใช้คีย์สี่ประเภท รวมถึงคีย์สมมาตรของเซสชันครั้งเดียว คีย์สาธารณะ คีย์ส่วนตัว และคีย์สมมาตรแบบวลีรหัสผ่าน

  • การสร้างคีย์เซสชัน − แต่ละคีย์เซสชันเกี่ยวข้องกับข้อความเดียว และใช้สำหรับเป้าหมายของการเข้ารหัสและถอดรหัสข้อความนั้นเท่านั้น เตือนว่าการเข้ารหัส/ถอดรหัสข้อความเสร็จสิ้นด้วยอัลกอริธึมการเข้ารหัสแบบสมมาตร เมื่อพิจารณาว่าเป็นคีย์ 128 บิตที่จำเป็น หมายเลข 128 บิตแบบสุ่มจะถูกสร้างขึ้นโดยใช้ CAST-128

    อินพุตไปยังตัวสร้างตัวเลขสุ่มรวมถึงคีย์ 128 บิต (นี่คือตัวเลขสุ่มโดยใช้อินพุตการกดแป้นพิมพ์จากผู้ใช้) และบล็อก 64 บิตสองบล็อกที่ถือว่าเป็นข้อความธรรมดาที่จะเข้ารหัส โดยใช้โหมด CFB บล็อกข้อความเข้ารหัส 64 บิตสองตัวจะถูกสร้างขึ้นและต่อกันเพื่อสร้างคีย์เซสชัน 128 บิต อัลกอริทึมที่ใช้เป็นไปตามที่ระบุใน ANSI X12.17

  • ตัวระบุคีย์ − ใช้ได้กับคู่คีย์สาธารณะ/ส่วนตัวมากกว่าหนึ่งคู่ต่อผู้ใช้ แต่ละคนต้องการ ID บางชนิด รหัสคีย์ที่เกี่ยวข้องกับคีย์สาธารณะแต่ละรายการประกอบด้วย 64 บิตที่มีนัยสำคัญน้อยที่สุด นั่นคือรหัสคีย์ของคีย์สาธารณะ KUa คือ (KUa มอด 2 64 ). นี่เป็นความยาวที่เพียงพอซึ่งความน่าจะเป็นของรหัสคีย์ที่ซ้ำกันนั้นมีน้อยมาก

    นอกจากนี้ รหัสคีย์ยังใช้สำหรับลายเซ็นดิจิทัล PGP เนื่องจากผู้ส่งสามารถใช้คีย์ส่วนตัวจำนวนหนึ่งเพื่อเข้ารหัสไดเจสต์ข้อความ และผู้รับควรเข้าใจว่าคีย์ใดถูกใช้

  • พวงกุญแจ − รหัสคีย์มีความสำคัญต่อบริการของ PGP สามารถดูได้ว่ามีรหัสคีย์ 2 รหัสอยู่ในข้อความ PGP ใดๆ ที่สนับสนุนทั้งการรักษาความลับและการตรวจสอบสิทธิ์

คีย์เหล่านี้จำเป็นต้องจัดเก็บและจัดระเบียบอย่างเป็นระบบเพื่อการใช้งานที่มีประสิทธิภาพและประสิทธิผลโดยบางฝ่าย การออกแบบที่ใช้ใน PGP คือการจัดหาทีมโครงสร้างข้อมูลในแต่ละโหนด เพื่อบันทึกคู่คีย์สาธารณะ/ส่วนตัวที่เป็นของโหนดนั้น และอีกชุดหนึ่งเพื่อบันทึกคีย์สาธารณะของผู้ใช้รายอื่นที่รู้จักในโหนดนี้

สามารถเห็นวงแหวนเป็นตารางที่แต่ละแถวกำหนดคู่คีย์สาธารณะ/คีย์ส่วนตัวที่ผู้ใช้รายนี้เป็นเจ้าของ แต่ละแถวประกอบด้วย −

  • ประทับเวลา − วันที่/เวลาที่สร้างคู่คีย์นี้

  • รหัสคีย์ − คีย์สาธารณะ 64 บิตที่มีความสำคัญน้อยที่สุดสำหรับรายการนี้

  • กุญแจสาธารณะ − ส่วนพับลิกคีย์ของทั้งคู่

  • คีย์ส่วนตัว − ส่วนคีย์ส่วนตัวของทั้งคู่

  • รหัสผู้ใช้ − โดยทั่วไปที่อยู่อีเมลของผู้ใช้

คีย์ริงส่วนตัวสามารถสร้างดัชนีได้ด้วย ID ผู้ใช้ รหัสคีย์ หรือทั้งสองอย่าง แต่เพื่อความปลอดภัย ค่าของคีย์จะไม่ถูกบันทึกไว้ในคีย์ริง แต่เป็นเวอร์ชันที่เข้ารหัสซึ่งจำเป็นต้องมีขั้นตอนการส่งผ่านเพื่อถอดรหัส