Apksigner не проверяет подпись - PullRequest
0 голосов
/ 20 февраля 2019

Я пытался проверить подпись последнего приложения Gmail (версия 8.11.25.224) с помощью apksigner, и это не удалось.

Я использовал:

apksigner verifiy --verbose --print-certs <apk.file>

Результат был:

DOES NOT VERIFY
ERROR: APK Signature Scheme v2 signer #1 Malformed additional attribute #1

Я искал объяснение, почему это произошло, но я не мог найти решение этой проблемы.Я немного поэкспериментировал, и если вы добавите --min-sdk-version 28 к параметрам команды apksigner, то получите следующие результаты:

Verified using v1 scheme (JAR signing): false
Verified using v2 scheme (APK Signature Scheme v2): false
Number of signers: 1
Signer #1 certificate DN: CN=Android, OU=Android, O=Google Inc., L=Mountain View, ST=California, C=US
Signer #1 certificate SHA-256 digest: f0fd...
Signer #1 certificate SHA-1 digest: 3891...
Signer #1 certificate MD5 digest: cde9...
Signer #1 key algorithm: RSA
Signer #1 key size (bits): 2048
Signer #1 public key SHA-256 digest: 2b06...
Signer #1 public key SHA-1 digest: b2da...
Signer #1 public key MD5 digest: a90c...

А если вы используете инструмент jarsigner, то получится:


WARNING:
This jar contains entries whoes certificate chain is invalid.
Reason: PKIX path bulding failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
This jar contains signatures that does not include a timestamp. Without a timestamp, users may not be able to validate this jar after the signers certificate's expiration date (2036-01-08) or after any future revocation date.

Перезапустите с параметрами -verbose и -certs для получения более подробной информации.Я загрузил свой Gmail APK-файл.

1 Ответ

0 голосов
/ 20 февраля 2019

В apksigner есть две ошибки, когда дело касается проверки подписи APK, подписанных с помощью схемы подписи v3.В следующем выпуске apksigner эти две проблемы должны быть исправлены.

...