का उपयोग करके एन्क्रिप्टेड डेटा का निरंतर भंडारण मुझे एप्लिकेशन रनों के बीच एन्क्रिप्टेड डेटा (कुछ छोटे तार) स्टोर करने की आवश्यकता है। मैं नहीं चाहता कि उपयोगकर्ता हर बार एक पासफ्रेज प्रदान करे, जिसने एप्लिकेशन को लॉन्च किया है। अर्थात। आखिरकार यह एन्क्रिप्शन कुंजी सुरक्षित रूप से संग्रहीत करने के लिए नीचे चला जाता है।.NET
मैं RSACryptoServiceProvider में देख रहा था और PersistentKeyInCsp का उपयोग कर रहा था, लेकिन मुझे यकीन नहीं है कि यह कैसे काम करता है। एप्लिकेशन रन या मशीन पुनरारंभ के बीच लगातार महत्वपूर्ण कंटेनर है? यदि हां, तो यह उपयोगकर्ता विशिष्ट है, या मशीन विशिष्ट है। अर्थात। अगर मैं उपयोगकर्ता के रोमिंग प्रोफाइल में अपना एन्क्रिप्टेड डेटा संग्रहीत करता हूं, तो क्या उपयोगकर्ता डेटा को डिक्रिप्ट कर सकता है यदि उपयोगकर्ता एक अलग मशीन पर लॉग ऑन करता है?
यदि उपर्युक्त काम नहीं करता है, तो मेरे विकल्प क्या हैं (मुझे रोमिंग प्रोफाइल से निपटने की आवश्यकता है)।
बस भावी पीढ़ी के लिए, आप अन्य कोड की जांच के लिए बने इसे कहीं अधिक "सार्वजनिक" (कम से कम उदाहरण के लिए अपने इंट्रानेट पर) तो वे इसे करने के लिए से प्राप्त कर सकते हैं संभाल करने के लिए होगा अन्य मशीनें आम तौर पर आप मशीन-और-उपयोगकर्ता-विशिष्ट स्थान प्राप्त करने के लिए Environment.SpecialFolder.AplicationData का उपयोग कर सकते हैं। –
उत्तर के लिए धन्यवाद, यह काम करना चाहिए। क्या आपको पता है कि यह 1.1 में कैसे किया जा सकता है? .NET 2.0 –
.NET 1.1 में DPAPI का उपयोग करने के लिए संरक्षित डेटा नया है, आपको पी/Invoke का उपयोग करने की आवश्यकता होगी।एक पूर्ण पूर्ण रन-थ्रू के लिए यहां देखें: http://msdn.microsoft.com/en-us/library/aa302402.aspx –