Как .apk файлы становится со знаком

Это не вопрос о том, как подписать .apk файл. Я хочу знать то, что делает подписание, на самом деле означает и как оно реализовано.

В .apk файле существует папка META-INF и в этом существует два файла.

Сначала каждый - CERT.SF, содержит хеши SHA1 для различных компонентов и похож на это:

Name: res/layout/main.xml
SHA1-Digest: Cox/T8fN1X9Hv4VqjH9YKqc/MsM=

Name: AndroidManifest.xml
SHA1-Digest: wZ418H9Aix1LNch3ci7c+cHyuZc=

Name: resources.arsc
SHA1-Digest: P+uoRrpFyVW6P3Wf+4vuR2ZSuXY=

Name: classes.dex
SHA1-Digest: cN3zXtGii9zuTOkBqDTLymeMZQI=

Существует также файл под названием CERT.RSA. Я предполагаю, что это - открытый ключ для проверки подписи.

Мой вопрос, где подпись для целого .apk файла, хранится? И что на самом деле подписывается? Это могло быть также

  • Файл .apk использовал в качестве единственного двоичного объекта, и это подписывается
  • или CERT.SF подписывается, который содержит отдельные хеши для различных компонентов

Было бы также намного лучше, если можно указать на меня на документацию подробного подписания и процесса проверки.

20
задан Szere Dyeri 2 August 2010 в 20:43
поделиться