Ekstraksi kunci menggunakan JCE - AWS CloudHSM

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

Ekstraksi kunci menggunakan JCE

Java Cryptography Extension (JCE) menggunakan arsitektur yang memungkinkan implementasi kriptografi yang berbeda untuk dicolokkan. AWS CloudHSMmengirimkan salah satu penyedia JCE seperti yang membongkar operasi kriptografi ke HSM. Agar sebagian besar penyedia JCE lainnya dapat bekerja dengan kunci yang disimpan di AWS CloudHSM, mereka harus mengekstrak byte kunci dari HSM Anda dalam teks yang jelas ke dalam memori mesin Anda untuk penggunaannya. HSM biasanya hanya mengizinkan kunci untuk diekstraksi sebagai objek yang dibungkus, bukan teks yang jelas. Namun, untuk mendukung kasus penggunaan integrasi antar penyedia,AWS CloudHSM memungkinkan opsi konfigurasi opt-in untuk mengaktifkan ekstraksi byte kunci di clear.

penting

JCE menurunkan operasi keAWS CloudHSM setiap kali penyedia AWS CloudHSM ditentukan atau objekAWS CloudHSM kunci digunakan. Anda tidak perlu mengekstrak kunci dengan jelas jika Anda mengharapkan operasi Anda terjadi di dalam HSM. Ekstraksi kunci dalam teks yang jelas hanya diperlukan ketika aplikasi Anda tidak dapat menggunakan mekanisme aman seperti membungkus dan membuka kunci karena pembatasan dari perpustakaan pihak ketiga atau penyedia JCE.

PenyediaAWS CloudHSM JCE memungkinkan ekstraksi kunci publik untuk bekerja dengan penyedia JCE eksternal secara default. Metode berikut selalu diizinkan:

Kelas Metode Format (GetEncoded)
EcPublicKey getEncoded () X.509
GetW () T/A
RSAPublicKey getEncoded () X.509
getPublicExponent() T/A
CloudHsmRsaPrivateCrtKey getPublicExponent() T/A

PenyediaAWS CloudHSM JCE tidak mengizinkan ekstraksi byte kunci yang jelas untuk kunci pribadi atau rahasia secara default. Jika kasus penggunaan Anda memerlukannya, Anda dapat mengaktifkan ekstraksi byte kunci yang jelas untuk kunci pribadi atau rahasia dengan ketentuan berikut:

  1. EXTRACTABLEAtribut untuk kunci pribadi dan rahasia diatur ke true.

    • Secara default,EXTRACTABLE atribut untuk kunci pribadi dan rahasia diatur ke true. EXTRACTABLEkunci adalah kunci yang diizinkan untuk diekspor keluar dari HSM. Untuk informasi selengkapnya, lihat Atribut Java yang Didukung untuk SDK Klien 5.

  2. WRAP_WITH_TRUSTEDAtribut untuk kunci pribadi dan rahasia diatur ke false.

    • getEncoded,getPrivateExponent, dangetS tidak dapat digunakan dengan kunci pribadi yang tidak dapat diekspor dengan jelas. WRAP_WITH_TRUSTEDtidak mengizinkan kunci pribadi Anda untuk diekspor keluar dari HSM dengan jelas. Untuk informasi selengkapnya, lihat Menggunakan kunci tepercaya untuk mengontrol pembukaan kunci.

Memungkinkan penyediaAWS CloudHSM JCE untuk mengekstrak rahasia kunci pribadi dariAWS CloudHSM

penting

Perubahan konfigurasi ini memungkinkan ekstraksi semua byteEXTRACTABLE kunci di clear dari klaster HSM Anda. Untuk keamanan yang lebih baik, Anda harus mempertimbangkan untuk menggunakan metode pembungkus kunci untuk mengekstrak kunci dari HSM dengan aman. Ini mencegah ekstraksi byte kunci Anda yang tidak disengaja dari HSM.

  1. Gunakan perintah berikut untuk mengaktifkan kunci pribadi atau rahasia Anda untuk diekstraksi di JCE:

    Linux
    $ /opt/cloudhsm/bin/configure-jce --enable-clear-key-extraction-in-software
    Windows
    C:\Program Files\Amazon\CloudHSM\> .\configure-jce.exe --enable-clear-key-extraction-in-software
  2. Setelah Anda mengaktifkan ekstraksi kunci yang jelas, metode berikut diaktifkan untuk mengekstraksi kunci pribadi ke dalam memori.

    Kelas Metode Format (GetEncoded)
    Key getEncoded () RAW
    ECPrivateKey getEncoded () PKCS #8
    getS () T/A
    RSAPrivateCrtKey getEncoded () X.509
    getPrivateExponent() T/A
    GetPrimep () T/A
    getPrimeq () T/A
    getPrimeExponentP () T/A
    getPrimeExponentQ () T/A
    getCrtCoefficient() T/A

Jika Anda ingin mengembalikan perilaku default dan tidak mengizinkan JCE untuk mengekspor kunci di clear, jalankan perintah berikut:

Linux
$ /opt/cloudhsm/bin/configure-jce --disable-clear-key-extraction-in-software
Windows
C:\Program Files\Amazon\CloudHSM\> .\configure-jce.exe --disable-clear-key-extraction-in-software