एक होस्ट कुंजी और एक उपयोगकर्ता कुंजी के बीच अंतर पर बहुत भ्रम की स्थिति प्रतीत होती है।
एक होस्ट कुंजी का उपयोग दूरस्थ होस्ट की पहचान को आपके पास स्थापित करने के लिए किया जाता है।
एक उपयोगकर्ता कुंजी का उपयोग दूरस्थ होस्ट को स्वयं की पहचान स्थापित करने के लिए किया जाता है।
चूँकि इन कुंजियों को आम तौर पर केवल पात्रों के अनुक्रम के रूप में दिखाया जाता है, इसलिए मानव के लिए एक नज़र में बताना मुश्किल हो सकता है कि क्या वे बदल गए हैं। यह यादृच्छिकता का उद्देश्य है। कुंजी में एक छोटा विचलन काफी अलग यादृच्छिक छवि का कारण होगा।
आप इसकी देखभाल क्यों करेंगे, इसके लिए दूरस्थ होस्ट की पहचान को सत्यापित करना महत्वपूर्ण है, क्योंकि यह संभव है कि कोई व्यक्ति आपके ट्रैफ़िक ( MITM हमले ) को रोक सके और भेजी और प्राप्त की गई सभी चीज़ों को देख / हेर-फेर कर सके।
हालांकि खुद को सत्यापित करना महत्वपूर्ण नहीं है। आपको "हाँ, मैं मैं हूँ" की पुष्टि करने की आवश्यकता नहीं है। यहां तक कि अगर किसी तरह आपकी उपयोगकर्ता कुंजी बदल गई थी, तो दूरस्थ सर्वर या तो आपको अंदर जाने देगा या इसे अभ्यस्त नहीं करेगा। आपका कनेक्शन ईव्सड्रॉपिंग के जोखिम से अधिक नहीं है।
तो क्यों ssh-keygen
आप अपने उपयोगकर्ता कुंजी उत्पन्न जब बेतरतीब छवि दिखाते हैं ?
क्योंकि जब रैंडमार्ट कोड को ssh-keygen
[grunk@cvs.openbsd.org 2008/06/11 21:01:35] पर पेश किया गया था , तो मेजबान कुंजी और उपयोगकर्ता कुंजियाँ ठीक उसी तरह उत्पन्न हुई थीं। अतिरिक्त जानकारी आउटपुट उपयोगकर्ता कुंजी के लिए किसी काम का नहीं हो सकता है, लेकिन यह चोट नहीं पहुंचाता है (संभावित रूप से भ्रम पैदा करने के अलावा)।
अब, जब मैंने कहा "जब रैंडमार्ट कोड पेश किया गया था", यह इसलिए था क्योंकि कोड बदल गया है। इन दिनों, अधिकांश डिस्ट्रो ssh-keygen -A
होस्ट कुंजी उत्पन्न करने के लिए उपयोग करते हैं, जो एक नई विशेषता है। यह सुविधा कई अलग-अलग प्रकार की चाबियाँ (rsa, dsa, ecdsa) उत्पन्न करती है, और यह एक यादृच्छिक छवि नहीं दिखाती है। पुराने तरीके का उपयोग अभी भी मेजबान कुंजी बनाने के लिए किया जा सकता है, लेकिन यह आमतौर पर नहीं है। तो अब पुरानी विधि का उपयोग केवल उपयोगकर्ता कुंजी के लिए किया जाता है, लेकिन रैंडमार्ट सुविधा बनी हुई है।