DER बाइनरी (.der)
ITU-T मानकडिस्टिगुइशڈ एनकोडिंग रूल्स (DER) ASN.1 डेटा संरचनाओं के लिए सख्त, कैनोनिकल बाइनरी एनकोडिंग मानक है, जो सुरक्षा प्रमाणपत्रों और क्रिप्टोग्राफिक कुंजियों का अस्पष्ट बिट-एक्जेक्ट प्रतिनिधित्व प्रदान करता है।
DER को PEM में कन्वर्ट करें
मुफ्त इन-ब्राउज़र DER से PEM कन्वर्टर। अपने डिवाइस पर तुरंत फ़ाइलें कन्वर्ट करें।
इंस्पेक्ट और मेटाडेटा
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके DER फ़ाइलों की पहचान करते हैं:
बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)
ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके DER फ़ाइलों की पहचान करते हैं:
HEX हस्ताक्षर (ऑफ़सेट 0):
30 82ASCII निरूपण: 0\x82
मानकीकरण: ITU-T Recommendation X.690
तकनीकी विनिर्देश
| कंटेनर आर्किटेक्चर | Strict canonical binary encoding of ASN.1 structures using Tag-Length-Value (TLV) triples |
| कंप्रेशन | Uncompressed binary data |
| बाइट एंडियानेस | Big-Endian ASN.1 encoding |
| कलर स्पेस | N/A (Cryptographic Binary Stream) |
| चैनल और संरचना | Cryptographic keys, X.509 certificates, CRLs, and PKCS structures |
| अधिकतम आयाम | Unbounded ASN.1 length |
| पारदर्शिता (Transparency) | Binary ASN.1 data structure |
| स्ट्रीमिंग और प्रोग्रेसिव | Deterministic single-pass canonical decoding |
तकनीकी तुलना मैट्रिक्स: DER बनाम प्रतियोगी
| तकनीकी विशेषता | DER (वर्तमान) | PEM | CRT | P12 |
|---|---|---|---|---|
| डेटा प्रतिनिधित्व | सख्त बाइनरी ASN.1 एनकोडिंग | Base64 ASCII आर्मर्ड टेक्स्ट | Base64 PEM या बाइनरी DER | एन्क्रिप्टेड बाइनरी PKCS #12 संग्रह |
| निश्चयात्मक हैशिंग | 100% कैनोनिकल बिटस्ट्रीम | व्हाइटस्पेस/बैनर पर निर्भर करता है | फ़ॉर्मेटिंग पर निर्भर करता है | नमक/IV के साथ एन्क्रिप्टेड |
| फ़ाइल का आकार | सबसे छोटा (~PEM से 33% छोटा) | Base64 के कारण बड़ा (+33%) | Base64 के कारण बड़ा (+33%) | एन्क्रिप्शन रैपर के कारण बड़ा |
| Java और हार्डवेयर समर्थन | मूल मानक | जावा में रूपांतरण की आवश्यकता है | जावा में रूपांतरण की आवश्यकता है | कीस्टोर के रूप में समर्थित |
सामान्य करप्शन मोड और हेक्स रिकवरी गाइड
OpenSSL त्रुटि: 'asn1 encoding routines:ASN1_get_object:header too long'।
मूल कारण: ASN.1 अनुक्रम हेडर में दूषित टैग-लेंथ-वैल्यू (TLV) बाइट।
रिकवरी: वैध DER कैनोनिकल बाइट्स को पुनर्निर्माण के लिए File2File सर्टिफिकेट टूल का उपयोग करके ट्रांसकोड करें।
सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स
DER डिकोडर लंबाई डिस्क्रिप्टर को पार्स करते हैं जहाँ पूर्णांक अंडरफ़्लो/ओवरफ़्लो मूल क्रिप्टोग्राफी लाइब्रेरी में बफर ओवरफ़्लो को ट्रिगर कर सकता है।
ज्ञात अटैक वेक्टर्स
- गहराई से नेस्टेड ASN.1 अनिश्चित लंबाई डिकोडिंग के दौरान पूर्णांक ओवरफ़्लो।
- खराब स्वरूपित बिट स्ट्रिंग को पार्स करते समय आउट-ऑफ-बाउंड्स पढ़ना।
- नेस्टेड ASN.1 रिकर्सन बम के माध्यम से सेवा से इनकार (Denial of service)।
सुरक्षात्मक सर्वोत्तम प्रथाएँ:
ऐतिहासिक मूल और मील के पत्थर
मुख्य लाभ और खूबियाँ
- कैनोनिकल और deterministic: गारंटी देता है कि समान डेटा हमेशा ठीक वही बाइनरी हैश उत्पन्न करता है, जो डिजिटल हस्ताक्षर के लिए आवश्यक है।
- PEM से अधिक संक्षिप्त: Base64 एनकोडिंग और ASCII बैनर को छोड़कर ~33% ओवरहेड बचाता है।
- हार्डवेयर सिक्योरिटी मॉड्यूल (HSMs), स्मार्ट कार्ड और जावा कीस्टोर के लिए मूल प्रारूप।
तकनीकी सीमाएँ और कमियाँ
- बाइनरी प्रारूप को टेक्स्ट संपादकों में देखा, संपादित या कॉपी-पेस्ट नहीं किया जा सकता है।
- वेब होस्टिंग वातावरण में कम सामान्य, जो अत्यधिक रूप से टेक्स्ट-आधारित PEM/CRT फ़ाइलों को प्राथमिकता देते हैं।
- सख्त एनकोडिंग नियमों का मतलब है कि किसी भी मामूली पैडिंग विसंगति के कारण पार्सिंग अस्वीकृति होती है।
रोचक तकनीकी जानकारी
- DER, BER (बेसिक एनकोडिंग रूल्स) का एक सख्त उपसमुच्चय है; जबकि BER किसी मान को एनकोड करने के कई वैध तरीकों की अनुमति देता है, DER ठीक एक कैनोनिकल तरीके की अनुमति देता है।
- यदि आप DER फ़ाइल को Base64-एनकोड करते हैं और इसे '-----BEGIN CERTIFICATE-----' में लपेटते हैं, तो आपको एक मानक PEM फ़ाइल मिलती है।
- जावा के KeyFactory के लिए RSA सार्वजनिक और निजी कुंजियों को कच्चे DER प्रारूप में प्रदान किया जाना आवश्यक है।
अक्सर पूछे جانے वाले तकनीकी प्रश्न
DER और PEM में क्या अंतर है?
DER किसी सर्टिफिकेट या की का रॉ बाइनरी फॉर्मेट है। PEM बस वही DER फ़ाइल है जिसे '-----BEGIN...-----' बैनर के साथ पठनीय Base64 टेक्स्ट में बदल दिया गया है।
मैं DER को PEM में कैसे बदल सकता हूँ?
अपनी .der फ़ाइल को सीधे अपने ब्राउज़र में एक सेकंड में मानक .pem टेक्स्ट सर्टिफिकेट में बदलने के लिए उसे File2File.app पर अपलोड करें।
जावा (Java) DER की का उपयोग क्यों करता है?
जावा क्रिप्टोग्राफी आर्किटेक्चर (JCA) अपनी मूल की विशिष्टताओं के लिए DER-एन्कोडेड PKCS#8 और X.509 बाइट एरे का उपयोग करता है।