Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gantungan kunci RSA mentah
Pustaka enkripsi sisi klien kami diubah namanya menjadi SDK Enkripsi AWS Database. Panduan pengembang ini masih memberikan informasi tentang Klien Enkripsi DynamoDB. |
Raw RSA keyring melakukan enkripsi asimetris dan dekripsi kunci data dalam memori lokal dengan kunci publik dan pribadi RSA yang Anda berikan. Anda perlu membuat, menyimpan, dan melindungi kunci pribadi, sebaiknya dalam modul keamanan perangkat keras (HSM) atau sistem manajemen kunci. Fungsi enkripsi mengenkripsi kunci data di bawah kunci publik RSA. Fungsi dekripsi mendekripsi kunci data menggunakan kunci pribadi. Anda dapat memilih dari antara beberapa mode padding RSA.
Raw RSA keyring yang mengenkripsi dan mendekripsi harus menyertakan kunci publik asimetris dan private key pair. Namun, Anda dapat mengenkripsi data dengan keyring Raw RSA yang hanya memiliki kunci publik, dan Anda dapat mendekripsi data dengan keyring Raw RSA yang hanya memiliki kunci pribadi. Anda dapat menyertakan keyring Raw RSA apa pun dalam multi-keyring. Jika Anda mengonfigurasi keyring Raw RSA dengan kunci publik dan pribadi, pastikan bahwa mereka adalah bagian dari key pair yang sama.
Raw RSA keyring setara dengan dan berinteraksi dengan JceMasterKey
catatan
Raw RSA keyring tidak mendukung kunci KMS asimetris. Untuk menggunakan kunci KMS RSA asimetris, buat keyring.AWS KMS
Ruang nama dan nama
Untuk mengidentifikasi materi kunci RSA dalam keyring, keyring Raw RSA menggunakan namespace kunci dan nama kunci yang Anda berikan. Nilai-nilai ini bukan rahasia. Mereka muncul dalam teks biasa dalam deskripsi materi yang ditambahkan SDK Enkripsi AWS Database ke catatan. Sebaiknya gunakan namespace kunci dan nama kunci yang mengidentifikasi key pair RSA (atau kunci privatnya) di HSM atau sistem manajemen kunci Anda.
catatan
Namespace kunci dan nama kunci setara dengan kolom ID Penyedia (atau Penyedia) dan ID Kunci di kolom. JceMasterKey
Jika Anda membuat keyring yang berbeda untuk mengenkripsi dan mendekripsi catatan yang diberikan, namespace dan nilai nama sangat penting. Jika namespace kunci dan nama kunci dalam keyring dekripsi bukan kecocokan yang tepat dan peka huruf besar/kecil untuk namespace kunci dan nama kunci dalam keyring enkripsi, keyring dekripsi tidak digunakan, bahkan jika kunci tersebut berasal dari key pair yang sama.
Namespace kunci dan nama kunci dari bahan kunci dalam enkripsi dan dekripsi keyrings harus sama apakah keyring berisi kunci publik RSA, kunci pribadi RSA, atau kedua kunci dalam key pair. Misalnya, Anda mengenkripsi data dengan keyring Raw RSA untuk kunci publik RSA dengan namespace kunci dan nama HSM_01
kunci. RSA_2048_06
Untuk mendekripsi data tersebut, buat keyring Raw RSA dengan kunci pribadi (atau key pair), dan namespace dan nama kunci yang sama.
Modus padding
Anda harus menentukan mode padding untuk keyring Raw RSA yang digunakan untuk enkripsi dan dekripsi, atau menggunakan fitur implementasi bahasa Anda yang menentukannya untuk Anda.
AWS Encryption SDK Mendukung mode padding berikut, tunduk pada kendala masing-masing bahasa. Kami merekomendasikan mode padding OAEP
-
OAEP dengan SHA-1 dan MGF1 dengan Padding SHA-1
-
OAEP dengan SHA-256 dan MGF1 dengan Padding SHA-256
-
OAEP dengan SHA-384 dan MGF1 dengan Padding SHA-384
-
OAEP dengan SHA-512 dan MGF1 dengan Padding SHA-512
-
Padding PKCS1 v1.5
Contoh Java berikut menunjukkan cara membuat keyring RSA Raw dengan kunci publik dan pribadi dari key pair RSA dan OAEP dengan SHA-256 dan MGF1 dengan mode padding SHA-256. RSAPrivateKey
Variabel RSAPublicKey
dan mewakili materi utama yang Anda berikan.