Score:1

แยก ลงชื่อ และรวมกัน

ธง cn

ฉันมีอุปกรณ์ที่เซ็นข้อความสั้นมาก (แบบสมมาตร) และฉันต้องการเซ็นชื่อแบบยาว

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

ดูเหมือนจะไม่ง่ายเลยที่จะป้องกันการจัดเรียงชิ้นส่วนใหม่ตามลำดับที่แตกต่างกัน (ไม่ถือว่าการแฮชลำดับทั้งหมดของลำดับ ง่าย ในกรณีของฉัน)

อย่างไรก็ตาม อุปกรณ์จะครอบคลุมด้วยลายเซ็น ไม่เพียงแต่ข้อความเท่านั้น แต่ยังรวมถึงดัชนีการทำงานของข้อความที่เซ็นชื่อด้วย ตอนนี้ เห็นได้ชัดว่า xor ที่ตรงไปตรงมาของลายเซ็นแยกส่วนเป็นลายเซ็นที่สมบูรณ์แบบของข้อความทั้งหมด

มีใครเคยเจอแบบนี้บ้างในทางทฤษฎีหรือทางปฏิบัติ?

Maarten Bodewes avatar
in flag
ดังนั้นในความคิดเห็นด้านล่างคำถามของฉัน คุณบอกว่าลายเซ็นของข้อความขนาดใหญ่นั้นขึ้นต้นด้วยตัวนับ อย่างไรก็ตาม คุณบอกว่าคุณ XOR ลายเซ็นเหนือข้อความขนาดเล็กเพื่อให้ได้มาซึ่งลายเซ็นนั้น ดังนั้นสำหรับฉัน นั่นไม่สมเหตุสมผลเลย โปรดใส่คำอธิบายที่เป็นทางการเกี่ยวกับโครงร่างของคุณ
Score:1
ธง in

ดูเหมือนจะไม่ง่ายเลยที่จะป้องกันการจัดเรียงชิ้นส่วนใหม่ตามลำดับที่แตกต่างกัน

ขึ้นอยู่กับ; คุณยังไม่ได้ระบุการดำเนินการเพื่อรวมแฮช ณ จุดนี้

แน่นอนว่าฟังก์ชันแฮชการเข้ารหัสใด ๆ มีค่าแตกต่างกันหากดำเนินการ $H(x|y)$ แทน $H(y|x)$ ที่ไหน $x \neq y$ และขนาดของ $x$ และ $y$ เหมือนกัน หากไม่เป็นไปตามเป้าหมายการต้านทานการชนกันของแฮช

ดูเหมือนจะไม่ง่ายเลยที่จะป้องกันการจัดเรียงชิ้นส่วนใหม่ตามลำดับที่แตกต่างกัน

แน่นอนว่ามี เพียงใช้ HMAC ซึ่งใช้แฮชการเข้ารหัสด้วย SHA-256 หรือ SHA-512

ตอนนี้ เห็นได้ชัดว่า xor ที่ตรงไปตรงมาของลายเซ็นแยกส่วนเป็นลายเซ็นที่สมบูรณ์แบบของข้อความทั้งหมด

จริงหรือ หากคุณบอกว่าเป็นที่ประจักษ์แล้วคุณต้องให้ หลักฐาน.

สมมติว่าคุณมีลายเซ็นของสามข้อความประกอบด้วยข้อความย่อย $A$ และ $B$: $M_1=(A,B)$, $M_2=(A,B')$ และ $M_3=(A',B)$. ตอนนี้ถ้าคุณ XOR ลายเซ็นร่วมกัน คุณจะได้รับค่าเดียวกับสำหรับ $M_4=(A', B')$:

$$S_1 = เครื่องหมาย(1, A) \oเครื่องหมายบวก(2, B)$$ $$S_2 = เครื่องหมาย(1, A) \oเครื่องหมายบวก(2, B')$$ $$S_3 = เครื่องหมาย(1, A') \oเครื่องหมายบวก(2, B)$$ $$S_4 = เครื่องหมาย(1, A') \oเครื่องหมายบวก(2, B') = S_1 \oplus S_2 \oplus S_3$$

XOR เป็นปฏิบัติการที่อันตราย สิ่งที่คุณมักจะตามมาคือ ต้นเมิร์กเคิล โดยใช้แฮชเข้ารหัส

โปรดทราบว่าก่อนอื่น คุณสามารถทำการแฮชการเข้ารหัสบนข้อความ และดำเนินการ HMAC บนแฮชที่เชื่อมต่อกัน ซึ่งอาจปลอดภัยกว่าการใช้ลายเซ็นบนส่วนต่างๆ โดยเฉพาะอย่างยิ่งหากเอาต์พุตของฟังก์ชันลายเซ็นมีขนาดเล็ก

uk-ny avatar
cn flag
ไม่ ถ้า $S_1 = Sig(A,B)$, $S_2 = Sig(A,B')$ และ $S_3 = Sig(A',B)$ ดังนั้น $S_1 \oplus S_2 \oplus S_3$ คือ ไม่ หมายถึงลายเซ็นของ $(A', B')$ อันที่จริง ในสถานการณ์ของฉัน $S_1 = Sig(1,A,B)$, $S_2 = Sig(2,A,B')$ และ $S_3 = Sig(3,A',B)$ แต่มัน ไม่เกี่ยวข้องกับความคิดเห็นของคุณ
Maarten Bodewes avatar
in flag
โปรดเขียนโครงร่างของคุณอย่างเป็นทางการ จากนั้นเราจะสร้างคำตอบตามหัวข้อได้ ตามที่อธิบายไว้ในขณะนี้ ฉันไม่เห็นสาเหตุที่คำตอบของฉันใช้ไม่ได้ แค่บอกว่ามันไม่เป็นเช่นนั้นก็ไม่มีข้อโต้แย้ง

โพสต์คำตอบ

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