As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Atributos-chave suportados pela biblioteca PKCS #11
Um objeto pode ser uma chave pública, privada ou secreta. As ações permitidas em um objeto de chave são especificadas por meio de atributos. Os atributos são definidos quando o objeto de chave é criado. Quando você usa o SDK do PKCS #11 do CloudHSM, atribuímos valores padrão conforme especificado pelo PKCS #11 padrão.
AWS CloudHSM não suporta todos os atributos listados na especificação PKCS #11. Estamos em conformidade com a especificação de todos os atributos aos quais oferecemos suporte. Esses atributos estão listados nas respectivas tabelas.
Funções criptográficas como C_CreateObject
, C_GenerateKey
, C_GenerateKeyPair
, C_UnwrapKey
, e C_DeriveKey
que criam, modificam ou copiam objetos usam um modelo de atributo como um de seus parâmetros. Para obter mais informações sobre como passar um modelo de atributo durante a criação do objeto, consulte o exemplo para Gerar chaves por meio da biblioteca PKCS #11
Interpretar a tabela de atributos do PKCS #11
A tabela do PKCS #11 contém uma lista de atributos que diferem por tipos de chaves. Ele indica se um determinado atributo é compatível com um determinado tipo de chave ao usar uma função criptográfica específica com AWS CloudHSM.
Legenda:
-
✔ indica que o CloudHSM oferece suporte ao atributo para o tipo de chave específico.
-
✖ indica que o CloudHSM não oferece suporte ao atributo para o tipo de chave específico.
-
R indica que o valor do atributo é definido como somente leitura para o tipo de chave específico.
-
S indica que o atributo não pode ser lido pelo
GetAttributeValue
pois ele é confidencial. -
Uma célula vazia na coluna Valor padrão indica que não há nenhum valor padrão específico atribuído ao atributo.
Atributo |
Tipo de chave |
Valor padrão |
|||
---|---|---|---|---|---|
|
EC privada |
EC pública |
RSA privada |
RSA pública |
|
|
✔ |
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
✔ |
|
|
R |
R |
R |
R |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✖ |
✔ |
✖ |
✔ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
Verdadeiro |
|
✔ |
✖ |
✔ |
✖ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✔ |
✖ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✔ |
✖ |
✔ |
Falso |
|
✖ |
✔ |
✖ |
✔ |
|
|
✖ |
✔ |
✖ |
✔ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
|
|
✔1 |
✖ |
✔1 |
✖ |
Verdadeiro |
|
R |
✖ |
R |
✖ |
|
|
✔ |
✖ |
✔ |
✖ |
Verdadeiro |
|
R |
✖ |
R |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✔2 |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✔2 |
|
|
✖ |
✔2 |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
|
|
R |
R |
R |
R |
|
Atributo |
Tipo de chave |
Valor padrão |
||
---|---|---|---|---|
|
AES |
DES3 |
Segredo genérico |
|
|
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
|
|
R |
R |
R |
Verdadeiro |
|
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✔ |
Verdadeiro |
|
✔ |
✔ |
✔ |
Verdadeiro |
|
✖ |
✖ |
✖ |
|
|
✔ |
✔ |
✔ |
Verdadeiro |
|
✖ |
✖ |
✖ |
|
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✖ |
|
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
Falso |
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✖ |
|
|
✔ |
✔ |
✔ |
Verdadeiro |
|
✖ |
✖ |
✖ |
|
|
✔ |
✔ |
✔ |
Verdadeiro |
|
R |
R |
R |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✔2 |
✖ |
✔2 |
|
|
R |
R |
R |
|
Atributo |
Tipo de chave |
Valor padrão |
||||||
---|---|---|---|---|---|---|---|---|
|
EC privada |
EC pública |
RSA privada |
RSA pública |
AES |
DES3 |
Segredo genérico |
|
|
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
|
|
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
|
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
|
R |
R |
R |
R |
R |
R |
R |
Falso |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✖ |
✖ |
✖ |
✔ |
✔ |
✔ |
✖ |
Falso |
|
✖ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Verdadeiro |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
Falso |
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✔ |
✔ |
✔ |
✖ |
Falso |
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✖ |
|
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✖ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
Falso |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
|
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
Verdadeiro |
|
R |
✖ |
R |
✖ |
R |
R |
R |
|
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
Verdadeiro |
|
R |
✖ |
R |
✖ |
R |
R |
R |
|
|
✖ |
✖ |
✔2 |
✔2 |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔2 |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔2 |
✔2 |
✖ |
✖ |
✖ |
|
|
✔2 |
✔2 |
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✔2 |
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✔2 |
✖ |
✖ |
✖ |
✔2 |
✔2 |
✔2 |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
R |
R |
R |
R |
R |
R |
R |
|
Atributo |
Tipo de chave |
Valor padrão |
||||
---|---|---|---|---|---|---|
|
EC privada |
RSA privada |
AES |
DES3 |
Segredo genérico |
|
|
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
|
|
✔2 |
✔2 |
✔2 |
✔2 |
✔2 |
|
|
✔ |
✔ |
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
✔ |
✔ |
|
|
R |
R |
R |
R |
R |
Falso |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✖ |
✖ |
✔ |
✔ |
✖ |
Falso |
|
✖ |
✔ |
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
✖ |
Falso |
|
✖ |
✖ |
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✔ |
✔ |
✖ |
Falso |
|
✖ |
✔ |
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Verdadeiro |
|
✔ |
✔ |
✔ |
✔ |
✔ |
Verdadeiro |
|
R |
R |
R |
R |
R |
|
|
R |
R |
R |
R |
R |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
✖ |
✖ |
|
|
R |
R |
R |
R |
R |
|
Atributo |
Tipo de chave |
Valor padrão |
||
---|---|---|---|---|
|
AES |
DES3 |
Segredo genérico |
|
|
✔2 |
✔2 |
✔2 |
|
|
✔2 |
✔2 |
✔2 |
|
|
✔ |
✔ |
✔ |
|
|
✔ |
✔ |
✔ |
|
|
R |
R |
R |
Verdadeiro |
|
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✔ |
Falso |
|
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔1 |
✔1 |
✔1 |
Verdadeiro |
|
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
|
|
✔ |
✔ |
✔ |
Falso |
|
✖ |
✖ |
✖ |
|
|
✔ |
✔ |
✖ |
Falso |
|
✔ |
✔ |
✖ |
Falso |
|
R |
R |
R |
Verdadeiro |
|
✔ |
✔ |
✔ |
Verdadeiro |
|
R |
R |
R |
|
|
R |
R |
R |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✖ |
✖ |
✖ |
|
|
✔2 |
✖ |
✔2 |
|
|
R |
R |
R |
|
Atributo |
Tipo de chave |
||||||
---|---|---|---|---|---|---|---|
|
EC privada |
EC pública |
RSA privada |
RSA pública |
AES |
DES3 |
Segredo genérico |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
✔1 |
|
✖ |
✖ |
✖ |
✔ |
✔ |
✔ |
✖ |
|
✖ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
|
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✔ |
|
✖ |
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
✖ |
✔ |
✔ |
✔ |
✖ |
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✖ |
|
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
✔ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
|
✖ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✖ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
|
✔ |
✖ |
✔ |
✖ |
✔ |
✔ |
✔ |
|
R |
R |
R |
R |
R |
R |
R |
|
✖ |
✖ |
✔ |
✔ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
✖ |
✔ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
S |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✖ |
✔ |
✔ |
✖ |
✖ |
✖ |
|
✔ |
✔ |
✖ |
✖ |
✖ |
✖ |
✖ |
|
✖ |
✔ |
✖ |
✖ |
✖ |
✖ |
✖ |
|
S |
✖ |
✖ |
✖ |
✔ |
✔ |
✔ |
|
✖ |
✖ |
✖ |
✖ |
✔ |
✖ |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✖ |
Anotações de atributos
-
[1] Este atributo tem suporte parcial do firmware e deve ser explicitamente definido apenas como o valor padrão.
-
[2] Atributo obrigatório.
Modificar atributos
Alguns atributos de um objeto podem ser modificados depois que o objeto foi criado, enquanto alguns não podem. Para modificar atributos, use o comando setAttribute do cloudhsm_mgmt_util. Você também pode derivar uma lista de atributos e as constantes que os representam usando o comando listAttribute command de cloudhsm_mgmt_util.
A lista a seguir exibe os atributos cuja modificação é permitida após a criação do objeto:
-
CKA_LABEL
-
CKA_TOKEN
nota
A modificação é permitida somente para alterar uma chave de sessão para uma chave de token. Use o comando listAttribute command de cloudhsm_mgmt_util para alterar o valor do atributo.
-
CKA_ENCRYPT
-
CKA_DECRYPT
-
CKA_SIGN
-
CKA_VERIFY
-
CKA_WRAP
-
CKA_UNWRAP
-
CKA_LABEL
-
CKA_SENSITIVE
-
CKA_DERIVE
nota
Esse atributo oferece suporte à derivação de chaves. Ele deve ser
False
para todas as chaves públicas e não pode ser definido comoTrue
. Para chaves privadas EC e secretas, ele pode ser definido comoTrue
ouFalse
. -
CKA_TRUSTED
nota
Esse atributo pode ser definido como
True
ouFalse
somente pelo Responsável pela criptografia (CO) -
CKA_WRAP_WITH_TRUSTED
nota
Aplique esse atributo a uma chave de dados exportável para especificar que você só pode agrupar essa chave com chaves marcadas como
CKA_TRUSTED
. Depois queCKA_WRAP_WITH_TRUSTED
for definido como verdadeiro, o atributo se torna somente para leitura e não é possível alterar ou remover o atributo.
Interpretar códigos de erro
Especificar no modelo um atributo que não tenha suporte de uma chave específica resultará em um erro. A tabela a seguir contém códigos de erro que são gerados quando as especificações são violadas:
Código de erro | Descrição |
---|---|
CKR_TEMPLATE_INCONSISTENT |
Você receberá esse erro quando especificar um atributo no modelo de atributo, em que o atributo está em conformidade com a especificação do PKCS #11, mas não tem suporte do CloudHSM. |
CKR_ATTRIBUTE_TYPE_INVALID |
Você receberá esse erro quando recuperar o valor de um atributo, que está em conformidade com a especificação do PKCS #11, mas não tem suporte do CloudHSM. |
CKR_ATTRIBUTE_INCOMPLETE |
Você receberá esse erro quando não especificar o atributo obrigatório no modelo de atributo. |
CKR_ATTRIBUTE_READ_ONLY |
Você receberá esse erro quando especificar um atributo somente leitura no modelo de atributo. |