देखें https://polarssl.org/kb/cryptography/asn1-key-structures-in-der-and-pem (( "शुरू RSA निजी कुंजी" के पृष्ठ की खोज) संग्रह लिंक भावी पीढ़ी के लिए, बस मामले में)।
BEGIN RSA PRIVATE KEYPKCS # 1 है और सिर्फ एक RSA कुंजी है। यह अनिवार्य रूप से पीकेसीएस # 8 से सिर्फ प्रमुख वस्तु है, लेकिन सामने संस्करण या एल्गोरिथ्म पहचानकर्ता के बिना। BEGIN PRIVATE KEYPKCS # 8 है और इंगित करता है कि कुंजी प्रकार कुंजी डेटा में ही शामिल है। लिंक से:
अनएन्क्रिप्टेड PKCS # 8 एन्कोडेड डेटा शुरू होता है और टैग के साथ समाप्त होता है:
-----BEGIN PRIVATE KEY-----
BASE64 ENCODED DATA
-----END PRIVATE KEY-----
बेस 64 एन्कोडेड डेटा के भीतर निम्नलिखित डीईआर संरचना मौजूद है:
PrivateKeyInfo ::= SEQUENCE {
version Version,
algorithm AlgorithmIdentifier,
PrivateKey BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
तो RSA निजी कुंजी के लिए, OID 1.2.840.113549.1.1.1 है और PrivateKey कुंजी डेटा बिटस्ट्रिंग के रूप में RSAPStreetKey है।
के रूप में BEGIN RSA PRIVATE KEY, जो हमेशा एक RSA कुंजी निर्दिष्ट करता है और इसलिए एक प्रमुख प्रकार OID शामिल नहीं करता है। BEGIN RSA PRIVATE KEYहै PKCS#1:
RSA निजी कुंजी फ़ाइल (PKCS # 1)
RSA कुंजी के लिए RSA निजी कुंजी PEM फ़ाइल विशिष्ट है।
यह टैग के साथ शुरू और समाप्त होता है:
-----BEGIN RSA PRIVATE KEY-----
BASE64 ENCODED DATA
-----END RSA PRIVATE KEY-----
बेस 64 एन्कोडेड डेटा के भीतर निम्नलिखित डीईआर संरचना मौजूद है:
RSAPrivateKey ::= SEQUENCE {
version Version,
modulus INTEGER, -- n
publicExponent INTEGER, -- e
privateExponent INTEGER, -- d
prime1 INTEGER, -- p
prime2 INTEGER, -- q
exponent1 INTEGER, -- d mod (p-1)
exponent2 INTEGER, -- d mod (q-1)
coefficient INTEGER, -- (inverse of q) mod p
otherPrimeInfos OtherPrimeInfos OPTIONAL
}