ฉันจะตรวจสอบเอนโทรปีที่มีอยู่ได้อย่างไร


14

บนระบบ linux เราสามารถตรวจสอบเอนโทรปีที่มีอยู่(มีประโยชน์ที่จะทราบว่าคุณกำลังแตะ/dev/randomเพื่อวัตถุประสงค์ PRNG) ด้วยหรือไม่

cat /proc/sys/kernel/random/entropy_avail

อย่างไรก็ตามไม่มีสิ่งใดเทียบเท่า/procกับ Mac (AFAIK) ฉันจะตรวจสอบการใช้งานเอนโทรปีของระบบบน Mac ได้อย่างไร? ฉันใช้ OS X 10.7.3 (Lion)


หากต้องการอัปเดตด้วยความคิดเห็นของฉันภายใต้คำตอบของ Kyle - หนึ่งในเหตุผลสำหรับ Mac ที่ไม่แสดงข้อมูลนี้คือไม่จำเป็น (ในกรณีส่วนใหญ่) ระบบ Linux จะบล็อกการโทร/dev/randomหากมีเอนโทรปีไม่เพียงพอในพูล บน Mac นั้นจะเพิ่มไปยังพูลเอนโทรปีเป็นระยะโดยใช้SecurityServerdaemon

อย่างไรก็ตามมันยังตั้งข้อสังเกตอีกว่าถ้า daemon ล้มเหลวด้วยเหตุผลบางอย่างคุณภาพของผลลัพธ์จะลดลงโดยไม่มีข้อบ่งชี้ความล้มเหลว :

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

ดังนั้นแม้ว่าปริมาณของเอนโทรปีจะไม่สามารถใช้งานได้อย่างง่ายดาย แต่ก็ไม่ได้หมายความว่ามันไม่ได้มีอยู่และอาจมีบางครั้งที่ความรู้นั้นอาจมีประโยชน์


คุณต้องการตรวจสอบจริง ๆ หรือแค่ให้แน่ใจว่ามีของใช้ให้เพียงพอหรือไม่ ดูdeveloper.apple.com/library/mac/#documentation/Darwin/Reference/ ..... ข้อความอ้างอิง: "โปรแกรมเมอร์หวาดระแวงสามารถตอบโต้ความเสี่ยงนี้ได้ด้วยการรวบรวมเอนโทรปีของการเลือก (เช่นจากการกดแป้นพิมพ์หรือการกำหนดเวลาเมาส์) และเริ่มต้นrandomโดยตรง ตัวเลขสุ่มที่สำคัญ "
Chris W. Rea

ฉันแค่ต้องทำให้แน่ใจว่ามีเพียงพอที่จะใช้
rm -rf

คำตอบ:


6

นี่ไม่ใช่วิธีการแก้ปัญหา แต่เป็นการชี้แจงวิธีรวบรวมและใช้เอนโทรปีใน Linux

Linux มีพูลเอนโทรปีต่างกันสองตัว:

/dev/random/dev/urandomและ

อดีตคือกลุ่มสุ่มที่แท้จริงซึ่งป้อนโดยแหล่งข้อมูลเอนโทรปีของระบบ
ส่วนหลังเป็น PRNG มากกว่าเช่นที่พบใน BSD และ OS X

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

อย่างไรก็ตามยังมีบริการบางอย่างเช่นชุด SSL ต่างๆซึ่งไม่สามารถทำกับเอนโทรปีแบบหลอกได้ แต่ต้องการแหล่งข้อมูลเอนโทรปีที่ไม่สามารถคาดเดาได้อย่างแท้จริง ในกรณีนี้ไม่สามารถใช้ urandom (หรือ PRNG อื่น ๆ ) ได้และ / dev / random จะเริ่มเล่น


2

Mac OS X ใช้ยาร์โรว์เพียงอย่างเดียว แม้แต่ FreeBSD ก็ดำเนินต่อไปและเปลี่ยนเป็นเวอร์ชั่นปรับปรุงที่เรียกว่า "Fortuna"

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

All-in-all นี่เป็นอีกสิ่งที่เตือนความสำคัญของ Apple ไม่ได้รวมถึงความปลอดภัย / ความทนทานหรืออะไรทำนองนี้


1

Mac OS X เช่น FreeBSD ไม่พึ่งพาแหล่งเอนโทรปีภายนอก แต่ใช้ตัวสร้างหมายเลขเทียมโดยใช้อัลกอริทึม Yarrowแทน เพราะมันใช้อัลกอริทึมและไม่ได้สระว่ายน้ำเอนโทรปีไม่มีความจำเป็นที่จะให้แน่ใจว่ามี "พอ" เอนโทรปี - คุณก็จะสามารถที่จะอ่านจาก / dev / สุ่มโดยไม่ปิดกั้น

ดังนั้นในการตอบคำถามของคุณถ้าคุณเป็น "หวาดระแวง" และจำเป็นต้องตั้งเอนโทรปีของคุณจากแหล่งข้อมูลภายนอก (การกดแป้น / การเคลื่อนไหวของเมาส์ / ฯลฯ ) ซึ่งในกรณีนี้คุณต้องทำด้วยตัวเองปริมาณเอนโทรปีสำหรับ / dev / การใช้แบบสุ่มไม่มีที่สิ้นสุดเสมอ


4
สิ่งนี้ไม่ถูกต้องทั้งหมด การใช้อัลกอริทึมไม่ได้ทำให้เอนโทรปีไม่มีที่สิ้นสุด สิ่งที่พวกเขาหมายถึงคือบน Linux มันบล็อกเมื่อพูลเอนโทรปีต่ำในขณะที่บน mac: "เอนโทรปีเพิ่มเติมถูกป้อนไปยังเครื่องกำเนิดไฟฟ้าเป็นประจำโดย SecurityServer daemon จากการสุ่มตรวจสอบเคอร์เนล jitter mea" ดังนั้นโดยทั่วไปจะดูแลมันและยังบันทึกเอนโทรปีบางอย่างลงในดิสก์เพื่อใช้งานทันทีหลังจากเริ่มต้น นอกจากนี้ยังกล่าวว่าในขณะที่ยาร์โรว์มีความยืดหยุ่นคุณภาพนั้นขึ้นอยู่กับการเติมเอนโทรปีเป็นประจำซึ่งเป็นสิ่งที่ไม่จำเป็นถ้ามันเป็นเอนโทรปีที่ไม่มีที่สิ้นสุดอย่างแท้จริง
rm -rf

1
นอกจากนี้ยังกล่าวว่า: "หาก daemon ของระบบ SecurityServer ล้มเหลวไม่ว่าด้วยเหตุผลใดก็ตามคุณภาพของผลผลิตจะลดลงเมื่อเวลาผ่านไปโดยไม่มีข้อบ่งชี้ที่ชัดเจนจากอุปกรณ์สุ่มเอง"ฉันจะยอมรับว่า OSX ทำให้ง่ายขึ้นโดยไม่ต้องกังวลเกี่ยวกับ ค่าเอนโทรปี แต่ไม่ได้หมายความว่าไม่มีหนึ่ง ... Btw ฉันหมายถึงหน้าคนนี้ในคำพูดของฉันด้านบน
rm -rf

@RM True ฉันคิดเพิ่มเติมว่าการโทรไปยัง / dev / Random จะบล็อกมากกว่าคุณภาพของเอนโทรปีหรือไม่
Kyle Cronin

> เว้นเสียแต่ว่าคุณจะ "หวาดระแวง" - Mac OS X นั้นขาดความสุ่มที่สมเหตุสมผลพอที่จะถือว่าปลอดภัยเล็กน้อย
2560
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.