Score:2

มีการสุ่มมากน้อยเพียงใดในการ "ฟอก" TRNG ที่ถูกบุกรุกอย่างสมเหตุสมผล

ธง id

สมมติว่าฉันมีโมดูล RNG จริงที่สร้าง $n$บิตตัวเลขสุ่มที่ผ่านการทดสอบการสุ่มเช่นชุด Dieharderเนื่องจากเป็นอุปกรณ์กล่องดำที่ไม่ทราบแหล่งที่มาของการสุ่ม ขอให้เราสันนิษฐานด้วยว่าอาจถูกบุกรุกบางส่วน: ผู้โจมตีที่รู้การทำงานของโมดูล RNG เมื่อพิจารณาสถานะก่อนหน้าเพียงสถานะเดียว สามารถเดาสถานะถัดไปได้อย่างถูกต้องใน $2^{n-m}$ ขั้นตอนสำหรับ $1 \leq ม \leq n$.

ให้เราสันนิษฐานด้วยว่าฉันสามารถเข้าถึงแหล่งเอนโทรปีอื่นที่มีคุณภาพต่ำ $x - p$ บิตของเอนโทรปีต่อ $x$ บิตของเอาต์พุตสำหรับ $0 < พี < x$. ให้เราสันนิษฐานด้วยว่าแหล่งที่มาของเอนโทรปีนี้ช้ากว่าโมดูล RNG ดังกล่าวอย่างมาก

  1. หากต้องการ "ล้าง" แหล่ง RNG แรกเพื่อให้ได้ตัวเลขที่คาดเดาไม่ได้อย่างแท้จริง ฉันต้องทำงานมากเพียงใด
    • หากต้องการยกเลิกเอฟเฟกต์ของ $m$ บนหมายเลขผลลัพธ์ ฉันจะต้องกลั่นและจัดหาเอนโทรปีกี่บิตจากแหล่งเอนโทรปี
    • ฉันจะต้องดำเนินการใดเพื่อให้แน่ใจว่าฉันจะไม่ได้รับหมายเลขที่ถูกบุกรุก การต่อข้อมูล + การแฮชด้วยฟังก์ชันแฮชที่ปลอดภัยด้วยการเข้ารหัสจะ "ทำเคล็ดลับ" หรือไม่
    • ในทางกลับกัน การดำเนินการใดที่ฉันต้องหลีกเลี่ยงหากฉันต้องการให้ "ล้าง" การปลอมแปลงออกไป
    • ฉันจะต้องตัดทอนเท่าไหร่?
  2. สมมติว่า $m$ มีขนาดใหญ่เพียงพอ/ใกล้เคียงกับ $n$จะดีกว่าไหมหากเพียงแค่ดึงบิตสุ่มจากแหล่งที่สองและต่อเข้าด้วยกันเป็นตัวเลขเดียว โดยไม่ต้องผ่านการใช้โมดูลที่อาจถูกบุกรุก

สมมติฐานของฉัน:

  1. ฉันจะต้องใช้ $m$ บิตของเอาต์พุตสุ่มที่ไม่ถูกประนีประนอม ต่อเข้ากับเอาต์พุตแรกและแฮชนั้น ฉันคิดว่าการตัดทอนเอาต์พุตที่ต่อกันหรือหมายเลขอินพุตจะไม่ช่วยอะไรมากนัก หากฉันไม่รู้ว่าบิตใดถูกบุกรุก หรือหากฉันไม่รู้ถึงความน่าจะเป็นของบิตใดที่ถูกบุกรุก ฉันควรหลีกเลี่ยงการ XORing อินพุตก่อนที่จะใช้แฮช

  2. ฉันคิดว่าการ "ฟอก" นั้นสมเหตุสมผล $m = n/2$ซึ่งนอกเหนือจากนั้นฉันควรจะแยกการสุ่มจากแหล่งที่สองและต่อบิตสุ่มเข้ากับ a $n$- หมายเลขบิต ข้ามโมดูลที่อาจถูกบุกรุกโดยสิ้นเชิง

Score:1
ธง cn

ดัมพ์ TRNG1. ทั้ง RC4 และ Marsienne Twister ผ่าน Dieharder

นี่คือการเข้ารหัสลับและเช่นเดียวกับการตั้งครรภ์ ไม่มีแนวคิดเรื่อง 'เล็กน้อย' ที่ถูกประนีประนอม หากมีการบุกรุก คุณสามารถคาดเดาผลลัพธ์ถัดไปได้ในไม่กี่ขั้นตอน หากเริ่มต้นจาก e.t.c. เวลา (ทั่วไป) ไม่เป็นไร $2^{ดา, ดา ,ดา}.$ ความสามารถในการแยกแยะไม่ได้หมายความว่าถ้าคุณไม่ได้สร้าง RNG ด้วยตัวเอง คุณจะไม่มีทางรู้ว่ามันกำลังทำอะไรอยู่ จึงกำจัดเสีย. (หรือหลอกใช้แต่ออกจะจริงจังไปหน่อย)

คุณไม่เชื่อมต่อบิตจาก TRNG2 คุณวัดเอนโทรปีเป็น $1 - \epsilon$ บิต/บิต (ศักยภาพของ เวิร์ม). $\epsilon$ เป็นตัวชี้วัด 'ความยากจน'; มีอคติจากความบังเอิญที่สมบูรณ์แบบ จากนั้นดึงข้อมูลจาก TRNG2 โดยใช้เทคนิคมาตรฐาน เช่น Toeplitz matrices, standard hashing (Pearson, CRC16, SHAx), universal hash functions หรือถ้าคุณโชคดีก็แค่ von Neumann ความเร็วจะขึ้นอยู่กับ $\epsilon$.

mezenkur avatar
id flag
คุณพูดถูก ฉันอาจจะมองโลกในแง่ดีเกินไปและปล่อยให้สมองที่คิดปรุงแต่งไปไกลเกินเหตุ ขอบคุณสำหรับข้อมูลเชิงลึก

โพสต์คำตอบ

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