Score:1

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

ธง sa
A W

โดยพื้นฐานแล้ว ฉันกำลังมองหาวิธีสำหรับผู้ใช้ A ในการสร้างข้อความที่เซ็นชื่อ ซึ่งผู้ใช้ B สามารถ 1) ตรวจสอบผู้ใช้ A เขียน (เช่น การใช้ ecrecover) และ 2) เนื้อหาของข้อความสามารถอ่านได้โดยผู้ใช้ B โดยไม่ต้องใช้ผู้ใช้ Aâ s คีย์ส่วนตัว

ฉันรู้ว่าเป็นไปได้ที่ผู้ใช้ A จะใช้การเข้ารหัสแบบอสมมาตรเพื่อลงนามในข้อความที่สามารถตรวจสอบได้ว่าเป็นของแท้ แต่ฉันต้องการให้ผู้ใช้ B สามารถอ่านเนื้อหาของข้อความนั้นและสามารถพึ่งพาได้โดยไม่ต้องถาม ผู้ใช้ A สำหรับข้อความเวอร์ชันที่ไม่ได้เข้ารหัสแยกต่างหาก เนื่องจากผู้ใช้ A อาจอยู่ในเวอร์ชันที่ไม่ได้เข้ารหัส

knaccc avatar
es flag
ประเด็นทั้งหมดของลายเซ็นคือผู้ลงนามไม่สามารถโกหกได้ว่าข้อความใดกำลังเซ็นอยู่
fgrieu avatar
ng flag
ฉันไม่เห็นสิ่งใดในสิ่งที่ถามว่าลายเซ็นมาตรฐานไม่ทำ โดยเฉพาะอย่างยิ่ง "เนื้อหาของข้อความสามารถอ่านได้โดยผู้ใช้ B โดยไม่ต้องใช้คีย์ส่วนตัวของผู้ใช้ A" เป็นคุณสมบัติมาตรฐานของรูปแบบลายเซ็นใดๆ ผู้รับไม่ต้องการรหัสส่วนตัวของผู้ลงนาม พวกเขาต้องการคีย์ _public_ และ "ใช้การเข้ารหัสแบบอสมมาตรเพื่อเซ็นข้อความ" มีข้อผิดพลาดเกี่ยวกับคำศัพท์: การเข้ารหัส เข้ารหัส มันไม่ได้ลงนาม บางทีคุณอาจหมายถึง "ใช้ _cryptography_ แบบอสมมาตรเพื่อเซ็นข้อความ"
Score:3
ธง in

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

ในการรักษาความปลอดภัยของแผนลายเซ็น เรามีผู้ปลอมแปลงที่เป็นปฏิปักษ์ ซึ่งมีเป้าหมายคือการปลอมแปลงลายเซ็นของข้อความที่ไม่เคยลงนามมาก่อน สำหรับเกมง่าย ๆ คุณสามารถพิจารณาได้ว่าผู้ปลอมแปลงได้รับ $n$ คู่ของ $(\sigma_i,m_i)$ นั่นคือข้อความและคู่ลายเซ็น ตอนนี้หากผู้ปลอมแปลงสามารถส่งข้อความใหม่ได้ $m \neq m_i$ สำหรับ $i \in \{1,n\}$ พร้อมลายเซ็นที่ถูกต้อง $(\sigma,m)$ เราเรียกสิ่งนี้ว่าเป็นการปลอมลายเซ็นดิจิทัลด้วย การปลอมแปลงที่มีอยู่.

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

ใช่. ตราบใดที่ข้อความไม่จำเป็นต้องเป็นความลับ ก็ไม่มีปัญหากับรูปแบบลายเซ็นที่ปลอดภัย เช่น RSASSA-PSS, DSA, ECDSA, EdDSA, Schnoor เป็นต้น สามารถเซ็นข้อความโดยไม่เข้ารหัสได้ นี่เป็นเรื่องปกติในสื่อดิจิทัล คุณสามารถดูเนื้อหาและลายเซ็นของ PDF รูปภาพ เอกสารราชการ ฯลฯ และตรวจสอบลายเซ็นได้หากคุณมีรหัสสาธารณะที่แท้จริงของผู้ลงนาม

โปรดทราบว่าหากอัลกอริทึมการแฮชไม่สามารถป้องกันภาพก่อนหน้าที่สองได้ การปลอมแปลงก็ใกล้เข้ามาแล้ว ใช้ฟังก์ชันการเข้ารหัสที่ทนต่อการชนกันเพื่อให้บรรลุผลเป็นอย่างน้อย Universal Forgery (UF) ภายใต้ Chosen-Message Attack (CMA) UF-CMAเช่น SHA2, SHAKE ของ SHA3 และ BLAKE2

หากเราอาศัยเพียงการต้านทานภาพล่วงหน้าที่สองของ SHA-1 ก็จะมีการโจมตีการชนกันของ $\operatorname{SHA-1}$ ชอบ;

  • อลิซสร้างสองข้อความที่มีค่า SHA-1 เท่ากัน $m_1$ คือสิ่งที่บ๊อบต้องการลงนามและ $m_2$ คือสิ่งที่อลิซได้เปรียบสำหรับพวกเขาเอง
  • อลิซมาส่ง $m_1$ ถึง Bob และ Bob อ่านและลงนาม $$(\sigma,m_1) = เครื่องหมาย( \operatorname{SHA-1}(m_1))$$
  • อลิซมาส่ง $(\sigma,m_2)$ ถึงชาร์ลี
  • ชาลีตรวจสอบสัญญาณตั้งแต่ $\operatorname{SHA-1}(m_1) = \operatorname{SHA-1}(m_2)$
  • อลิซได้ประโยชน์

อย่าตั้งค่าการรักษาความปลอดภัยบนโครงร่างที่เสียหาย แม้ว่าจะลดความเสี่ยงในปัจจุบันแล้วก็ตาม

mafu avatar
kr flag
ฉันไม่เข้าใจประโยคนี้: *หวังว่าไม่มีอัลกอริทึมแฮชการเข้ารหัสลับใด ๆ ... จะปลอดภัยจากการต่อต้านอิมเมจล่วงหน้าครั้งที่สอง*
kelalaka avatar
in flag
@mafu ฉันต้องเขียนส่วนนั้นใหม่ ถ้าใครใช้ฟังก์ชันแฮชแบบหักต้านทานการชนกัน แสดงว่ามีการโจมตี ดังนั้นให้ใช้ฟังก์ชันแฮชที่ป้องกันการชนกันเสมอ

โพสต์คำตอบ

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