Score:1

การเข้ารหัสที่รับรองความถูกต้องของคีย์สาธารณะ: crypto_box

ธง pk

ฉันได้รับการอ่าน crypto_box การเข้ารหัสและมีคำถาม ในรายละเอียดของอัลกอริทึมจะใช้การแลกเปลี่ยนคีย์: X25519. อย่างไรก็ตาม ฉันไม่เห็นว่าทำไมพวกเขาต้องใช้อัลกอริทึมการแลกเปลี่ยนคีย์

ดังนั้นคำถามของฉันคือที่ไหนและเหตุใดจึงต้องใช้อัลกอริทึมการแลกเปลี่ยนคีย์

Score:2
ธง in

อัลกอริทึมการแลกเปลี่ยนคีย์อยู่ที่ไหน

เดอะ crypto_box เป็นเพียง crypto_box_curve25519xsalsa20poly1305 และมีสองส่วน;

ส่วนที่ 1: การคำนวณล่วงหน้าที่เป็นอิสระจากแพ็กเก็ต

  • งานสังสรรค์ $A$ มีรหัสลับ 32 ไบต์ $sk_A$ และรหัสสาธารณะ $pk_A$ ที่ไหน $pk_A = [sk_A]G$

  • งานสังสรรค์ $B$ มีรหัสลับ 32 ไบต์ $sk_B$ และรหัสสาธารณะ $pk_B$ ที่ไหน $pk_B = [sk_B]G$ และ $G$ เป็นจุดฐานของ X25519

    ที่นี่ $[a]G$ คือการคูณแบบสเกลาร์และหมายถึงการบวก $G$ ให้กับตัวเอง $a$- ครั้ง

  • งานสังสรรค์ $A$ ใช้ $sk_A$ และ $pk_B$ เพื่อรับรหัสโดยใช้ X25519;

    $$k = แฮช(x([sk_A]pk_B))$$ โปรดทราบว่า $pk_B$ เป็นจุดบนเส้นโค้ง และ X25519 ใช้เฉพาะ $x$ พิกัดของจุดสำหรับ ECDH ( สังเกตด้วย $x(\cdot)$.

อย่างที่คุณเห็นครั้งหนึ่ง $A$ สามารถรับรหัสสาธารณะของ $B$ กุญแจ $k$ สามารถสร้างได้ทันทีและมีลักษณะเหมือน $B$, ด้วย. นี่คือการแลกเปลี่ยนคีย์ Elliptic Curve Diffie-Hellman (ECDH)

ตอนที่ 2: การคำนวณต่อแพ็คเก็ต

  • $A$ เลือก 24 ไบต์ไม่มีเลย $n$ (ต้องไม่ซ้ำกัน) และไม่ควรเกิดขึ้นอีกในขณะที่สื่อสารกับ $B$. nonce ขนาด 24 ไบต์นั้นปลอดภัยในการสร้างแบบสุ่ม
  • $A$ ขยายคีย์ $k$ ด้วย nonce เป็นคีย์สตรีมด้วย xsalsa20
  • ข้อความถูกเข้ารหัสด้วยสตรีม (เพียงแค่ x-or) โดยสงวนไว้ 32 ไบต์แรก
  • 32 ไบต์แรกใช้เพื่อรับรองความถูกต้องของข้อความที่เข้ารหัสด้วย โพลี1305.

ทำไมพวกเขาต้องมีอัลกอริทึมการแลกเปลี่ยนคีย์

หากไม่มีกลไกการแลกเปลี่ยนคีย์ พวกเขาจำเป็นต้องมี กลไกการกระจายคีย์แบบสมมาตร นั่นเป็นภาระของการเข้ารหัสแบบสมมาตรก่อนที่จะมีการคิดค้นการเข้ารหัสคีย์สาธารณะ

คีย์สาธารณะจำเป็นต้องได้รับการตรวจสอบ บางครั้งมีการใช้เป็น TOFU (เชื่อถือในการใช้งานครั้งแรก) จากนั้นตรวจสอบด้วยกลไกบางอย่างเช่น Signal ทำ ในการสื่อสารที่ปลอดภัยกว่าบางอย่าง ให้ตรวจสอบคีย์สาธารณะก่อน

สำหรับรายละเอียดเพิ่มเติมอ่าน

โพสต์คำตอบ

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