เอนโทรปีบนเครื่องเสมือน


12

อย่างที่คุณอาจรู้ว่ามันไม่ง่ายที่จะสร้างเอนโทรปีบนเครื่องเสมือนเหมือนบนพีซี "ปกติ" การสร้างคีย์ gpg บนเครื่องเสมือนอาจใช้เวลาสักครู่แม้จะมีเครื่องมือที่ถูกต้อง

มีฟังก์ชั่น crypto มากมายอีกมากมายที่ยังไม่ทราบว่าเป็นเอนโทรปีเพราะ gpg คืออะไร

ดังนั้นหนึ่งสามารถพูดได้ว่าการเข้ารหัสลับมีความปลอดภัยน้อยกว่าบนเครื่องเสมือน


1
ตัวเลขสุ่มจากเครื่อง "ของจริง" ไม่ใช่การสุ่มเริ่มต้นด้วย (เว้นแต่คุณจะมีตัวสร้างหมายเลขสุ่มฮาร์ดแวร์ซึ่งส่วนใหญ่ไม่มี) พวกมันล้วนหลอกแบบสุ่มเพื่อเริ่มต้นและเอนโทรปีก็ถูกสร้างขึ้นในแบบเดียวกัน ถ้ามันช้าบน VM มันเป็นแพลตฟอร์มเวอร์ชวลไลเซชันช้าลง (ฉันลองเดาว่าคุณไม่ได้ใช้ Type 1 Hypervisor)
Chris S

คำตอบ:


6

ก่อนอื่นให้ฉันบอกว่าฉันไม่ได้เป็นผู้เชี่ยวชาญด้านความปลอดภัยเลย

เมื่อการสร้างคีย์ gpg ใช้/dev/randomเป็นเครื่องกำเนิดตัวเลขแบบสุ่มมันจะปลอดภัยบนเครื่องเสมือนเช่นเดียวกับในเครื่องจริง
/dev/randomเป็นอุปกรณ์ปิดกั้นและจะหยุดแสดงผลแบบสุ่มเกินจำนวนที่มี คุณสามารถตรวจสอบการสุ่มของคุณได้
cat /proc/sys/kernel/random/entropy_avail(ควรประมาณ2000 )

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

มีบทความที่ดีเกี่ยวกับเอนโทรปีบนเครื่องเสมือน โชคไม่ดีที่ทั้งสอง ส่วนของบทความนี้มีเฉพาะในแคชของ Google เท่านั้น

เอนโทรปีมีผลต่อการเข้ารหัส ssl / tls ใด ๆ ดังนั้นการใช้/dev/urandomหรือแหล่งที่ไม่สุ่มอย่างแท้จริงมีผลกระทบต่อความปลอดภัยของแอปพลิเคชันของคุณอย่างแน่นอน

ในแง่ของความน่าเชื่อถือ/dev/urandomเมื่อเทียบกับการสุ่มอย่างแท้จริงคือ;
ฉันไม่สามารถให้คำตอบที่ดีแก่คุณได้ขอโทษ

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับหัวข้อนี้คุณสามารถไปที่http://security.stackexchange.comและ / หรืออ่านเช่น โพสต์นี้


1
/dev/urandomใช้ PRNG ที่ปลอดภัยแบบเข้ารหัส (seeded โดยกลุ่มเดียวกันกับ/dev/random) ดังนั้นจึงไม่มีปัญหาตราบใดที่มีเอนโทรปีเริ่มต้นเพียงพอในกลุ่มนี้ อาจมีจุดหนึ่งในการ seed จากเอนโทรปีของเครื่องแม่
Paŭlo Ebermann

3

ใช่ภายใต้สถานการณ์ส่วนใหญ่การเข้ารหัสลับมีความปลอดภัยน้อยกว่าในเครื่องเสมือนมากกว่าบนเซิร์ฟเวอร์ "ของจริง"

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

เครื่องเสมือนประสบปัญหาสามประการ

  1. ฮาร์ดแวร์ที่พวกเขาเห็นไม่ใช่ของจริงและดังนั้นจึงไม่ได้รับอิทธิพลจากปรากฏการณ์ทางกายภาพใด ๆ พวกเขาจะสามารถรวบรวมเอนโทรปีในลักษณะที่ช้ากว่ามาก
  2. VMs ถูกรีเซ็ตบ่อยกว่าเซิร์ฟเวอร์จริงและอาจไม่มีเวลาในการรวบรวมเอนโทรปีเพียงพอ (ซึ่งเป็นเหตุผลที่ดีในการบันทึกสถานะเอนโทรปีปัจจุบันเมื่อปิดระบบและใช้ฟีดเอนโทรปีเมื่อรีสตาร์ท)
  3. ในขณะที่เซิร์ฟเวอร์จริงอาจมีโอกาสที่จะตัดสินว่าเมื่อใดที่มีการจัดการกับเอนโทรปีที่ไม่ดีเครื่องเสมือนจะทำงานได้ง่ายขึ้นภายใต้การแสดงผลของเอนโทรปีพูลนั้นดี (เพราะรวบรวมจาก HW แต่ไม่รู้ว่า HW ไม่จริง) ในขณะที่มันไม่ดีจริง ๆ

ทางออกที่ดีที่สุดคือการให้ VM ยอมแพ้และตระหนักว่า HW ที่เห็นนั้นเป็นแหล่งข้อมูลที่ไม่ดีของเอนโทรปี จากนั้นจัดให้บริการเครือข่ายท้องถิ่นสำหรับการกระจายเอนโทรปีคุณภาพสูง (ดูนายหน้า Entropy ) "เซิร์ฟเวอร์เอนโทรปี" อาจแยกการสุ่มจาก HW ทั่วไป (ซึ่งในกรณีนี้จะต้องทำงานในเวลาที่เพียงพอและต้องมีระบบปฏิบัติการที่เหมาะสม) หรือจาก crypto HW ที่เฉพาะเจาะจง (ชิป TPM, ชิป VIA Padlock เป็นต้น)

VM ที่ใช้บริการดังกล่าวอาจมีความปลอดภัยยิ่งขึ้น (ฉลาดในการเข้ารหัส) มากกว่าเซิร์ฟเวอร์ "ของจริง" ที่เพิ่งเริ่มระบบ

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