Menghasilkan pasangan kunci data asimetris.
Catatan penggunaan
Operasi ini menghasilkan pasangan kunci data menggunakan generator angka acak, mengenkripsi pasangan kunci data menggunakan versi awal dari kunci simetris, dan mengembalikan kunci publik teks biasa, kunci privat teks biasa, serta kunci privat teks sandi dari pasangan kunci data. Anda dapat menggunakan pasangan kunci data untuk melakukan verifikasi tanda tangan di luar Key Management Service (KMS).
Simpan kunci privat teks sandi (PrivateKeyCiphertextBlob), vektor awal (IV), algoritma enkripsi (Algorithm), dan data autentikasi (Aad) di lokasi yang aman. Informasi ini digunakan saat Anda memanggil operasi Decrypt untuk mendekripsi kunci privat teks sandi.
KMS menyediakan beberapa operasi untuk menghasilkan pasangan kunci data. Tabel berikut menjelaskan perbedaan antara operasi-operasi tersebut.
API | Skenario | Data respons | Versi kunci untuk enkripsi | Operasi untuk dekripsi |
GenerateDataKey | Rotasi otomatis tidak dikonfigurasi untuk kunci, dan Anda perlu segera mendapatkan kunci privat teks biasa. | Kunci publik teks biasa, kunci privat teks biasa, dan kunci privat teks sandi | Versi awal dari kunci | |
GenerateDataKeyPairWithoutPlaintext | Rotasi otomatis tidak dikonfigurasi untuk kunci, dan Anda tidak menggunakan kunci privat teks biasa atau memerlukan keamanan yang lebih tinggi. | Kunci publik teks biasa dan kunci privat teks biasa | Versi awal dari kunci | |
AdvanceGenerateDataKeyPair | Rotasi otomatis dikonfigurasi untuk kunci, dan Anda perlu segera mendapatkan kunci privat teks biasa. Catatan Untuk informasi lebih lanjut tentang rotasi kunci, lihat Konfigurasikan rotasi kunci. | Kunci publik teks biasa, kunci privat teks biasa, dan kunci privat teks sandi | Versi utama dari kunci | |
AdvanceGenerateDataKeyPairWithoutPlaintext | Rotasi otomatis dikonfigurasi untuk kunci, dan Anda tidak menggunakan kunci privat teks biasa atau memerlukan keamanan yang lebih tinggi. | Kunci publik teks biasa dan kunci privat teks biasa | Versi utama dari kunci |
Peringatan
Setiap instance KMS hanya dapat memproses satu permintaan pada satu waktu untuk operasi GenerateDataKeyPair, GenerateDataKeyPairWithoutPlaintext, AdvanceGenerateDataKeyPair, dan AdvanceGenerateDataKeyPairWithoutPlaintext. Kami menyarankan Anda mengontrol jumlah permintaan bersamaan. Jika jumlah permintaan bersamaan melebihi batas, KMS akan mengembalikan kesalahan 429 (Batas Kesamaan Terlampaui).
Parameter permintaan
Parameter | Tipe | Diperlukan | Contoh | Deskripsi |
KeyId | string | Ya | key-hzz62f1cb66fa42qo**** | ID unik global dari kunci. Anda dapat menetapkan parameter ini ke alias yang terikat ke kunci. Catatan Hanya kunci simetris dalam instance KMS tipe manajemen kunci perangkat lunak yang didukung. |
KeyPairSpec | string | Ya | RSA_2048 | Tipe pasangan kunci data. Nilai valid:
|
Aad | bytes | Tidak | Data biner | Data autentikasi saat Anda mengenkripsi pasangan kunci data dalam mode Galois/Counter Mode (GCM). Penting Jika Anda menentukan parameter ini, Anda harus menentukan parameter yang sama saat Anda memanggil operasi Decrypt. |
KeyFormat | string | Ya | PEM | Format pasangan kunci data. Nilai valid:
|
Parameter respons
Parameter | Tipe | Contoh | Deskripsi |
KeyId | string | key-hzz62f1cb66fa42qo**** | ID unik global dari kunci. Jika KeyId dalam permintaan diatur ke alias, ID unik global dari kunci yang terikat dengan alias tersebut dikembalikan. |
Iv | bytes | Data biner | Vektor awal yang digunakan untuk mengenkripsi pasangan kunci data. Catatan Saat Anda memanggil operasi Decrypt untuk mendekripsi pasangan kunci data, Anda harus menentukan nilai valid untuk Iv. |
KeyPairSpec | string | RSA_2048 | Tipe pasangan kunci data. |
PrivateKeyCiphertextBlob | bytes | Data biner | Kunci privat teks sandi dari pasangan kunci data. |
PrivateKeyPlaintext | bytes | Data biner | Kunci privat teks biasa dari pasangan kunci data.
|
PublicKey | bytes | Data biner | Kunci publik teks biasa dari pasangan kunci data.
|
Algorithm | string | AES_GCM | Algoritma enkripsi. Hanya AES_GCM yang didukung. |
RequestId | string | 475f1620-b9d3-4d35-b5c6-3fbdd941423d | ID permintaan, yang digunakan untuk melokalisasi dan menyelesaikan masalah. |
Kode kesalahan
Kode status HTTP | Kode kesalahan | Pesan kesalahan | Deskripsi |
429 | Rejected.Throttling | Batas Kesamaan Terlampaui. | Jumlah permintaan bersamaan melebihi batas. |
Untuk daftar kode kesalahan, lihat Kode Kesalahan Layanan.