लिनक्स कर्नेल द्वारा एंट्रॉपी स्रोतों का क्या उपयोग किया जाता है?


14

man 4 random लिनक्स कर्नेल एन्ट्रापी स्रोतों का बहुत अस्पष्ट वर्णन है:

यादृच्छिक संख्या जनरेटर डिवाइस चालकों और अन्य स्रोतों से पर्यावरणीय शोर को एक एन्ट्रापी पूल में इकट्ठा करता है।

लिनक्स रैंडम नंबर जेनरेटर में पेपर एंट्रॉपी ट्रांसफर बहुत अधिक विशिष्ट नहीं है। यह सूचीबद्ध है:

  • add_disk_randomness(),
  • add_input_randomness(), तथा
  • add_interrupt_randomness()

ये कार्यपद्धति random.cनिम्नलिखित हैं, जिनमें निम्नलिखित टिप्पणी शामिल है:

पर्यावरण से यादृच्छिकता के स्रोतों में इंटर-कीबोर्ड टाइमिंग, कुछ इंटरप्ट से इंटर-इंटरप्ट टाइमिंग और अन्य घटनाएँ हैं जो दोनों (ए) गैर-नियतात्मक और (बी) को मापने के लिए एक बाहरी पर्यवेक्षक के लिए कठिन हैं।

इसके अलावा, add_hwgenerator_randomness(...)हार्डवेयर यादृच्छिक संख्या जनरेटर के लिए समर्थन का संकेत देने वाला एक फ़ंक्शन है।

वे सभी जानकारी बल्कि अस्पष्ट हैं (या, स्रोत कोड के मामले में, समझने के लिए लिनक्स कर्नेल के गहन ज्ञान की आवश्यकता होती है)। उपयोग किए जाने वाले वास्तविक एन्ट्रॉपी स्रोत क्या हैं, और क्या लिनक्स कर्नेल किसी भी हार्डवेयर रैंडम नंबर जेनरेटरों को आउट-ऑफ-द-बॉक्स का समर्थन करता है?

जवाबों:


4

अधिकांश कमोडिटी पीसी हार्डवेयर में इन दिनों एक यादृच्छिक संख्या जनरेटर होता है। VIA सेमीकंडक्टर ने उन्हें कई वर्षों तक अपने प्रोसेसर में रखा है; लिनक्स कर्नेल में उसके लिए थ्रू- rng ड्राइवर है। मैं drivers/char/hw_random/इंटेल और एएमडी हार्डवेयर के लिए ड्राइवरों और टीपीएम डिवाइस वाले सिस्टम के लिए नवीनतम स्रोत ट्री में निर्देशिका में 34 स्रोत मॉड्यूल गिनता हूं । आप कर्नेल एन्ट्रापी पूल में रैंडम डेटा को पुश करने के लिए आरएनजी डेमॉन (आरएनजीएनडी) चला सकते हैं।


यह उत्तर के एक बड़े हिस्से की तरह लगता है जिसकी मुझे तलाश थी। जैसे ही मैं ऐसा करने के लिए चारों ओर पहुंचता हूं, मुझे वहां पर एक गहरी नजर होगी। साथ में प्रश्न में पहले से मौजूद जानकारी के साथ यह एन्ट्रापी स्रोतों की एक व्यापक सूची की तरह लगता है।
जेन्स एराट

और यह देखने के लिए कि एक विशिष्ट पीसी रन पर क्या उपलब्ध है cat /sys/devices/virtual/misc/hw_random/rng_available
हक्वाडल

0

हां, यह बॉक्स से बाहर हार्डवेयर एन्ट्रापी जनरेटर का समर्थन करता है। यह उच्च लोड एसएसएल सर्वरों के लिए आवश्यक है जिसमें प्रति सेकंड बहुत सारे एक साथ कनेक्शन (जीमेल, फेसबुक, माइक्रोसॉफ्ट, आदि) शुरू किए गए हैं। यह वास्तव में होम सर्वर या छोटे संगठन सर्वर के लिए आवश्यक नहीं है। ध्यान रखें कि हार्डवेयर एन्ट्रापी जनरेटर आमतौर पर पीसीआई इंटरफेस का उपयोग करते हैं, वहां कुछ भी नहीं होता है, इसलिए इसे आसानी से समर्थित किया जा सकता है। यकीन नहीं होता है कि अगर प्रोपीयररी हार्डवेयर एन्ट्रापी जनरेटर हैं जिन्हें बंद स्रोत ड्राइवरों की आवश्यकता होती है, तो शायद नहीं, क्योंकि यह बहुत मुश्किल नहीं है और बहुत लाभदायक उद्योग नहीं है (ग्राफिक्स कार्ड के विपरीत) वैसे भी।

http://en.wikipedia.org/wiki/Hardware_random_number_generator


2
उच्च-वॉल्यूम सर्वर को कम-वॉल्यूम सर्वर से अधिक हार्डवेयर RNG की आवश्यकता नहीं होती है। एक बार जब मशीन को पर्याप्त एन्ट्रॉपी के साथ बीज दिया गया है, तो यह हमेशा के लिए PRNG पर चल सकता है (या कम से कम अरबों वर्षों के लिए, जो व्यवहार में समान है)। जिस तरह के कंप्यूटरों को वास्तव में हार्डवेयर RNG की आवश्यकता होती है, वे एम्बेडेड डिवाइस होते हैं, जो बिजली गिरने पर अपने वर्तमान RNG स्थिति को सुरक्षित रूप से नहीं बचा सकते हैं।
गिल्स एसओ- बुराई को रोकना '

@ गिल्स: क्या यह लिनक्स के अलावा अन्य सिस्टम के लिए वैध है? मुझे पता है कि लिनक्स ऐसा करता है, लेकिन ओएस एक्स (न ही विंडवोस) सहित * बीएसडी के बारे में कभी नहीं सुना है।
जेन्स इरट

1
@JensErat मुझे नहीं पता। इसे लागू करना आसान है और बहुत उपयोगी है, इसलिए मुझे आश्चर्य होगा कि अगर बीएसडी ने ऐसा नहीं किया।
गाइल्स का SO- बुराई पर रोक '22
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.