View a markdown version of this page

Mekanisme yang didukung untuk penyedia JCE untuk AWS CloudHSM SDK Klien 5 - AWS CloudHSM

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

Mekanisme yang didukung untuk penyedia JCE untuk AWS CloudHSM SDK Klien 5

Topik ini memberikan informasi tentang mekanisme yang didukung untuk penyedia JCE dengan AWS CloudHSM Client SDK 5. Untuk informasi tentang antarmuka Java Cryptography Architecture (JCA) dan kelas mesin yang didukung oleh AWS CloudHSM, lihat topik berikut.

Menghasilkan fungsi kunci dan pasangan kunci

P AWS CloudHSM ustaka perangkat lunak untuk Java memungkinkan Anda menggunakan operasi berikut untuk menghasilkan fungsi kunci dan pasangan kunci.

  • RSA

  • EC

  • EdDSA (Ed25519)lihat catatan 2

  • ML-DSA

  • AES

  • DESede (Triple DES)lihat catatan 1

  • GenericSecret

Fungsi Cipher

P AWS CloudHSM ustaka perangkat lunak untuk Java mendukung kombinasi algoritma, mode, dan padding berikut.

Algoritme Mode Bantalan Catatan
AES CBC

AES/CBC/NoPadding

AES/CBC/PKCS5Padding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE.

Mengimplementasikan Cipher.UNWRAP_MODE for AES/CBC NoPadding

AES ECB

AES/ECB/PKCS5Padding

AES/ECB/NoPadding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE.

AES CTR

AES/CTR/NoPadding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE.

AES GCM

AES/GCM/NoPadding

Menerapkan Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE, dan Cipher.DECRYPT_MODE.

Saat melakukan AES-GCM enkripsi, HSM mengabaikan vektor inisialisasi (IV) dalam permintaan dan menggunakan IV yang dihasilkannya. Saat operasi selesai, Anda harus memanggil Cipher.getIV() untuk mendapatkan IV.

AESWrap ECB

AESWrap/ECB/NoPadding

AESWrap/ECB/PKCS5Padding

AESWrap/ECB/ZeroPadding

Menerapkan Cipher.WRAP_MODE dan Cipher.UNWRAP_MODE.

DESede (Tiga DES) CBC

DESede/CBC/PKCS5Padding

DESede/CBC/NoPadding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE. Lihat catatan 1 di bawah untuk perubahan yang akan datang.

DESede (Tiga DES) ECB

DESede/ECB/NoPadding

DESede/ECB/PKCS5Padding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE. Lihat catatan 1 di bawah untuk perubahan yang akan datang.

RSA ECB

RSA/ECB/PKCS1Paddinglihat catatan 1

RSA/ECB/OAEPPadding

RSA/ECB/OAEPWithSHA-1ANDMGF1Padding

RSA/ECB/OAEPWithSHA-224ANDMGF1Padding

RSA/ECB/OAEPWithSHA-256ANDMGF1Padding

RSA/ECB/OAEPWithSHA-384ANDMGF1Padding

RSA/ECB/OAEPWithSHA-512ANDMGF1Padding

Menerapkan Cipher.WRAP_MODE, Cipher.UNWRAP_MODE, Cipher.ENCRYPT_MODE, dan Cipher.DECRYPT_MODE.

RSA ECB

RSA/ECB/NoPadding

Menerapkan Cipher.ENCRYPT_MODE dan Cipher.DECRYPT_MODE.

RSAAESWrap ECB

RSAAESWrap/ECB/OAEPPadding

RSAAESWrap/ECB/OAEPWithSHA-1ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-224ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-256ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-384ANDMGF1Padding

RSAAESWrap/ECB/OAEPWithSHA-512ANDMGF1Padding

Menerapkan Cipher.WRAP_MODE dan Cipher.UNWRAP_MODE.

Tanda tangani dan verifikasi fungsi

P AWS CloudHSM ustaka perangkat lunak untuk Java mendukung jenis tanda tangan dan verifikasi berikut. Dengan Client SDK 5 dan algoritma tanda tangan dengan hashing, data di-hash secara lokal dalam perangkat lunak sebelum dikirim ke HSM untuk. signature/verification Ini berarti tidak ada batasan pada ukuran data yang dapat di-hash oleh SDK.

Jenis tanda tangan RSA

  • NONEwithRSA

  • RSASSA-PSS

  • SHA1withRSA

  • SHA1withRSA/PSS

  • SHA1withRSAandMGF1

  • SHA224withRSA

  • SHA224withRSAandMGF1

  • SHA224withRSA/PSS

  • SHA256withRSA

  • SHA256withRSAandMGF1

  • SHA256withRSA/PSS

  • SHA384withRSA

  • SHA384withRSAandMGF1

  • SHA384withRSA/PSS

  • SHA512withRSA

  • SHA512withRSAandMGF1

  • SHA512withRSA/PSS

Jenis tanda tangan ECDSA

  • NONEwithECDSA

  • SHA1withECDSA

  • SHA224withECDSA

  • SHA256withECDSA

  • SHA384withECDSA

  • SHA512withECDSA

ML-DSA jenis tanda tangan

  • ML-DSA

  • ML-DSA-44

  • ML-DSA-65

  • ML-DSA-87

  • ML-DSA-EXTERNAL-MU

Jenis Tanda Tangan EDDSa lihat catatan 2

  • Ed25519atau EdDSA (Ukuran data maksimum: 16.000 byte)

  • Ed25519ph

Fungsi mencerna

P AWS CloudHSM ustaka perangkat lunak untuk Java mendukung mencerna pesan berikut. Dengan Client SDK 5, data di-hash secara lokal dalam perangkat lunak. Ini berarti tidak ada batasan pada ukuran data yang dapat di-hash oleh SDK.

  • SHA-1

  • SHA-224

  • SHA-256

  • SHA-384

  • SHA-512

Hash-based fungsi kode otentikasi pesan (HMAC)

P AWS CloudHSM ustaka perangkat lunak untuk Java mendukung algoritma HMAC berikut.

  • HmacSHA1(Ukuran data maksimum dalam byte: 16288)

  • HmacSHA224(Ukuran data maksimum dalam byte: 16256)

  • HmacSHA256(Ukuran data maksimum dalam byte: 16288)

  • HmacSHA384(Ukuran data maksimum dalam byte: 16224)

  • HmacSHA512(Ukuran data maksimum dalam byte: 16224)

Cipher-based fungsi kode otentikasi pesan (CMAC)

CMAC (kode otentikasi Cipher-based pesan) membuat kode otentikasi pesan (MAC) menggunakan sandi blok dan kunci rahasia. Mereka berbeda dari HMAC karena mereka menggunakan metode kunci simetris blok untuk MAC daripada metode hashing.

P AWS CloudHSM ustaka perangkat lunak untuk Java mendukung algoritma CMAC berikut.

  • AESCMAC

Fungsi Perjanjian Utama

Pustaka AWS CloudHSM perangkat lunak untuk Java mendukung ECDH dengan Key Derivation Functions (KDF). Jenis KDF berikut didukung:

  • ECDHwithX963SHA1KDFMendukung algorit X9.63 ma KDF SHA1 3

  • ECDHwithX963SHA224KDFMendukung algorit X9.63 ma KDF SHA224 3

  • ECDHwithX963SHA256KDFMendukung algorit X9.63 ma KDF SHA256 3

  • ECDHwithX963SHA384KDFMendukung algorit X9.63 ma KDF SHA384 3

  • ECDHwithX963SHA512KDFMendukung algorit X9.63 ma KDF SHA512 3

Konversi kunci ke spesifikasi utama menggunakan pabrik utama

Anda dapat menggunakan pabrik kunci untuk mengonversi kunci ke spesifikasi utama. AWS CloudHSM memiliki dua jenis pabrik utama untuk JCE:

SecretKeyFactory: Dig unakan untuk mengimpor atau memperoleh kunci simetris. Dengan menggunakan SecretKeyFactory, Anda dapat meneruskan Kunci yang didukung atau didukung KeySpec untuk mengimpor atau memperoleh kunci simetris ke AWS CloudHSM. Berikut ini adalah spesifikasi yang didukung untuk KeyFactory:

  • generateSecretMetode for SecretKeyFactory KeySpec kelas berikut didukung:

    • KeyAttributesMapdapat digunakan untuk mengimpor byte kunci dengan atribut tambahan sebagai CloudHSM Key. Contohnya dapat ditemukan di sini di sini.

    • SecretKeySpecdapat digunakan untuk mengimpor spesifikasi kunci simetris sebagai Kunci CloudHSM.

    • AesCmacKdfParameterSpecdapat digunakan untuk mendapatkan kunci simetris menggunakan CloudHSM AES Key lain.

catatan

SecretKeyFactorytranslateKeymetode mengambil kunci apa pun yang mengimplementasikan antarmuka kunci.

KeyFactory: Dig unakan untuk mengimpor kunci asimetris. Dengan menggunakan KeyFactory, Anda dapat meneruskan Kunci yang didukung atau didukung KeySpec untuk mengimpor kunci asimetris ke AWS CloudHSM. Untuk informasi selengkapnya, lihat sumber daya berikut:

ML-DSA batasan impor kunci

AWS CloudHSM tidak mendukung impor ML-DSA kunci melalui KeyFactory (generatePublicdangeneratePrivate). Untuk menggunakan ML-DSA kunci, buat langsung di HSM menggunakanKeyPairGenerator. Men ML-DSA KeyFactory dukung ekspor kunci publik menggunakan getKeySpec (pengembalianX509EncodedKeySpec).

translateKeyMetode for KeyFactory, dibutuhkan Kunci apa pun yang mengimplementasikan Antarmuka Kunci.

Anotasi mekanisme

[1] 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: Penghentian Mekanisme 2024 untuk detail.

[2] Hanya didukung pada instans hsm2m.medium dalam mode non-FIPS.

[3] Fungsi derivasi kunci (KDF) ditentukan dalam Publikasi Khusus NIS T 800-56A Revisi 3.