App-ondertekening van Play gebruiken

Met app-ondertekening van Play beheert en beschermt Google je app-ondertekeningssleutel en gebruikt deze om geoptimaliseerde distributie-APK's te ondertekenen die zijn gegenereerd op basis van je app-bundels. Met app-ondertekening van Play wordt je app-ondertekeningssleutel opgeslagen in de beveiligde infrastructuur van Google en krijg je upgrade-opties om de beveiliging te verbeteren.

Als je app-ondertekening van Play wilt gebruiken, moet je de accounteigenaar of een gebruiker met het recht Releasen naar productie, apparaten uitsluiten en app-ondertekening van Play gebruiken zijn en moet je de Servicevoorwaarden voor app-ondertekening van Play accepteren.

Hoe het werkt

Als je app-ondertekening van Play gebruikt, worden je sleutels opgeslagen via dezelfde beveiligde infrastructuur die Google gebruikt om zelf sleutels op te slaan. De sleutels worden beveiligd met de service voor sleutelbeheer van Google. Lees de whitepaper over de beveiliging van Google Cloud voor meer informatie over de infrastructuur van Google.

Android-apps worden ondertekend met een privésleutel. Elke privésleutel heeft een bijbehorend openbaar certificaat waarmee apparaten en services kunnen verifiëren of de app-update afkomstig is van dezelfde bron. Zo weet je zeker dat app-updates betrouwbaar zijn. Apparaten accepteren updates alleen als de handtekening overeenkomt met de handtekening van de geïnstalleerde app. Als je Google je app-ondertekeningssleutel laat beheren, is dit proces beter beveiligd.

Opmerking: Voor apps die vóór augustus 2021 zijn gemaakt, kun je nog steeds een APK uploaden en je eigen sleutels beheren (in plaats van app-ondertekening van Play te gebruiken) en kun je de app publiceren met een Android App Bundle. Maar als je je keystore kwijtraakt of als deze wordt gehackt, kun je je app pas updaten nadat je een nieuwe app met een nieuwe pakketnaam publiceert. Voor deze apps raadt Play aan app-ondertekening van Play te gebruiken en over te schakelen naar app-bundels.

Beschrijvingen van sleutels, artefacten en tools
Term Beschrijving
App-ondertekeningssleutel

De sleutel die Google Play gebruikt om de APK's te ondertekenen die aan het apparaat van een gebruiker worden geleverd. Als je app-ondertekening van Play gebruikt, kun je een bestaande app-ondertekeningssleutel uploaden of Google een sleutel voor je laten maken.

Je moet je app-ondertekeningssleutel geheimhouden, maar je mag het openbare certificaat van je app wel met anderen delen.

Uploadsleutel

De sleutel die je gebruikt om je app-bundel te ondertekenen voordat je deze uploadt naar Google Play. Je moet je uploadsleutel geheimhouden, maar je mag het openbare certificaat van je app wel met anderen delen. Om veiligheidsredenen is het verstandig verschillende app-ondertekeningssleutels en uploadsleutels te hebben.

Er zijn 2 manieren om een uploadsleutel te maken:

  • Je app-ondertekeningssleutel gebruiken: Als je Google een app-ondertekeningssleutel voor je laat maken, wordt de sleutel waarmee je je eerste release ondertekent, aangewezen als je uploadsleutel.
  • Een afzonderlijke uploadsleutel gebruiken: Als je je eigen app-ondertekeningssleutel verstrekt, heb je de mogelijkheid om een nieuwe uploadsleutel te maken voor een betere beveiliging. Als je geen uploadsleutel maakt, blijf je je app-ondertekeningssleutel als uploadsleutel gebruiken om nieuwe releases te ondertekenen.
Certificaat (.der of .pem)

Een certificaat bevat een openbare sleutel en aanvullende identificatiegegevens over wie de eigenaar is van de sleutel. Iedereen kan met het certificaat met de openbare sleutel verifiëren wie de app-bundel of APK heeft ondertekend. Je kunt het certificaat met iedereen delen omdat je persoonlijke sleutel daarin niet is opgenomen.

Als je je sleutel(s) wilt registreren bij API-providers, kun je het openbare certificaat voor je app-ondertekeningssleutel en uploadsleutel downloaden via de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening) in de Play Console. Het certificaat met de openbare sleutel kan met iedereen worden gedeeld. Dit bevat niet je persoonlijke sleutel.

Vingerafdruk van certificaat

Een korte en unieke representatie van een certificaat die API-providers vaak in combinatie met de pakketnaam aanvragen om een app te registreren voor het gebruik van hun service.

De MD5-, SHA-1- en SHA-256-vingerafdrukken van de upload- en app-ondertekeningscertificaten zijn te vinden op de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening) in de Play Console. Andere vingerafdrukken kunnen ook worden berekend door het oorspronkelijke certificaat (.der) op dezelfde pagina te downloaden.

Java-keystore (.jks of .keystore) Een opslagplaats voor beveiligingscertificaten en privésleutels.
PEPK-tool (Play Encrypt Private Key)

Een tool om privésleutels uit een Java-keystore te exporteren en te versleutelen voor overdracht naar Google Play.

Op het moment dat je de app-ondertekeningssleutel verstrekt die Google moet gebruiken, selecteer je de optie om een sleutel (en zo nodig het bijbehorende openbare certificaat) te exporteren en te uploaden en volg je de instructies om de tool te downloaden en te gebruiken. Je kunt desgewenst de opensource-code van de PEPK-tool downloaden, bekijken en gebruiken.

App-ondertekeningsproces

Zo werkt dit proces:

  1. Onderteken je app-bundel en upload deze naar de Play Console.
  2. Google maakt geoptimaliseerde APK's uit je app-bundel en ondertekent ze met de app-ondertekeningssleutel.
  3. Google gebruikt apksigner om 2 stempels toe te voegen aan het manifest van je app (com.android.stamp.source en com.android.stamp.type) en de APK's daarna te ondertekenen met je app-ondertekeningssleutel. Met de stempels die door apksigner zijn toegevoegd, kan worden achterhaald wie APK's heeft ondertekend.
  4. Gebruikers zien de gepubliceerde app met de ondertekende APK's.

App-ondertekening van Play instellen en beheren

Als je app-ondertekening van Play nog niet gebruikt in je app, volg je de onderstaande instructies.

Stap 1: Maak een uploadsleutel

  1. Volg deze instructies en maak een uploadsleutel.
  2. Onderteken je app-bundel met de uploadsleutel.

Stap 2: Bereid je release voor

  1. Volg de instructies om je release voor te bereiden en te implementeren.
  2. Nadat je een releasetrack hebt geselecteerd, zie je de status van app-ondertekening van Play voor je app in het gedeelte App-integriteit.
  3. Upload je app-bundel om door te gaan met een door Google gemaakte app-ondertekeningssleutel. Je kunt ook de optie App-ondertekeningssleutel wijzigen selecteren voor toegang tot de volgende opties:
    • Een door Google gemaakte app-ondertekeningssleutel gebruiken: Meer dan 90% van alle nieuwe apps gebruikt door Google gemaakte app-ondertekeningssleutels. Als je een door Google gemaakte sleutel gebruikt, ben je beschermd tegen verlies of hacken (de sleutel kan niet worden gedownload). Als je deze optie kiest, kun je via de app-bundel-verkenner distributie-APK's die zijn ondertekend met de door Google gemaakte sleutel downloaden voor andere distributiekanalen, of je kunt een andere sleutel voor die kanalen gebruiken.
    • Een andere app-ondertekeningssleutel gebruiken: Als je de app-ondertekeningssleutel kiest, kun je dezelfde sleutel als die van een andere app in je ontwikkelaarsaccount gebruiken of kun je een lokale kopie van je app-ondertekeningssleutel bewaren voor meer flexibiliteit. Het kan bijvoorbeeld zijn dat je al een sleutel hebt ingesteld omdat je app op sommige apparaten vooraf wordt geïnstalleerd. Als je een kopie van je sleutel buiten de servers van Google bewaart, vergroot je het risico als de lokale kopie ooit wordt gehackt. Je kunt een andere sleutel op de volgende manieren gebruiken:
  4. Volg de rest van de instructies om je release voor te bereiden en te implementeren.

Opmerking: Je moet de Servicevoorwaarden accepteren en je aanmelden voor app-ondertekening om door te gaan.

Stap 3: Registreer de app-ondertekeningssleutel bij API-providers

Als je app gebruikmaakt van een API, moet je meestal de app-ondertekeningssleutel registreren met behulp van de vingerafdruk van het certificaat. Dit is nodig voor verificatiedoeleinden. Zo vind je het certificaat:

  1. Open de Play Console en ga naar de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).
  2. Scroll naar het gedeelte Certificaat voor app-ondertekeningssleutel en kopieer de vingerafdrukken (MD5, SHA-1 en SHA-256) van je app-ondertekeningscertificaat.
    • Als de API-provider een ander type vingerafdruk vereist, kun je ook het oorspronkelijke certificaat downloaden in .der-indeling en dit daarna converteren met de transformatietools die de API-provider aanlevert.
Vereisten voor app-ondertekeningssleutels

Als je een door Google gemaakte sleutel gebruikt, maakt Google automatisch een cryptografisch sterke RSA-sleutel (4096 bits). Kies je ervoor om je eigen app-ondertekeningssleutel te uploaden, dan moet deze een RSA-sleutel van 2048 bits of meer zijn.

Instructies voor apps die vóór augustus 2021 zijn gemaakt

Stap 1: App-ondertekening van Play configureren

  1. Open de Play Console en ga naar de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).
  2. Neem de Servicevoorwaarden voor app-ondertekening van Play door en selecteer Accepteren als je dit nog niet hebt gedaan.

Stap 2: Een kopie van je oorspronkelijke sleutel naar Google sturen en een uploadsleutel maken

  1. Zoek je oorspronkelijke app-ondertekeningssleutel.
  2. Open de Play Console en ga naar de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).
  3. Selecteer de export- en uploadoptie die het beste bij je releaseproces past en upload een bestaande app-ondertekeningssleutel.

Stap 3: Maak een uploadsleutel (optioneel en aanbevolen)

  1. Maak een uploadsleutel en upload het certificaat naar Google Play.
    • Je kunt ook de app-ondertekeningssleutel blijven gebruiken als uploadsleutel.
  2. Kopieer de vingerafdrukken (MD5, SHA-1 en SHA-256) van je app-ondertekeningscertificaat.
    • Misschien moet je voor testdoeleinden het certificaat van je uploadsleutel registreren bij API-providers met de vingerafdruk van het certificaat en de app-ondertekeningssleutel.

Stap 4: Onderteken je volgende app-update met de uploadsleutel

Als je updates voor je app releaset, moet je ze ondertekenen met je uploadsleutel.

  • Als je geen nieuwe uploadsleutel hebt gemaakt: Blijf je oorspronkelijke app-ondertekeningssleutel gebruiken om app-bundels te ondertekenen voordat je ze uploadt naar Google Play. Als je je oorspronkelijke app-ondertekeningssleutel kwijtraakt, kun je een nieuwe uploadsleutel maken en deze bij Google registreren, zodat je je app kunt blijven updaten.
  • Als je een nieuwe uploadsleutel hebt gemaakt: Gebruik je nieuwe uploadsleutel om app-bundels te ondertekenen voordat je ze uploadt naar Google Play. Google gebruikt de uploadsleutel om je identiteit te verifiëren. Als je je uploadsleutel kwijtraakt, kun je contact opnemen met support om de sleutel te resetten.
Je app-ondertekeningssleutel upgraden om je in te schrijven voor app-ondertekening van Play

We raden je aan dit te doen als je je bestaande sleutel niet kunt delen. Houd rekening met het volgende voordat je je app-ondertekeningssleutel upgradet om je in te schrijven:

  • Voor deze optie is een dubbele release vereist.
  • Je moet voor elke release een app-bundel en een APK die is ondertekend met je verouderde sleutel uploaden. Google Play gebruikt je app-bundels om APK's te genereren die ondertekend zijn met de nieuwe sleutel voor apparaten op Android R* (API-niveau 30) of hoger. Je verouderde APK's worden gebruikt voor oudere Android-releases (tot en met API-niveau 29).

*Als je app gebruikmaakt van sharedUserId, wordt aanbevolen sleutelupgrades toe te passen voor installaties en updates op apparaten met Android T (API-niveau 33) of hoger. Stel een nauwkeurige minimale SDK-versie in de bundelconfiguratie in om dit te configureren.

Stap 1: Upload je nieuwe sleutel en genereer en upload bewijs van roulatie

Als je wilt zorgen dat de nieuwe sleutel wordt vertrouwd op Android-apparaten, moet je een nieuwe ondertekeningssleutel uploaden uit een repository en bewijs van roulatie genereren en uploaden:

  1. Open de Play Console en ga naar de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).
  2. Selecteer het tabblad App-ondertekening.
  3. Klik op Geavanceerde opties tonen en selecteer Nieuwe app-ondertekeningssleutel gebruiken (hiervoor zijn doorlopende dubbele releases vereist).
  4. Kies dezelfde app-ondertekeningssleutel als een andere app in je ontwikkelaarsaccount of upload een nieuwe app-ondertekeningssleutel via Android Studio, Java KeyStore of een andere repository.
  5. Download en voer de PEPK-tool uit met behulp van de instructies op het scherm.
  6. Als je zip-bestand klaar is, klik je op Gegenereerd zip-bestand uploaden en upload je het naar de Play Console.
  7. Klik naast '5. Sta toe dat de nieuwe sleutel wordt vertrouwd op Android-apparaten door bewijs van roulatie te uploaden' op Instructies tonen.
  8. Download APKSigner en genereer een bewijs van roulatie door deze opdracht uit te voeren:
    • $ apksigner rotate --out /path/to/new/file --old-signer --ks old-signer-jks --set-rollback ture --new-signer --ks new-signer-jks --set-rollback true
  9. Klik op Het gegenereerde bestand voor bewijs van roulatie uploaden en upload het bewijs van roulatie dat je in stap 8 hebt gemaakt.
  10. Klik op Opslaan.

Een uploadsleutel maken en keystores updaten

Uit beveiligingsoverwegingen kun je je app het beste ondertekenen met een nieuwe uploadsleutel in plaats van je app-ondertekeningssleutel.

Je kunt een uploadsleutel maken als je je aanmeldt voor app-ondertekening van Play. Je kunt ook later een uploadsleutel maken via de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).

Zo maak je een uploadsleutel:

  1. Volg de instructies op de site voor Android-ontwikkelaars. Bewaar je sleutel op een veilige plaats.
  2. Exporteer het certificaat voor de uploadsleutel naar de pem-indeling. Vervang de volgende onderstreepte argumenten:
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. Upload het certificaat om dit bij Google te registreren als daar tijdens het releaseproces om wordt gevraagd.

Als je een uploadsleutel gebruikt:

  • Je uploadsleutel wordt alleen geregistreerd bij Google om de identiteit van de maker van de app te verifiëren.
  • Je ondertekening wordt verwijderd uit geüploade APK's voordat ze naar gebruikers worden gestuurd.
Vereisten voor uploadsleutels
  • Moet een RSA-sleutel van 2048 bits of meer zijn.
Keystores updaten

Nadat je een uploadsleutel hebt gemaakt, is het handig om de volgende locaties te checken en updaten:

  • Lokale machines
  • Vergrendelde servers ter plaatse (verschillende ACL's)
  • Cloudapparaat (verschillende ACL's)
  • Speciale beheerservices voor geheimen
  • (Git-)repository's

Je app-ondertekeningssleutel upgraden

Dit gedeelte bevat instructies voor het upgraden van je app-ondertekeningssleutel. Als je je uploadsleutel bent kwijtgeraakt, hoef je geen sleutelupgrade aan te vragen. Check het gedeelte Ben je je uploadsleutel kwijtgeraakt of is deze gehackt? onderaan deze pagina.

In sommige gevallen kun je een upgrade van een app-ondertekeningssleutel aanvragen.

Hier volgen enkele redenen om een upgrade van de app-ondertekeningssleutel aan te vragen:

  • Je hebt een cryptografisch sterkere sleutel nodig.
  • Je app-ondertekeningssleutel is gehackt.

Belangrijk: Sleutelupgrades worden alleen ondersteund voor apps die app-bundels gebruiken.

Lees het gedeelte Belangrijke overwegingen voordat je een sleutelupgrade aanvraagt hieronder voordat je een sleutelupgrade aanvraagt in de Play Console. Vouw daarna de onderstaande gedeelten uit voor meer informatie over hoe je een sleutelupgrade aanvraagt.

Belangrijke overwegingen voordat je een sleutelupgrade aanvraagt

Voordat je een sleutelupgrade aanvraagt, is het belangrijk dat je begrijpt welke wijzigingen je moet aanbrengen nadat de upgrade is afgerond.

  • Als je dezelfde app-ondertekeningssleutel voor meerdere apps gebruikt om gegevens/code tussen deze apps te delen, moet je je apps updaten om zowel je nieuwe als verouderde app-ondertekeningssleutelcertificaten te herkennen.
  • Als je app API's gebruikt, moet je de certificaten voor je nieuwe en verouderde app-ondertekeningssleutel registreren bij API-providers voordat je een update voor je app publiceert om ervoor te zorgen dat de API's blijven werken. Certificaten zijn beschikbaar op de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening) in de Play Console.  
  • Als een of meer van je gebruikers via peer-to-peer gedeelde updates krijgen, kunnen ze alleen updates installeren die zijn ondertekend met dezelfde sleutel als de versie van je app die ze al hebben geïnstalleerd. Als ze hun app niet kunnen updaten omdat ze een versie van je app hebben die is ondertekend met een andere sleutel, kunnen ze de app verwijderen en opnieuw installeren om de update te krijgen.
Een sleutelupgrade aanvragen voor alle installaties op Android N (API-niveau 24) en hoger

Voor elke app kan de bijbehorende app-ondertekeningssleutel één keer per jaar worden geüpgraded voor alle installaties op Android N (API-niveau 24) en hoger.

Als je deze sleutelupgrade aanvraagt, wordt je nieuwe sleutel gebruikt om alle installaties en app-updates te ondertekenen. Op apparaten met Android N (API-niveau 24) tot en met Android S (API-niveau 32) checkt Google Play Protect of app-updates zijn ondertekend met je geüpgradede sleutel, tenzij de gebruiker dit heeft uitgezet. Op apparaten met Android T (API-niveau 33) en hoger dwingt het Android-platform het gebruik van de geüpgradede sleutel af.

  1. Open de Play Console en ga naar de pagina App-ondertekening van Play (Release > Instellen > App-ondertekening).
  2. Selecteer Upgrade van sleutel aanvragen op de kaart Je app-ondertekeningssleutel upgraden.
  3. Selecteer een optie om je app-ondertekeningssleutel te upgraden naar alle installaties op Android N en hoger.
  4. Laat Google een nieuwe app-ondertekeningssleutel maken (aanbevolen) of upload een sleutel.
    • Nadat je de app-ondertekeningssleutel hebt geüpgraded (en als je dezelfde sleutel als app-ondertekeningssleutel en uploadsleutel gebruikte), kun je de verouderde app-ondertekeningssleutel blijven gebruiken als uploadsleutel of een nieuwe uploadsleutel maken.
  5. Selecteer een reden waarom je een upgrade van de app-ondertekeningssleutel aanvraagt.
  6. Registreer zo nodig je nieuwe app-ondertekeningssleutel bij API-providers.

Tip: Als je je app via meerdere distributiekanalen distribueert en je de app-updatecompatibiliteit voor je gebruikers wilt maximaliseren, moet je je sleutel voor elk distributiekanaal upgraden. Voor compatibiliteit met de sleutelupgrade van Google Play gebruik je de ApkSigner-tool, gebundeld met Android SDK Build Tools (revisie 33.0.1+):

$ apksigner sign --in ${INPUT_APK}

--out ${OUTPUT_APK}

--ks ${ORIGINAL_KEYSTORE}

--ks-key-alias ${ORIGINAL_KEY_ALIAS}

--next-signer --ks ${UPGRADED_KEYSTORE}

--ks-key-alias ${UPGRADED_KEY_ALIAS}

--lineage ${LINEAGE}

 Vind meer informatie over hoe app-updates werken.

Best practices

  • Als je je app ook buiten Google Play distribueert of van plan bent dit later te doen en dezelfde ondertekeningssleutel wilt gebruiken, heb je 2 opties:
    • Laat Google de sleutel maken (aanbevolen) en download vervolgens een ondertekende, universele APK uit de app-bundel-verkenner om je app buiten Google Play te distribueren.
    • Of je kunt de app-ondertekeningssleutel maken die je voor alle appstores wilt gebruiken en vervolgens een kopie ervan overzetten naar Google als je app-ondertekening van Play configureert.
  • Voor de beveiliging van je account raden we je aan verificatie in 2 stappen aan te zetten voor alle accounts met toegang tot de Play Console.
  • Nadat je een app-bundel naar een releasetrack hebt gepubliceerd, ga je naar de app-bundel-verkenner om toegang te krijgen tot installeerbare APK's die Google maakt op basis van je app-bundel. Je kunt het volgende doen:
    • Een link voor intern delen van apps kopiëren en delen zodat je met één tik kunt testen wat Google Play vanuit je app-bundel installeert op verschillende apparaten.
    • Een ondertekende, universele APK downloaden. Deze enkele APK is ondertekend met de app-ondertekeningssleutel die Google in bewaring heeft en kan worden geïnstalleerd op elk apparaat dat je app ondersteunt.
    • Een zip-archief met alle APK's voor een specifiek apparaat downloaden. Deze APK's zijn ondertekend met de app-ondertekeningssleutel die Google in bewaring heeft. Je kunt de APK's in het zip-archief op een apparaat installeren met de opdracht adb install-multiple *.apk.
  • Voor betere beveiliging kun je een nieuwe uploadsleutel maken die verschilt van de app-ondertekeningssleutel.
  • Als je een Google API gebruikt, kun je de certificaten voor de uploadsleutel en de app-ondertekeningssleutel registreren in de Google Cloud Console voor je app.
  • Als je Android App Links gebruikt, moet je de sleutels updaten in het bijbehorende json-bestand voor Digital Asset Links op je website.

Ben je je uploadsleutel kwijtgeraakt of is deze gehackt?

Als je je privé-uploadsleutel bent kwijtgeraakt of als deze is gehackt, kun je een nieuwe maken. De eigenaar van je ontwikkelaarsaccount kan daarna een sleutelreset starten in de Play Console.

Nadat ons supportteam de nieuwe uploadsleutel heeft geregistreerd, krijgen de accounteigenaar en algemene beheerders een inboxbericht en e-mail met meer informatie. Je kunt dan je keystores updaten en je sleutel registreren bij API-providers.

De accounteigenaar kan het resetverzoek ook annuleren in de Play Console.

Belangrijk: Als je je uploadsleutel reset, is dit niet van invloed op de app-ondertekeningssleutel die Google Play gebruikt om APK's opnieuw te ondertekenen voordat ze worden geleverd aan gebruikers.

APK Signature Scheme v4

Apparaten met Android 11 en hoger ondersteunen het nieuwe APK Signature Scheme v4. App-ondertekening van Play gebruikt v4-ondertekening voor in aanmerking komende apps om ze toegang te geven tot geoptimaliseerde distributiefuncties die beschikbaar zijn op nieuwere apparaten. Ontwikkelaars hoeven verder niets te doen en er is naar verwachting geen impact van v4-ondertekening op gebruikers.

Gerelateerde content

Was dit nuttig?
Hoe kunnen we dit verbeteren?

Meer hulp nodig?

Probeer de volgende stappen:

Zoeken
Zoekopdracht verwijderen
Zoekfunctie sluiten
Google-apps
Hoofdmenu
15611510838435369263
true
Zoeken in het Helpcentrum
true
true
true
true
true
92637