Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Impor kunci simetris plaintext menggunakan KMU AWS CloudHSM

Mode fokus
Impor kunci simetris plaintext menggunakan KMU AWS CloudHSM - AWS CloudHSM

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

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

Gunakan imSymKey perintah di alat AWS CloudHSM key_mgmt_util untuk mengimpor salinan teks biasa dari kunci simetris dari file ke modul keamanan perangkat keras (HSM). Anda dapat menggunakannya untuk mengimpor kunci yang Anda hasilkan dengan metode apa pun di luar HSM dan kunci yang diekspor dari HSM, seperti kunci yang ditulis oleh perintah exSymKey, ke file.

Selama proses impor, imSymKey menggunakan kunci AES yang Anda pilih (kunci pembungkus) untuk membungkus (mengenkripsi) dan kemudian membuka(dekripsi) kunci yang akan diimpor. Namun, imSymKey bekerja hanya pada file yang berisi kunci teks terang. Untuk mengekspor dan mengimpor kunci terenkripsi, gunakan WrapKey dan perintah. unWrapKey

Selain itu, perintah imSymKey mengimpor hanya kunci simetris. Untuk mengimpor kunci publik, gunakan importPubKey. Untuk mengimpor kunci pribadi, gunakan importPrivateKeyatau WrapKey.

catatan

Anda tidak dapat mengimpor kunci PEM yang dilindungi kata sandi menggunakan kunci simetris atau pribadi.

Kunci impor bekerja sangat mirip dengan kunci yang dihasilkan di HSM. Namun, nilai atribut OBJ_ATTR_LOCAL adalah nol, yang menunjukkan bahwa itu tidak dihasilkan secara lokal. Anda dapat menggunakan perintah berikut untuk berbagi kunci simetris saat Anda mengimpornya. Anda dapat menggunakan perintah shareKey di cloudhsm_mgmt_util untuk berbagi kunci setelah diimpor.

imSymKey -l aesShared -t 31 -f kms.key -w 3296 -u 5

Setelah Anda mengimpor kunci, pastikan untuk menandai atau menghapus file kunci. Perintah ini tidak mencegah Anda dari mengimpor materi kunci yang sama beberapa kali. Hasilnya, beberapa kunci dengan handel kunci yang berbeda dan materi kunci yang sama, menyulitkan untuk melacak penggunaan materi kunci dan mencegahnya melebihi batas kriptografinya.

Sebelum Anda menjalankan perintah key_mgmt_util, Anda harus memulai key_mgmt_util dan masuk ke HSM sebagai pengguna kripto (CU).

Sintaks

imSymKey -h imSymKey -f <key-file> -w <wrapping-key-handle> -t <key-type> -l <label> [-id <key-ID>] [-sess] [-wk <wrapping-key-file> ] [-attest] [-min_srv <minimum-number-of-servers>] [-timeout <number-of-seconds> ] [-u <user-ids>]

Contoh

Contoh-contoh ini menunjukkan cara menggunakan imSymKey untuk mengimpor kunci simetris ke dalam kunci Anda HSMs.

contoh : Impor kunci simetris AES

Contoh ini digunakan imSymKey untuk mengimpor kunci simetris AES ke dalam. HSMs

Perintah pertama menggunakan OpenSSL untuk menghasilkan kunci simetris AES 256-bit acak. Menyimpan kunci dalam file aes256.key.

$ openssl rand -out aes256-forImport.key 32

Perintah kedua digunakan imSymKey untuk mengimpor kunci AES dari aes256.key file ke file. HSMs Perintah menggunakan kunci 20, kunci AES di HSM, sebagai kunci pembungkus dan menentukan label imported. Berbeda dengan ID, label tidak perlu unik di klaster. Nilai dari parameter -t (tipe) adalah 31, yang mewakili AES.

Output menunjukkan bahwa kunci dalam file dibungkus dan dibuka, kemudian diimpor ke HSM, di mana handel kunci 262180 ditugaskan.

Command: imSymKey -f aes256.key -w 20 -t 31 -l imported Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS Symmetric Key Unwrapped. Key Handle: 262180 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS

Perintah berikutnya menggunakan getAttribute untuk mendapatkan atribut OBJ_ATTR_LOCAL (Atribut 355) dari kunci yang baru diimpor dan menuliskannya ke file attr_262180.

Command: getAttribute -o 262180 -a 355 -out attributes/attr_262180 Attributes dumped into attributes/attr_262180_imported file Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS

Ketika Anda memeriksa atribut file, Anda dapat melihat bahwa nilai atribut OBJ_ATTR_LOCAL adalah nol, yang menunjukkan bahwa materi kunci tidak dihasilkan dalam HSM.

$ cat attributes/attr_262180_local OBJ_ATTR_LOCAL 0x00000000
contoh : Pindahkan kunci simetris antar cluster

Contoh ini menunjukkan cara menggunakan exSymKeydan imSymKey memindahkan kunci AES plaintext antar cluster. Anda dapat menggunakan proses seperti ini untuk membuat pembungkus AES yang ada di HSMs kedua cluster. Setelah kunci pembungkus bersama berada di tempat, Anda dapat menggunakan WrapKey unWrapKeydan untuk memindahkan kunci terenkripsi antara cluster.

Pengguna CU yang melakukan operasi ini harus memiliki izin untuk masuk ke HSMs kedua cluster.

Perintah pertama digunakan exSymKeyuntuk mengekspor kunci 14, kunci AES 32-bit, dari cluster 1 ke dalam file. aes.key Ini menggunakan kunci 6, kunci AES HSMs pada cluster 1, sebagai kunci pembungkus.

Command: exSymKey -k 14 -w 6 -out aes.key Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS Wrapped Symmetric Key written to file "aes.key"

Pengguna kemudian masuk ke key_mgmt_util di cluster 2 dan menjalankan imSymKey perintah untuk mengimpor kunci dalam file ke dalam cluster 2. aes.key HSMs Perintah ini menggunakan kunci 252152, kunci AES HSMs di cluster 2, sebagai kunci pembungkus.

Karena tombol pembungkus itu exSymKeydan imSymKey gunakan bungkus dan segera buka kunci target, tombol pembungkus pada cluster yang berbeda tidak perlu sama.

Output menunjukkan bahwa kunci berhasil diimpor ke dalam klaster 2 dan handel kunci 21 ditugaskan.

Command: imSymKey -f aes.key -w 262152 -t 31 -l xcluster Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS Symmetric Key Unwrapped. Key Handle: 21 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS

Untuk membuktikan bahwa kunci 14 klaster 1 dan kunci 21 di klaster 2 memiliki materi kunci yang sama, dapatkan nilai pemeriksaan kunci (KCV) dari setiap kunci. Jika nilai KCV adalah sama, bahan utama adalah sama.

Perintah berikut menggunakan getAttribute di klaster 1 untuk menuliskan nilai atribut KCV (atribut 371) dari kunci 14 ke file attr_14_kcv. Kemudian, ini menggunakan perintah cat untuk mendapatkan isi dari file attr_14_kcv.

Command: getAttribute -o 14 -a 371 -out attr_14_kcv Attributes dumped into attr_14_kcv file $ cat attr_14_kcv OBJ_ATTR_KCV 0xc33cbd

Perintah serupa ini menggunakan getAttribute di klaster 2 untuk menulis nilai atribut KCV (atribut 371) kunci 21 ke file attr_21_kcv. Kemudian, ini menggunakan perintah cat untuk mendapatkan isi dari file attr_21_kcv.

Command: getAttribute -o 21 -a 371 -out attr_21_kcv Attributes dumped into attr_21_kcv file $ cat attr_21_kcv OBJ_ATTR_KCV 0xc33cbd

Output menunjukkan bahwa nilai KCV dari dua kunci adalah sama, yang membuktikan bahwa materi kunci adalah sama.

Karena materi kunci yang sama ada di kedua cluster, Anda sekarang dapat berbagi kunci terenkripsi antara cluster tanpa pernah mengekspos kunci plaintext. HSMs Misalnya, Anda dapat menggunakan perintah wrapKey dengan kunci pembungkus 14 untuk mengekspor kunci terenkripsi dari klaster 1, dan kemudian gunakan unWrapKey dengan pembungkus kunci 21 untuk mengimpor kunci dienkripsi ke dalam klaster 2.

contoh : Impor kunci sesi

Perintah ini menggunakan parameter -sess dari imSymKey untuk mengimpor kunci 192-bit Triple DES yang hanya berlaku dalam sesi saat ini.

Perintah menggunakan parameter -f untuk menentukan file yang berisi kunci untuk diimpor, parameter -t untuk menentukan jenis kunci, dan parameter -w untuk menentukan kunci pembungkus. Perintah menggunakan parameter -l untuk menentukan label yang mengelompokkan kunci dan parameter -id untuk membuat pengenal yang mudah diingat, tapi unik, untuk kunci. Perintah ini juga menggunakan parameter -attest untuk memverifikasi firmware yang mengimpor kunci.

Output menunjukkan bahwa kunci berhasil dibungkus dan dibuka, diimpor ke HSM, dan handel kunci 37 ditugaskan. Selain itu, pemeriksaan pengesahan dilewatkan, yang menunjukkan bahwa firmware belum dirusak.

Command: imSymKey -f 3des192.key -w 6 -t 21 -l temp -id test01 -sess -attest Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS Symmetric Key Unwrapped. Key Handle: 37 Attestation Check : [PASS] Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS

Selanjutnya, Anda dapat menggunakan perintah getAttribute atau findKey untuk memverifikasi atribut kunci yang baru diimpor. Perintah berikut menggunakan findKey untuk memverifikasi bahwa kunci 37 memiliki jenis, label, dan ID yang ditentukan oleh perintah, dan bahwa itu adalah kunci sesi. Ditampilkan pada baris 5 output, findKey melaporkan bahwa satu-satunya kunci yang cocok dengan semua atribut adalah kunci 37.

Command: findKey -t 21 -l temp -id test01 -sess 1 Total number of keys present 1 number of keys matched from start index 0::0 37 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS

Parameter

-attest

Menjalankan pemeriksaan integritas yang memverifikasi bahwa firmware tempat klaster berjalan belum dirusak.

Default: Tidak ada pemeriksaan pengesahan.

Wajib: Tidak

-f

Menentukan file yang berisi kunci untuk diimpor.

File harus berisi salinan teks biasa dari kunci AES atau Triple DES dengan panjang yang ditentukan. RC4 dan kunci DES tidak valid pada mode FIPS HSMs.

  • AES: 16, 24 atau 32 byte

  • Triple DES (3DES): 24 byte

Wajib: Ya

-h

Menampilkan bantuan untuk perintah.

Wajib: Ya

-id

Menentukan pengenal yang ditetapkan pengguna untuk kunci. Ketik string yang unik dalam klaster. Default-nya adalah string kosong.

Default: Tidak ada nilai ID.

Wajib: Tidak

-l

Menentukan label yang ditetapkan pengguna untuk kunci. Ketik string.

Anda dapat menggunakan frasa apa pun yang membantu Anda mengidentifikasi kunci. Karena label tidak harus unik, Anda dapat menggunakannya pada grup dan mengelompokkan kunci.

Wajib: Ya

-min_srv

Menentukan jumlah minimum HSMs di mana kunci disinkronkan sebelum nilai -timeout parameter berakhir. Jika kunci tidak disinkronkan ke jumlah tertentu server dalam waktu yang ditentukan, kunci tidak dibuat.

AWS CloudHSM secara otomatis menyinkronkan setiap kunci ke setiap HSM di cluster. Untuk mempercepat proses Anda, tetapkan nilai kurang dari jumlah HSMs di cluster dan tetapkan nilai batas waktu yang rendah. min_srv Namun, perhatikan bahwa beberapa permintaan mungkin tidak menghasilkan kunci.

Default: 1

Wajib: Tidak

-sess

Membuat kunci yang hanya ada di sesi saat ini. Kunci tidak dapat dipulihkan setelah sesi berakhir.

Gunakan parameter ini ketika Anda memerlukan kunci hanya sebentar, seperti kunci pembungkus yang mengenkripsi, dan kemudian dengan cepat mendekripsi, kunci lain. Jangan gunakan kunci sesi untuk mengenkripsi data yang mungkin perlu Anda dekripsi setelah sesi berakhir.

Untuk mengubah kunci sesi menjadi kunci (token) persisten, gunakan setAttribute.

Default: Kunci persisten.

Wajib: Tidak

-timeout

Menentukan berapa lama (dalam detik) perintah menunggu kunci untuk disinkronkan dengan jumlah yang HSMs ditentukan oleh parameter. min_srv

Parameter ini hanya valid jika parameter min_srv juga digunakan dalam perintah.

Default: Tidak ada waktu habis. Perintah menunggu tanpa batas waktu dan kembali hanya ketika kunci disinkronkan ke jumlah minimum server.

Wajib: Tidak

-t

Menentukan jenis kunci simetris. Masukkan konstanta yang mewakili jenis kunci. Misalnya, untuk membuat kunci AES, masukkan -t 31.

Nilai yang valid:

Wajib: Ya

-u

Berbagi kunci yang Anda impor dengan pengguna tertentu. Parameter ini memberikan izin kepada pengguna kripto HSM lainnya (CUs) untuk menggunakan kunci ini dalam operasi kriptografi.

Ketik satu ID atau daftar pengguna HSM yang dipisahkan koma IDs, seperti -u. 5,6 Jangan sertakan ID pengguna HSM dari pengguna saat ini. Untuk menemukan ID, Anda dapat menggunakan perintah listUsers di alat baris perintah cloudhsm_mgmt_util atau perintah listUsers pada alat baris perintah key_mgmt_util.

Wajib: Tidak

-w

Menentukan handel kunci dari kunci pembungkus. Parameter ini diperlukan. Untuk menemukan handel kunci, gunakan perintah findKey.

Kunci pembungkus adalah kunci dalam HSM yang digunakan untuk mengenkripsi (“membungkus”) dan kemudian mendekripsi (“membuka bungkus”) kunci selama proses impor. Hanya kunci AES yang dapat digunakan sebagai kunci pembungkus.

Anda dapat menggunakan kunci AES (dari berbagai ukuran) sebagai kunci pembungkus. Karena kunci pembungkus membungkus, dan kemudian segera membuka, kunci target, Anda dapat menggunakan sebagai kunci AES hanya sesi sebagai kunci pembungkus. Untuk menentukan apakah kunci dapat digunakan sebagai kunci pembungkus, gunakangetAttribute untuk mendapatkan nilai dari atribut OBJ_ATTR_WRAP (262). Untuk membuat kunci pembungkus, gunakan genSymKey untuk membuat kunci AES (tipe 31).

Jika Anda menggunakan parameter -wk untuk menentukan kunci pembungkus eksternal, kunci pembungkus -w digunakan untuk membuka, tetapi tidak untuk membungkus, kunci yang sedang diimpor.

catatan

Kunci 4 adalah kunci internal yang tidak didukung. Kami merekomendasikan bahwa Anda menggunakan kunci AES yang Anda buat dan kelola sebagai kunci pembungkus.

Wajib: Ya

-wk

Gunakan kunci AES dalam file tertentu untuk membungkus kunci yang sedang diimpor. Masukkan jalur dan nama file yang berisi kunci AES plaintext.

Bila Anda menyertakan parameter ini. imSymKey menggunakan kunci dalam file -wk untuk membungkus kunci yang diimpor dan menggunakan kunci dalam HSM yang ditentukan oleh parameter -w untuk membukanya. Nilai parameter -w dan -wk harus menyelesaikan ke kunci plaintext yang sama.

Default: Gunakan kunci pembungkus pada HSM untuk membuka.

Wajib: Tidak

Topik terkait

Di halaman ini

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.