Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mekanisme yang didukung untuk pustaka PKCS #11 untuk SDK AWS CloudHSM Klien 5
Pustaka PKCS #11 patuh dengan spesifikasi PKCS #11 versi 2.40. Untuk memanggil fitur kriptografi menggunakan PKCS #11, panggil fungsi dengan mekanisme tertentu. Bagian berikut merangkum kombinasi fungsi dan mekanisme yang didukung oleh AWS CloudHSM Klien SDK 5.
Pustaka PKCS #11 mendukung algoritme berikut ini:
-
Enkripsi dan dekripsi — AES-CBC, AES-CTR, AES-ECB, AES-GCM, ECB, RSA-OAEP, dan RSA-PKCS DES3 DES3
-
Tanda tangani dan verifikasi- RSA, HMAC, dan ECDSA; dengan dan tanpa hashing
-
Hash/digest — SHA1,,, SHA224, dan SHA256 SHA384 SHA512
-
Bungkus kunci— Bungkus Kunci AES,1AES-GCM, RSA-AES, dan RSA-OAEP
-
Derivasi kunci — SP8 00-108 Counter KDF dan ECDH dengan KDF (Algoritma KDF yang didukung adalah X9.63 dengan,,,,) SHA1 SHA224 SHA256 SHA384 SHA512
Topik
Menghasilkan fungsi key dan key pair
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 memungkinkan Anda menggunakan mekanisme berikut untuk fungsi Generate Key dan Key Pair.
-
CKM_RSA_PKCS_KEY_PAIR_GEN -
CKM_RSA_X9_31_KEY_PAIR_GENMekanisme ini secara fungsional identik denganCKM_RSA_PKCS_KEY_PAIR_GENmekanisme, tetapi menawarkan jaminan yang lebih kuat untukpdanqgenerasi. -
CKM_EC_KEY_PAIR_GEN -
CKM_GENERIC_SECRET_KEY_GEN -
CKM_AES_KEY_GEN -
CKM_DES3_KEY_GEN— perubahan yang akan datang tercantum dalam catatan kaki5.
Tanda tangan dan verifikasi
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 memungkinkan Anda menggunakan mekanisme berikut untuk fungsi Masuk dan Verifikasi. Dengan Client SDK 5, data di-hash secara lokal dalam perangkat lunak. Hal ini berarti tidak ada batas pada ukuran data yang dapat di-hash oleh SDK.
Dengan Client SDK 5 RSA dan ECDSA hashing dilakukan secara lokal sehingga tidak ada batasan data. Dengan HMAC, ada batas data. Lihat catatan kaki 2 untuk info lebih lanjut.
RSA
CKM_RSA_X_509CKM_RSA_PKCS— operasi satu bagian saja.CKM_RSA_PKCS_PSS— operasi satu bagian saja.CKM_SHA1_RSA_PKCSCKM_SHA224_RSA_PKCSCKM_SHA256_RSA_PKCSCKM_SHA384_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA512_RSA_PKCSCKM_SHA1_RSA_PKCS_PSSCKM_SHA224_RSA_PKCS_PSSCKM_SHA256_RSA_PKCS_PSSCKM_SHA384_RSA_PKCS_PSSCKM_SHA512_RSA_PKCS_PSS
ECDSA
CKM_ECDSA— operasi satu bagian saja.CKM_ECDSA_SHA1CKM_ECDSA_SHA224CKM_ECDSA_SHA256CKM_ECDSA_SHA384CKM_ECDSA_SHA512
CMAC
CKM_AES_CMAC
Tanda tangani pemulihan dan verifikasi fungsi pemulihan
Klien SDK 5 tidak mendukung fungsi Sign Recover dan Verify Recover.
Fungsi Digest
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 memungkinkan Anda menggunakan mekanisme berikut untuk fungsi Digest. Dengan Client SDK 5, data di-hash secara lokal dalam perangkat lunak. Hal ini berarti tidak ada batas pada ukuran data yang dapat di-hash oleh SDK.
-
CKM_SHA_1 -
CKM_SHA224 -
CKM_SHA256 -
CKM_SHA384 -
CKM_SHA512
Enkripsi dan Dekripsi
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 memungkinkan Anda menggunakan mekanisme berikut untuk fungsi Enkripsi dan Dekripsi.
-
CKM_RSA_X_509 -
CKM_RSA_PKCS— operasi satu bagian saja. Perubahan yang akan datang tercantum dalam catatan kaki5. -
CKM_RSA_PKCS_OAEP— operasi satu bagian saja. -
CKM_AES_ECB -
CKM_AES_CTR -
CKM_AES_CBC -
CKM_AES_CBC_PAD -
CKM_DES3_CBC— perubahan yang akan datang tercantum dalam catatan kaki5. -
CKM_DES3_ECB— perubahan yang akan datang tercantum dalam catatan kaki5. -
CKM_DES3_CBC_PAD— perubahan yang akan datang tercantum dalam catatan kaki5. CKM_CLOUDHSM_AES_GCM3
Turunkan Fungsi Kunci
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 mendukung mekanisme derivasi kunci berikut ini:
-
CKM_SP800_108_COUNTER_KDF -
CKM_ECDH1_DERIVE- Mendukung derivasi kunci ECDH dengan jenis KDF yang ditentukan vendor berikut: 6
Fungsi Bungkus dan Buka Bungkus
Pustaka AWS CloudHSM perangkat lunak untuk pustaka PKCS #11 memungkinkan Anda menggunakan mekanisme berikut untuk fungsi Wrap dan Unwrap.
Untuk informasi tambahan mengenai pembungkus kunci AES, lihat Pembungkus Kunci AES.
Ukuran data maksimum untuk setiap mekanisme
Tabel berikut mencantumkan set ukuran data maksimal untuk setiap mekanisme:
| Mekanisme | Ukuran data maksimum dalam byte |
|---|---|
CKM_SHA_1_HMAC |
16288 |
CKM_SHA224_HMAC |
16256 |
CKM_SHA256_HMAC |
16288 |
CKM_SHA384_HMAC |
16224 |
CKM_SHA512_HMAC |
16224 |
CKM_AES_CBC |
16272 |
CKM_AES_GCM |
16224 |
CKM_CLOUDHSM_AES_GCM |
16224 |
CKM_DES3_CBC |
16280 |
Anotasi mekanisme
[1] Saat melakukan enkripsi AES-GCM, HSM tidak menerima data vektor inisialisasi (IV) dari aplikasi. Anda harus menggunakan IV yang dihasilkannya. IV 12-byte yang disediakan oleh HSM ditulis ke dalam referensi memori yang ditunjukkan oleh elemen pIV dari parameter
CK_GCM_PARAMSstruktur yang Anda suplai. Untuk mencegah kebingungan pengguna, PKCS #11 SDK di versi 1.1.1 dan sebelumnya memastikan bahwa pIV menunjuk ke penyangga yang dinolkan ketika enkripsi AES-GCM diinisialisasi.[2] Ketika beroperasi pada data dengan menggunakan salah satu mekanisme berikut, jika penyangga data melebihi ukuran data maksimum, hasil operasi dalam kesalahan. Untuk mekanisme ini, semua pemrosesan data harus terjadi di dalam HSM. Untuk informasi tentang set ukuran data maksimum untuk setiap mekanisme, lihatUkuran data maksimum untuk setiap mekanisme.
-
[3] Mekanisme yang Ditetapkan Vendor Untuk menggunakan mekanisme yang ditetapkan vendor CloudHSM, aplikasi PKCS #11 harus menyertakan
/opt/cloudhsm/include/pkcs11t.hselama kompilasi.CKM_CLOUDHSM_AES_GCM: Mekanisme kepemilikan ini adalah alternatif pemrograman yang lebih aman untukCKM_AES_GCMstandar. Ini menambahkan IV yang dihasilkan oleh HSM untuk ciphertext, bukan menuliskannya kembali ke dalam strukturCK_GCM_PARAMSyang disediakan selama inisialisasi cipher. Anda dapat menggunakan mekanisme ini dengan fungsiC_Encrypt,C_WrapKey,C_Decrypt, danC_UnwrapKey. Bila menggunakan mekanisme ini, variabel pIV di strukCK_GCM_PARAMSharus diatur keNULL. Bila menggunakan mekanisme ini denganC_DecryptdanC_UnwrapKey, IV diharapkan akan ditambahkan ke ciphertext yang sedang dibuka.CKM_CLOUDHSM_AES_KEY_WRAP_PKCS5_PAD: Bungkus Kunci AES dengan Bantalan PKCS #5.CKM_CLOUDHSM_AES_KEY_WRAP_ZERO_PAD: Bungkus Kunci AES dengan Nol Bantalan. [4] Berikut ini
CK_MECHANISM_TYPEdanCK_RSA_PKCS_MGF_TYPEdidukungCK_RSA_PKCS_OAEP_PARAMSuntukCKM_RSA_PKCS_OAEP:-
CKM_SHA_1menggunakanCKG_MGF1_SHA1 -
CKM_SHA224menggunakanCKG_MGF1_SHA224 -
CKM_SHA256menggunakanCKG_MGF1_SHA256 -
CKM_SHA384menggunakanCKM_MGF1_SHA384 -
CKM_SHA512menggunakanCKM_MGF1_SHA512
-
[5] Sesuai dengan panduan NIST, ini tidak diizinkan untuk cluster dalam mode FIPS setelah 2023. Untuk cluster dalam mode non-FIPS, masih diperbolehkan setelah 2023. Lihat Kepatuhan FIPS 140: Penutupan Mekanisme 2024 untuk detail.
[6] Jenis yang ditentukan vendor. Untuk menggunakan jenis yang ditetapkan vendor CloudHSM, aplikasi PKCS #11 harus menyertakan selama kompilasi.
cloudhsm_pkcs11_vendor_defs.hIni ditemukan di/opt/cloudhsm/include/pkcs11/cloudhsm_pkcs11_vendor_defs.hplatform berbasis Linux danC:\Program Files\Amazon\CloudHSM\include\pkcs11\cloudhsm_pkcs11_vendor_defs.huntuk platform berbasis Windows[7] Fungsi derivasi kunci (KDFs) ditentukan dalam RFC 8418
, Bagian 2.1.