Как использовать функцию подписания приложений в Google Play

Функция подписания приложений в Google Play позволяет Google защищать ваш ключ подписи, а также использовать его для подписания оптимизированных APK-файлов, которые создаются из наборов App Bundle и предназначаются для распространения приложений. Ключ подписи хранится в надежной инфраструктуре Google. Вы можете обновлять его для повышения безопасности.
 

Чтобы использовать функцию подписания приложений в Google Play, вы должны быть владельцем аккаунта или иметь разрешение на выпуск рабочей версии, исключение устройств и использование функции подписания приложений. Кроме того, вам необходимо принять Условия использования этой функции.

Как работает функция

Если вы используете функцию подписания приложений в Google Play, ваши ключи хранятся вместе с ключами Google в безопасной инфраструктуре. Их защиту обеспечивает специальный сервис управления ключами. Подробнее об инфраструктуре Google

Приложения для Android подписываются закрытым ключом. С каждым таким ключом связан открытый сертификат, с помощью которого устройства и сервисы могут проверять источник обновлений. На устройства устанавливаются только те обновления, подпись которых соответствует подписи установленного приложения. Если вы позволите Google управлять ключом подписи приложения, этот процесс станет безопаснее.

Примечание. Для приложений, созданных до августа 2021 года, по-прежнему можно загружать APK-файлы, а не наборы Android App Bundle и управлять собственными ключами, вместо того чтобы использовать функцию подписания приложений в Google Play. Однако если вы потеряете доступ к хранилищу ключей или оно будет взломано, то вы не сможете обновить свое приложение и вам придется опубликовать его заново с другим названием пакета. В таких случаях мы рекомендуем использовать функцию подписания приложений в Google Play и наборы App Bundle.

Как настроить функцию подписания приложений в Google Play и работать с ней

Чтобы включить функцию подписания приложений в Google Play для своего приложения, следуйте инструкциям ниже.

Шаг 1. Создайте ключ загрузки

  1. Создайте ключ загрузки, следуя инструкциям.
  2. Подпишите свой набор App Bundle с помощью ключа загрузки.

Шаг 2. Подготовьте выпуск

  1. Подготовьте и внедрите выпуск приложения, следуя инструкциям.
  2. После того как вы выберете тип версии, в разделе "Целостность приложения" появится статус функции подписания приложений в Google Play.
  3. Чтобы продолжить использовать ключ подписи приложения, сгенерированный Google, загрузите набор App Bundle. Вы также можете нажать Изменить ключ подписи приложения и выбрать один из следующих сценариев:
    • Использовать ключ подписи приложения, сгенерированный Google. Более чем в 90 % новых приложений используются ключи подписи, созданные Google. Такие ключи нельзя скачать. Это обеспечивает защиту от потери и раскрытия. Если вы выберете этот вариант, то сможете скачать из App Bundle Explorer APK-файлы. Они подписываются ключом, сгенерированным Google, и их можно распространять через другие каналы.
    • Использовать другой ключ подписи приложения. Вы можете использовать ключ подписи другого приложения из вашего аккаунта разработчика (например, если оно предустановлено на некоторых устройствах) или создать локальную копию ключа. Хранение копии за пределами серверов Google связано с повышенными рисками безопасности. Если вы хотите использовать другой ключ подписи, доступны следующие варианты:
  4. Завершите подготовку и внедрение выпуска.

Примечание. Чтобы продолжить, нужно принять Условия использования и включить функцию подписания приложений.

Шаг 3. Зарегистрируйте ключ подписи приложения у поставщика API

Как правило, если в приложении используются API, необходимо зарегистрировать ключ подписи у их поставщиков в целях аутентификации. Для этого нужен цифровой отпечаток сертификата. Вот как найти сертификат:

  1. Откройте Play Console и перейдите на страницу Подписание приложений в Google Play (Тестирование и выпуск > Настройка > Подписи приложений).
  2. Прокрутите страницу вниз до раздела "Сертификат для ключа подписи приложения" и скопируйте цифровые отпечатки (MD5, SHA-1 и SHA-256) сертификата подписания приложений.
    • Если поставщик API требует другой тип цифрового отпечатка, вы можете скачать оригинальный сертификат в формате DER и преобразовать его с помощью инструментов, указанных поставщиком.

Как создать ключ загрузки и обновить хранилища ключей

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

Вы можете создать ключ загрузки, когда будете включать функцию подписания приложений в Google Play, или сгенерировать его позже на странице Подписание приложений в Google Play (Тестирование и выпуск > Настройка > Подписи приложений).

Вот как создать ключ загрузки:

  1. Следуйте инструкциям на сайте для разработчиков Android. Храните ключ в безопасном месте.
  2. Экспортируйте сертификат для ключа загрузки в формате PEM. В следующем примере команды вместо аргументов, выделенных подчеркиванием, укажите свои значения:
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. Когда в процессе выпуска появится запрос, загрузите сертификат, чтобы зарегистрировать его в Google.

Если вы используете ключ загрузки:

  • Ключ загрузки регистрируется в Google только для аутентификации личности создателя приложения.
  • Ваша подпись удаляется из всех загруженных APK-файлов, прежде чем они попадают к пользователям.

Как обновить ключ подписи приложения

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

В некоторых случаях вы можете запросить обновление ключа подписи приложения.

Вот примеры таких ситуаций:

  • Вам нужен более криптостойкий ключ.
  • Ключ подписи приложения взломан.

Важно! Обновление ключей поддерживается только в приложениях, которые используют наборы App Bundle.

Прежде чем запрашивать обновление ключа в Play Console, прочитайте раздел Важные примечания, касающиеся обновления ключей. Чтобы узнать больше о таких запросах, разверните другие разделы ниже.

Рекомендации

  • Если вы также опубликовали приложение за пределами Google Play или собираетесь это сделать и хотите использовать тот же ключ подписи, у вас есть два варианта:
    • Google сгенерирует ключ (рекомендуемый вариант), после чего вы сможете скачать из App Bundle Explorer подписанный универсальный APK-файл и использовать его за пределами Google Play.
    • Вы сами сгенерируете ключ подписи приложения, который будете использовать во всех магазинах, и загрузите его копию в Google при настройке функции подписания приложений в Google Play.
  • Чтобы защитить свой аккаунт, включите двухэтапную аутентификацию для всех аккаунтов, у которых есть доступ к Play Console.
  • После публикации набора App Bundle в нужной версии откройте App Bundle Explorer, чтобы получить доступ к устанавливаемым APK-файлам, которые Google генерирует из набора. Вы можете:
    • Скопировать ссылку для внутреннего доступа к приложению и поделиться ей. Так можно быстро проверить, какой контент будет установлен из вашего набора App Bundle на то или иное устройство.
    • Скачать универсальный APK-файл, подписанный ключом подписи приложения, который хранится в Google и может быть установлен на любое поддерживаемое вашим приложением устройство.
    • Скачать ZIP-архив со всеми APK-файлами для определенного устройства. Они подписаны ключом, который хранится в Google. Вы можете установить эти APK-файлы на устройство с помощью команды adb install-multiple *.apk.
  • Для большей безопасности сгенерируйте новый ключ загрузки, который отличается от ключа подписи приложения.
  • Если вы используете API Google, можете зарегистрировать для своего приложения сертификаты ключа загрузки и ключа подписи в Google Cloud Console.
  • Если вы используете Android App Links, убедитесь, что ключи обновлены в соответствующем JSON-файле протокола связи цифровых объектов на вашем сайте.

Что делать, если ключ загрузки утерян или взломан

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

Когда команда поддержки зарегистрирует новый ключ загрузки, владелец аккаунта и администраторы с глобальными правами получат сообщение в Play Console и электронное письмо с дополнительной информацией. После этого вы сможете обновить хранилища ключей и зарегистрировать ключ у поставщиков API.

Владелец аккаунта может отменить в Play Console запрос на сброс ключа.

Важно! Сброс ключа загрузки не затрагивает ключ подписи приложения, с помощью которого Google Play подписывает APK-файлы перед отправкой пользователям.

Схема подписи APK версии 4

Устройства с Android 11 и более поздними версиями поддерживают новую схему подписи APK версии 4. Функция подписания приложений в Google Play использует эту схему для разрешенных приложений, чтобы им были доступны функции оптимизированного распространения. Подпись версии 4 не должна повлиять на пользователей, и никаких действий со стороны разработчика не требуется.

Материалы по теме

  • Ознакомьтесь со сведениями о сервисах подписания и обеспечения целостности в Play Console.
  • Прочитайте информацию о сервисах подписания и обеспечения целостности на сайте для разработчиков Android.

Эта информация оказалась полезной?

Как можно улучшить эту статью?
9185500804614485355
true
Поиск по Справочному центру
true
true
true
true
true
92637
Поиск
Очистить поле поиска
Закрыть поиск
Главное меню
false
false
false
false