2013-02-17 92 views
5

उत्पन्न करते समय SHA1 को संदेश पचाने के रूप में उपयोग करना मुझे अपने कंप्यूटर सुरक्षा वर्ग के लिए एक प्रयोगशाला करना है जहां मैं सुरक्षित संचार करने के लिए जीजीपी और ओपनएसएसएल का उपयोग करना चाहता हूं। मैं इस कदम के बारे में उलझन में हूँ:एएस 256 सीबीसी कुंजी

Use 'openssl enc' command line symmetric cipher routine to generate a 
256bit AES key in CBC mode. You should use SHA1 as a message digest 
function for generating the key. Save generated secret key, IV, and 
salt into file named aes.key. (Use –P opting to print out the key, 
salt and IV used then immediately exit, don’t do any encryption at 
this step.) 

लेकिन मैं the man pages for openssl enc के माध्यम से देख रहा हूँ और मैं डाइजेस्ट के लिए कोई विकल्प देखें। मुझे पता है कि एक openssl dgst कमांड है लेकिन यह सिर्फ इनपुट के हैश की गणना करता है। क्या सवाल के साथ कोई दोष है? कुंजी "उत्पन्न करने के लिए आपको संदेश डाइजेस्ट फ़ंक्शन के रूप में SHA1 का उपयोग करना चाहिए"? क्या मैं एक कुंजी उत्पन्न करता हूं और फिर केवल SHA1 (key.aes) करता हूं?

इसके साथ किसी भी मदद की सराहना की जाएगी।

धन्यवाद।

उत्तर

5

openssl enc के लिए उपयोग की जानकारी है जो आप जब यह इस तरह के -h के रूप में एक अज्ञात तर्क दे रही है पाने से:

-md   the next argument is the md to use to create a key 
       from a passphrase. One of md2, md5, sha or sha1 

तो आप के रूप में हैश फंक्शन कुंजी व्युत्पत्ति में इस्तेमाल किया SHA1 निर्दिष्ट करने के लिए -md sha1 उपयोग करना चाहिए। कदम के लिए एक पूर्ण समाधान होगा:

openssl enc -aes-256-cbc -md sha1 -P 

वे वास्तव में manual page में -md व्याख्या करने के लिए भूल गए हैं लगता है।

+1

आपको बहुत बहुत धन्यवाद –