2012-10-08 17 views
14

अगर .apk निकाला गया है, संशोधित, पुनर्निर्मित और इस्तीफा दे दिया गया है तो ध्वजांकित करने के लिए मेरे एंड्रॉइड ऐप की सुरक्षा में सुधार करना चाहते हैं। Zdnet से link1 समस्या को नोट करते हुए आलेख यहां दिया गया है।एंड्रॉइड एपीके सत्यापित करें पुन: संग्रहित नहीं किया गया है?

चिंता यह है कि यदि ऐप हैकर द्वारा लक्षित किया गया है तो वे दुर्भावनापूर्ण कोड जोड़ सकते हैं और इसे डाउनलोड करने के लिए वैकल्पिक ऐप स्टोर और डुप्लिकेट उपयोगकर्ताओं को अपलोड कर सकते हैं।

तो क्या मैं एपीके या हस्ताक्षर प्रमाणपत्र के चेकसम को सत्यापित करने के लिए कोड सोच रहा हूं?

मुझे एप कोड की मरम्मत की सराहना की जा सकती है और किसी भी सुरक्षा कोड को हटाया जा सकता है, लेकिन इससे इसे दोबारा करने की कठिनाई बढ़ जाती है, शायद उनके लिए एक और ऐप आज़माएं।

[अपडेट] मुझे पता है कि Google Play store लाइसेंसिंग मॉड्यूल कुछ समान प्रदान करता है लेकिन मैं गैर-भुगतान किए गए ऐप्स और अन्य/गैर बाज़ारों के लिए कुछ ढूंढ रहा हूं।

+0

पुराना सवाल अब, लेकिन तब से मैंने इसका शोध किया है और हाल ही में एक ब्लॉग पोस्ट लिखा है जिसमें हस्ताक्षर सत्यापन शामिल है https://www.airpair.com/android/posts/adding-tampering-detection-to-your- एंड्रॉइड-ऐप – scottyab

+0

संबंधित https://android.stackexchange.com/questions/9312/how-can-i-verify-the-authenticity-of-an-apk-file-i-downloaded –

उत्तर

3

मैं Dexgaurd (एंड्रॉयड के लिए भुगतान किया अस्पष्टकर्ता) का उपयोग कर समाप्त हो गया एक मॉड्यूल apk सत्यापन preforms प्रदान करता है। मुख्य रूप से कार्यान्वित करने के लिए सरल और औसत सुरक्षा बेहतर प्रदान करता है।

dexguard.util.TamperDetection.checkApk(context) 

मुख्य मुद्दा है, जहां apk है कि यह बदला जाएगा सका दी खिलाफ सत्यापित करने के लिए की चेकसम स्टोर करने के लिए:

यहाँ की जांच करने के लिए कोड है। Dexguard तरीका स्थानीय रूप से इसे जांचना है, लेकिन कक्षा/स्ट्रिंग एन्क्रिप्शन और एपीआई छिपाने जैसी अन्य सुविधाओं का उपयोग इस कॉल को अस्पष्ट करता है।

0

Google लाइसेंसिंग सेवा का उपयोग करें यह प्ले स्टोर के साथ कनेक्ट होगा यह सुनिश्चित करने के लिए कि उपयोगकर्ता ने हर कुछ दिनों में ऐप खरीदा है। (आप राशि निर्धारित कर सकते हैं) ProGuard पर भी loook। यह आपके कोड से सभी वर्ग, विधि, और परिवर्तनीय नामों को स्ट्रिप करता है जिससे इसे समझने में वास्तव में समझना मुश्किल हो जाता है।

+0

धन्यवाद, मुझे पता है लाइसेंसिंग सेवा, लेकिन यह गैर-भुगतान किए गए ऐप्स के लिए अच्छा नहीं है, मैंने प्रश्न अपडेट किया है। इसके अलावा obfuscation एक अच्छी शुरुआत है लेकिन अपघटन को रोकता नहीं है, सहमत है यह कठिन बना देता है। – scottyab

+0

न ही भुगतान किए गए ऐप्स के लिए यह पर्याप्त है। एपॉइड पर अपलोड किए गए कई ऐप्स ने Google लाइसेंसिंग को तोड़ दिया है। – beetree

1

यहां कुछ लेख दिए गए हैं जो आपकी मदद कर सकते हैं।

Retrieving APK signature during runtime
Self checking an APK signature.
How to check APK signature.

+0

धन्यवाद, ये आलेख बताते हैं कि ऐप के हस्ताक्षर को पैकेजमैनेजर के रूप में कैसे प्राप्त किया जाए। हालांकि यह सही नहीं है कि कैसे इसे सत्यापित किया जाए (मुझे कुछ सचमुच स्पष्ट याद आ रही है।) – scottyab

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