2015-03-06 5 views
12

मैं अपने ऐप के निजी कीस्टोर में गुप्त डेटा स्टोर करना चाहता हूं।Android API स्तर <18 के लिए KeyPairGeneratorSpec का उपयोग करें?

हालांकि, जैसा कि मैं ऐसा करने के लिए कोड पर काम कर रहा था, एंड्रॉइड स्टूडियो ने चेतावनी दी कि KeyPairGeneratorSpec.Builder(context) को एपीआई स्तर 18 की आवश्यकता है और मैं कम से कम 14 को लक्षित कर रहा हूं। :-(

मैं कैसे 17?

+1

आमतौर पर आप चीजों को आप समर्थन पुस्तकालय में की जरूरत है पा सकते हैं, लेकिन यह ऐसा लगता है कि उन्होंने उस वर्ग को नहीं जोड़ा है। https://developer.android.com/reference/android/support/v4/app/package-summary.html क्षमा करें मेरे पास आपके लिए कोई जवाब नहीं है। – nasch

+1

हाँ, मैं भी अपनी आंखों पर विश्वास नहीं कर सका। –

उत्तर

5

AndroidKeyStore जो आम तौर पर हार्डवेयर के द्वारा समर्थित है (लेकिन जरूरी नहीं तो) औपचारिक रूप से के रूप में एपीआई स्तर 18 में पेश किया गया था के माध्यम से एंड्रॉयड एपीआई स्तर 14 के लिए मेरे एप्लिकेशन में गुप्त डेटा स्टोर कर सकते हैं आप देख सकते हैं और यहाँ वर्णित है: http://developer.android.com/training/articles/keystore.html

निकोले Elenkov AndroidKeyStore परीक्षण करने के लिए एक अच्छी छोटी एप्लिकेशन लिखा आप यहां पा सकते हैं कि: https://github.com/nelenkov/android-keystore

कुछ चाल है कि आप जिस तरह का काम करने के लिए इसे पाने के लिए उपयोग कर सकते हैं कर रहे हैं एपीआई स्तर 17 पर यदि आप एओएसपी में खोदते हैं, लेकिन इसकी कोई गारंटी नहीं है यह हर डिवाइस पर काम करेगा ताकि यह व्यर्थ है। आप निश्चित रूप से इससे पहले किसी भी चीज़ पर काम नहीं करेंगे।

एंड्रॉइडकेस्टोर का उपयोग अपनी निजी कुंजी को स्टोर करने के लिए वास्तव में आवश्यक नहीं है जब तक कि आप सुरक्षा के बारे में सुपर परावर्तक न हों और इसकी मांग हार्डवेयर या एक पृथक प्रक्रिया (गैर हार्डवेयर-समर्थित उपकरणों पर कीस्टोर प्रक्रिया) द्वारा समर्थित हो।

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

जावा और Android का उपयोग सॉफ्टवेयर में एक कुंजी युग्म उत्पन्न करने पर कुछ अच्छी जानकारी यहां पाया जा सकता है:

Android RSA Keypair Generation - Should I use Standard Java/Bouncy Castle/Spongy Castle/JSch/Other?

https://docs.oracle.com/javase/7/docs/api/java/security/KeyStore.html

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