Cara kerja DynamoDB Encryption Client - AWS Enkripsi Database SDK

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Cara kerja DynamoDB Encryption Client

catatan

Pustaka enkripsi sisi klien kami diubah namanya menjadi SDK Enkripsi AWS Database. Topik berikut memberikan informasi tentang versi 1. x —2. x dari DynamoDB Encryption Client untuk Java dan versi 1. x —3. x dari DynamoDB Encryption Client untuk Python. Untuk informasi selengkapnya, lihat SDK Enkripsi AWS Database untuk dukungan versi DynamoDB.

DynamoDB Encryption Client dirancang khusus untuk melindungi data yang Anda simpan di DynamoDB. Pustakanya meliputi implementasi aman yang dapat Anda perluas atau gunakan tanpa perubahan. Dan, sebagian besar elemennya diwakili oleh elemen abstrak sehingga Anda dapat membuat dan menggunakan komponen kustom yang kompatibel.

Mengenkripsi dan menandatangani item tabel

Mesin utama dari DynamoDB Encryption Client adalah enkriptor item yang mengenkripsi, menandatangani, memverifikasi, dan mendekripsi item tabel. Ia menerima informasi tentang item tabel Anda dan memberi perintah tentang item mana yang perlu dienkripsi dan ditandatangani. Ia menerima materi enkripsi, dan memberi perintah tentang cara menggunakannya, dari penyedia materi kriptografis yang Anda pilih dan konfigurasikan.

Diagram berikut menunjukkan garis besar proses ini.

Mengenkripsi dan menandatangani item di DynamoDB Encryption Client

Untuk mengenkripsi dan menandatangani item tabel, DynamoDB Encryption Client memerlukan:

  • Informasi tentang tabel. Ia mendapatkan informasi tentang tabel dari konteks enkripsi DynamoDB yang Anda berikan. Beberapa pembantu mendapatkan informasi yang diperlukan dari DynamoDB dan membuat konteks enkripsi DynamoDB untuk Anda.

    catatan

    Konteks enkripsi DynamoDB di DynamoDB Encryption Client tidak terkait dengan konteks enkripsi di AWS Key Management Service (AWS KMS) dan AWS Encryption SDK.

  • Yang atribut untuk mengenkripsi dan menandatangani. Ia mendapatkan informasi ini dari tindakan atribut yang Anda berikan.

  • Materi enkripsi, termasuk kunci enkripsi dan penandatanganan. Ia mendapatkannya dari penyedia materi kriptografis (CMP) yang Anda pilih dan konfigurasikan.

  • Instruksi untuk mengenkripsi dan menandatangani item. CMP menambahkan instruksi untuk menggunakan materi enkripsi, termasuk algoritma enkripsi dan penandatanganan, ke deskripsi material aktual.

Enkriptor item menggunakan semua elemen ini untuk mengenkripsi dan menandatangani item. Enkriptor item juga menambahkan dua atribut untuk item: atribut deskripsi materi yang berisi instruksi enkripsi dan penandatanganan (deskripsi materi aktual), dan atribut yang berisi tanda tangan. Anda dapat berinteraksi dengan enkriptor item secara langsung, atau menggunakan fitur pembantu yang berinteraksi dengan enkriptor item untuk Anda untuk menerapkan perilaku default yang aman.

Hasilnya adalah item DynamoDB yang mengandung data yang dienkripsi dan ditandatangani.

Memverifikasi dan mendekripsi item tabel

Komponen ini juga bekerja sama untuk memverifikasi dan mendekripsi item Anda, seperti yang ditunjukkan dalam diagram berikut.

Memverifikasi dan mendekripsi item di DynamoDB Encryption Client

Untuk memverifikasi dan mendekripsi item, DynamoDB Encryption Client membutuhkan komponen yang sama, komponen dengan konfigurasi yang sama, atau komponen yang dirancang khusus untuk mendekripsi item, sebagai berikut:

  • Informasi tentang tabel dari konteks enkripsi DynamoDB.

  • Yang atribut untuk memverifikasi dan mendekripsi. Ia mendapatkannya dari tindakan atribut.

  • Materi dekripsi, termasuk kunci verifikasi dan dekripsi, dari penyedia materi kriptografis (CMP) yang Anda pilih dan konfigurasikan.

    Item terenkripsi tidak termasuk catatan CMP yang digunakan untuk mengenkripsinya. Anda harus menyediakan CMP yang sama, CMP dengan konfigurasi yang sama, atau CMP yang dirancang untuk mendekripsi item.

  • Informasi tentang cara item dienkripsi dan ditandatangani, termasuk algoritma enkripsi dan penandatanganan. Klien mendapatkannya dari atribut deskripsi materi dalam item.

Enkriptor item menggunakan semua elemen ini untuk memverifikasi dan mendekripsi item. Ia juga menghapus deskripsi materi dan atribut tanda tangan. Hasilnya adalah item DynamoDB plaintext.