Android डेवलपर के लिए SHA-256 सर्टिफ़िकेट फ़िंगरप्रिंट, ऐप्लिकेशन की यूनीक क्रिप्टोग्राफ़िक आइडेंटिटी होती है. हालांकि, यह सिर्फ़ उन डेवलपर के लिए है जो अपने साइनिंग पासकोड मैनेज करते हैं. इस गाइड में, साइन की गई APK फ़ाइल या ओरिजनल कीस्टोर से SHA-256 सर्टिफ़िकेट फ़िंगरप्रिंट को वापस पाने के तीन तरीके बताए गए हैं.
किसी APK फ़ाइल से SHA-256 वापस पाना
अगर आपके पास साइन की गई फ़ाइनल APK फ़ाइल है, लेकिन ओरिजनल कीस्टोर या उसके पासवर्ड का ऐक्सेस नहीं है, तो ये तरीके आपके लिए मददगार साबित हो सकते हैं.
पहले तरीके का पहला हिस्सा: apksigner टूल का इस्तेमाल करना (APK के लिए सुझाव दिया गया है)
apksigner टूल, किसी APK से सिग्नेचर की सही जानकारी निकालने का सबसे नया और भरोसेमंद तरीका है. भले ही, APK में V1, V2, V3 या V4 साइनिंग स्कीम का इस्तेमाल किया गया हो.
पहला चरण: apksigner को ढूंढें
(उदाहरण: /Users/username/Library/Android/sdk/build-tools/34.0.0/apksigner)
दूसरा चरण: निर्देश चलाएं
अपना टर्मिनल या कमांड प्रॉम्प्ट खोलें. इसके बाद, उस डायरेक्ट्री पर जाएं जहां आपका APK सेव है और फिर यह कमांड चलाएं:
apksigner verify --print-certs <path/to/your/app.apk>
तीसरा चरण: SHA-256 फ़िंगरप्रिंट ढूंढें
आउटपुट में, सिग्नेचर करने वाले हर व्यक्ति के सर्टिफ़िकेट की जानकारी दिखेगी. SHA-256 डाइजेस्ट लेबल ढूंढें:
Signer #1 certificate SHA-256 digest:
a32a43cd459f7ce6b82c552f5d876989d53e6af1c0b2d35fb677b51a1dc4f0e5
कोलन से अलग किए गए हेक्साडेसिमल कैरेक्टर की लंबी स्ट्रिंग, आपके SHA-256 सर्टिफ़िकेट का फ़िंगरप्रिंट होती है.
पहले तरीका का दूसरा हिस्सा: APK पर keytool का इस्तेमाल करना
पहला चरण: keytool और APK को ढूंढें
यह पक्का करें कि आपके पास keytool सुविधा (आपके JDK इंस्टॉलेशन का हिस्सा है) और साइन की गई APK फ़ाइल, दोनों की जगह की जानकारी हो.
दूसरा चरण: निर्देश चलाएं
यहां दिए गए निर्देश का इस्तेमाल करें. इसमें साइन की गई गए APK फ़ाइल को कीस्टोर के तौर पर सेट करें:
keytool -printcert -jarfile <path/to/your/app.apk>
तीसरा चरण: SHA-256 फ़िंगरप्रिंट ढूंढें
आउटपुट में, सर्टिफ़िकेट फ़िंगरप्रिंट वाला सेक्शन होगा. SHA-256 लाइन ढूंढें.
कीस्टोर फ़ाइल से SHA-256 वापस पाना
यह किसी भी ऑपरेटिंग सिस्टम पर, सोर्स कीस्टोर फ़ाइल से सर्टिफ़िकेट फ़िंगरप्रिंट का पता लगाने का सबसे असरदार तरीका है.
यह किसी भी ऑपरेटिंग सिस्टम पर, सोर्स कीस्टोर फ़ाइल से सर्टिफ़िकेट फ़िंगरप्रिंट का पता लगाने का सबसे असरदार तरीका है.
दूसरा तरीका: keytool की स्टैंडर्ड सुविधा का इस्तेमाल करना
पहला चरण: टूल और कीस्टोर फ़ाइल ढूंढें
आपको इनकी ज़रूरत होगी:
- आपकी कीस्टोर फ़ाइल: इस फ़ाइल का इस्तेमाल, आपके ऐप्लिकेशन (.jks या .keystore) पर साइन करने के लिए किया जाता है. आपको इसका पाथ, पासवर्ड, और इसमें मौजूद पासकोड का दूसरा नाम पता होना चाहिए.
- keytool सुविधा: यह टूल, Java Development Kit (JDK) में शामिल होता है.
| ऑपरेटिंग सिस्टम | keytool कहां उपलब्ध होगा |
| Windows | आम तौर पर, keytool आपके JDK इंस्टॉलेशन की बिन डायरेक्ट्री में उपलब्ध होता है. उदाहरण के लिए, C:\Program Files\Java\jdk-xx\bin\. |
| macOS / Linux | JDK को इंस्टॉल करने के बाद, keytool आम तौर पर सीधे आपके टर्मिनल में उपलब्ध होता है. |
दूसरा चरण: सही जगह पर जाएं
अपना टर्मिनल या कमांड प्रॉम्प्ट खोलें. अगले चरण को आसान बनाने के लिए, उस डायरेक्ट्री पर जाएं जिसमें आपकी कीस्टोर फ़ाइल मौजूद है:
# उदाहरण: इसे अपने असल पाथ से बदलें
cd /path/to/your/keystore/directory
तीसरा चरण: निर्देश चलाएं
सर्टिफ़िकेट की जानकारी को वर्बोस मोड में दिखाने के लिए, keytool को यहां दिया गया निर्देश दें.
ध्यान दें: अगर keytool की पहचान नहीं होती है, तो आपको सुविधा का पूरा पाथ बताना होगा. उदाहरण के लिए, "/path/to/jdk/bin/keytool".
keytool -list -v -keystore [your_keystore_name.jks] -alias [your_key_alias]
- [your_keystore_name.jks] की जगह, अपनी फ़ाइल का असल नाम डालें.
- [your_key_alias] की जगह, साइनिंग पासकोर्ड का कोई दूसरा खास नाम डालें. उदाहरण के लिए, mykey.
चौथा चरण: SHA-256 फ़िंगरप्रिंट ढूंढें
यह सुविधा, आपसे कीस्टोर का पासवर्ड मांगेगी. पासवर्ड डालने के बाद, आउटपुट में सर्टिफ़िकेट की जानकारी दिखेगी.
सर्टिफ़िकेट फ़िंगरप्रिंट सेक्शन ढूंढें:
सर्टिफ़िकेट फ़िंगरप्रिंट:
SHA1: XX:XX:XX:XX:XX:...
SHA256: 0A:B3:C6:D9:E2:F5:81:B4:C7:D0:E3:F6:92:A5:B8:C1:D4:E7:F0:83:96:A9:BC:D1:E4:F7:03:96:A9:BC:D1:E4
सिग्नेचर एल्गोरिदम का नाम: SHA256withRSA
...
SHA256: के बगल में मौजूद कोलन से अलग किए गए हेक्साडेसिमल कैरेक्टर की लंबी स्ट्रिंग, आपके सार्वजनिक SHA-256 सर्टिफ़िकेट का फ़िंगरप्रिंट होती है.