अपने फोन पर उस ऐप को इंस्टॉल करने की वैधता पर बहस को तेज करते हुए, सत्यापन का प्रश्न एक है जिसे मैं थोड़ी देर के लिए समझने वाला हूं, और आपने मुझे हस्ताक्षर करने के संभावित तरीके का पता लगाने की कोशिश करने के लिए प्रेरित किया है एक एपीके।
एंड्रॉइड ऐप्स को .jar फ़ाइलों के सामान्य तरीके से साइन इन किया जाता है (.apk वास्तव में सिर्फ एक विशेष .jar है जो सिर्फ एक विशेष .zip है) हालांकि प्रमाण पत्र की प्रामाणिकता का पता लगाने के लिए यह तुच्छ नहीं हो सकता है जब तक कि आप कुछ अच्छा नहीं जानते। से तुलना। यह मूल रूप से फोन खुद क्या करता है - सत्यापित करता है कि कुछ ऐसा है जो एक ही पार्टी से होने का दावा करता है क्योंकि वास्तव में फोन पर पहले से ही कुछ है - फोन अज्ञात हस्ताक्षरकर्ताओं के साथ चीजों को स्थापित करने से इनकार नहीं करता है, यह केवल (वस्तु / स्पष्ट आवेदन के लिए) हो सकता है का डेटा) स्पष्ट पूर्वाभास जब कुछ नया कुछ पुराने से मेल नहीं खाता है जिसका वह दावा करता है।
आपको जारसिग्नर और कीटूल की आवश्यकता होगी। मेरा मानना है कि ये JDK से आते हैं जो SDK के बजाय Android SDK के लिए एक शर्त है।
पहले आप .apk में निहित सार्वजनिक कुंजी को सत्यापित करने का प्रयास करना चाहते हैं। आमतौर पर यह META-INF / CERTS.RSA में होता है, लेकिन यह किसी अन्य फ़ाइल में हो सकता है - अनज़िप -l आपको बताएगा। आप यह देखना चाहते हैं कि आप इसके बारे में क्या पता कर सकते हैं:
unzip -p suspect.apk META-INF/CERT.RSA | keytool -printcert
यह इस बारे में बहुत सारी जानकारी को डंप करने वाला है कि हस्ताक्षरकर्ता किसका दावा करता है। कुछ प्रमाण पत्र स्पष्ट रूप से स्वयं ज्ञात पार्टियों द्वारा हस्ताक्षरित हैं, लेकिन यह पता लगाने के बिना कि मुझे कैसे पता चलेगा, मुझे संदेह है कि आप ऐसा कुछ कर सकते हैं:
unzip -p suspect.apk META-INF/CERT.RSA | keytool -printcert | grep MD5
unzip -p knowngood.apk META-INF/CERT.RSA | keytool -printcert | grep MD5
यदि आपके पास उसी लेखक से एक प्रसिद्ध विश्वसनीय एपीके है, जिसने उसी प्रमाण पत्र का उपयोग किया है। मैं मान रहा हूं कि समान MD5 राशि वाले प्रमाण पत्र पर्याप्त हैं।
मान लें कि आपने प्रमाण पत्र पर भरोसा करने का फैसला किया है, तो आप देख सकते हैं कि इसका उपयोग .apk के भीतर प्रत्येक फ़ाइलों पर हस्ताक्षर करने के लिए किया गया है।
jarsigner -verbose -verify suspect.apk
(यदि पुरालेख में एक से अधिक .RSA फ़ाइल है, तो आपको प्रत्येक फ़ाइल पर हस्ताक्षर करने के लिए किस प्रमाणपत्र (नों) का उपयोग किया गया है, यह बताने के लिए -certs ध्वज जोड़ना चाहिए, ताकि आप सुनिश्चित कर सकें कि इसका प्रमाण पत्र आपके द्वारा सत्यापित है)
m.google.com/maps
क्या यह आपको डाउनलोड लिंक या कुछ समान प्रदान करता है?