2010-08-10 11 views
9

मैं जीरा के उपयोग के लिए जीमेल एसएमटीपी प्रमाण पत्र आयात करने की कोशिश कर रहा हूं, लेकिन जावा जावाटोल का उपयोग करते समय मुझे यह त्रुटि मिलती है।keytool त्रुटि: java.lang.Exception: इनपुट X.509 प्रमाणपत्र

मैंने सर्टिफिकेट प्राप्त करने के लिए openssl का उपयोग किया, ---- प्रमाणपत्र शुरू करें ---- और ---- अंत प्रमाणपत्र ---- (समावेशी)। मैंने विंडोज प्रमाणपत्र प्रबंधक का उपयोग कर x.50 9 प्रमाण पत्र बनाने का भी प्रयास किया, लेकिन फिर भी यह त्रुटि प्राप्त हुई। मैंने सत्यापित किया है कि फ़ाइल में कोई अतिरिक्त सफेद जगह नहीं है।

मैंने इस समस्या के साथ ऑनलाइन कई लोगों को देखा है, लेकिन कोई भी समाधान मेरे लिए काम नहीं कर रहा है। किसी भी सहायता की सराहना की जाएगी।

धन्यवाद

उत्तर

16

openssl x509 -outform der -in foo.pem -out foo.der

फिर DER- एन्कोड उत्पादन प्रमाण पत्र का उपयोग करें।

+0

मैं वास्तव में इस काम करेगा उम्मीद कर रहा था, लेकिन मैं एक ही त्रुटि मिलती रहती है बहर। यह वही है जो मैं बिल्कुल कर रहा हूं। openssl s_client -connect smtp.gmail.com:465 मैं कॉपी कि gmail.pem openssl X509 -outform der नामक एक फाइल करने के लिए -इन gmail.pem आउट gmail.der Keytool आयात -file pathTo /gmail.der -keystore pathTo/cacerts – dbbooh01

+0

यह वास्तव में काम करता था, मैं keytool का उपयोग करते समय तर्क -trustcacerts भूल गया। सहायता – dbbooh01

+0

@ dbbooh01 के लिए धन्यवाद, संभवतः यह काम करने का कारण यह है क्योंकि '-trustcacerts' वितरित cacerts फ़ाइल से मानक रूट CAs आयात करता है। इसमें रूट सीए शामिल होंगे जो जीमेल के लिए ट्रस्ट चेन में थे। –

5

उत्तर सही है लेकिन प्रतिलिपि/पेस्ट में -----BEGIN CERTIFICATE----- और -----END CERTIFICATE----- शामिल करना सुनिश्चित करें। यह आदेश तब काम करेगा:

openssl x509 -outform der -in gmail.pem -out gmail.der 

और फिर आप कार्य करें:

sudo keytool -import -file gmail.der -keystore $JAVA_HOME/jre/lib/security/cacerts -trustcacerts 
+0

हाँ, यह मेरी समस्या का कारण भी था – Andrejs

2

दुर्भाग्य से, openssl मेरे लिए काम नहीं किया।

unable to load certificate 2740:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:./crypto/as n1/tasn_dec.c:1294: 2740:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:./ crypto/asn1/tasn_dec.c:380:Type=X509_CINF 2740:error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 e rror:./crypto/asn1/tasn_dec.c:749:Field=cert_info, Type=X509 2740:error:0906700D:PEM routines:PEM_ASN1_read_bio:ASN1 lib:./crypto/pem/pem_oth .c:83:

इस ज्ञान का आधार और सफलता का पालन किया गया।

https://knowledge.verisign.ch/support/code-signing-support/index?page=content&id=SO18659&actp=search&viewlocale=en_US&searchid=1343045026667

संबंधित मुद्दे