Кто-нибудь знает, где открытые ключи, используемые для подписи (платформа, общий ресурс, медиа и ключ релиза), хранятся в окончательном сгенерированном образе ОС Android?
«Подписание сборок для выпуска» (https://source.android.com/devices/tech/ota/sign_builds) страница содержит информацию о том, как подписываются образы ОС Android.
В стандартной сборке Android используются четыре ключа, каждый из которых находится в сборке / target / product / security:
testkey: Общий ключ по умолчанию для пакетов, в которых ключ не указан.Используется для сборок для разработки
releasekey: общий ключ по умолчанию для пакетов, для которых в противном случае не указан ключ. Используется для сборок выпуска
платформа: тестовый ключ для пакетов, являющихся частью базовой платформы.
shared: тестовый ключ для вещей, которые используются совместно в процессе home / contacts.
media: тестовый ключ для пакетов, которые являются частью системы media / download.
Открытые ключи (releasekey.x509.pem, platform.x509.pem, shared.x509.pem, media.x509.pem), связанные с указанными выше закрытыми ключами, должны быть включены как часть образа Android.Они предоставляются как часть процесса сборки и, как правило, хранятся в build / target / product / security на хосте, используемом для создания образа ОС Android. Однако не предусмотрено, когда открытые ключи, используемые для подписи, находятся в сгенерированной ОС.image.
Например, когда используется dm-verity, ключ RSA-2048 в совместимом с libmincrypt формате хранится в разделе / boot по адресу /verity_key.
.