Langsung ke konten utama

Signing Android

Generator Keystore Android

Buat Android keystore online dalam hitungan detik, tanpa Android Studio atau keytool. Dapatkan release keystore PKCS#12, sertifikat PEM, serta fingerprint SHA-1 dan SHA-256, siap untuk Gradle, Capacitor, fastlane, CI, dan Google Play.

Kontainer

PKCS#12

Key

RSA 2048, SHA-256

Fingerprint

SHA-1 dan SHA-256

Checklist rilis

  1. 1. Pilih alias dan password yang akan digunakan aplikasi ini seterusnya.
  2. 2. Download keystore dan simpan metadatanya di secret manager Anda.
  3. 3. Konfigurasi alias dan password yang sama di Gradle atau lingkungan CI Anda.
  4. 4. Pastikan upload key tetap stabil agar rilis Play Store berikutnya tidak error.

Input

Detail Keystore

Isi informasi subjek yang akan dimasukkan ke dalam sertifikat penandatanganan dan pilih alias yang stabil.

Output

Android signing bundle yang dihasilkan

Setelah generate, Anda akan mendapatkan file keystore yang bisa diunduh, serta ekspor sertifikat dan fingerprint yang dibutuhkan untuk setup store atau integrasi OAuth.

Generate signing bundle untuk menampilkan alias, fingerprint, dan link download file di sini.

Dasar-dasar

Apa itu Android keystore?

Android keystore adalah file terproteksi password yang berisi private key dan sertifikat untuk menandatangani aplikasi Anda. Setiap APK dan Android App Bundle harus ditandatangani sebelum bisa diinstal atau dipublikasikan, dan Android hanya menerima update jika ditandatangani dengan key yang sama dengan versi yang sudah terinstal.

Hal ini membuat keystore menjadi salah satu file terpenting dalam proyek Anda. Dengan Play App Signing, keystore berfungsi sebagai unggah kunci, yang akan diperiksa oleh Google sebelum melakukan re-signing pada aplikasi Anda. Tanpa Play App Signing, ini adalah kunci signing aplikasi itu sendiri, dan jika hilang, Anda tidak akan bisa lagi melakukan update pada aplikasi tersebut.

Generator ini membuat keystore PKCS#12 (.p12) dengan kunci RSA 2048-bit dan sertifikat SHA-256, output yang sama dengan keytool dan Android Studio signing wizard, dengan masa berlaku default 25 tahun yang memenuhi persyaratan Google Play.

Keamanan dan privasi

Cara keystore Anda dibuat

  • Keystore dibuat sesuai permintaan oleh endpoint Capgo yang stateless melalui HTTPS dan langsung dikirim ke browser Anda sebagai download.
  • Respons dikirim dengan Cache-Control: no-store. Private key, password, dan file tidak pernah masuk ke database atau disimpan setelah respons dikirim.
  • Keystore dilindungi dengan password Anda menggunakan enkripsi AES-256 di dalam kontainer PKCS#12.
  • Tidak perlu akun atau pendaftaran, dan request dibatasi (rate limited) untuk mencegah penyalahgunaan.

Butuh kunci yang tidak pernah keluar dari mesin Anda? Jalankan perintah keytool yang setara secara lokal. Hasilnya jenis keystore yang sama.

Perintah keytool yang setara
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"

Langkah demi langkah

Cara membuat Android keystore secara online

Dari form kosong hingga rilis bertanda tangan di Google Play dalam enam langkah. Tiga langkah pertama butuh waktu kurang dari satu menit.

  1. Langkah 1

    Masukkan detail sertifikat

    Masukkan nama lengkap, email, dan kode negara dua huruf code. Organisasi, unit, kota, dan provinsi bersifat opsional dan hanya muncul di subject sertifikat.

  2. Langkah 2

    Pilih alias, masa berlaku, dan password

    Pilih alias sederhana seperti release atau upload, gunakan masa berlaku 25 tahun, dan buat password kuat minimal 8 karakter. Catat ketiganya sebelum lanjut.

  3. Langkah 3

    Generate dan download keystore

    Pilih Generate keystore, lalu unduh keystore .p12 dan sertifikat PEM. Salin fingerprint SHA-1 dan SHA-256 dari panel hasil.

  4. Langkah 4

    Cadangkan keystore dan kredensial

    Simpan file keystore, alias, dan password bersama-sama di password manager atau secret manager. Jangan pernah commit keystore ke Git.

  5. Langkah 5

    Konfigurasi signing di build Anda

    Arahkan Gradle, Capacitor CLI, fastlane, atau Capgo Cloud Build ke keystore dengan alias dan password, lalu build signed release AAB atau APK.

  6. Langkah 6

    Upload aplikasi yang sudah di-sign ke Google Play

    Upload Android App Bundle yang sudah di-sign di Play Console. Dengan Play App Signing, keystore ini menjadi upload key Anda dan Google yang mengelola app signing key final.

Gunakan hasilnya

Sign aplikasi Android Anda dengan keystore yang dihasilkan

Ganti alias dan password dengan nilai yang Anda masukkan di atas. Karena keystore menggunakan PKCS#12, key password sama dengan store password.

Konfigurasi signing Gradle

Berfungsi untuk Capacitor, Ionic, React Native, Flutter, dan proyek native. Simpan password di gradle.properties atau environment variables.

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

Build Android App Bundle yang sudah ditandatangani untuk aplikasi Capacitor dalam satu perintah.

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

Capgo Cloud Build

Simpan keystore sekali, lalu build dan sign aplikasi iOS dan Android di cloud dengan Capgo.

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"

fastlane

Inject properti signing ke action Gradle dari 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"],
  }
)

Verifikasi, konversi, dan simpan di CI

Cek alias dan fingerprint, konversi ke JKS untuk tool lama, atau encode file untuk CI secret.

keytool dan 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

Pemecahan Masalah

Error keystore Android umum dan solusinya

Keystore telah dimodifikasi, atau password salah
Kata sandi store salah. Salin kembali dari password manager Anda dan pastikan tidak ada spasi di akhir pada CI secrets.
Alias 'release' tidak ditemukan di dalam keystore
Alias tidak cocok. Jalankan keytool -list pada keystore untuk melihat alias yang tepat, karena bersifat case sensitive.
Blok terakhir tidak memiliki padding yang benar
Password key salah. Untuk keystore PKCS#12, password key harus sama dengan password store.
Format keystore tidak valid
Toolchain Java 8 lama membaca file PKCS#12 sebagai JKS. Atur storeType "pkcs12" di Gradle atau konversi file ke JKS menggunakan keytool -importkeystore.
Android App Bundle Anda ditandatangani dengan key yang salah
Google Play memerlukan upload key asli. Tandatangani dengan key tersebut, atau minta reset upload key di Play Console menggunakan sertifikat PEM dari keystore baru.
Google Sign-In atau Firebase Auth gagal hanya pada release build
Tambahkan fingerprint SHA-1 dan SHA-256 release ke Firebase, serta fingerprint Play App Signing key dari Play Console.

FAQ

FAQ generator keystore Android

Jawaban seputar format keystore, password, validitas, Google Play upload key, dan apa yang harus dilakukan jika key hilang.

Apa itu Android keystore?

Android keystore adalah file yang dilindungi password dan menyimpan private key serta sertifikat untuk menandatangani APK atau Android App Bundle Anda. Android dan Google Play memakai signature tersebut untuk memverifikasi bahwa setiap update berasal dari developer yang sama, jadi key yang sama harus menandatangani semua release aplikasi ke depannya.

Bagaimana cara generate Android keystore secara online tanpa Android Studio?

Isi nama, email, negara code, alias key, masa berlaku, dan password pada formulir di atas, lalu pilih Generate keystore. Anda akan mendapatkan keystore .p12 siap pakai, salinan sertifikat PEM, serta fingerprint SHA-1 dan SHA-256. Tidak perlu install Android Studio, JDK, atau keytool.

Format file apa yang dihasilkan oleh generator Android keystore ini?

Alat ini menghasilkan keystore PKCS#12 (.p12) dengan satu RSA 2048-bit signing key dan sertifikat bertanda tangan SHA-256, serta ekspor sertifikat PEM. PKCS#12 adalah tipe keystore default sejak Java 9 dan didukung oleh Gradle, apksigner, jarsigner, serta Google Play. Jika tool lama membutuhkan file JKS, konversi menggunakan keytool -importkeystore.

Apakah aman membuat keystore secara online? Apakah key saya disimpan?

Keystore dibuat secara on-demand melalui endpoint Capgo yang stateless via HTTPS dan langsung dikirim ke browser Anda. Response dikirim dengan Cache-Control: no-store; private key, password, dan file tidak pernah ditulis ke database atau disimpan setelah response selesai. Jika kebijakan keamanan Anda mewajibkan key tidak boleh keluar dari mesin, gunakan perintah keytool yang tersedia di halaman ini.

Bisakah saya menggunakan keystore ini untuk rilis Google Play?

Bisa. Gunakan sebagai upload key untuk aplikasi baru yang menggunakan Play App Signing, atau sebagai app signing key untuk distribusi APK langsung. Google Play mewajibkan sertifikat valid setidaknya hingga 22 Oktober 2033, yang sudah tercakup dalam masa berlaku default 25 tahun.

Apakah password store dan password key harus berbeda?

Tidak. Keystore PKCS#12 menggunakan satu password untuk container dan key-nya. Di Gradle, Capacitor CLI, fastlane, atau Capgo Cloud Build, masukkan nilai yang sama untuk store password dan key password.

Berapa masa berlaku yang harus saya pilih?

Gunakan default 25 tahun. Google menyarankan minimal 25 tahun, dan Google Play menolak upload yang ditandatangani dengan sertifikat yang kedaluwarsa sebelum 22 Oktober 2033. Masa berlaku key yang sudah ada tidak bisa diperpanjang di kemudian hari.

Apa yang terjadi jika saya kehilangan keystore atau password?

Jika aplikasi Anda menggunakan Play App Signing, Anda bisa meminta Google reset upload key dari Play Console dengan membuat keystore baru di sini dan mengunggah sertifikat PEM-nya. Tanpa Play App Signing, kehilangan key berarti Anda tidak bisa mempublikasikan update ke listing aplikasi yang sama, jadi backup file, alias, dan password di secret manager.

Apakah saya butuh tool ini untuk debug keystore?

Biasanya tidak. SDK Android membuat debug keystore secara otomatis di ~/.android/debug.keystore dengan password android dan alias androiddebugkey. Gunakan generator ini untuk release dan upload key yang harus tetap stabil di semua rilis store.

Di mana saya bisa menemukan fingerprint SHA-1 dan SHA-256?

Fingerprint tersebut muncul di panel hasil tepat setelah proses generate. Daftarkan ke Firebase, Google Sign-In, Google Maps, atau Android App Links (assetlinks.json). Perlu dicatat, setelah Play App Signing menandatangani ulang aplikasi Anda, layanan Google juga membutuhkan fingerprint app signing key dari Play Console.

Apakah ini berfungsi untuk aplikasi Capacitor, Ionic, React Native, dan Flutter?

Ya. Keystore tidak bergantung pada framework. Build Android apa pun yang memakai Gradle bisa sign dengan keystore ini, termasuk Capacitor, Ionic, React Native, Flutter, dan proyek native Kotlin atau Java.

Capgo Native Build

Build dan sign aplikasi iOS serta Android di cloud dengan Capgo

Upload keystore yang Anda buat dengan tool ini, trigger release build dari CI, dan upload signed Android App Bundles ke Google Play tanpa perlu mengelola build farm sendiri.

Jelajahi Native Build