Score:2

เหตุใดจึงใช้ r ในลายเซ็น ECDSA ในขณะที่ R ในลายเซ็น Schnorr

ธง br

ในลายเซ็น Schnorr (R, s) จะใช้ R แต่ในลายเซ็น ECDSA (r, s) จะใช้ r ซึ่งเป็นพิกัด x ของ R ทำไมความแตกต่าง

kelalaka avatar
in flag
สิทธิบัตรของ Schnorr!
br flag
ECDSA ไม่สามารถใช้ R ได้เนื่องจากสิทธิบัตร?
Score:4
ธง ng

ในลายเซ็น Schnorr $(ร,ส)$, $R$ ถูกนำมาใช้. แต่ในลายเซ็น ECDSA $(ร,ส)$, $r$ ถูกใช้ ซึ่งเป็นพิกัด x ของ $R$.

การยืนยันนั้นไม่ถูกต้องทางเทคนิค:

  • ใน ลายเซ็น Schnorr (อื่น ๆ) ตามที่กำหนดไว้แต่เดิม องค์ประกอบแรกของลายเซ็นคือแฮช ไม่ใช่องค์ประกอบกลุ่ม น้อยกว่า âpointâ ในกลุ่ม Elliptic Curve ซึ่งการใช้ในการเข้ารหัสไม่ใช่เรื่องปกติ
  • ในนิยามของ ลายเซ็น ECDSAส่วนประกอบแรก $r$ ของลายเซ็นคือพิกัด x $x_R$ ของจุดบน Elliptic Curve ให้กลายเป็นจำนวนเต็ม จากนั้นจึงลดค่าโมดูโลของลำดับกลุ่มลง $n$ (จากนั้นเปลี่ยนเป็นการทดสอบไบต์ แต่เราจะทิ้งสิ่งนั้นไว้) มันไม่ใช่แค่ $x_R$.

อย่างไรก็ตาม เนื้อความของการยืนยันดังกล่าวมีการปรับเปลี่ยนเล็กน้อย:

  • ลายเซ็น Schnorr แบบเรียนสมัยใหม่ถูกกำหนดสำหรับกลุ่มตามอำเภอใจที่ปัญหาลอการิทึมไม่ต่อเนื่องนั้นยาก โดยมีสองตัวแปรหลักตามองค์ประกอบแรกของลายเซ็นคือ
    • แฮชของ (อย่างน้อย) ข้อความและองค์ประกอบกลุ่ม $R$เช่นเดียวกับลายเซ็น Schnorr ดั้งเดิม
    • องค์ประกอบกลุ่ม A (การแสดงบิตเฉพาะของ a) $R$เช่น สพป. นั่นคือตัวแปรที่ใช้กับคำยืนยัน
  • กลุ่มดังกล่าวมักเป็นกลุ่มย่อย Elliptic Curve ของคำสั่งเฉพาะ $n$ ของเส้นโค้งวงรีบนสนาม $\mathbb F_{p^m}$และโดยทั่วไป $m=1$ดังนั้นพิกัด x $x_R$ ของ $R$ เป็นจำนวนเต็มใน $[0,p)$.
  • สำหรับเส้นโค้งดังกล่าวทั่วไป $n\ประมาณ p$ด้วยประการฉะนี้ $r:=x_R\bmod n$ มันถือ $r=x_R$ มีความเป็นไปได้สูงแม้ว่า $n<p$ (เช่น. secp256k1, secp256r1) หรือเราจะเลือก Elliptic Curve ก็ได้ $n>p$.

ตอนนี้เรามีคำยืนยันที่แท้จริงแล้ว เราสามารถถาม:

ทำไมความแตกต่าง?

เพราะ ECDSA เป็นการปรับให้เข้ากับกลุ่ม Elliptic Curve ของ อสสโดยที่องค์ประกอบแรกของลายเซ็นคือองค์ประกอบกลุ่มที่ลดโมดูโลลำดับเฉพาะของกลุ่ม. ใน DSA การลดลงนั้นเพื่อทำให้องค์ประกอบแรกของลายเซ็นสั้นลง เหตุผลที่ DSA ใช้เทคนิคนั้นแทนแฮช เช่นเดียวกับในลายเซ็น Schnorr ดั้งเดิม อาจเป็นได้

  • ลายเซ็น Schnorr ดั้งเดิมนั้นครอบคลุมโดย a สิทธิบัตร, รวมทั้ง ในสหรัฐอเมริกาและด้วยเหตุนี้จึงมีความสนใจในวิธีการอื่น
  • DSA นั้นใกล้เคียงกับการศึกษาที่ดีอยู่แล้ว ลายเซ็น ElGamal.
  • เดอะ ต้นฉบับ ลายเซ็น Schnorr เนื่องจากมันแคบ $k$-บิตแฮช (และตรงกันข้ามกับลายเซ็น Schnorr สมัยใหม่ที่มีแฮชที่กว้างกว่าในทั้งสองรูปแบบข้างต้น):
    • ไม่สามารถใช้งานได้อย่างปลอดภัยเป็นข้อผูกมัดของข้อความที่เซ็นชื่อ: เจ้าของคีย์ส่วนตัวที่ลงนามในข้อความและสามารถเลือกบางส่วนได้ (เช่น แก้ไขสองสามไบต์ในตอนท้าย) สามารถจงใจทำในลักษณะที่ข้อความอื่นที่มี อีกความหมายหนึ่งที่พวกเขาเลือกมีลายเซ็นเดียวกัน การโจมตีเป็นการโจมตีแบบเลือกคำนำหน้าการชนกันของ $k$บิตแฮชของค่าใช้จ่ายที่คาดไว้น้อยกว่า $2^{k/2+1.4}$ กัญชา สิ่งนี้จะเพิ่มความเสี่ยงในการปฏิเสธลายเซ็น และอาจทำให้เกิดความกลัว ความไม่แน่นอน และความสงสัยได้
    • จะเสี่ยงต่อการโจมตี preimage สมมุติฐาน (ครั้งแรกหรือครั้งที่สอง) ในการป้อนข้อความของแฮช รวมถึงแฮชในกลุ่มย่อยบางของ $\{0,1\}^k$ของต้นทุนที่คาดไว้ $2^k$ กัญชา; เมื่อ DSA (ต้องขอบคุณแฮชที่กว้างกว่ามาก) มีอัตรากำไรขั้นต้นมาก

DSA ใช้ กลุ่มชนอร์ซึ่งเป็นกลุ่มย่อยที่เป็นวัฏจักรของ โมดูโลกลุ่มคูณ นายกรัฐมนตรี $p$. ECDSA เปลี่ยนสิ่งนั้นเป็น an กลุ่ม Elliptic Curve เหนือ สนามกาลัวส์ซึ่งทำให้รหัสสาธารณะมีขนาดเล็กลงและการคำนวณเร็วขึ้น หลักการของ DSA ในการลดองค์ประกอบแรกของโมดูโลลายเซ็นของคำสั่งกลุ่มจะถูกเก็บไว้ การแปลงล่วงหน้าที่จำเป็นจากองค์ประกอบฟิลด์เป็นจำนวนเต็มทำโดยพิกัด x $x_R$เพิกเฉย $y_R$. อนึ่ง นั่นนำไปสู่การสูญเสียคุณสมบัติด้านความปลอดภัย: ECDSA ไม่ใช่ sEUF-CMAเมื่อ DSA คือเพราะ $R$ และตรงกันข้ามกับ $R$ ในกลุ่ม Elliptic Curve แบ่งปันเช่นเดียวกัน $x_R$อนุญาตให้เปลี่ยนลายเซ็น ECDSA ที่ถูกต้องเป็นลายเซ็นอื่นที่ถูกต้องสำหรับข้อความเดียวกันโดยการเปลี่ยนแปลง $s$ ถึง $-s$ โมดูโล่ลำดับกลุ่ม


¹ Claus-Peter Schnorr ยืนยันว่าวิธีการของ DSA อยู่ภายใต้สิทธิบัตรของเขา ที่ไม่เคยไปทดสอบของศาล แม้ว่า DSA ส่วนใหญ่สามารถอ่านได้ในคำอธิบายของสิทธิบัตร แต่การอ้างสิทธิ์ในการละเมิดคงเป็นไปไม่ได้กับคำกล่าวอ้างที่เป็นอยู่ และการต่อสู้ที่ยากเย็นแสนเข็ญกับการอ้างสิทธิ์ที่เขียนขึ้นใหม่ โดยเฉพาะอย่างยิ่ง มีการอธิบายแฮชที่มีการป้อนข้อมูลข้างข้อความ เมื่อเฉพาะข้อความนั้นถูกแฮชใน DSA

br flag
ในทางเทคนิคแล้ว ECDSA สามารถใช้ (R, s) เป็นลายเซ็นได้หรือไม่
fgrieu avatar
ng flag
@sinoTrinity: ใช่ เราสามารถแก้ไข ECDSA ได้เล็กน้อยเพื่อให้มีการแทนค่าแบบไบนารีของ $R$ เป็นองค์ประกอบแรกของลายเซ็น และให้ตัวตรวจสอบเปลี่ยนให้เป็นจำนวนเต็ม จากนั้นใช้ modulo $n$ ดูเหมือนว่าสามารถกู้คืน sEUF-CMA [ แต่จะทำเช่นนั้นโดยเพิ่มขนาดลายเซ็นอย่างน้อย 1 บิต แทนที่จะลดขนาดลง 1 บิต เช่นเดียวกับการแทนที่ $s$ โดย $\min(s,n-s)$ ] และนั่นก็ยังไม่ใช่ลายเซ็น EC-Schnorr ทั้งสองรูปแบบ เนื่องจากมีเพียงข้อความเท่านั้นที่เข้าสู่แฮชของ ECDSA แทนที่จะเป็นข้อความและชี้ไปที่ลายเซ็น EC-Schnorr (ทุกรูปแบบ)

โพสต์คำตอบ

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