मैं .NET की ProtectedData.Protect विधि का उपयोग करके कुछ टेक्स्ट फ़ाइल डेटा एन्क्रिप्ट और डिक्रिप्ट करने का प्रयास कर रहा हूं। मैं एक मशीन पर पाठ को एन्क्रिप्ट करने और इसे फ़ाइल में सहेजने में सक्षम होना चाहता हूं और पाठ को एक अलग मशीन पर डिक्रिप्ट करना चाहता हूं। मशीनें एक ही डोमेन में हैं और दोनों एक ही उपयोगकर्ता नाम के तहत एक ही सेवा चला रहे हैं, इसलिए मैंने डेटाप्रोसेन्टस्कोप का उपयोग करने का विचार किया। CurrentUser या तो सेवा को एन्क्रिप्ट करने और फ़ाइल को डिक्रिप्ट करने की अनुमति देगा।DataProtectionScope.CurrentUser एन्क्रिप्शन मशीनों पर काम नहीं कर रहा है
जब सर्विस नंबर दो फ़ाइल को डिक्रिप्ट करने का प्रयास करता है, तो यह "निर्दिष्ट स्थिति में उपयोग के लिए मान्य नहीं है" फेंकता है। अन्य साइटें बताती हैं कि इस प्रकार की समस्या तब होती है जब प्रतिरूपण सही तरीके से नहीं किया जाता है, लेकिन कोई प्रतिरूपण नहीं होता है। दोनों सेवाएं एक ही एडी खाते के तहत चलती हैं। ऐसा लगता है कि सेवाएं डेटा एन्क्रिप्ट करने के लिए विभिन्न चाबियों का उपयोग कर रही हैं लेकिन मुझे नहीं पता कि यह क्यों होगा क्योंकि वे एक ही खाते के तहत चल रहे हैं।
क्या किसी और को इस तरह का मुद्दा सामने आया है?
कोड मैं एन्क्रिप्ट और decypt लिए उपयोग कर रहा हूँ मूल रूप से है:
byte[] bytes = Encoding.Unicode.GetBytes(password);
byte[] protectedPassword = ProtectedData.Protect(bytes, null, DataProtectionScope.CurrentUser);
return Convert.ToBase64String(protectedPassword); //then I write this to a file
धन्यवाद!
यह आपकी स्थिति की व्याख्या कर सकता है: http://support.microsoft.com/kb/309408#4 – Toby
क्या वे दोनों एक ही * डोमेन * खाते के अंतर्गत चल रहे हैं, या वे स्थानीय खातों के अंतर्गत हैं जो बस होते हैं वही उपयोगकर्ता नाम और पासवर्ड? –