Za razvojne programere za Android koji upravljaju vlastitim ključevima za potpisivanje SHA-256 digitalni otisak certifikata jedinstveni je kriptografski identitet vaše aplikacije. U ovom vodiču prikazujemo tri načina za dohvaćanje ključa iz potpisane APK datoteke ili izvornog spremišta ključeva.
Dohvaćanje SHA-256 iz APK datoteke
Ovi su načini korisni ako imate konačnu, potpisanu APK datoteku, ali možda nemate jednostavan pristup izvornom spremištu ključeva ili njegovim zaporkama.
Način 1A: upotreba apksignera (preporučeno za APK-ove)
Alat apksigner najmoderniji je i najpouzdaniji način za izdvajanje podataka o potpisu iz APK-a, bez obzira na to upotrebljava li sheme za potpis V1, V2, V3 ili V4.
1. korak: pronađite apksigner
(Primjer: /Users/username/Library/Android/sdk/build-tools/34.0.0/apksigner)
2. korak: pokrenite naredbu
Otvorite terminal ili naredbeni redak, idite u direktorij u kojem je APK spremljen i izvršite sljedeću naredbu:
apksigner verify --print-certs <path/to/your/app.apk>
3. korak: pronađite SHA-256 digitalni otisak
U izlazu će se navesti pojedinosti o certifikatu za svakog potpisnika. Pronađite oznaku SHA-256 sažetka:
SHA-256 sažetak certifikata potpisnika 1:
a32a43cd459f7ce6b82c552f5d876989d53e6af1c0b2d35fb677b51a1dc4f0e5
Dugi niz heksadecimalnih znakova odvojenih dvotočkama vaš je SHA-256 digitalni otisak certifikata.
Način 1B: upotreba alata keytool na APK-u
1. korak: pronađite keytool i APK
Morate znati lokaciju uslužnog programa keytool (dio instalacije JDK-a) i potpisane APK datoteke.
2. korak: pokrenite naredbu
Upotrijebite sljedeću naredbu, navodeći potpisanu APK datoteku kao spremište ključeva:
keytool -printcert -jarfile <path/to/your/app.apk>
3. korak: pronađite SHA-256 digitalni otisak
Izlaz će uključivati odjeljak Digitalni otisci certifikata. Potražite redak SHA-256.
Dohvaćanje SHA-256 iz datoteke spremišta ključeva
To je uobičajeni način za izdvajanje digitalnog otiska certifikata iz izvorne datoteke spremišta ključeva u bilo kojem operativnom sustavu.
To je uobičajeni način za izdvajanje digitalnog otiska certifikata iz izvorne datoteke spremišta ključeva u bilo kojem operativnom sustavu.
Način 2: upotreba standardnog uslužnog alata za ključeve
1. korak: pronađite alate i datoteku spremišta ključeva
Potrebno vam je sljedeće:
- Datoteka spremišta ključeva: datoteka koja se upotrebljava za potpisivanje vaše aplikacije (.jks ili .keystore). Morate znati njezinu putanju, zaporku i naziv aliasa ključa u njoj.
- Uslužni alat za ključeve: taj je alat uključen u Java Development Kit (JDK).
| Operativni sustav | Lokacija alata za ključeve |
| Windows | Obično se nalazi u bin direktoriju vaše instalacije JDK-a (na primjer C:\Program Files\Java\jdk-xx\bin\). |
| macOS/Linux | Općenito je dostupan izravno u vašem terminalu nakon instaliranja JDK-a. |
2. korak: idite na točnu lokaciju
Otvorite terminal ili naredbeni redak. Da biste pojednostavili sljedeći korak, možete se kretati do direktorija koji sadrži datoteku spremišta ključeva:
Primjer broja: zamijenite stvarnim putom
cd /path/to/your/keystore/directory
3. korak: pokrenite naredbu
Upotrijebite sljedeću naredbu da biste alatu za ključeve naložili da navede pojedinosti o certifikatu u opširnom načinu.
Napomena: ako se alat za ključeve ne prepozna, morate navesti cijeli put do uslužnog alata (na primjer /path/to/jdk/bin/keytool).
keytool -list -v -keystore [your_keystore_name.jks] -alias [your_key_alias]
- Zamijenite [your_keystore_name.jks] stvarnim nazivom datoteke.
- Zamijenite [your_key_alias] konkretnim aliasom ključa za potpisivanje (na primjer mojključ).
4. korak: pronađite SHA-256 digitalni otisak
Uslužni program zatražit će zaporku za spremište ključeva. Nakon unosa u izlazu će se prikazati pojedinosti o certifikatu.
Pronađite odjeljak Digitalni otisci certifikata:
Digitalni otisci certifikata:
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
Naziv algoritma potpisa: SHA256withRSA
...
Dugi niz heksadecimalnih znakova odvojenih dvotočkama pored stavke SHA256: vaš je javni SHA-256 digitalni otisak certifikata.