Id_rsa.pub और id_dsa.pub में क्या अंतर है?


जवाबों:


64

id_rsa.pubऔर id_dsa.pubके लिए सार्वजनिक चाबियाँ हैं id_rsaऔर id_dsa

आप के संबंध में पूछ रहे हैं, तो SSH, id_rsaएक है आरएसए कुंजी है, जबकि और SSH प्रोटोकॉल 1 या 2 के साथ इस्तेमाल किया जा सकता id_dsaएक है DSA कुंजी और केवल 2. SSH प्रोटोकॉल के साथ इस्तेमाल किया जा सकता दोनों बहुत सुरक्षित हैं, लेकिन DSA होने लगते है इन दिनों मानक (आपके सभी क्लाइंट / सर्वर एसएसएच 2 का समर्थन करते हैं)।

अद्यतन: चूंकि यह लिखा गया था कि डीएसए को असुरक्षित दिखाया गया है। अधिक जानकारी नीचे दिए गए उत्तर में उपलब्ध है।


मुझे इससे सहमत नहीं होना चाहिए। आज (और, हालांकि कुछ हद तक, 2010 में भी जब यह पोस्ट किया गया था), 1024 बिट्स (डीएसए के लिए उपलब्ध सबसे बड़ा कुंजी आकार) बहुत कमजोर माना जाता है। इसलिए, आरएसए बेहतर विकल्प है। SSH v1 के रूप में: मैंने दस साल पहले इस सुरक्षित पर विचार नहीं किया था।
एडम काट्ज

3
@AdamKatz DSA 2009 के बाद से समर्थन 2048-बिट और 3072 बिट कुंजी का समर्थन किया है (अनुसार FIPS 186-3 )। अधिकांश ssh क्लाइंट / सर्वर OpenSSH और PuTTY सहित बड़े DSA कुंजी का समर्थन करते हैं। अधिकांश प्रमुख जनरेटर भी बड़े DSA कुंजी का समर्थन करते हैं, लेकिन OpenSSH से ssh-keygen अभी भी (भले ही ssh और sshd दोनों करते हैं)। लिनक्स के लिए, आप इस ब्लॉग पोस्ट में वर्णित ओपनएसएसएल का उपयोग करके बड़े डीएसए कुंजी उत्पन्न कर सकते हैं ।
माइक पेले

1
दिलचस्प! मुझे नहीं पता था कि, और यह निश्चित रूप से दोनों के बीच के क्षेत्र को समतल करने में मदद करता है (हालांकि ओपनएसएसएच समर्थन की कमी बहुत हानिकारक है)। फिर भी, मैं यह नहीं कहूंगा कि डीएसए मानक है (या तो अभी या 2010 में), जबकि आरएसए बिल्कुल है (और हम ed25519 जैसे अण्डाकार वक्र प्रणालियों में संक्रमण कर रहे हैं)।
एडम काटज़

46

SSH सार्वजनिक / निजी कुंजी जोड़े का उपयोग करता है , इसलिए id_rsaआपकी RSA निजी कुंजी (अभाज्य संख्याओं के आधार पर) है, जो आपकी id_dsa DSA निजी कुंजी (घातांक के आधार पर) से अधिक सुरक्षित है । अपनी निजी कुंजियों को सुरक्षित रखें और अपनी id_rsa.pubऔर id_dsa.pubसार्वजनिक कुंजी को व्यापक रूप से साझा करें ।

डीएसए असुरक्षित है

यदि आपके कंप्यूटर का रैंडम नंबर जनरेटर सब बराबर है, तो DSA का अनुमान लगाने योग्य पैरामीटर है, जो आपकी गुप्त कुंजी को प्रकट करेगा। ECDSA (DSA का अण्डाकार वक्र उन्नयन) समान रूप से कमजोर है । यहां तक ​​कि अच्छे यादृच्छिक संख्याओं के साथ, डीएसए में अन्य ताकत चिंताएं हैंपीडीएफ (ये डिफी-हेलमैन में भी पाए जाते हैं )।

ओपनएसएसएच 1024 बिट कुंजी ( वर्कअराउंड ) असुरक्षित बनाता है और अब डीएसए को डिफ़ॉल्ट रूप से अक्षम करता है

जब संभव हो Ed25519 का उपयोग करें

अण्डाकार वक्र क्रिप्टोग्राफी छोटे प्रमुख आकारों के साथ बढ़ी हुई जटिलता प्रदान करती है। Ed25519 ( प्लेन- मॉडलेड अण्डाकार वक्रों की जटिलता के आधार पर ) को ध्यान में रखने की कमी के कारण पसंदीदा कार्यान्वयन है (लीक दस्तावेजों से पता चलता है कि यूएस एनएसए क्रिप्टो मानकों को कमजोर करता है )।

दुर्भाग्य से, Ed25519 अभी भी नया है, ओपनएसएसएच 6.5 या ग्नूपीजी 2.1 की आवश्यकता है ( पूरी सूची देखें )।

4025 बिट्स के साथ RSA का उपयोग करें जब Ed25519 अनुपलब्ध है

4096 बिट्स के आरएसए प्रमुख आकारों में एड25519 की तुलनात्मक जटिलता होनी चाहिए।

Ed25519 को अभी भी RSA के लिए पसंद किया जाता है एक चिंता के कारण कि RSA DSA जैसी ही ताकत की चिंताओं के लिए असुरक्षित हो सकता है, हालांकि RSA के लिए उस कारनामे को लागू करना काफी कठिन होने की उम्मीद है।


2
सिर्फ एक सुधार: डीएसए ने 2009 से 2048-बिट और 3072-बिट कुंजियों का समर्थन किया है (प्रति 186-3 के अनुसार )। ऊपर मेरी टिप्पणी में अधिक जानकारी।
माइक पेले

2
Infosec SE के पास इस सवाल का एक अच्छा जवाब है जो अधिक गहराई में जाता है। यह एक ब्लैक हैट 2013 की बात का हवाला देता है जो बताती है कि डीएसए अब सुरक्षित नहीं है, यहां तक ​​कि बड़े आकार के आकार में भी।
एडम काटज़

2
मैंने डीएसए के साथ मुद्दों के बारे में अधिक व्यापक होने के लिए इस उत्तर को अपडेट किया है। यह अब (समान रूप से मान्य) Infosec SE उत्तर से अधिक विस्तृत है। जब आप अपने माउस को कुछ लिंक पर ले जाते हैं तो और भी अधिक विवरण होता है।
एडम काटज़

1
इस पोस्ट ने मुझे बहुत कुछ सिखाया है, बहुत अधिक उत्थान की जरूरत है।
liljoshu

1

हां, rsa को अधिक सुरक्षित माना जाता है।

अक्टूबर 2014 में, OpenSSH 7 (Ubuntu 16.04LTS के साथ डिफ़ॉल्ट) ने DSA के लिए डिफ़ॉल्ट समर्थन अक्षम कर दिया है। इसे एक मजबूत संकेत के रूप में लें कि डीएसए अब अनुशंसित विधि नहीं है।

https://www.gentoo.org/support/news-items/2015-08-13-openssh-weak-keys.html


1

rsa को अधिक सुरक्षित माना जाता है।

अब नहीं (मई 2020, दस साल बाद), ओपनएसएसएच 8.2 के साथ , जैसा कि जूलियो द्वारा रिपोर्ट किया गया है

भविष्य में पदावनति सूचना

यह अब संभव है 1 अमरीकी डालर $ 50K से कम के लिए SHA-1 हैश एल्गोरिथ्म के खिलाफ चुना-उपसर्ग हमला करने की।
इस कारण से, हम "ssh-rsa" सार्वजनिक कुंजी हस्ताक्षर एल्गोरिथ्म को अक्षम कर देंगे जो निकट भविष्य में रिलीज़ में SHA-1 पर डिफ़ॉल्ट रूप से निर्भर करता है

(देखें " SHA-1 एक शामल है: SHA-1 पर पहला चुना-उपसर्ग टकराव और PGP वेब ऑफ़ ट्रस्ट के लिए आवेदन " Leurent, G और Peyrin, T (2020)

यह एल्गोरिथ्म दुर्भाग्य से अभी भी व्यापक रूप से बेहतर विकल्प के अस्तित्व के बावजूद उपयोग किया जाता है, मूल SSH MFC द्वारा निर्दिष्ट एकमात्र सार्वजनिक कुंजी हस्ताक्षर एल्गोरिथ्म होने के नाते।

बेहतर विकल्पों में शामिल हैं:

  • RFC8332 RSA SHA-2 हस्ताक्षर एल्गोरिदम rsa-sha2-256 / 512।
    इन एल्गोरिदम में " ssh-rsa" के समान कुंजी का उपयोग करने का लाभ है , लेकिन सुरक्षित SHA-2 हैश एल्गोरिदम का उपयोग करें।
    ये OpenSSH 7.2 के बाद से समर्थित हैं और पहले से ही डिफ़ॉल्ट रूप से उपयोग किए जाते हैं यदि क्लाइंट और सर्वर उनका समर्थन करते हैं।

  • Ssh-ed25519 हस्ताक्षर एल्गोरिथ्म।
    6.5 रिलीज के बाद से ओपनएसएसएच में इसका समर्थन किया गया है।

  • RFC5656 ECDSA एल्गोरिदम: ecdsa-sha2-nistp256 / 384/521।
    5.7 जारी करने के बाद से इन्हें ओपनएसएसएच द्वारा समर्थित किया गया है।

यह देखने के लिए कि क्या कोई सर्वर होस्ट प्रमाणीकरण के लिए कमजोर ssh-rsa सार्वजनिक कुंजी एल्गोरिथ्म का उपयोग कर रहा है, हटाने के बाद इसे कनेक्ट करने का प्रयास करें ssh-rsa है, ssh (1) की अनुमत सूची से एल्गोरिथ्म :

ssh -oHostKeyAlgorithms=-ssh-rsa user@host

यदि होस्ट कुंजी सत्यापन विफल रहता है और कोई अन्य समर्थित होस्ट कुंजी प्रकार उपलब्ध नहीं हैं, तो उस होस्ट के सर्वर सॉफ़्टवेयर को अपग्रेड किया जाना चाहिए।

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


-8

एक डीएसए का उपयोग करता है और एक आरएसए का उपयोग करता है ।


यह मानकर कि आप केवल डिफ़ॉल्ट नामों का उपयोग कर रहे हैं (जो तार्किक रूप से ऐसा दिखता है), थिएट्रस ने इसे सिर पर ठीक से मारा।
डेविड लारबी

आपने प्रश्न के वास्तविक भाग का उत्तर नहीं दिया: जो अधिक सुरक्षित है। डाउनवोटिंग के बाद से यह सबसे बड़ा जवाब था। होने की जरूरत नहीं है।
उर्फुपी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.