Ssh-keygen द्वारा निर्मित रैंडमार्ट क्या है?


333

जब आप एक कुंजी उत्पन्न करते हैं, तो आपको ओपनएसएसएच के नए संस्करणों से "यादृच्छिक" मिलता है। मैं इसका स्पष्टीकरण क्यों नहीं खोज पा रहा हूं, और मैं इसका उपयोग करने वाला हूं।

Generating public/private rsa key pair.
The key fingerprint is:
05:1e:1e:c1:ac:b9:d1:1c:6a:60:ce:0f:77:6c:78:47 you@i
The key's randomart image is:
+--[ RSA 2048]----+
|       o=.       |
|    o  o++E      |
|   + . Ooo.      |
|    + O B..      |
|     = *S.       |
|      o          |
|                 |
|                 |
|                 |
+-----------------+

Generating public/private dsa key pair.
The key fingerprint is:
b6:dd:b7:1f:bc:25:31:d3:12:f4:92:1c:0b:93:5f:4b you@i
The key's randomart image is:
+--[ DSA 1024]----+
|            o.o  |
|            .= E.|
|             .B.o|
|              .= |
|        S     = .|
|       . o .  .= |
|        . . . oo.|
|             . o+|
|              .o.|
+-----------------+

जवाबों:


251

रैंडमार्ट का मतलब इंसानों के लिए चाबियों को मान्य करने का एक आसान तरीका है।

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

यह कागज़ "हैश विज़ुअलाइज़ेशन: रियल-वर्ल्ड सिक्योरिटी में सुधार करने के लिए एक नई तकनीक", पेरिग ए और सॉन्ग डी।, 1999, क्रिप्टोग्राफिक तकनीकों और ई-कॉमर्स पर अंतर्राष्ट्रीय कार्यशाला (क्रायपेटेक 99) कुछ तकनीकों और फायदों के बारे में बताते हैं।


62
यदि आप केवल यह बता सकते हैं कि मनुष्य कुंजियों को मान्य क्यों करता है, तो इससे मदद मिल सकती है, क्योंकि स्पष्ट रूप से मैं अपनी सार्वजनिक कुंजी को अपनी अधिकृत_की फ़ाइल में रखता हूँ और उसके साथ किया जा सकता है।
dlamblin

38
@ डब्लंबलिन: आप आम तौर पर इस के साथ अपनी खुद की चाबियाँ सत्यापित नहीं करेंगे। हालाँकि, यह दूरस्थ मशीन की होस्ट कुंजी को सत्यापित करने के लिए उपयोगी होगा। एक विचार यह है कि यदि आप विभिन्न स्थानों से किसी विशेष मशीन में प्रवेश करते हैं (या आप अपनी key को अपनी ज्ञात_होस्ट फ़ाइल में सहेजते नहीं हैं), तो आप होस्ट की कुंजी के "आर्ट" को पहचान सकेंगे। अगर वह कला अचानक बदल गई है तो आपको अपने पासवर्ड में टाइपिंग से सावधान रहना चाहिए क्योंकि इसका मतलब यह हो सकता है कि आपके कनेक्शन पर एक आदमी के बीच में हमला हो रहा है (या इसका मतलब यह हो सकता है कि मेजबान ने सिर्फ कुछ अन्य के लिए अपनी चाबियाँ बदल दी हैं। कारण)।
Chris Johnsen

27
उह, मैं मेजबान कला कब देख सकता था? (मुझे लगता है कि मैंने कभी नहीं किया।) मैंने अपनी प्रमुख जोड़ी बनाने के बाद केवल ऐसी छवि देखी। और 'अचानक' परिवर्तन को पहचानने के लिए मुझे इसकी तुलना किससे करनी होगी।
DerMike

12
मैं रैंडमार्ट को एक समान सिद्धांत का पालन करता हूं जैसे कि अखंडता जांच के लिए हैश, अर्थात्: इनपुट में एक छोटा सा अंतर एक बेतहाशा अलग आउटपुट उत्पन्न करता है। इसका मतलब है कि आपको बस कुछ रैंडमार्ट के किसी न किसी आकार को याद रखना होगा जो कुछ नोटिस करने में सक्षम हो। निश्चित रूप से यह व्यवहार में काम नहीं करता है जब SSH et al आपको होस्ट का रेंडमार्ट नहीं दिखाते हैं जो आप कनेक्ट कर रहे हैं (उन्हें होस्ट के जाने पर भी ऐसा करना चाहिए)।
Alan Plum

2
मुझे लगता है कि ये सबसे उपयोगी होते हैं जब कॉपी पूरा होने के बाद सार्वजनिक कुंजियों को एक अखंडता जांच के लिए व्यक्तिगत रूप से एक्सचेंज किया जाता है।
jordanpg

184

जोड़ना

-o VisualHostKey=yes 

अपनी कमांड लाइन में, या डाल दिया

VisualHostKey=yes 

अपने में ~/.ssh/config

आपको उस बॉक्स का रैंडमार्ट दिखाई देगा, जिस पर आप लॉग इन कर रहे हैं। यदि आप एक दिन लॉग इन करते हैं और यादृच्छिक कला अलग है (आपका मस्तिष्क अरे जाना चाहिए! मैं इसे नहीं पहचानता!), तो शायद कोई हैक कर रहा है, या कुछ और।

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


7
महान नहीं। यदि आपने पहले लॉग इन किया है, तो कंप्यूटर के लिए आपके द्वारा स्टोर किए गए फिंगरप्रिंट का उपयोग करके मान्यता प्राप्त करने के लिए बहुत बेहतर है। फीचर का मतलब केवल नई मशीनों में लॉगिंग के लिए इस्तेमाल किया जाना था।
Nicholas Wilson

51
इस उत्तर के लिए देर से रास्ता, लेकिन यह इंगित करने के लायक है कि यह बहुत उपयोगी होगा यदि आप एक अलग मशीन से लॉग इन कर रहे थे जिसमें आपके सभी ज्ञात_होस्ट नहीं थे। उस स्थिति में, कंप्यूटर यह सत्यापित नहीं कर पाएगा कि यह ज्ञात है, लेकिन उपयोगकर्ता को यह देखने में सक्षम होना चाहिए कि "यह सामान्य से अलग दिखता है!" और गर्भपात।
Xkeeper

7
अपने कंप्यूटर को मान्यता देने से आपके अपने कंप्यूटर के ज्ञात होस्ट के हैक होने का खतरा है। बहुत कुछ आप अपने कंप्यूटर को आपके लिए पासवर्ड दर्ज नहीं करने देना चाहिए, आप अपने आप को होस्ट की कुंजी को मान्य करने से बेहतर होगा।
Marko Topolnik

37

आधिकारिक घोषणा: ओपनएसएसएच 5.1 जारी किया

प्रयोगात्मक SSH फ़िंगरप्रिंट का परिचय दें   ASCII विज़ुअलाइज़ेशन को ssh (1) और   ssh-keygen (1)। दृश्य फिंगरप्रिंट   प्रदर्शन एक नए द्वारा नियंत्रित किया जाता है   ssh_config (5) विकल्प "VisualHostKey"।   इरादा SSH होस्ट कुंजियों को प्रस्तुत करना है   एक दृश्य रूप में जो करने के लिए उत्तरदायी है   आसान याद और बदले की अस्वीकृति   मेजबान कुंजी। इस तकनीक से प्रेरित है   चित्रमय हैश दृश्य   योजनाओं को "यादृच्छिक कला [*]" के रूप में जाना जाता है, और   23C3 में डैन कामिंस्की के संगीत के द्वारा   बर्लिन।

फ़िंगरप्रिंट विज़ुअलाइज़ेशन है   वर्तमान में डिफ़ॉल्ट रूप से अक्षम, के रूप में   एल्गोरिथ्म यादृच्छिक उत्पन्न करने के लिए उपयोग किया जाता है   कला अभी भी परिवर्तन के अधीन है।


8
वह अंतिम वाक्य, वास्तव में, जानने योग्य है। OpenBSD जर्नल @ Undeadly.org के बारे में जानकारी OpenSSH 6.8 रिलीज़ बताता है, "कृपया ध्यान दें कि दृश्य होस्ट कुंजी भी अलग होगी।" नए सॉफ्टवेयर पुराने सॉफ्टवेयर द्वारा दिखाए गए चित्रों की तुलना में अलग-अलग चित्र दिखाते हैं।
TOOGAM


10

Ssh-keygen पीढ़ी के बाद प्रदर्शित रैंडमार्ट उस कुंजी का एक ग्राफिक प्रतिनिधित्व है जिसे आपने अभी बनाया है। फिर:

  • रैंडमार्ट है नहीं वास्तव में उपयोगी के लिए उपयोगकर्ता जो ssh-key उत्पन्न करता है

  • रैंडमार्ट बहुत हो सकता है उपयोगी SSH के माध्यम से कनेक्शन का उपयोग करने वाले उपयोगकर्ता के लिए अक्सर कनेक्ट करें को एक ही सर्वर : यदि उसने अपने SSH कमांड में "-o VisualHostKey = Yes" विकल्प जोड़ा है:

    ssh user@domainname.com -ओ विजुअलहोस्टी = हाँ

सर्वर की सार्वजनिक कुंजी के अनुरूप रैंडमार्ट प्रदर्शित किया जाएगा।

एक उदाहरण देखने के लिए, आप कोशिश कर सकते हैं:

ssh git@github.com -o VisualHostKey = हाँ

मामले में जहां उपयोगकर्ता अक्सर एक ही सर्वर से जुड़ता है, तो वह कर सकता है जल्दी और आसानी से जाँच करें कि क्या वह रैंडमार्ट को पहचानता है सार्वजनिक कुंजी के अनुरूप इस सर्वर के या नहीं। जो सार्वजनिक-कुंजी के पात्रों के तार की जाँच करने से आसान और तेज़ है!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.