GendSA KeyPair - AWS CloudHSM

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á.

GendSA KeyPair

O comando genDSAKeyPair na ferramenta key_mgmt_util gera um par de chaves de Algoritmo de assinatura digital (DSA) em seus HSMs. Você deve especificar o comprimento do módulo; o comando gera o valor do módulo. Você também pode atribuir um ID, compartilhar a chave com outros usuários do HSM e criar chaves não extraíveis que expiram quando a sessão termina. Quando o comando é bem-sucedido, ele retorna os identificadores de chave que o HSM atribui às chaves públicas e privadas. Você pode usar os identificadores de chave para identificar as chaves para outros comandos.

Antes de executar um comando key_mgmt_util, você deve iniciar key_mgmt_util e fazer login no HSM como um usuário de criptografia (CU).

dica

Para encontrar os atributos de uma chave criada por você, como tipo, comprimento, rótulo e ID, use getAttribute. Para encontrar as chaves de um usuário específico, use getKeyInfo. Para encontrar chaves com base em seus valores de atributos, use FindKey.

Sintaxe

genDSAKeyPair -h genDSAKeyPair -m <modulus length> -l <label> [-id <key ID>] [-min_srv <minimum number of servers>] [-m_value <0..8>] [-nex] [-sess] [-timeout <number of seconds> ] [-u <user-ids>] [-attest]

Exemplos

Esses exemplos mostram como usar genDSAKeyPair para criar um par de chaves DSA.

exemplo : Criar um par de chaves DSA

Esse comando cria um par de chaves DSA com um rótulo DSA. A saída mostra que o identificador da chave pública é 19 e o identificador da chave privada é 21.

Command: genDSAKeyPair -m 2048 -l DSA Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS Cfm3GenerateKeyPair: public key handle: 19 private key handle: 21 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
exemplo : Criar um par de chaves DSA somente de sessão

Este comando cria um par de chaves DSA que é válido apenas na sessão atual. O comando atribui um ID exclusiva de DSA_temp_pair, além do rótulo (não exclusivo) requerido. Você pode querer criar um par de chaves como esse para assinar e verificar um token somente de sessão. A saída mostra que o identificador da chave pública é 12 e o identificador da chave privada é 14.

Command: genDSAKeyPair -m 2048 -l DSA-temp -id DSA_temp_pair -sess Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS Cfm3GenerateKeyPair: public key handle: 12 private key handle: 14 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS

Para confirmar que o par de chaves existe apenas na sessão, use o parâmetro -sess de findKey com o valor de 1 (true).

Command: findKey -sess 1 Total number of keys present 2 number of keys matched from start index 0::1 12, 14 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
exemplo : Criar um par de chaves DSA compartilhadas e não extraíveis

Esse comando cria um par de chaves DSA. A chave privada é compartilhada com outros três usuários e não pode ser exportada do HSM. Chaves públicas podem ser usadas por qualquer usuário e sempre podem ser extraídas.

Command: genDSAKeyPair -m 2048 -l DSA -id DSA_shared_pair -nex -u 3,5,6 Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS Cfm3GenerateKeyPair: public key handle: 11 private key handle: 19 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
exemplo : Criar um par de chaves com controle de quorum

Esse comando cria um par de chaves DSA com o rótulo DSA-mV2. O comando usa o parâmetro -u para compartilhar a chave privada com os usuários 4 e 6. Ele usa o parâmetro -m_value para exigir um quorum de pelo menos duas aprovações para quaisquer operações criptográficas que usam a chave privada. O comando também usa o parâmetro -attest para verificar a integridade do firmware no qual o par de chaves é gerado.

A saída mostra que o comando gera uma chave pública com o identificador de chave 12 e uma chave privada com o identificador de chave 17 e que a verificação de atestado no firmware do cluster foi aprovada.

Command: genDSAKeyPair -m 2048 -l DSA-mV2 -m_value 2 -u 4,6 -attest Cfm3GenerateKeyPair: returned: 0x00 : HSM Return: SUCCESS Cfm3GenerateKeyPair: public key handle: 12 private key handle: 17 Attestation Check : [PASS] Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS

Esse comando é usado getKeyInfona chave privada (identificador da chave17). A saída confirma que a chave pertence ao usuário atual (usuário 3) e que é compartilhada com os usuários 4 e 6 (e nenhum outro). A saída também mostra que a autenticação de quorum está habilitada e que o tamanho do quorum é dois.

Command: getKeyInfo -k 17 Cfm3GetKey returned: 0x00 : HSM Return: SUCCESS Owned by user 3 also, shared to following 2 user(s): 4 6 2 Users need to approve to use/manage this key

Parâmetros

-h

Exibe a ajuda referente ao comando.

Obrigatório: Sim

-m

Especifica o comprimento do módulo em bits. O único valor válido é 2048.

Obrigatório: Sim

-l

Especifica o rótulo definido pelo usuário para o par de chaves. Digite uma string. O mesmo rótulo se aplica às duas chaves do par. O tamanho máximo para label é de 127 caracteres.

É possível usar qualquer frase que ajude a identificar a chave. Como o rótulo não precisa ser exclusivo, é possível usá-lo para agrupar e categorizar chaves.

Obrigatório: Sim

-id

Especifica um rótulo definido pelo usuário para o par de chaves. Digite uma string exclusiva no cluster. O padrão é uma string vazia. O ID que você especifica se aplica às duas chaves do par.

Padrão: sem valor de ID.

Obrigatório: não

-min_srv

Especifica o número mínimo de HSMs nos quais a chave importada é sincronizada antes da expiração do valor do parâmetro -timeout. Se a chave não for sincronizada com o número especificado de servidores na hora alocada, ela não será criada.

AWS CloudHSM sincroniza automaticamente todas as chaves com cada HSM no cluster. Para agilizar o processo, configure o valor de min_srv como menos que o número de HSMs no cluster e defina um valor de tempo limite baixo. No entanto, algumas solicitações talvez não gerem uma chave.

Padrão: 1

Obrigatório: não

-m_value

Especifica o número de usuários que devem aprovar qualquer operação criptográfica que use a chave privada no par. Digite um valor de 0 até 8.

Esse parâmetro estabelece um requisito de autenticação de quórum para a chave privada. O valor padrão, 0, desativa o atributo de autenticação de quórum para a chave. Quando a autenticação de quórum está habilitada, o número especificado de usuários deve assinar um token para aprovar operações criptográficas que usam a chave privada e operações que compartilham ou descompartilham a chave privada.

Para encontrar m_value a chave, use getKeyInfo.

Esse parâmetro é válido somente quando o parâmetro -u no comando compartilha a chave com usuários o suficiente para atender ao requisito de m_value.

Padrão: 0

Obrigatório: não

-nex

Torna a chave privada não extraível. A chave privada gerada não pode ser exportada do HSM. Chaves públicas sempre podem ser extraídas.

Padrão: as chaves pública e privada no par de chaves podem ser extraídas.

Obrigatório: não

-sess

Cria uma chave que existe apenas na sessão atual. A chave não pode ser recuperada após o término da sessão.

Use esse parâmetro quando precisar de uma chave apenas brevemente, como uma chave de empacotamento que criptografa e, em seguida, descriptografa rapidamente outra chave. Não use uma chave de sessão para criptografar dados que você talvez precise descriptografar após o término da sessão.

Para transformar uma chave de sessão em uma chave persistente (token), use setAttribute.

Padrão: a chave é persistente.

Obrigatório: não

-timeout

Especifica por quanto tempo (em segundos) o comando espera que uma chave seja sincronizada com o número de HSMs especificado pelo parâmetro min_srv.

Este parâmetro é válido somente quando o parâmetro min_srv também é usado no comando.

Padrão: sem limite de tempo. O comando espera indefinidamente e retorna somente quando a chave é sincronizada com o número mínimo de servidores.

Obrigatório: não

-u

Compartilha a chave privada no par com os usuários especificados. Esse parâmetro dá a outros usuários de criptografia (CUs) do HSM permissão para usar essa chave em operações de criptografia. As chaves públicas podem ser usadas por qualquer usuário sem compartilhamento.

Digite uma lista separada por vírgulas de IDs de usuário do HSM, como -u 5,6. Não inclua o ID do usuário atual do HSM. Para encontrar o ID do usuário de CUs no HSM, use listUsers. Em seguida, para compartilhar ou descompartilhar uma chave existente, use shareKey em cloudhsm_mgmt_util.

Padrão: somente o usuário atual pode utilizar a chave importada.

Obrigatório: não

-attest

Executa uma verificação de integridade que verifica se o firmware no qual o cluster é executado não foi adulterado.

Padrão: sem verificação de atestado.

Obrigatório: não

Tópicos relacionados da