Android izstrādātājiem, kuri pārvalda savas parakstīšanas atslēgas, SHA-256 sertifikāta ciparfails ir unikāls lietotnes kriptogrāfiskais identifikators. Šajā ceļvedī ir aprakstītas trīs metodes, kā ciparfailu izgūt no parakstīta APK faila vai sākotnējās atslēgu krātuves.
SHA-256 izgūšana no APK faila
Šīs metodes var izmantot, ja jums ir galīgais, parakstītais APK fails un nevarat ērti piekļūt sākotnējai atslēgu krātuvei vai tās parolēm.
1.A metode. Rīka apksigner izmantošana (ieteicama APK failiem)
Rīks apksigner ir vismodernākais un uzticamākais veids, kā no APK faila iegūt paraksta informāciju neatkarīgi no tā, vai tajā tiek izmantota 1., 2., 3. vai 4. versijas parakstīšanas shēma.
1. darbība. Atrodiet rīku apksigner
(Piemērs: /Users/username/Library/Android/sdk/build-tools/34.0.0/apksigner)
2. darbība. Izpildiet komandu
Atveriet termināli vai komandu uzvedni, pārejiet uz katalogu, kurā ir saglabāts jūsu APK, un izpildiet tālāk norādīto komandu.
apksigner verify --print-certs <path/to/your/app.apk>
3. darbība. Atrodiet SHA-256 ciparfailu
Izvadē būs redzama informācija par katru parakstītāju. Atrodiet SHA-256 īssavilkuma iezīmi.
Signer #1 certificate SHA-256 digest:
a32a43cd459f7ce6b82c552f5d876989d53e6af1c0b2d35fb677b51a1dc4f0e5
Jūsu SHA-256 sertifikāta ciparfails ir ar kolu atdalītu heksadecimālās skaitīšanas sistēmas rakstzīmju gara virkne.
1.B metode. Rīka keytool izmantošana APK failā
1. darbība. Atrodiet rīku keytool un APK failu
Pārliecinieties, ka zināt gan utilītprogrammas keytool (instalēta kopā ar JDK), gan parakstītā APK faila atrašanās vietu.
2. darbība. Izpildiet komandu
Izmantojiet tālāk redzamo komandu, kas parakstīto APK failu norāda kā atslēgu krātuvi.
keytool -printcert -jarfile <path/to/your/app.apk>
3. darbība. Atrodiet SHA-256 ciparfailu
Izvadē būs iekļauta sadaļa “Certificate fingerprints” (Sertifikātu ciparfaili). Atrodiet SHA-256 rindu.
SHA-256 informācijas izgūšana no atslēgu krātuves faila
Šī ir faktiskā metode sertifikāta ciparfaila iegūšanai no avota atslēgu krātuves faila jebkurā operētājsistēmā.
Šī ir faktiskā metode sertifikāta ciparfaila iegūšanai no avota atslēgu krātuves faila jebkurā operētājsistēmā.
2. metode. Standarta utilītprogrammas keytool izmantošana
1. darbība. Atrodiet rīkus un atslēgu krātuves failu
Jums ir nepieciešams tālāk norādītais.
- Jūsu atslēgu krātuves fails: fails, kas tiek izmantots lietotnes parakstīšanai (.jks vai .keystore). Jums ir jāzina tā ceļš, parole un tajā glabātās atslēgas aizstājvārds.
- Utilītprogramma keytool: šis rīks ir iekļauts Java izstrādes komplektā (Java Development Kit — JDK).
| Operētājsistēma | Keytool atrašanās vieta |
| Windows | Parasti JDK instalēšanas programmas “bin” katalogā (piemēram, C:\Program Files\Java\jdk-xx\bin\). |
| macOS / Linux | Parasti utilītprogramma ir pieejama tieši terminālī, kad ir instalēts JDK. |
2. darbība. Pārejiet uz pareizo atrašanās vietu
Atveriet termināli vai komandu uzvedni. Lai vienkāršotu nākamo darbību, varat pāriet uz katalogu, kurā atrodas jūsu atslēgu krātuves fails.
Piemērs. Aizstājiet ar faktisko ceļu.
cd /path/to/your/keystore/directory
3. darbība. Izpildiet komandu
Izmantojiet tālāk norādīto komandu, lai rīkam keytool liktu norādīt sertifikāta informāciju detalizēta skata režīmā.
Piezīme. Ja rīks keytool netiek atpazīts, jums ir jānorāda pilns utilītprogrammas ceļš (piemēram, /path/to/jdk/bin/keytool).
keytool -list -v -keystore [your_keystore_name.jks] -alias [your_key_alias]
- Aizstājiet [your_keystore_name.jks] ar sava faila nosaukumu.
- Aizstājiet [your_key_alias] ar konkrētu parakstīšanas atslēgas aizstājvārdu (piemēram, mykey).
4. darbība. Atrodiet SHA-256 ciparfailu
Utilītprogrammā tiks pieprasīts ievadīt atslēgu krātuves paroli. Kad parole būs ievadīta, izvadē tiks parādīta sertifikāta informācija.
Atrodiet sadaļu Certificate fingerprints (Sertfikātu ciparfaili).
Certificate fingerprints:
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
Signature algorithm name: SHA256withRSA
...
Jūsu publiskais SHA-256 sertifikāta ciparfails ir ar kolu atdalītu heksadecimālās skaitīšanas sistēmas rakstzīmju gara virkne blakus “SHA256:”.