Status versi kunci

Versi kunci memiliki status:

  • Pembuatan tertunda (PENDING_GENERATION): (Hanya berlaku untuk kunci asimetris.) Versi kunci ini masih dibuat. Objek ini mungkin belum digunakan, diaktifkan, dinonaktifkan, atau dihancurkan. Cloud Key Management Service akan otomatis mengubah status menjadi diaktifkan segera setelah versi siap.

  • Impor tertunda (PENDING_IMPORT): (Hanya berlaku untuk kunci yang diimpor.) Versi kunci ini masih diimpor. Objek ini mungkin belum digunakan, diaktifkan, dinonaktifkan, atau dihancurkan. Cloud Key Management Service akan otomatis mengubah status menjadi diaktifkan segera setelah versi siap.

  • Diaktifkan (ENABLED): Versi kunci siap digunakan.

  • Nonaktif (DISABLED): Versi kunci ini mungkin tidak digunakan, tetapi materi kunci masih tersedia, dan versi tersebut dapat diaktifkan kembali.

  • Dijadwalkan untuk dimusnahkan (DESTROY_SCHEDULED): Versi kunci ini dijadwalkan untuk dimusnahkan dan akan segera dimusnahkan. Saat dalam status ini, versi kunci tidak dapat digunakan untuk operasi kriptografis, dan permintaan untuk menggunakan kunci akan gagal. Versi kunci dapat dipulihkan ke status dinonaktifkan dalam periode pemusnahan terjadwal. Status ini sesuai dengan Tahap 2 - Penghapusan Sementara dalam pipeline penghapusan data.

  • Destroyed (DESTROYED): Versi kunci ini dihancurkan, dan materi kunci tidak lagi disimpan di Cloud KMS. Jika versi kunci digunakan untuk enkripsi asimetris atau simetris, ciphertext apa pun yang dienkripsi dengan versi ini tidak dapat dipulihkan. Jika versi kunci digunakan untuk penandatanganan digital, tanda tangan baru tidak dapat dibuat. Selain itu, untuk semua versi kunci asimetris, kunci publik tidak lagi tersedia untuk didownload. Versi kunci tidak boleh keluar dari status hancur setelah dimasukkan. Status ini sesuai dengan Tahap 3 - Penghapusan Logis dari Sistem Aktif dalam pipeline penghapusan data, yang berarti materi kunci dihapus dari semua sistem Cloud KMS yang aktif. Perlu waktu 45 hari sejak waktu pemusnahan agar materi kunci dihapus dari semua sistem aktif dan cadangan Google. Lihat linimasa penghapusan Cloud KMS untuk mengetahui informasi selengkapnya.

  • Impor gagal (IMPORT_FAILED): Versi kunci ini tidak dapat diimpor. Lihat Memecahkan masalah impor yang gagal untuk mengetahui informasi tambahan tentang kondisi yang menyebabkan kegagalan impor.

Mengubah status versi kunci

Berikut ini penjelasan tentang cara versi kunci dapat mengubah status:

  • Saat versi kunci untuk kunci asimetris dibuat, versi tersebut dimulai dengan status pembuatan yang tertunda. Saat Cloud KMS selesai membuat versi kunci, statusnya akan otomatis berubah menjadi diaktifkan.

  • Saat versi kunci untuk kunci simetris dibuat, versi tersebut dimulai dengan status diaktifkan.

  • Versi kunci dapat berpindah dari diaktifkan ke dinonaktifkan dan dari dinonaktifkan ke diaktifkan menggunakan UpdateCryptoKeyVersion dan antarmuka ke metode ini. Untuk contohnya, lihat Mengaktifkan dan menonaktifkan versi kunci.

  • Versi kunci yang diaktifkan atau dinonaktifkan dapat dipindahkan ke jadwal untuk dihancurkan menggunakan DestroyCryptoKeyVersion dan antarmuka ke metode ini. Untuk contoh, lihat Menjadwalkan versi kunci untuk dimusnahkan.

  • Versi kunci yang dijadwalkan untuk dimusnahkan dapat dikembalikan ke nonaktif menggunakan RestoreCryptoKeyVersion dan antarmuka ke metode ini. Misalnya, lihat Memulihkan versi kunci.

Diagram berikut menunjukkan status yang diizinkan untuk versi kunci.

Status versi kunci

Perhatikan bahwa hanya versi kunci untuk kunci asimetris yang dimulai dalam status pembuatan yang tertunda. Versi kunci untuk kunci simetris dimulai dalam status diaktifkan.

Dampak status versi kunci pada operasi kriptografis

Dampak status versi kunci pada operasi kriptografis bergantung pada apakah kunci digunakan untuk:

  • Enkripsi simetris
  • Enkripsi asimetris atau penandatanganan digital

Enkripsi simetris

Setiap kunci enkripsi simetris memiliki versi utama yang ditetapkan dan digunakan pada saat itu untuk mengenkripsi data. Agar kunci tersedia untuk digunakan mengenkripsi data, kunci tersebut harus memiliki versi kunci utama yang diaktifkan.

Saat kunci digunakan untuk mengenkripsi teks biasa, versi kunci utamanya digunakan untuk mengenkripsi data tersebut. Informasi tentang versi yang digunakan untuk mengenkripsi data disimpan dalam ciphertext data. Hanya satu versi kunci yang dapat menjadi utama pada waktu tertentu.

Jika versi kunci utama dinonaktifkan, versi kunci tersebut tidak dapat digunakan untuk mengenkripsi data. Perhatikan bahwa versi kunci utama yang diaktifkan dapat dinonaktifkan, dijadwalkan untuk dihancurkan, atau dihancurkan, dan versi yang tidak diaktifkan dapat dijadikan versi utama.

Versi kunci mana yang utama tidak memengaruhi kemampuan untuk mendekripsi data. Versi kunci dapat digunakan untuk mendekripsi data selama diaktifkan.

Enkripsi asimetris atau penandatanganan digital

Setiap kali kunci asimetris digunakan untuk enkripsi atau penandatanganan digital, versi kunci harus ditentukan. Agar versi kunci tersedia untuk enkripsi asimetris atau penandatanganan digital, versi kunci harus diaktifkan. Anda hanya dapat mengambil kunci publik versi kunci jika versi kunci diaktifkan.

Durasi variabel dari status dijadwalkan untuk dimusnahkan

Secara default, kunci dalam Cloud KMS menghabiskan waktu 30 hari dalam status Dijadwalkan untuk dihancurkan (dihapus untuk sementara) sebelum materi kunci dihapus secara logis dari sistem. Durasi ini dapat dikonfigurasi, dengan batasan berikut:

  • Durasi hanya dapat dikonfigurasi selama pembuatan kunci.
  • Setelah ditentukan, durasi kunci tidak dapat diubah.
  • Durasi berlaku untuk semua versi kunci yang dibuat di masa mendatang.
  • Durasi minimumnya adalah 24 jam untuk semua kunci, kecuali untuk kunci khusus impor yang memiliki durasi minimum 0.
  • Durasi maksimumnya adalah 120 hari.

Nilai dikonfigurasi menggunakan kolom destroy_scheduled_duration dari CryptoKey di CreateCryptoKeyRequest.

Sebaiknya gunakan durasi default 30 hari untuk semua kunci, kecuali jika Anda memiliki persyaratan peraturan atau aplikasi tertentu yang memerlukan nilai yang berbeda.