मैं वर्तमान में gpg --genkeyलिनक्स वीएम पर परीक्षण कर रहा हूं । दुर्भाग्य से, यह सॉफ़्टवेयर /dev/randomएंट्रोपी इकट्ठा करने के लिए भरोसा करने लगता है और विनम्रता से उपयोगकर्ता को क्रिप्टोग्राफिक रूप से यादृच्छिक इनपुट की स्क्रीन के बाद स्क्रीन टाइप करने के लिए कहता है ताकि यह अंततः एक कुंजी उत्पन्न करने के साथ समाप्त हो सके, और मुझे बताने के लिए कोई कमांड-लाइन पैरामीटर नहीं मिला है एंट्रोपी स्रोत के रूप में एक और फ़ाइल का उपयोग करने के लिए ( इस वीडियो पर लड़का बहुत ही समस्या का सामना करता है ...)।
हालाँकि, उपयोगकर्ता को /dev/urandomइसके बजाय उपयोग करने के लिए स्वतंत्र होना चाहिए क्योंकि इसमें कुछ भी गलत नहीं है । यह मुख्य रूप से पुराने PRNG एल्गोरिदम की याद के रूप में है जो क्रिप्टोग्राफिक दृष्टिकोण से कमजोर थे। उदाहरण के लिए, जबकि नेटबीएसडी मैनपेज अनुदान देता है कि अंतर अभी भी बहुत शुरुआती बूटिंग चरण में उपयोगी हो सकता है, यह "लोककथा" और "काल्पनिक सिद्धांत जो केवल काल्पनिक खतरे के मॉडल के खिलाफ बचाव करता है " जैसे भेद का वर्णन करता है । कोई भी इस आदेश के लिए आवश्यक एन्ट्रापी की मात्रा से सहमत नहीं है और न ही यह तथ्य है कि एन्ट्रापी एक ऐसी चीज है जिसे वास्तव में GPG मैनपेज में कहा गया है ("कृपया, इस आदेश का उपयोग तब तक न करें जब तक आप यह नहीं जानते कि आप क्या कर रहे हैं, यह सिस्टम से कीमती एन्ट्रॉपी को हटा सकता है!" )।
मैंने डेमॉन स्थापित करने वाले लोगों केrngd बारे में पढ़ा है और इसे /dev/urandomफ़ीड करने के लिए एंट्रॉपी स्रोत के रूप में उपयोग करने के लिए कॉन्फ़िगर किया है /dev/random, लेकिन मुझे ऐसा अभ्यास भारी गंदा लगता है।
मैंने FreeBSD तरीके से समस्या को हल करने की कोशिश की /dev/randomऔर इसे हटाकर /dev/urandomइसके बजाय इसे लिंक किया :
rm /dev/random
ln -s /dev/urandom /dev/random
मैं इसे एक सेटिंग के रूप में देखता हूं, "मुझे /dev/urandomएन्ट्रापी स्रोत के रूप में भरोसा है " ।
मुझे डर था कि मैं किसी तरह की त्रुटि का सामना करूंगा, लेकिन यह अपेक्षित परिणाम प्रदान करता है क्योंकि कमांड अब तुरंत सफलतापूर्वक लौटता है।
मेरा प्रश्न है: क्या फ्रीबीएसडी सिस्टम पर डिफ़ॉल्ट रूप से लिनक्स सिस्टम पर लिंक /dev/randomकरने का कोई ज्ञात, व्यावहारिक और गलत साइड-इफेक्ट है /dev/urandom? या /dev/randomकिसी सेवा को बंद करने के कारण दोहराए जाने वाले मुद्दों के मामले में इसे स्थायी रूप से (उदाहरण के लिए बूट प्रक्रिया के अंत में एक स्क्रिप्ट में) स्थापित करने की परिकल्पना की जा सकती है ?