मुझे वास्तव में RSACryptoServiceProvider के साथ ओपनेंस इंटरऑपरेबिलिटी प्राप्त करने की आवश्यकता है, ताकि मैं एक सॉफ्टवेयर लाइसेंस कुंजी सिस्टम (Ref) लागू कर सकूं।
मुझे ओपनएसएल का उपयोग करके लिनक्स में निजी और सार्वजनिक कुंजी बनाने में सक्षम होना चाहिए ताकि बाद में उन्हें PHP वेब एप्लिकेशन में लाइसेंस प्रबंधन के लिए उपयोग किया जा सके। फिर भी, उन्हें वीबी.Net प्रशंसा में आरएसए हस्ताक्षर लाइसेंस सिस्टम के आधार के रूप में भी उपयोग करें।
खोज के एक सप्ताह बाद, मुझे अंत में पता चला कि यह पूरी तरह से संभव है, इसलिए मैंने सोचा कि मैं इसे साझा करूंगा।
लिनक्स (या कोई अन्य उपयोगी ओएस) पर प्रारंभ करें और एक निजी कुंजी (priv.pem), एक सार्वजनिक कुंजी (public.pem), एक प्रमाणपत्र (प्रमाणपत्र.crt), एक व्यक्तिगत सूचना एक्सचेंज फ़ाइल बनाने के लिए openssl का उपयोग करें (certificate.pfx)। सीएन और ईमेल एड्रेस फ़ील्ड के बारे में चिंता न करें, प्रमाण पत्र और पीएफएक्स फ़ाइलों को केवल सार्वजनिक या निजी कुंजी को RSACryptoServiceProvider ऑब्जेक्ट में प्राप्त करने के लिए वाहन के रूप में उपयोग किया जा रहा है।
Dim cert As New X509Certificate2("certificate.pfx", "", X509KeyStorageFlags.Exportable)
Dim rsaProvider As RSACryptoServiceProvider = DirectCast(cert.PrivateKey, RSACryptoServiceProvider)
आप निजी कुंजी या सार्वजनिक कुंजी की जरूरत है इस कोशिश:
msgbox(rsaProvider.ToXmlString(True)) 'Private key in XML format
msgbox(rsaProvider.ToXmlString(False)) 'Public key in XML format
में सार्वजनिक कुंजी प्राप्त करने के लिए
openssl genrsa -out private.pem 1024
openssl rsa -in private.pem -out public.pem -pubout
openssl req -nodes -x509 -days 3650 -subj '/CN=www.example.com/[email protected]' -new -key private.pem -out certificate.crt
openssl pkcs12 -export -out certificate.pfx -inkey private.pem -in certificate.crt
अब कोड में निजी कुंजी प्राप्त करने के लिए कोड:
Dim cert As New X509Certificate2("certificate.crt")
Dim rsaProvider As RSACryptoServiceProvider = DirectCast(cert.PublicKey.Key, RSACryptoServiceProvider)
यदि आप नी घ सार्वजनिक कुंजी इस प्रयास करें:
msgbox(rsaProvider.ToXmlString(False)) 'Public key in XML format
आने के लिए अधिक .....
http://stackoverflow.com/questions/497428/how-do-i-import-an-rsa-public -कि-से-नेट-इन-ओपनएसएल ऐसा लगता है कि इसे काम करना चाहिए, नहीं? –