कई लोगों की तरह - मैं एक साझा codebase (Windows स्टोर + Android + MonoTouch + [बाद में] WP8) के साथ एप्लिकेशन को विकसित कर रहा हूँ।क्या मोनोड्रॉइड के माध्यम से एंड्रॉइड में बॉक्स से बाहर कोई सुरक्षित भंडारण है?
साथ ही, कई ऐप्स के साथ, मेरे पास स्थानीय राज्य है कि मुझे इस ऐप के लिए जारी रखने की आवश्यकता है।
मैं संग्रहीत जानकारी का एक टुकड़ा हस्ताक्षरित उपयोगकर्ता के लिए प्रमाणीकरण टोकन है। विंडोज स्टोर प्लेटफार्म पर मैंने टोकन के सहायक डेटा (उपयोगकर्ता नाम और जारी की गई तारीख) और वास्तविक टोकन मान के लिए PasswordVault
के लिए रोमिंग सेटिंग्स (ApplicationData.Current.RoamingSettings
) के मिश्रण के साथ इसका संग्रहण लागू किया है। इस प्रकार टोकन ओएस-स्तरीय आत्मनिरीक्षण से संरक्षित है, क्योंकि यह ओएस द्वारा एन्क्रिप्ट किया गया है।
अब मैं अपने मोनोड्रॉइड बिल्ड के लिए एक ही इंटरफ़ेस को कार्यान्वित कर रहा हूं, और मैं प्लेटफॉर्म द्वारा प्रदान किए गए किसी भी तरीके से नहीं देख सकता, डेटा को संग्रहीत करने के लिए जो केवल मेरे एप्लिकेशन द्वारा डिक्रिप्ट किया जा सकता है - उसी तरह पासवर्ड स्टोर ऐप्स के लिए वॉल्ट का उपयोग किया जा सकता है।
नतीजतन, पल में, मैं बस Android.Content.ISharedPreferences
इंटरफ़ेस Application.Context.GetSharedPreferences
विधि के माध्यम से उपयोग कर रहा हूँ पढ़ सकते हैं और इन मूल्यों को लिखने के लिए।
तो क्या मैं अपनी धारणा में सही हूं कि मंच (मोनोडायराइड या एंड्रॉइड) कोई सुरक्षित स्टोरेज ओओबी प्रदान नहीं करता है? ऐप के भीतर एन्क्रिप्शन को लागू करने का एकमात्र विकल्प है - निश्चित रूप से कोड में एन्क्रिप्शन कुंजी को बेक करने की आवश्यकता होगी? या क्या मैं ऐप पर हस्ताक्षर करने के लिए इस्तेमाल किए गए प्रमाण पत्र को पकड़ सकता हूं और इसे एक कुंजी के रूप में उपयोग कर सकता हूं?
अंत में यह, दुनिया के अंत नहीं है अगर मैं इस डेटा को एन्क्रिप्ट नहीं कर सकते हैं के बाद से टोकन है समय-सीमित वैसे भी - लेकिन यह अच्छा होगा अगर मैं वास्तव में यह ठीक सेकर सकता है!
ओह उफ़! 'ओओबी' से मेरा मतलब है 'बॉक्स से बाहर'! I.e वहाँ एक मंच है जो बॉक्स से उपलब्ध एन्क्रिप्टेड स्टोरेज के लिए तंत्र प्रदान करता है :-)। प्रश्न शीर्षक बदलना होगा ... –
; ओ) ठीक है, मुझे गलत समझा। –