एक संदर्भ के रूप में साथ और पोस्ट करने के लिए निरंतरता के रूप में एईएस एन्क्रिप्शन -कुंजी पीढ़ी: how to use OpenSSL to decrypt Java AES-encrypted data?OpenSSL
मैं निम्नलिखित प्रश्न हैं।
मैं एएस-सीबीसी-128 में डेटा एन्क्रिप्ट करने के लिए ओपनएसएसएल libs और प्रोग्रामिंग सी का उपयोग कर रहा हूं। मुझे कोई इनपुट बाइनरी डेटा दिया गया है और मुझे इसे एन्क्रिप्ट करना है।
मुझे पता है कि जावा में चतुर्थ और कीपरमीटर सेट करने के लिए एक सिफर पैरामीटर इंटरफ़ेस भी है।
क्या ओपनएसएसएल का उपयोग करके IV और एक कुंजी उत्पन्न करने का कोई तरीका है? संक्षेप में इन उद्देश्यों के लिए ओपनएसएसएल के यादृच्छिक जनरेटर को कॉल करने के लिए सी प्रोग्राम में कोई कैसे उपयोग कर सकता है। क्या आप में से कोई भी इस पर कुछ दस्तावेज़/उदाहरण/लिंक प्रदान कर सकता है?
धन्यवाद
"यादृच्छिक बीज" के बारे में विकी पर एक त्वरित पढ़ने का कहना है कि यह एक प्रारंभिक मान है जिसे आप यादृच्छिक जनरेटर शुरू करने के लिए प्रदान करते हैं। थॉमस पोर्निन के संदेश से, मैं देखता हूं कि ओपनएसएसएल इस बीज को/dev/urandom से चुनता है? लिनक्स पर फिर मैं इसे RAND_seed (कॉन्स्ट शून्य * buf, int num) के साथ कैसे सेट करूं ??? – pimmling
# शामिल हस्ताक्षर किए गए char rnd_seed = (हस्ताक्षरित चार) समय (NULL)); RAND_seed (rnd_seed, sizeof rnd_seed); इस बारे में कैसे? –
pimmling
@pimmling: नहीं, नहीं, एक हजार बार नहीं। 'समय (एनयूएलएल) में लगभग पर्याप्त एन्ट्रॉपी नहीं है - यदि आप ऐसा करते हैं, तो आपका सिस्टम * असुरक्षित रूप से असुरक्षित होगा। – caf