Atribut kunci yang didukung (SDK Klien 3) - AWS CloudHSM

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

Atribut kunci yang didukung (SDK Klien 3)

Objek kunci bisa berupa kunci publik, pribadi, atau rahasia. Tindakan diizinkan pada objek kunci ditentukan melalui atribut. Atribut didefinisikan ketika objek kunci dibuat. Ketika Anda menggunakan pustaka PKCS #11, kami menetapkan nilai default sebagaimana ditentukan oleh standar PKCS #11.

AWS CloudHSM tidak mendukung semua atribut yang tercantum dalam spesifikasi PKCS #11. Kami patuh dengan spesifikasi untuk semua atribut yang kami dukung. Atribut ini tercantum dalam tabel masing-masing.

Fungsi kriptografi seperti C_CreateObject, C_GenerateKey, C_GenerateKeyPair, C_UnwrapKey, dan C_DeriveKey yang membuat, memodifikasi, atau menyalin objek mengambil templat atribut sebagai salah satu parameternya. Untuk informasi lebih lanjut tentang melewatkan templat atribut selama pembuatan objek, lihat sampel Hasilkan kunci melalui pustaka PKCS #11.

Menafsirkan tabel atribut pustaka PKCS #11

Tabel pustaka PKCS #11 berisi daftar atribut yang berbeda menurut jenis kunci. Hal ini menunjukkan apakah atribut tertentu didukung untuk jenis kunci tertentu ketika menggunakan fungsi kriptografi tertentu dengan AWS CloudHSM.

Legenda:

  • ✔ menunjukkan bahwa CloudHSM mendukung atribut untuk jenis kunci tertentu.

  • ✖ menunjukkan bahwa CloudHSM tidak mendukung atribut untuk jenis kunci tertentu.

  • R menunjukkan bahwa nilai atribut diatur ke hanya-baca untuk jenis kunci tertentu.

  • S menunjukkan bahwa atribut tidak dapat dibaca oleh GetAttributeValue karena sensitif.

  • Sel kosong di kolom Nilai Default menunjukkan bahwa tidak ada nilai default tertentu yang ditetapkan untuk atribut.

Atribut

Tipe Kunci

Nilai Default

 

EC pribadi

EC publik

RSA pribadi

RSA publik

 

CKA_CLASS

CKA_KEY_TYPE

CKA_LABEL

CKA_ID

CKA_LOCAL

R

R

R

R

Benar

CKA_TOKEN

Salah

CKA_PRIVATE

1

1

1

1

Benar

CKA_ENCRYPT

Salah

CKA_DECRYPT

Salah

CKA_DERIVE

Salah

CKA_MODIFIABLE

1

1

1

1

Benar

CKA_DESTROYABLE

Benar

CKA_SIGN

Salah

CKA_SIGN_RECOVER

3

 

CKA_VERIFY

Salah

CKA_VERIFY_RECOVER

4

 

CKA_WRAP

Salah

CKA_WRAP_TEMPLATE

 

CKA_TRUSTED

Salah

CKA_WRAP_WITH_TRUSTED

Salah

CKA_UNWRAP

Salah

CKA_UNWRAP_TEMPLATE

 

CKA_SENSITIVE

Benar

CKA_ALWAYS_SENSITIVE

R

R

 

CKA_EXTRACTABLE

Benar

CKA_NEVER_EXTRACTABLE

R

R

 

CKA_MODULUS

 

CKA_MODULUS_BITS

2

 

CKA_PRIME_1

 

CKA_PRIME_2

 

CKA_COEFFICIENT

 

CKA_EXPONENT_1

 

CKA_EXPONENT_2

 

CKA_PRIVATE_EXPONENT

 

CKA_PUBLIC_EXPONENT

2

 

CKA_EC_PARAMS

2

 

CKA_EC_POINT

 

CKA_VALUE

 

CKA_VALUE_LEN

 

CKA_CHECK_VALUE

R

R

R

R

 

Atribut

Tipe Kunci

Nilai Default

 

AES

DES3

Rahasia Generik

 

CKA_CLASS

CKA_KEY_TYPE

CKA_LABEL

CKA_ID

CKA_LOCAL

R

R

R

Benar

CKA_TOKEN

Salah

CKA_PRIVATE

1

1

1

Benar

CKA_ENCRYPT

Salah

CKA_DECRYPT

Salah

CKA_DERIVE

Salah

CKA_MODIFIABLE

1

1

1

Benar

CKA_DESTROYABLE

Benar

CKA_SIGN

Benar

CKA_SIGN_RECOVER

 

CKA_VERIFY

Benar

CKA_VERIFY_RECOVER

 

CKA_WRAP

Salah

CKA_WRAP_TEMPLATE

 

CKA_TRUSTED

Salah

CKA_WRAP_WITH_TRUSTED

Salah

CKA_UNWRAP

Salah

CKA_UNWRAP_TEMPLATE

 

CKA_SENSITIVE

Benar

CKA_ALWAYS_SENSITIVE

 

CKA_EXTRACTABLE

Benar

CKA_NEVER_EXTRACTABLE

R

R

R

 

CKA_MODULUS

 

CKA_MODULUS_BITS

 

CKA_PRIME_1

 

CKA_PRIME_2

 

CKA_COEFFICIENT

 

CKA_EXPONENT_1

 

CKA_EXPONENT_2

 

CKA_PRIVATE_EXPONENT

 

CKA_PUBLIC_EXPONENT

 

CKA_EC_PARAMS

 

CKA_EC_POINT

 

CKA_VALUE

 

CKA_VALUE_LEN

2

2

 

CKA_CHECK_VALUE

R

R

R

 

Atribut

Tipe Kunci

Nilai Default

 

EC pribadi

EC publik

RSA pribadi

RSA publik

AES

DES3

Rahasia Generik

 

CKA_CLASS

2

2

2

2

2

2

2

CKA_KEY_TYPE

2

2

2

2

2

2

2

CKA_LABEL

CKA_ID

CKA_LOCAL

R

R

R

R

R

R

R

Salah

CKA_TOKEN

Salah

CKA_PRIVATE

1

1

1

1

1

1

1

Benar

CKA_ENCRYPT

Salah

CKA_DECRYPT

Salah

CKA_DERIVE

Salah

CKA_MODIFIABLE

1

1

1

1

1

1

1

Benar

CKA_DESTROYABLE

Benar

CKA_SIGN

Salah

CKA_SIGN_RECOVER

3

Salah

CKA_VERIFY

Salah

CKA_VERIFY_RECOVER

4

 

CKA_WRAP

Salah

CKA_WRAP_TEMPLATE

 

CKA_TRUSTED

Salah

CKA_WRAP_WITH_TRUSTED

Salah

CKA_UNWRAP

Salah

CKA_UNWRAP_TEMPLATE

 

CKA_SENSITIVE

Benar

CKA_ALWAYS_SENSITIVE

R

R

R

R

R

 

CKA_EXTRACTABLE

Benar

CKA_NEVER_EXTRACTABLE

R

R

R

R

R

 

CKA_MODULUS

2

2

 

CKA_MODULUS_BITS

 

CKA_PRIME_1

 

CKA_PRIME_2

 

CKA_COEFFICIENT

 

CKA_EXPONENT_1

 

CKA_EXPONENT_2

 

CKA_PRIVATE_EXPONENT

2

 

CKA_PUBLIC_EXPONENT

2

2

 

CKA_EC_PARAMS

2

2

 

CKA_EC_POINT

2

 

CKA_VALUE

2

2

2

2

 

CKA_VALUE_LEN

 

CKA_CHECK_VALUE

R

R

R

R

R

R

R

 

Atribut

Tipe Kunci

Nilai Default

 

EC pribadi

RSA pribadi

AES

DES3

Rahasia Generik

 

CKA_CLASS

2

2

2

2

2

CKA_KEY_TYPE

2

2

2

2

2

CKA_LABEL

CKA_ID

CKA_LOCAL

R

R

R

R

R

Salah

CKA_TOKEN

Salah

CKA_PRIVATE

1

1

1

1

1

Benar

CKA_ENCRYPT

Salah

CKA_DECRYPT

Salah

CKA_DERIVE

Salah

CKA_MODIFIABLE

1

1

1

1

1

Benar

CKA_DESTROYABLE

Benar

CKA_SIGN

Salah

CKA_SIGN_RECOVER

3

Salah

CKA_VERIFY

Salah

CKA_VERIFY_RECOVER

 

CKA_WRAP

Salah

CKA_UNWRAP

Salah

CKA_SENSITIVE

Benar

CKA_EXTRACTABLE

Benar

CKA_NEVER_EXTRACTABLE

R

R

R

R

R

 

CKA_ALWAYS_SENSITIVE

R

R

R

R

R

 

CKA_MODULUS

 

CKA_MODULUS_BITS

 

CKA_PRIME_1

 

CKA_PRIME_2

 

CKA_COEFFICIENT

 

CKA_EXPONENT_1

 

CKA_EXPONENT_2

 

CKA_PRIVATE_EXPONENT

 

CKA_PUBLIC_EXPONENT

 

CKA_EC_PARAMS

 

CKA_EC_POINT

 

CKA_VALUE

 

CKA_VALUE_LEN

 

CKA_CHECK_VALUE

R

R

R

R

R

 

Atribut

Tipe Kunci

Nilai Default

 

AES

DES3

Rahasia Generik

 

CKA_CLASS

2

2

2

CKA_KEY_TYPE

2

2

2

CKA_LABEL

CKA_ID

CKA_LOCAL

R

R

R

Benar

CKA_TOKEN

Salah

CKA_PRIVATE

1

1

1

Benar

CKA_ENCRYPT

Salah

CKA_DECRYPT

Salah

CKA_DERIVE

Salah

CKA_MODIFIABLE

1

1

1

Benar

CKA_DESTROYABLE

1

1

1

Benar

CKA_SIGN

Salah

CKA_SIGN_RECOVER

 

CKA_VERIFY

Salah

CKA_VERIFY_RECOVER

 

CKA_WRAP

Salah

CKA_UNWRAP

Salah

CKA_SENSITIVE

Benar

CKA_EXTRACTABLE

Benar

CKA_NEVER_EXTRACTABLE

R

R

R

 

CKA_ALWAYS_SENSITIVE

R

R

R

 

CKA_MODULUS

 

CKA_MODULUS_BITS

 

CKA_PRIME_1

 

CKA_PRIME_2

 

CKA_COEFFICIENT

 

CKA_EXPONENT_1

 

CKA_EXPONENT_2

 

CKA_PRIVATE_EXPONENT

 

CKA_PUBLIC_EXPONENT

 

CKA_EC_PARAMS

 

CKA_EC_POINT

 

CKA_VALUE

 

CKA_VALUE_LEN

2

2

 

CKA_CHECK_VALUE

R

R

R

 

Atribut

Tipe Kunci

 

EC pribadi

EC publik

RSA pribadi

RSA publik

AES

DES3

Rahasia Generik

CKA_CLASS

CKA_KEY_TYPE

CKA_LABEL

CKA_ID

CKA_LOCAL

CKA_TOKEN

CKA_PRIVATE

1

1

1

1

1

1

1

CKA_ENCRYPT

CKA_DECRYPT

CKA_DERIVE

CKA_MODIFIABLE

CKA_DESTROYABLE

CKA_SIGN

CKA_SIGN_RECOVER

CKA_VERIFY

CKA_VERIFY_RECOVER

CKA_WRAP

CKA_WRAP_TEMPLATE

CKA_TRUSTED

CKA_WRAP_WITH_TRUSTED

CKA_UNWRAP

CKA_UNWRAP_TEMPLATE

CKA_SENSITIVE

CKA_EXTRACTABLE

CKA_NEVER_EXTRACTABLE

CKA_ALWAYS_SENSITIVE

R

R;

R

R

R

R

R

CKA_MODULUS

CKA_MODULUS_BITS

CKA_PRIME_1

S

CKA_PRIME_2

S

CKA_COEFFICIENT

S

CKA_EXPONENT_1

S

CKA_EXPONENT_2

S

CKA_PRIVATE_EXPONENT

S

CKA_PUBLIC_EXPONENT

CKA_EC_PARAMS

CKA_EC_POINT

CKA_VALUE

S

2

2

2

CKA_VALUE_LEN

CKA_CHECK_VALUE

Anotasi atribut

  • [1] Atribut ini sebagian didukung oleh firmware dan harus secara eksplisit diatur hanya ke nilai default.

  • [2] Atribut wajib.

  • [3] Klien SDK 3 saja. CKA_SIGN_RECOVERAtribut berasal dari CKA_SIGN atribut. Jika sedang diatur, itu hanya dapat diatur ke nilai yang sama yang ditetapkan untuk CKA_SIGN. Jika tidak diatur, itu menurunkan nilai default dari CKA_SIGN. Karena CloudHSM hanya mendukung mekanisme tanda tangan dipulihkan berbasis RSA, atribut ini saat ini hanya berlaku untuk kunci publik RSA.

  • [4] Klien SDK 3 saja. CKA_VERIFY_RECOVERAtribut berasal dari CKA_VERIFY atribut. Jika sedang diatur, itu hanya dapat diatur ke nilai yang sama yang ditetapkan untuk CKA_VERIFY. Jika tidak diatur, itu menurunkan nilai default dari CKA_VERIFY. Karena CloudHSM hanya mendukung mekanisme tanda tangan dipulihkan berbasis RSA, atribut ini saat ini hanya berlaku untuk kunci publik RSA.

Memodifikasi atribut

Beberapa atribut dari suatu objek dapat dimodifikasi setelah objek dibuat, sedangkan beberapa objek tidak bisa. Untuk mengubah atribut, gunakan perintah setAttribute dari cloudhsm_mgmt_util. Anda juga dapat memperoleh daftar atribut dan konstanta yang mewakilinya dengan menggunakan perintah listAttribute dari cloudhsm_mgmt_util.

Daftar berikut menampilkan atribut yang diizinkan untuk modifikasi setelah pembuatan objek:

  • CKA_LABEL

  • CKA_TOKEN

    catatan

    Modifikasi hanya diperbolehkan untuk mengubah kunci sesi menjadi kunci token. Gunakan perintah setAttribute dari key_mgmt_util untuk mengubah nilai atribut.

  • CKA_ENCRYPT

  • CKA_DECRYPT

  • CKA_SIGN

  • CKA_VERIFY

  • CKA_WRAP

  • CKA_UNWRAP

  • CKA_LABEL

  • CKA_SENSITIVE

  • CKA_DERIVE

    catatan

    Atribut ini mendukung derivasi kunci. Kunci harus False untuk semua kunci publik dan tidak dapat diatur ke True. Untuk kunci rahasia dan kunci privat EC, kunci dapat diatur ke True atau False.

  • CKA_TRUSTED

    catatan

    Atribut ini dapat diatur ke True atau False oleh Petugas Kripto (CO) saja.

  • CKA_WRAP_WITH_TRUSTED

    catatan

    Terapkan atribut ini ke kunci data yang dapat diekspor untuk menentukan bahwa Anda hanya dapat membungkus kunci ini dengan kunci yang ditandai sebagai CKA_TRUSTED. Setelah Anda mengatur CKA_WRAP_WITH_TRUSTED menjadi true (benar), atribut menjadi hanya-baca dan Anda tidak dapat mengubah atau menghapus atribut.

Menafsirkan kode kesalahan

Menentukan dalam templat suatu atribut yang tidak didukung oleh hasil khusus kunci dalam kesalahan. Tabel berikut berisi kode galat yang dihasilkan ketika Anda melanggar spesifikasi:

Kode Kesalahan Deskripsi
CKR_TEMPLATE_INCONSISTENT Anda menerima galat ini ketika Anda menetapkan atribut dalam templat atribut, tempat atribut patuh dengan spesifikasi PKCS #11, tetapi tidak didukung oleh CloudHSM.
CKR_ATTRIBUTE_TYPE_INVALID Anda menerima galat ini ketika Anda mengambil nilai untuk atribut, yang patuh dengan spesifikasi PKCS #11, tetapi tidak didukung oleh CloudHSM.
CKR_ATTRIBUTE_INCOMPLETE Anda menerima galat ini ketika Anda tidak menentukan atribut wajib dalam templat atribut.
CKR_ATTRIBUTE_READ_ONLY Anda menerima galat ini ketika Anda menetapkan atribut hanya-baca dalam templat atribut.