Score:2

ทางลัดสู่การแลกเปลี่ยนคีย์ Diffie-Hellman

ธง cn

ฉันกำลังพยายามคำนวณรหัสที่ใช้ร่วมกันของ Alice และ Bob ด้วยมือโดยไม่ต้องใช้เครื่องคิดเลข เนื่องจากฉันรู้สึกว่านี่เป็นคุณลักษณะที่สำคัญเมื่อเข้าสู่กระบวนการเข้ารหัส

ฉันเข้าใจว่าคุณสามารถใช้วิธียกกำลังสองและวิธีคูณได้ แต่เรากำลังสอนวิธีทางลัดซึ่งฉันไม่ค่อยเข้าใจนัก

ตัวอย่างคำถาม:

อลิซและบ็อบใช้โปรโตคอล DH โดยมี p = 19,g = 2 และความลับ a = 6 และ b = 8 พวกเขาเห็นด้วยกับกุญแจข้อใด

พวกเขาให้กระบวนการนี้แก่เราโดยไม่มีคำอธิบายมากนัก: $$ K = 2^{6Ã8} â¡8^{2Ã8} â¡7^8 â¡11^4 â¡7^2 â¡11 \pmod{19} $$

$2^{6Ã8}$ไม่แน่ใจว่าจะใส่การคูณเป็นกำลังสำหรับปัญหาข้างต้นได้อย่างไร

หากมีใครสามารถอธิบายเชิงลึกเกี่ยวกับกระบวนการทางลัดที่เสร็จสมบูรณ์ข้างต้นได้ ทีละขั้นตอน ฉันจะขอบคุณมันจริงๆ

ฉันเข้าใจบางส่วนเช่น $g^a*b \pmod{19} = 6 = 2^3 = 8$อย่างไรก็ตามฉันรู้สึกสับสนเล็กน้อยจากที่นั่น

fgrieu avatar
ng flag
ฉันขัดเกลาคำถามบางข้อ แต่ทิ้งย่อหน้าสุดท้ายไว้ตามที่เป็นอยู่
cn flag
ขอบคุณมาก ในส่วนที่เกี่ยวกับการคำนวณแบบใช้มือถือของคุณ ฉันสงสัยว่าคุณทำ 2^48-18*2 ตรงไหน - ทำไมคุณถึงคูณ 2 ในตอนท้าย และ 2 นั่นคือเครื่องกำเนิด มันคือ g^48 mod(19-1)*g และอีกอย่างหนึ่ง คุณรู้ได้อย่างไรว่าจะใช้ 19 และ 215 นี่คือจุดที่ผมเจอปัญหามากที่สุด
fgrieu avatar
ng flag
ใน $48-18\times2=12$ ของฉัน $2$ คือ $\lfloor48/18\rfloor$ ไม่เกี่ยวข้องกับ $g$ นี่คือการคำนวณ $48\bmod18$ และโมดูลัสนั้นคือ $p-1$ ใน $4096-19\times215=11$ ของฉัน ฉันใช้ $19$ เพราะนั่นคือโมดูลัส $p$ ได้รับ $215$ ของฉัน (หลักต่อหลัก) เป็น$\lfloor4096/19\rfloor$ นี่คือการคำนวณ $4096\bmod19$ ฉันได้เพิ่มสิ่งนี้ใน[คำตอบของฉัน](https://crypto.stackexchange.com/a/96047/555)
kelalaka avatar
in flag
@fgrieu น่าเสียดายที่นี่เป็นคำถามที่ข้ามกับ [คณิตศาสตร์](https://math.stackexchange.com/q/4301903/338051) anthonymicheals1 คุณควรต้องเรียนรู้ว่า [นี่ไม่ใช่หลักจริยธรรมที่ดี](https://meta.stackexchange.com/questions/64068/is-cross-posting-a-question-on-multiple-stack- ไซต์แลกเปลี่ยนอนุญาตถ้า-the-qu)
kelalaka avatar
in flag
หากคำตอบดี คุณสามารถโหวตได้ (ต้องมีตัวแทนอย่างน้อย 15 คน แสดงว่าคุณผ่านแล้ว) หากคำตอบเป็นที่น่าพอใจ คุณสามารถยอมรับได้ นี่คือแนวทางของ [ดังนั้น]
Score:2
ธง ng

จำได้ว่าสำหรับ $\forall x\in\mathbb N$, $\forall m,u,v\in\mathbb N^*$มันถือ ${(x^u\bmod m)}^n\equiv{(x^u)}^v\equiv x^{u\times v}\pmod m$, ที่ไหน $y\equiv x\pmod m$ วิธี $m$ แบ่ง $x-y$, และ $x\bmod ม$ เป็นจำนวนเต็มที่กำหนดไม่ซ้ำกัน $y$ ดังนั้น $0\le y<m$ และ $y\equiv x\pmod m$.

ความลับที่ใช้ร่วมกันคือ $K=(g^a\bmod p)^b\bmod p=(g^b\bmod p)^a\bmod p$หรือเทียบเท่า $K=g^{a\times b}\bmod p$. เราได้รับมอบหมายให้ประเมินสิ่งนี้สำหรับ $a=6$, $b=8$, $g=2$, $p=19$.

วิธีการในคำถามคือ: $$\begin{อาร์เรย์}{} K&={(2^6\bmod19)}^8\bmod19&&=2^{6\times8}\bmod19\ &=2^{(3\times2)\times8}\bmod19&={(2^3)}^{2\times8}\bmod19&=8^{2\times8}\bmod19\ &={(8^2)}^8\bmod19&=64^8\bmod19\ &&=(64-19\times3)^8\bmod19&=7^8\bmod19\ &={(7^2)}^4\bmod19&=49^4\bmod19\ &&=(49-19\times2)^4\bmod19&=11^4\bmod19\ &={(11^2)}^2\bmod19&=121^2\bmod19\ &&=(121-19\times6)^2\bmod19&=7^2\bmod19\ &=49\bmod19&=49-19\times2&=11\ \end{อาร์เรย์}$$ และ (การรักษาคอลัมน์ขวาสุด) สามารถย่อเป็น: $$K\equiv2^{6\times8}\equiv8^{2\times8}\equiv7^8\equiv11^4\equiv7^2\equiv11\pmod{19}\ \text{ ดังนั้น }\ K=11$$

ถ้าผมจะคำนวณโดยไม่ใช้เครื่องคิดเลข ผมจะเขียนสิ่งนี้เป็น $K=2^{48}\bmod19$แล้วใช้ทฤษฎีบทเล็กของแฟร์มาต์ มันบอกว่าเมื่อ $p$ เป็นนายกและ $g$ ไม่ใช่ผลคูณของ $p$, ถ้าถือ $g^{p-1}\bmod p=1$. ที่ช่วยลดโมดูโล $(p-1)$ เลขยกกำลังใดๆ ของ $g$ เมื่อคำนวณโมดูโล $p$. การคำนวณที่สมบูรณ์ไป: $$\begin{อาร์เรย์}{} K&=2^{6\times8}\bmod19&&=2^{48}\bmod19\ &=2^{48\bmod(19-1)}\bmod19&=2^{48-18\times2}\bmod19&=2^{12}\bmod19\ &=4096\bmod19&=4096-19\times215&=11\end{อาร์เรย์}$$

หมายเหตุ: ใน $48-18\times2=12$, $2$ จะได้รับเป็นผลหาร $\lfloor48/18\rชั้น$มากเช่นใน $4096-19\times215=11$ เดอะ $215$ เป็น $\lfloor4096/19\rชั้น$.


การเข้ารหัสจริงใช้จำนวนเต็มมากเกินไปสำหรับการคำนวณของมนุษย์ที่เชื่อถือได้ เช่น. $p$ อาจเป็น 2048 บิต นั่นคือ 617 หลักทศนิยม

โพสต์คำตอบ

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