/ / अनुप्रयोग में निजी कुंजी सहेजना - c #, .net, एन्क्रिप्शन, कॉन्फ़िगरेशन, rsa

एप्लिकेशन में निजी कुंजी सहेजना - सी #, .net, एन्क्रिप्शन, कॉन्फ़िगरेशन, आरएसए

मैं अपने एप्लिकेशन के लिए कस्टम कॉन्फ़िगरेशन बनाना चाहता हूं, app.config का उपयोग नहीं कर रहा हूं।

इसलिए उदाहरण के लिए मैं कुछ आईएनआई फ़ाइल बनाना चाहता हूं जो कॉन्फ़िगरेशन को स्वयं संग्रहीत करता है और इसे एन्क्रिप्ट करना चाहता है। इसलिए मैं कनेक्शन स्ट्रिंग, पासवर्ड आदि को एन्क्रिप्ट करना चाहता हूं जो इस फाइल में होगा।

मैं RSACryptoServiceProvider का उपयोग करना चाहता हूं। तो मैं एक सार्वजनिक कुंजी के साथ कॉन्फ़िगर फ़ाइल बनाऊंगा, और मेरा आवेदन निजी कुंजी वाले डिक्रिप्ट करेगा। मुझे आवेदन के अंदर इस निजी कुंजी को किसी तरह स्टोर करना होगा।

मैं कास्ट स्ट्रिंग मान के रूप में डाल सकता हूं, लेकिन जब आप एप्लिकेशन को रिवर्स करते हैं तो इसे देखना आसान है।

तो, मेरे आवेदन के अंदर निजी कुंजी को संग्रहीत करने का सबसे अच्छा तरीका क्या है?

कैसे RsaProtectedConfigurationProvider करता है?

उत्तर:

जवाब के लिए 0 № 1

आप डेटा सुरक्षा API का उपयोग कर सकते हैं, जो इस तरह के उपयोग के लिए अभिप्रेत है। यह विंडोज़ में प्रति-उपयोगकर्ता रहस्य संग्रहीत करता है।

कुंजी को "पुनः प्राप्त करना आसान नहीं है, लेकिन इसमें निहित हैमन कि यह समाधान विंडोज सुरक्षा पर निर्भर करता है। वह उपयोगकर्ता जिसके लिए आपने कुंजी संग्रहीत की है, उसे फिर से आसानी से प्राप्त कर पाएंगे (लेकिन अन्य उपयोगकर्ता नहीं कर सकते)।

http://en.wikipedia.org/wiki/Data_Protection_API

.NET से इसका उपयोग करने के लिए, प्रलेखन के लिए शुरू करें संरक्षितडता वर्ग.