2011-06-07 16 views
5

दरअसल मैं एंड्रॉइड के लिए नया हूं। क्या हम एक फ़ोल्डर को एन्क्रिप्ट कर सकते हैं जो में एसडीकार्ड में उप फ़ोल्डर और फ़ाइलें शामिल हैं और इसे वापस डिक्रिप्ट कर सकते हैं?क्या हम एंड्रॉइड में एक फ़ोल्डर एन्क्रिप्ट कर सकते हैं?

किसी भी मदद की सराहना की जाएगी।

धन्यवाद।

उत्तर

0

यदि आप अपने एप्लिकेशन के लिए निजी डेटा एन्क्रिप्ट करने की कोशिश कर रहे हैं, न कि उपयोगकर्ता, तो आपको एन्क्रिप्ट करने के लिए एक कुंजी/टोकन/nonce तक पहुंच की आवश्यकता होगी। जब तक आप दूरस्थ रूप से एन्क्रिप्शन नहीं कर रहे हैं या एंड्रॉइड एनडीके का उपयोग नहीं कर रहे हैं तो यह कुंजी/टोकन/नॉनसे प्राप्त करने के लिए छोटा होगा और इसे अनएन्क्रिप्ट करें। एपीके संकलित नहीं होते हैं और आसानी से अनपॅक किए जा सकते हैं और स्रोत देखे जा सकते हैं।

+0

यह कहना नहीं है कि एनडीके समान असंतोषजनक मुद्दों से ग्रस्त नहीं है, यह डीईएक्स फ़ाइलों की तुलना में तुच्छ नहीं है। –

+0

ओपी क्या करने की कोशिश कर रहा है यह अनुमान लगाने के लिए इतना जल्दी मत बनो। हो सकता है कि पासकी उपयोगकर्ता द्वारा दर्ज की गई हो, जिस स्थिति में आपके कोई भी तर्क मान्य नहीं है। – Felix

+0

सच है, अगर उपयोगकर्ता ने अधिक जानकारी प्रदान की है तो हम उसे जान लेंगे। –

5

सामान्य रूप से आप जावा के लिए कितने नए हैं? डेटा एन्क्रिप्शन/डिक्रिप्शन प्रदान करने के लिए आप एंड्रॉइड में सभी javax.security और javax.crypto कक्षाओं (जैसे Cipher) का उपयोग कर सकते हैं।

ध्यान रखें कि एसडी कार्ड पर फ़ाइलों को सीधे उपयोगकर्ता द्वारा एक्सेस किया जा सकता है (या तो पीसी पर बढ़कर और फ़ाइल प्रबंधक ऐप्स के माध्यम से या फ़ाइल के माध्यम से), जिसका मतलब है कि ऐसा कोई मौका है, जबकि वे सक्षम नहीं हो सकते फ़ाइल में डेटा को पढ़ने के लिए, उपयोगकर्ता सैद्धांतिक रूप से उन निर्देशिकाओं को हटा सकता है जो आप वहां बनाते हैं यदि वे चुनते हैं ... और यह आपके एप्लिकेशन के लिए कोशेर नहीं हो सकता है।

इसके अलावा, वास्तव में एक फ़ोल्डर को "एन्क्रिप्टेड" के रूप में सेट करने का कोई तरीका नहीं है और आपके पास स्वचालित रूप से कोई भी फ़ाइल है जो आपके लिए सुरक्षित है। आपको उस निर्देशिका को बनाने की आवश्यकता होगी जिसका आप उपयोग करना चाहते हैं, और तब प्रत्येक फ़ाइल को एन्क्रिप्ट/डिक्रिप्ट करें जब आप डेटा लिखते/पढ़ते हैं।

आशा है कि मदद करता है!

+0

अरे यह लिंक काम नहीं कर रहा है –

0

अन्य उत्तरों में बताए गए अनुसार आप एंड्रॉइड पर डेटा डेटा एन्क्रिप्ट और डिक्रिप्ट कर सकते हैं। लेकिन विचार करें कि "कर" अधिक जटिल हो जाता है।

1) डीईएस और 56 बिट कुंजी का उपयोग करें और आपको यूएस में निर्यात लाइसेंस की आवश्यकता नहीं है। 128 या 256 बिट कुंजी के साथ एईएस या टीडीईएस का उपयोग करें और आपको पेपरवर्क भरना शुरू करना पड़ सकता है :)

2) जब तक कि आप उपयोगकर्ता को मुख्य आकार के बराबर पासफ्रेज दर्ज नहीं करना चाहते हैं, तो आप बीज और फिर SHA256 का उपयोग कर पासफ्रेज़ बहु हैश।

3) आपको सिफर डेटा को 64 बिट वर्ण सेट (अक्षरों के ऊपरी और निचले मामले, संख्याओं, + और /) में सिफर टेक्स्ट के रूप में एन्कोड करने की आवश्यकता हो सकती है। यह आमतौर पर तीन बाइट्स के समूह लेता है, जब आवश्यक हो तो उन्हें पैड के रूप में चार बाइट्स तक बढ़ाता है। बेस 64 एन्कोड डीकोड एल्गोरिदम के लिए बस इंटरनेट पर खोजें।

4) आप इस योजना में अप्रत्यक्षता का एक स्तर जोड़ना चाहते हैं ताकि उपयोगकर्ता फ़ाइल सममित कुंजी को बदलने के बिना बाद की तारीख में पासवर्ड बदल सके। तो दो एन्क्रिप्शन हैं, फ़ाइल को एक यादृच्छिक सममित कुंजी के साथ एन्क्रिप्ट करना और फिर उपयोगकर्ता पासफ्रेज़ के साथ यादृच्छिक सममित कुंजी को एन्क्रिप्ट करना। ऊ।

संबंधित मुद्दे