แค่ต้องการให้แน่ใจว่าความเข้าใจของฉันถูกต้องไม่ว่าจะมีคีย์สาธารณะเพียงคีย์เดียวสำหรับคีย์ส่วนตัวใดๆ และในทางกลับกัน
นั่นไม่ถูกต้อง อย่างเป็นทางการ สำหรับคีย์ RSA ส่วนตัวใดๆ ที่ถูกต้อง จะมีคีย์สาธารณะจำนวนไม่จำกัดที่จะทำงานร่วมกับคีย์นั้น และสำหรับคีย์ RSA สาธารณะที่ถูกต้องใดๆ จะมีคีย์ส่วนตัวจำนวนไม่จำกัดที่จะทำงานร่วมกับคีย์นั้น
เหตุผลนั้นค่อนข้างง่าย สำหรับเลขชี้กำลังใดๆ $f$ [1] เรามีตัวตน $m^f = m^{f + k \ell} \pmod n$, สำหรับ $\ell = \text{lcm}(p-1,q-1)$และจำนวนเต็มใดๆ $k$ และจำนวนเต็มใดๆ $m$.
นั่นหมายความว่าสำหรับคีย์ส่วนตัวใด ๆ ที่สอดคล้องกับคีย์สาธารณะที่มีเลขชี้กำลังสาธารณะ $e$, เลขชี้กำลังสาธารณะทางเลือก $e + k \ell$ ก็จะทำหน้าที่เหมือนกันและเนื่องจากมีจำนวนอนันต์ $k$ ค่า เรามีกุญแจสาธารณะจำนวนไม่สิ้นสุดที่สอดคล้องกันทั้งหมด
ในแบบคู่ขนาน สำหรับพับลิกคีย์ใดๆ ที่สอดคล้องกับไพรเวตคีย์ที่มีไพรเวตเอ็กซ์โพเนนต์ $d$, เลขยกกำลังส่วนตัวทางเลือก $d + k \ell$ ก็จะทำหน้าที่เหมือนกันและเนื่องจากมีจำนวนอนันต์ $k$ ค่าเรามีคีย์ส่วนตัวจำนวนไม่ จำกัด ที่สอดคล้องกันทั้งหมด
หากคุณจำกัดช่วงของเลขชี้กำลังที่อนุญาตเป็น $[0, \ell-1]$จากนั้นคีย์หลายหลากนี้จะไม่เกิดขึ้น - แต่ถ้าคุณอนุญาตช่วง $[0, \phi(n) - 1]$ (ซึ่งฉันได้เห็นระบุไว้ในบทช่วยสอนเกี่ยวกับ RSA) จะมีคีย์เทียบเท่าอย่างน้อยสองคีย์เสมอ (สมมติว่า $n$ เป็นผลคูณของจำนวนเฉพาะอย่างน้อยสองตัว)
[1]: ฉันใช้ตัวแปร $f$ เนื่องจากการสังเกตนี้ใช้ได้กับทั้งคีย์สาธารณะและคีย์ส่วนตัว