ฉันเดาว่านี่เป็นปัญหาทางคณิตศาสตร์มากกว่าในบริบทของการเข้ารหัส ดังนั้นฉันขออภัยล่วงหน้าหากไม่ใช่สถานที่ที่เหมาะสมที่จะถามโดยทั่วไปฉันต้องตรวจสอบว่าการใช้งานการสร้างคู่คีย์ RSA เป็นไปตาม FIPS 186-4 หรือไม่ โดยเฉพาะอย่างยิ่ง ภาคผนวก B-3-1
FIPS 186-4 จำเป็นที่ $d$ (เลขชี้กำลังส่วนตัว) ถูกสร้างขึ้นดังนี้:
$d = (e^{-1})\bmod(\text{LCM}(p-1, \space q-1))$
ไลบรารีที่เป็นปัญหา (openssl v1.0.1) คำนวณ $d$ เช่นนั้น:
$d = (e^{-1})\bmod((p-1)(q-1))$
ฉันไม่สามารถพิสูจน์หรือหักล้างได้ว่าสองคนนี้สร้างชุดคำตอบเดียวกันหรือไม่ $d$.
สภาพการสร้างของ $p$ และ $คิว$ คือว่า $(p-1)$ และ $(q-1)$ ทั้งคู่ค่อนข้างสำคัญ $e$ (เลขยกกำลังสาธารณะ) ดังนั้นสูตรทั้งสองจึงมีคำตอบ
นอกจากนี้ตั้งแต่ $p$ และ $คิว$ เป็นทั้งนายก $(p-1)$ และ $(q-1)$ จะเป็นเลขคู่และจาก $a \times b=\text{GDC}(a, \space b) \times \text{LCM}(a, \space b)$ เรารู้ว่า $\text{GCD}(p-1, \space q-1) \geq 2$ ดังนั้น $\text{LCM}(p-1, \space q-1) \neq (p-1)(q-1)$.
คำถามของฉันคือพวกเขาเหมือนกันหรือแตกต่างกัน?
ฉันจะขอบคุณถ้าคุณสามารถชี้ให้ฉันเห็นทิศทางที่ถูกต้องทางคณิตศาสตร์เพื่อที่ฉันจะได้แก้ปัญหานี้ด้วยตัวเอง
ป.ล.: ฉันเข้าใจสำหรับ openssl v1 มีโมดูล FIPS และ opensl v3.0 จะพยายามสมัครขอใบรับรอง FIPS 140-2 ขออภัย ฉันติดอยู่กับเวอร์ชันที่ฉันกล่าวถึงและฉันไม่สามารถเปลี่ยนแปลงได้ (มันไม่ได้ขึ้นอยู่กับฉัน)