2012-09-28 34 views
5

मैं OpenSSL के लिए आदेशों का पालन किया है निजी और सार्वजनिक कुंजी उत्पन्न करने के लिए:उत्पन्न निजी और सार्वजनिक कुंजी OpenSSL

openssl genrsa –aes-128-cbc –out priv.pem –passout pass:[privateKeyPass] 2048 

और

openssl req –x509 –new –key priv.pem –passin pass:[privateKeyPass] -days 3650 –out cert.cer 

लेकिन प्रथम आदेश मैं पाने के लिए काम नहीं कर रहे निम्नलिखित त्रुटि:

usage: genrsa [args] [numbits] 
-des   encrypt the generated key with DES in cbc mode 
-des3   encrypt the generated key with DES in ede cbc mode (168 bit key) 
-seed 
       encrypt PEM output with cbc seed 
-aes128, -aes192, -aes256 
       encrypt PEM output with cbc aes 
-camellia128, -camellia192, -camellia256 
       encrypt PEM output with cbc camellia 
-out file  output the key to 'file 
-passout arg output file pass phrase source 
-f4    use F4 (0x10001) for the E value 
-3    use 3 for the E value 
-engine e  use engine e, possibly a hardware device. 
-rand file:file:... 
       load the file (or the files in the directory) into 
       the random number generator 

मैं क्या गलत कर रहा हूं?

संपादित करें:

openssl genrsa -aes128 -out privkey.pem 2048 

अब मैं secound के साथ एक त्रुटि मिल रही है:

unknown option –x509 
+0

मुझे आश्चर्य है कि पैरामीटर का क्रम मायने रखता है? –

उत्तर

9

'जेनर्स' सिर्फ एक आरएसए कुंजी उत्पन्न करता है।

'req' तो x509 शैली अनुरोध करने के लिए उस कुंजी का उपयोग करता है।

यदि आपको केवल आरएसए कुंजी जोड़ी की आवश्यकता है - genrsa का उपयोग करें।

यदि आपको एक कीपैयर और हस्ताक्षरित x509 अनुरोध की आवश्यकता है तो आप 'genrsa' और फिर 'req' का उपयोग करें। ।

वैकल्पिक रूप से 'अनुरोध' भी आप के लिए है कि कुंजी (यानी यह genrsa 'कमांड समाहित (और gendh) उत्पन्न कर सकते हैं

तो:

openssl genrsa -aes128 -out privkey.pem 2048 
openssl req -new -x509 -key privkey.pem 

के लगभग बराबर है
openssl req -new -x509 -keyout privkey.pem -newkey rsa:2048 

कि 'genrsa', 'अनुरोध' आप एन्क्रिप्शन के रूप में AES128 निर्दिष्ट करने के लिए अनुमति नहीं है के विपरीत छोड़कर।

इसलिए एंटरप्राइज़ सेटिंग्स में से कई एक कुंजी एन्क्रिप्शन पर पर्याप्त नियंत्रण प्राप्त करने के लिए दो चरणों में करता है।

+0

इस कमांड ने चाल की है: openssl req -new -x509 -key new.pem -days 3650 -out cert.crt बहुत धन्यवाद – kozla13

+2

ध्यान दें कि -x509 एक स्व-हस्ताक्षरित प्रमाणपत्र उत्पन्न करता है। यदि आप प्रमाणपत्र अनुरोध जेनरेट करना चाहते हैं तो इस विकल्प को छोड़ दें। – Todd

1

मैं उत्पादन से देख सकते हैं, आप गलत एल्गोरिथ्म चुनें मैं पहले आदेश को हल किया। क्या आप -aes-128-cbc के बजाय -aes128 पास नहीं करना चाहिए?

मैनुअल से मुझे लगता है कि -aes-128-cbcopenssl enc के लिए एक उचित पैरामीटर है, लेकिन मुझे नहीं पता कि इसे genrsa के लिए काम करना चाहिए या नहीं।