มองไปที่ https://crypto.stackexchange.com/a/30616/16548 และทุกวิธีที่ฉันสร้างคีย์ RSA (รหัส, SSL) MSB จะเป็น 1 เสมอดังนั้นเมื่อเข้ารหัส DER มี 0x00
คำนำหน้า
ฉันคิดว่ามันเป็นเช่นนั้นเสมอเมื่อความยาวของคีย์ RSA เป็นกำลังสอง (เช่น 2048 หรือ 4096)
แต่คำถามที่สงสัยก่อนนอนตอนนี้คือ จริงหรอ?
อ้างจากลิงค์
โดยทั่วไปเราจะเลือกขนาดโมดูลัสของ RSA ซึ่งเป็นกำลังของสองหรือทวีคูณขนาดเล็กของมัน (1024, 1536, 2048, 3072 เป็นต้น) และสิ่งนี้มักจะเกิดขึ้นที่นั่น
เนื่องจากตอนนี้ฉันกำลังสงสัยว่าจะพิสูจน์ได้อย่างไรหรือว่าเป็นเช่นนั้นจริงๆ
สำหรับฉันแล้วดูเหมือนว่าความยาวของโมดูลัสจะถูกตั้งค่าเช่นนั้นและ MSB ถูกตั้งค่าเนื่องจากการสร้างโมดูลัสและสิ่งเหล่านี้เป็นจำนวนเต็มที่ไม่ได้ลงนาม ดังนั้น 0x00 จะอยู่ที่นั่นเสมอและไม่จำเป็นต้องตรวจสอบว่าตั้งค่า MSB ไว้หรือไม่
ดังนั้นคำตอบสำหรับคำถามสั้น ๆ : ใช่
หรือ ไม่
. ฉันกำลังคิดถึงข้อโต้แย้งที่น่าเชื่อซึ่งฉันไม่สามารถสร้างได้ในขณะนี้ แต่ถ้ามีคนอยู่ในมือ แน่นอนว่ามันน่าสนใจมาก