एक विशिष्ट संदेश के लिए, आप उपयोग कर सकते हैं openssl asn1parse
अंदर झांकना।
मैंने खुद को आईओएस मेल का उपयोग करके एक संदेश भेजा, हस्ताक्षर किए और मुझे एन्क्रिप्ट किया, और कमांड लाइन का उपयोग किया
$ openssl smime -pk7out -in message.eml | openssl asn1parse
और परिणामों की सामग्री से पता चला कि संदेश सीबीसी मोड में 3DES EDE के साथ एन्क्रिप्ट किया गया है:
913:d=5 hl=2 l= 8 prim: OBJECT :des-ede3-cbc
हस्ताक्षर एल्गोरिथ्म ढूँढना एक और चुनौती है। मैं सोच यह SHA-1 है, लेकिन डिक्रिप्ट किए गए संदेश में बहुत सारे प्रमाणपत्र हस्ताक्षर शामिल हैं, और मुझे यकीन नहीं है कि संदेश क्या है।
$ openssl smime -decrypt -in smime.eml -recip me.crt -inkey me.key | \
openssl smime -pk7out | openssl asn1parse
...
30:d=5 hl=2 l= 5 prim: OBJECT :sha1
जबकि प्रश्न वास्तव में संदेश डेटा को एन्क्रिप्ट करने के लिए उपयोग किए जाने वाले सममित और हैश एल्गोरिथम के बारे में पूछ रहा है, प्रमाण पत्र के लिए पैरामीटर (जिसमें सममित कुंजी को एन्क्रिप्ट करने के लिए उपयोग की जाने वाली सार्वजनिक कुंजी है जो बदले में डेटा से निपटने के लिए उपयोग की जाती है) प्रमुख पीढ़ी के समय में चयनित। मैंने इसे एक नई व्यक्तिगत कुंजी जोड़ी बनाते समय कार्रवाई में देखा है StartSSL ; वेब इंटरफ़ेस RSA कुंजी के आकार के लिए पूछता है और कौन सा हस्ताक्षर एल्गोरिथ्म मैं उपयोग करना चाहता हूं, साथ ही चेतावनी दी है कि SHA-1 चुनना आपको कुछ सिस्टम के साथ असंगत प्रमाणपत्र के साथ छोड़ देगा।
इसके लायक क्या है, मेरा अपना व्यक्तिगत प्रमाण पत्र 2048-बिट RSA और SHA-1 हस्ताक्षर एल्गोरिथ्म का उपयोग करता है, जिसे मैंने ओएस एक्स मेल.ऐप, आईओएस मेल और आउटलुक 2007 सहित कई विभिन्न प्रणालियों में अच्छी तरह से काम किया है।