Mengenkripsi dan mendekripsi data

Dokumen ini menjelaskan cara mengenkripsi dan mendekripsi data menggunakan kunci Key Management System (KMS) dengan gdcloud CLI.

Dokumen ini ditujukan untuk audiens dalam grup operator aplikasi yang perlu melakukan operasi kriptografis dalam project GDC. Untuk mengetahui informasi selengkapnya, lihat Audiens untuk dokumentasi GDC dengan air gap.

Sebelum memulai

Sebelum mengenkripsi atau mendekripsi data, Anda harus memiliki izin yang diperlukan dan menyiapkan lingkungan Anda.

Meminta peran IAM

Untuk mengenkripsi dan mendekripsi data, hubungi Admin Org IAM Anda untuk meminta peran KMS Developer (kms-developer) di namespace project Anda.

Menyiapkan lingkungan Anda

Mengenkripsi data

Untuk mengenkripsi data, gunakan perintah gdcloud kms keys encrypt. Perintah ini mengenkripsi file teks biasa tertentu menggunakan kunci AEAD, dan menulisnya ke file ciphertext bernama.

  • Untuk mengenkripsi data, teruskan nama kunci dan hal berikut:

    gdcloud kms keys encrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \
      --plaintext-file=PLAINTEXT_PATH \
      --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \
      --ciphertext-file=CIPHERTEXT_PATH
    

    Ganti variabel berikut:

    • NAMESPACE: namespace project—misalnya: kms-test1.
    • KEY_NAME: nama kunci yang digunakan untuk mengenkripsi teks biasa—misalnya: key-1.
    • PLAINTEXT_PATH: jalur ke file yang berisi teks biasa yang akan dienkripsi.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: file opsional yang berisi data terautentikasi tambahan (AAD). AAD digunakan untuk pemeriksaan integritas dan melindungi data Anda dari serangan confused deputy. AAD dan teks biasa masing-masing memiliki batas ukuran 64 KB.
    • CIPHERTEXT_PATH: jalur ke file yang berisi teks biasa yang dienkripsi.

    Setelah menjalankan perintah, Anda akan melihat file yang Anda tentukan dalam flag --ciphertext-file yang berisi konten terenkripsi dari file teks biasa.

Mendekripsi data

Untuk mendekripsi data, gunakan perintah gdcloud kms keys decrypt. Perintah ini mendekripsi file ciphertext tertentu menggunakan kunci AEAD, dan menulisnya ke file teks biasa bernama.

  • Untuk mendekripsi ciphertext, teruskan nama kunci dan hal berikut:

    gdcloud kms keys decrypt namespaces/NAMESPACE/aeadKeys/KEY_NAME \
     --ciphertext-file=CIPHERTEXT_PATH \
     --additional-authenticated-data-file=ADDITIONAL_AUTHENTICATED_DATA_FILE \
     --plaintext-file=PLAINTEXT_PATH
    

    Ganti variabel berikut:

    • NAMESPACE: namespace project.
    • KEY_NAME: nama kunci yang digunakan untuk mengenkripsi teks biasa.
    • CIPHERTEXT_PATH: jalur file yang ingin Anda dekripsi.
    • ADDITIONAL_AUTHENTICATED_DATA_FILE: file opsional yang berisi data terautentikasi tambahan (AAD). AAD digunakan untuk pemeriksaan integritas dan melindungi data Anda dari serangan confused deputy. AAD dan teks biasa masing-masing memiliki batas ukuran 64 KB.
    • PLAINTEXT_PATH: jalur ke file yang berisi teks biasa yang didekripsi.

    Setelah menjalankan perintah, Anda akan melihat file yang Anda tentukan dalam flag --plaintext-file yang berisi data yang didekripsi.