SSH सार्वजनिक (और निजी) कुंजियों के कुछ भाग क्यों ओवरलैप करते हैं?


39

विशेष रूप से, ssh Ed25519 सार्वजनिक कुंजी के पहले 25 अक्षर हमेशा एक जैसे क्यों होते हैं?

उदाहरण के लिए, यदि मैं 5 कुंजी बनाता हूं ssh-keygen -o -a 100 -t ed25519, तो पहले 25 अक्षर हमेशा होते हैं AAAAC3NzaC1lZDI1NTE5AAAAI

मुझे लगता है कि यह किसी प्रकार का प्रस्तावना या शीर्षक है, लेकिन मुझे वास्तविक उत्तर जानना अच्छा लगेगा।


8
क्रॉसडुप crypto.stackexchange.com/questions/5944/…नए प्रारूप OpenSSH निजी कुंजी फाइलें समान रूप से डेटा के बेस 64 एन्कोडिंग हैं जो कई ज्यादातर-निरंतर XDR- स्वरूपित स्ट्रिंग्स के साथ शुरू होती हैं, हालांकि कुंजी प्रकार / एल्गोरिथ्म किसी तरह से है; नए प्रारूप का उपयोग स्वतः ed25519 के लिए किया जाता है (क्योंकि कोई पुराना प्रारूप उस प्रकार के लिए मौजूद नहीं है) और आपको केवल अन्य प्रकारों के लिए निर्दिष्ट करना होगा।
dave_thompson_085

जवाबों:


65

स्ट्रिंग base64 एनकोडेड है। जब डिकोड किया जाता है, तो यह स्ट्रिंग का उत्पादन करता है \0\0\0\vssh-ed25519\0। यह कुंजी के प्रकार की पहचान करता है। इस मामले में एक एडीडीएसए कुंजी।


16
\0\0\0\vभाग 11 एक 32 बिट संख्या के रूप में लिखा गया है और स्ट्रिंग की लंबाई का संकेत है ssh-ed25519
कास्परड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.