Erstelle einen PKCS#12-Release-Schlüssel online

Android-Zertifizierung

Android-Keystore-Generator

Erstellen Sie online in Sekunden einen Android-Keystore, ohne Android Studio oder keytool. Erhalten Sie ein PKCS#12-Release-Keystore, das PEM-Zertifikat und die SHA-1- und SHA-256-Fingerabdrücke, bereit für Gradle, Capacitor, fastlane, CI und Google Play.

Container

PKCS#12

Schlüssel

RSA 2048, SHA-256

Fingerprints

SHA-1 und SHA-256

Release-Checkliste

  1. 1. Wählen Sie einen Alias und ein Passwort, die dieser App über die Zeit erhalten bleiben.
  2. 2. Laden Sie den Keystore herunter und speichern Sie die Metadaten in Ihrem Geheimnis-Manager.
  3. 3. Konfigurieren Sie denselben Alias und das Passwort in Gradle oder Ihrer CI-Umgebung.
  4. 4. Keep the upload key stable so future Play releases do not break.

Eingabe

Keystore-Einzelheiten

Füllen Sie die Unternehmensinformationen ein, die in das Signaturzertifikat eingebettet werden sollen, und wählen Sie einen stabilen Alias.

Ausgabe

Erstellter Android-Signierungsbundle

Nach der Erstellung erhalten Sie einen herunterladbaren Keystore sowie die Zertifikatsausgabe und Fingerabdrücke, die für die Einrichtung des Stores oder OAuth-Integrationen erforderlich sind.

Erstellen Sie das Signierpaket, um den Alias, Fingerabdrücke und Dateiherunterladungen hier anzuzeigen.

Grundlagen

Was ist ein Android-Keystore?

Ein Android-Keystore ist ein mit einem Passwort geschützter Datei, der den privaten Schlüssel und das Zertifikat enthält, das zum Signieren Ihrer App verwendet wird. Jedes APK und Android-App-Bundle muss vor der Installation oder Veröffentlichung signiert werden, und Android akzeptiert nur eine Aktualisierung, wenn sie mit dem gleichen Schlüssel wie die bereits installierte Version signiert ist.

Das macht den Keystore zu einem der wichtigsten Dateien in Ihrem Projekt. Mit Play App Signing fungiert er als Ihr Hochlade-Schlüssel, den Google vor der Wiederzeichnung Ihrer App überprüft. Ohne Play App Signing ist er der App-Signier-Schlüssel selbst, und der Verlust bedeutet, dass Sie die App nicht mehr aktualisieren können.

Diese Generator erstellt einen PKCS#12 (.p12)-Keystore mit einem RSA-2048-Bit-Schlüssel und einem SHA-256-Zertifikat, dem gleichen Ausgang wie keytool und die Android Studio-Signierungswizard mit einer 25-jährigen Standardgültigkeit, die die Google Play-Anforderungen erfüllt.

Sicherheit und Datenschutz

Wie Ihr Keystore generiert wird

  • Der Keystore wird auf Anfrage durch einen stateless Capgo-Endpunkt über HTTPS erstellt und direkt an Ihren Browser als Download zurückgegeben.
  • Antworten werden mit Cache-Control: no-store. Der private Schlüssel, das Passwort und die Dateien werden nie in einer Datenbank gespeichert oder nach der Antwort aufbewahrt.
  • Der Keystore wird mit Ihrem Passwort mithilfe der AES-256-Verschlüsselung innerhalb des PKCS#12-Containers geschützt.
  • Keine Registrierung oder Anmeldung erforderlich, und Anfragen werden begrenzt, um Missbrauch zu verhindern.

Need a key that never leaves your machine? Run the equivalent keytool Kommando lokal aus. Es produziert den gleichen Art von Keystore.

Äquivalentes Kommando für keytool
keytool -genkeypair -v \
  -storetype PKCS12 \
  -keystore release.p12 \
  -alias release \
  -keyalg RSA -keysize 2048 \
  -validity 9125 \
  -dname "CN=Jane Doe, O=Acme Mobile, C=DE"

Schritt für Schritt

How Android-Keystore online zu generieren

Von einer leeren Form bis zu einer signierten Veröffentlichung auf Google Play in sechs Schritten. Die ersten drei Schritte dauern weniger als eine Minute.

  1. Schritt 1

    Eingeben Sie die Zertifikatsdetails

    Fügen Sie Ihren vollständigen Namen, E-Mail-Adresse und zwei Buchstaben code Ihres Landes hinzu. Organisation, Abteilung, Stadt und Bundesland sind optional und erscheinen nur im Zertifikatsubjekt.

  2. Schritt 2

    Wählen Sie einen Alias, Gültigkeit und Passwort

    Wählen Sie einen einfachen Alias wie release oder upload, behalten Sie die 25-jährige Gültigkeit bei und setzen Sie ein starkes Passwort mit mindestens 8 Zeichen. Schreiben Sie alle drei auf, bevor Sie fortfahren.

  3. Schritt 3

    Erstellen und herunterladen Sie das Zertifikat

    Wählen Sie Erstellen von Zertifikat, dann laden Sie das .p12-Zertifikat und das PEM-Zertifikat herunter. Kopieren Sie die SHA-1- und SHA-256-Fingerabdrücke aus dem Ergebnisfenster.

  4. Schritt 4

    Die Keystore-Datei und die Zugangsdaten sichern

    Speichern Sie die Keystore-Datei, den Alias und das Passwort zusammen in einem Passwort- oder Geheimnismanager. Komiten Sie die Keystore-Datei nie in Git.

  5. Schritt 5

    Konfigurieren Sie die Signierung in Ihrem Build

    Punkten Sie Gradle, die Capacitor CLI, fastlane oder Capgo Cloud Build an der Keystore mit Alias und Passwort an, dann bauen Sie eine signierte Release AAB oder APK.

  6. Schritt 6

    Hochladen Sie die signierte App auf Google Play

    Hochladen Sie die signierte Android-App-Bundle in Play Console. Mit Play App Signing wird diese Keystore Ihre Upload-Schlüssel und Google verwaltet den Schlüssel für die endgültige App-Signierung.

Verwenden Sie das Ergebnis

Signieren Sie Ihre Android-App mit der generierten Keystore

Ersetzen Sie den Alias und das Passwort durch die Werte, die Sie oben eingegeben haben. Da die Keystore PKCS#12 ist, ist der Schlüsselpasswort gleich dem Speicherpasswort.

Gradle-Signierungskonfiguration

Für Capacitor, Ionic, React Native, Flutter und native Projekte funktioniert es. Speichern Sie Passwörter in gradle.properties oder Umgebungsvariablen.

android/app/build.gradle
// android/app/build.gradle
android {
    signingConfigs {
        release {
            storeFile file(RELEASE_STORE_FILE)
            storePassword RELEASE_STORE_PASSWORD
            keyAlias RELEASE_KEY_ALIAS
            keyPassword RELEASE_STORE_PASSWORD
            storeType "pkcs12"
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }
}

# ~/.gradle/gradle.properties (keep out of Git)
RELEASE_STORE_FILE=/path/to/release.p12
RELEASE_STORE_PASSWORD=your-password
RELEASE_KEY_ALIAS=release

Capacitor CLI

Erstellen Sie mit einem Befehl ein signiertes Android-App-Bundle für eine Capacitor-App.

Capacitor signierte Build
bunx cap build android \
  --keystorepath ./release.p12 \
  --keystorepass "your-password" \
  --keystorealias release \
  --keystorealiaspass "your-password" \
  --androidreleasetype AAB

Capgo Cloud Build

Speichern Sie das Keystore einmal und lassen Sie Capgo Cloud Build sign und uploaden Sie jede Veröffentlichung.

Capgo CLI
bunx @capgo/cli@latest build credentials save \
  --platform android \
  --keystore ./release.p12 \
  --keystore-alias release \
  --keystore-key-password "your-password" \
  --keystore-store-password "your-password"

Über Capgo

Einbringen von Signierungs-Eigenschaften in die Gradle-Aktion aus CI-Secrets.

Fastfile
gradle(
  task: "bundle",
  build_type: "Release",
  properties: {
    "android.injected.signing.store.file" => ENV["RELEASE_STORE_FILE"],
    "android.injected.signing.store.password" => ENV["RELEASE_STORE_PASSWORD"],
    "android.injected.signing.key.alias" => ENV["RELEASE_KEY_ALIAS"],
    "android.injected.signing.key.password" => ENV["RELEASE_STORE_PASSWORD"],
  }
)

Überprüfen, konvertieren und in CI speichern

Überprüfen Sie den Alias und die Fingerabdrücke, konvertieren Sie das Datei für Legacy-Tools oder codieren Sie die Datei für ein CI-Secret.

keytool und base64
# Inspect the keystore, alias, and fingerprints
keytool -list -v -keystore release.p12 -storetype PKCS12

# Convert to JKS if an older tool requires it
keytool -importkeystore \
  -srckeystore release.p12 -srcstoretype PKCS12 \
  -destkeystore release.jks -deststoretype JKS

# Base64-encode the keystore for a CI secret
base64 -i release.p12 | tr -d '\n' > release.p12.base64

Problembehandlung

Übliche Fehler und Lösungen für Android-Keystores

Der Keystore wurde manipuliert oder das Passwort war falsch
Das Speicherpasswort ist falsch. Kopieren Sie es erneut aus Ihrem Passwortmanager und überprüfen Sie nach Leerzeichen am Ende in CI-Secrets.
Kein Schlüssel mit dem Alias "release" gefunden im Keystore
Der Alias passt nicht. Führen Sie keytool -list auf dem Keystore aus, um den genauen Alias zu sehen, der case-sensitive ist.
Gegebenes Endblatt wurde nicht korrekt gepolstert
Das Schlüsselpasswort ist falsch. Bei PKCS#12-Keystores muss das Schlüsselpasswort gleich dem Speicherpasswort sein.
Ungültiges Keystore-Format
Ein älteres Java 8 Werkzeugkasten liest ein PKCS#12-File als JKS. Setzen Sie storeType "pkcs12" in Gradle oder konvertieren Sie das File in JKS mit keytool -importkeystore.
Ihr Android-App-Bundle ist mit dem falschen Schlüssel signiert
Google Play erwartet das Original-Upload-Schlüssel. Signieren Sie mit diesem Schlüssel oder stellen Sie einen Upload-Schlüssel-Reset in Play Console mit dem PEM-Zertifikat aus einem neuen Keystore ab.
Google Sign-In oder Firebase Auth funktioniert nur in Release-Builds
Fügen Sie die Release-SHA-1- und SHA-256-Fingerabdrücke in Firebase hinzu und auch die Play App Signing-Schlüssel-Fingerabdrücke aus Play Console.

FAQ

Häufig gestellte Fragen

Informationen zu Keystore-Formaten, Passwörtern, Gültigkeit, Google Play-Upload-Schlüsseln und was zu tun ist, wenn ein Schlüssel verloren geht.

Was ist ein Android-Keystore?

An Android keystore is a password-protected file that holds the private key and certificate used to sign your APK or Android App Bundle. Android and Google Play use that signature to verify that every update comes from the same developer, so the same key must sign all future releases of the app.

Wie generiere ich einen Android-Keystore online ohne Android Studio?

Füllen Sie Ihren Namen, Ihre E-Mail-Adresse, Ihr Land code, einen Alias für die Schlüssel, eine Gültigkeitsdauer und ein Passwort in der Form oben aus, dann wählen Sie Erstellen von Keystore aus. Sie erhalten ein fertiges .p12-Keystore, eine PEM-Kopie des Zertifikats und die SHA-1- und SHA-256-Fingerabdrücke. Eine Installation von Android Studio, JDK oder keytool ist nicht erforderlich.

Welche Dateiformat erzeugt dieser Android-Keystore-Generator?

Es wird ein PKCS#12 (.p12)-Keystore mit einem einzelnen RSA-2048-Bit-Signierungs-Schlüssel und einem SHA-256-gesicherten Zertifikat sowie eine PEM-Zertifikatsausgabe erstellt. PKCS#12 ist die Standard-Keystore-Art seit Java 9 und wird von Gradle, apksigner, jarsigner und Google Play akzeptiert. Wenn ein älterer Tool ein JKS-Datei benötigt, konvertieren Sie es mit keytool -importkeystore.

Ist es sicher, einen Keystore online zu generieren? Wird mein Schlüssel gespeichert?

Der Keystore wird auf Anfrage durch einen stateless Capgo-Endpunkt über HTTPS generiert und direkt an Ihren Browser zurückgegeben. Die Antworten werden mit Cache-Control: no-store gesendet, und der private Schlüssel, das Passwort und die Dateien werden nie in einer Datenbank geschrieben oder nach der Antwort gespeichert. Wenn Ihre Sicherheitspolitik Schlüssel verlangt, die nie von Ihrem Computer verlassen, verwenden Sie die entsprechende keytool-Befehlszeile, die auf dieser Seite angezeigt wird.

Kann ich diesen Keystore für Google Play-Releases verwenden?

Ja. Verwenden Sie ihn als Upload-Schlüssel für eine neue App, die in Play App Signing angemeldet ist, oder als App-Signier-Schlüssel für direkte APK-Verteilung. Google Play verlangt, dass das Zertifikat bis mindestens 22. Oktober 2033 gültig ist, was die Standardgültigkeit von 25 Jahren abdeckt.

Sollten sich der Speicherpasswort und das Schlüsselpasswort unterscheiden?

PKCS#12-Keystores verwenden ein Passwort für den Container und die Schlüssel. In Gradle, der Capacitor CLI, fastlane oder der Capgo Cloud Build, geben Sie denselben Wert für das Speicherpasswort und das Schlüsselpasswort ein.

Welche Gültigkeitsdauer sollte ich wählen?

Bleiben Sie bei der Standardzeit von 25 Jahren. Google empfiehlt mindestens 25 Jahre, und Google Play lehnt Uploads ab, die mit einem Zertifikat signiert sind, das vor dem 22. Oktober 2033 abläuft. Sie können die Gültigkeit eines bestehenden Schlüssels nicht später erweitern.

Was passiert, wenn ich meinen Keystore oder mein Passwort verliere?

Wenn Ihr App Play App Signing verwendet, können Sie bei Google den Uploadschlüssel aus dem Play Console neu generieren lassen, indem Sie hier einen neuen Keystore erstellen und dessen PEM-Zertifikat hochladen. Ohne Play App Signing bedeutet ein verlorenes Schlüsselpaar, dass Sie keine Updates zum gleichen App-Listing veröffentlichen können, also sichern Sie die Datei, den Alias und das Passwort in einem geheimen Manager.

Brauche ich diese Werkzeug für einen Debug-Keystore?

Normalerweise nicht. Der Android-SDK erstellt einen Debug-Keystore automatisch im Verzeichnis ~/.android/debug.keystore mit dem Passwort android und dem Alias androiddebugkey. Verwenden Sie dieses Generator für Release- und Upload-Schlüssel, die stabil bleiben müssen, wenn sie in den Store freigegeben werden.

Wo finde ich die SHA-1- und SHA-256-Fingerabdrücke?

Sie werden im Ergebnisfenster direkt nach der Erstellung angezeigt. Registrieren Sie sie bei Firebase, Google Sign-In, Google Maps oder Android App Links (assetlinks.json). Beachten Sie, dass Play App Signing Ihre App neu signiert, Google-Dienste auch die App-Signierungsschlüssel-Fingerprint aus dem Play Console benötigen.

Funktioniert es für Capacitor, Ionic, React Native und Flutter Apps?

Ja. Ein Keystore ist frameworkunabhängig. Jede Android-Ausgabe, die Gradle verwendet, kann damit signiert werden, einschließlich Capacitor, Ionic, React Native, Flutter und native Kotlin- oder Java-Projekten.