2016-03-03 7 views
13

मैं http://developer.android.com/training/articles/keystore.html में एंड्रॉयड दस्तावेज़ पढ़ें लेकिन मैं कुछ विवरण याद कर रहा हूँ ...एंड्रॉइड कीस्टोर सिस्टम कैसे सुरक्षित हो सकता है?

एक आवेदन एक कुंजी (सुडौल या असममित) AndroidKeyStore का उपयोग कर उत्पन्न करता है।

क्या हम उस कीस्टोर से कुंजी निकाल सकते हैं?

क्या कोई अन्य एप्लिकेशन (एपीबीबी) ऐपए द्वारा उत्पन्न कुंजी तक पहुंच सकता है?

किस मामले में हम कुंजी खो सकते हैं? डिवाइस फैक्टरी केवल रीसेट?

धन्यवाद।

+0

1) आपको अपनी कीस्टोर को सुरक्षित रखना चाहिए और किसी भी परिस्थिति में इसे साझा नहीं करना चाहिए 2) कीस्टोर के भीतर की चाबियाँ एक पासवर्ड की आवश्यकता होती है, हालांकि मुझे लगता है कि कुछ भी संभव है, इसलिए बिंदु 1 3 देखें) सुनिश्चित नहीं है कि मैं सवाल समझता हूं लेकिन आम तौर पर मैं नहीं कहेंगे, कम से कम निजी कुंजी नहीं (ऐप पर हस्ताक्षर करने के लिए उपयोग किया जाता है) 4) यह मुझे यकीन नहीं है कि जब तक आपके पास कीस्टोर है, तब तक आप इसे प्राप्त करते हुए एक हस्ताक्षरित ऐप बना सकते हैं, लेकिन फिर से। इसे डिवाइस पर संग्रहीत नहीं किया जाना चाहिए या इसी तरह के – cYrixmorten

+0

आपके उत्तर के लिए धन्यवाद लेकिन मैं उस कुंजीस्टोर के बारे में बात नहीं कर रहा हूं जिसे हम एप्लिकेशन पर हस्ताक्षर करने के लिए उपयोग करते हैं। मैंने इस सवाल पर एंड्रॉइड दस्तावेज जोड़ा। –

+0

ठीक है तो मैंने गलत समझा :-) nvm – cYrixmorten

उत्तर

15

आप Android KeyStore Provider का उपयोग कर सकते हैं या सामान्य KeyStore फ़ाइल बना सकते हैं।

  • KeyStore (एपीआई 1): आप एक KeyStore फ़ाइल बनाने के लिए करना होगा और आप भी यह करने के लिए उपयोग करने के लिए गुप्त का प्रबंधन करना होगा। ये रहस्य हमलावरों को छिपाने के लिए बहुत संवेदनशील और मुश्किल है। व्यक्तिगत रूप से मैं इस विकल्प की सिफारिश नहीं करता हूं।

  • एंड्रॉइड कीस्टोर प्रदाता (एपीआई 18): इस एपीआई का उपयोग करके आप ऑपरेटिंग सिस्टम तक पहुंचने के लिए सभी भारी सामग्री का प्रतिनिधित्व करेंगे। आपको किसी भी पासवर्ड का उपयोग करने की आवश्यकता नहीं होगी क्योंकि ओएस स्वयं इसे लॉक स्क्रीन पिन, पासवर्ड, पैटर्न और अन्य चर से प्राप्त करने के लिए संग्रहीत करेगा। यदि डिवाइस में एक एम्बेडेड सुरक्षित तत्व है और भंडारण प्रकार हार्डवेयर-समर्थित पर सेट करें और न केवल सॉफ़्टवेयर समर्थित, यह वहां रहस्यों को संग्रहीत करेगा। सुरक्षित हार्डवेयर का उपयोग करके, किसी भी प्रकार के रहस्यों को स्टोर करने का यह सबसे सुरक्षित तरीका है। यह पासवर्ड को सुरक्षित रख सकता है भले ही उपयोगकर्ता ने फोन को रूट किया हो।

हम चाहते हैं कि कीस्टोर से कुंजी निकालने कर सकते हैं?

उनमें से दोनों के साथ आपका ऐप PrivateKey प्राप्त कर सकता है और यदि इसका मतलब है तो इसका उपयोग करें।

क्या कोई अन्य एप्लिकेशन (एपीबी) ऐपए द्वारा उत्पन्न कुंजी तक पहुंच सकता है?

कीस्टोर प्रदाता के साथ प्रत्येक ऐप केवल अपने कीस्टोर उदाहरणों या उपनामों तक पहुंच सकता है। एक सामान्य कीस्टोर के साथ, यदि किसी अन्य ऐप में फ़ाइल तक पहुंच है तो यह हमला करने का प्रयास कर सकता है।

किस मामले में हम कुंजी खो सकते हैं? डिवाइस फैक्टरी केवल रीसेट?

ऐप को हटाने से आपके ऐप की कीस्टोर प्रदाता इंस्टेंस मिट जाएगा। हालांकि, एंड्रॉइड में a nasty bug (एंड्रॉइड 5 से पहले अधिक आम) के कारण यदि उपयोगकर्ता लॉक स्क्रीन पैटर्न को पासवर्ड में बदलता है या पैटर्न को हटा देता है तो KeyStore मिटा दिया जाएगा। वही होता है जब उपयोगकर्ता एंड्रॉइड सेटिंग्स से "स्पष्ट प्रमाण-पत्र" निष्पादित करता है। क्लासिक कीस्टोर के बजाय, आप इसे बाहरी स्टोरेज में स्टोर कर सकते हैं और डिवाइस फ़ैक्टरी रीसेट के बाद भी इसे रख सकते हैं। हालांकि, यह प्रदाता से अभी भी कम सुरक्षित है।

मैं कुछ पहलुओं में गलत हो सकता हूं, लेकिन यही वह है जो मैं सीखता हूं और मैंने अभी अपना अनुभव साझा किया है। उम्मीद है कि यह आपके लिए सहायक है।

+1

धन्यवाद, यह मेरे लिए वास्तव में सहायक था। – Herman

+0

@ हरमन: क्या आप अपनी चाबियाँ स्टोर करने के लिए एंड्रॉइड कीस्टोर प्रदाता का उपयोग कर रहे हैं? – j10

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