คำถามพื้นฐาน: ENT ดูเหมือนจะสะดุดเครื่องกำเนิดไฟฟ้าที่ผ่าน NIST 800-22 และอาจจะรุนแรงกว่านั้น ชุดทดสอบสองชุดหลังพลาดความล้มเหลวอย่างชัดเจนได้อย่างไร
มีสองสิ่งที่ฉันต้องการพูดถึงเกี่ยวกับชุดทดสอบการสุ่มที่รู้จักกันดี หูคอจมูกซึ่งเท่าที่ฉันเข้าใจ ถือว่าเข้มงวดน้อยกว่าชุดทดสอบอย่าง NIST SP 800-22 และ diehard(er) มาก
ฉันใช้ ENT, ชุดทดสอบ NIST และเครื่องมือที่ทนทานกับ TRNG ของฉันเองตลอดขั้นตอนต่างๆ ของการพัฒนา ทั้งแบบมีและไม่มีการประมวลผลภายหลัง ฯลฯ ในที่สุด ฉันก็มาถึงขั้นตอนที่ TRNG ผ่านชุดการทดสอบ NIST อย่างสม่ำเสมอâ ทั้งการใช้งานอย่างเป็นทางการและบุคคลที่สามที่ฉันพบใน GitHub ฉันค่อนข้างเข้มงวดกับการทดสอบ โดยมองหาข้อบ่งชี้ใดๆ ที่การทดสอบมอบให้สำหรับการไม่สุ่ม การวางแผนค่า p ฯลฯ แต่ TRNG นั้นผ่านไปอย่างง่ายดายเสมอเท่าที่ฉันสามารถบอกได้ สำหรับมิจฉาชีพ ข้อกำหนดด้านข้อมูลขนาดใหญ่ที่ได้รับการกล่าวถึงในฟอรัมนี้ทำให้เป็นเรื่องยาก แต่ที่นี่ก็ดูเหมือนว่าฉันสามารถให้ TRNG ผ่านในอัตราที่ใกล้เคียงกับ PRNG "มาตรฐานทองคำ" อื่นๆ (ในคำพูดของ ผู้สร้างชุดทดสอบ)
ฉันรู้สึกประหลาดใจเมื่อเห็นว่าตัวสร้าง (จุดหนึ่งในการพัฒนาเมื่อผ่าน NIST) ล้มเหลวในการทดสอบ ENT Chi squared อย่างต่อเนื่อง โดยสรุปได้ว่าสถิติ Chi squared "จะเกินค่านี้ 0.01 เปอร์เซ็นต์ของจำนวนครั้ง" นั่นคือ ค่า p ของ 1e-4 นี่คือเครื่องกำเนิดแบบเดียวกับที่ผ่าน NIST 800-22 และเกือบจะเป็นมิจฉาทิฐิ แม้ว่าที่นี่จะดูสะดุดขึ้นเล็กน้อยโดยมิจฉาทิฐิ แต่ก็ไม่รุนแรง
ฉันสังเกตเห็นว่า Hotbits ซึ่งเป็นวิธีการ/ผลลัพธ์ที่ได้รับ ยกย่อง ในฟอรัมนี้มีสิ่งที่ดูเหมือนจะเป็นการทดสอบไคสแควร์ที่ล้มเหลวโดยมี ENT แสดงอยู่ หน้าสถิติ. เป็นความล้มเหลวประเภทเดียวกับที่ฉันพูดถึงก่อนหน้านี้: สถิติการทดสอบไคกำลังสองที่มีค่า p-value 1e-4 ถ้าฉันเข้าใจถูกต้องตามเว็บไซต์ ENT "หากเปอร์เซ็นต์มากกว่า 99% หรือน้อยกว่า 1% ลำดับนั้นเกือบจะไม่เป็นแบบสุ่ม" อันที่จริง ถ้อยคำนั้นดูแปลกสำหรับฉัน เนื่องจากเราคาดว่าจะเห็น p-value > .99 หรือ < .01 เท่ากับ 2% ของเวลาทั้งหมดสำหรับตัวสร้างในอุดมคติ แต่ประเด็นคือและค่า p ของ 1e -4 ค่อนข้างต่ำกว่าเล็กน้อย
ดังนั้นทั้ง RNG และ Hotbits RNG ของฉันจึงดูเหมือนจะผ่าน NIST และ dieharder ค่อนข้างง่าย แต่ก็ต้องสะดุดกับการทดสอบ ENT Chi squared
คำถามของฉัน: ชุดการทดสอบ NIST จะปล่อยให้ตัวสร้างออกจากตะขอที่ล้มเหลวในการทดสอบ Chi squared ขั้นพื้นฐานเช่นเดียวกับใน ENT ได้อย่างไร ฉันพลาดอะไรไปหรือเข้าใจผิดเกี่ยวกับการทดสอบ Chi Squared ของ ENT หรือไม่
หมายเหตุด้านข้าง:
ฉันเชื่อมโยงกับใครบางคนในฟอรัม "ยกย่อง" ผลลัพธ์ของ Hotbits และพวกเขาเองก็เรียกใช้ ENT กับข้อมูลบางส่วนของพวกเขา ผลลัพธ์ ENT ที่พวกเขานำเสนอนั้นผ่านจริง ๆ ด้วยสถิติการทดสอบไคสแควร์ที่สมเหตุสมผล ฉันยังไม่ได้ทดสอบข้อมูลใดๆ ของพวกเขาด้วยตัวเอง ฉันเพิ่งสังเกตเห็นค่า p-value 1e-4 ที่ด้านหน้าและตรงกลางของเว็บไซต์ ดังนั้นโพสต์นี้
ฉันสังเกตเห็นว่า Fourmilab รักษาทั้ง hotbits และ ENT.. ไม่แน่ใจว่าข้อเท็จจริงนี้ตรงกับข้อใด
แก้ไข: ฉันได้คิดเกี่ยวกับเรื่องนี้อีกเล็กน้อย และได้ทำการวางแผนการกระจาย RNG ของฉันแล้ว และโดยทั่วไปแล้วค่าหนึ่งไบต์นั้นค่อนข้างจะมีโอกาสมากกว่าค่าอื่นๆ เล็กน้อย ความแตกต่างไม่มากก็น้อยพอที่จะยังคงได้รับค่าเอนโทรปีขั้นต่ำที่มากกว่า 7.9 บิต/ไบต์แต่ก็สามารถสังเกตเห็นได้ อันดับแรก ฉันคิดว่าสาเหตุที่มันอาจไม่ปรากฏใน NIST เป็นเพราะการทดสอบเสร็จสิ้นในหลายบิตสตรีม (อย่างน้อยนั่นคือวิธีที่ฉันใช้) และการ "แยก" ของข้อมูลนี้จะลดผลกระทบต่อ แต่ละส่วน สำหรับมิจฉาทิฐิฉันไม่แน่ใจ
ดูเหมือนว่าปรากฏการณ์ที่ฉันสังเกตเห็น โดยที่หนึ่งไบต์มีโอกาสมากกว่าไบต์อื่นๆ มากพอที่จะให้สถิติการทดสอบไคกำลังสองของ 1e-4 เป็นปัจจัยหลักที่ทำให้เกิดสถิติการทดสอบดังกล่าว ท้ายที่สุดแล้ว สถิติการทดสอบเป็นผลรวมปกติของ สี่เหลี่ยมดังนั้นโดยสัญชาตญาณแล้ว ความน่าจะเป็นเชิงประจักษ์ที่มากเกินไปทำให้สถิติการทดสอบหลุดออกไป ฉันสงสัยว่า Hotbits ประสบกับสิ่งที่คล้ายกันหรือไม่ ...