Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-03-01 GMT+08:00

Importação de materiais de chave

Se você quiser usar seus próprios materiais de chave em vez dos materiais gerados pelo KMS, poderá usar o console para importar seus materiais de chave para o KMS. As CMKs criadas usando materiais importados e materiais gerados pelo KMS são gerenciadas em conjunto pelo KMS.

Esta seção descreve como importar materiais de chave no console do KMS.

Pré-requisitos

  • Você obteve uma conta e sua senha para fazer logon no console de gerenciamento.
  • Você preparou os materiais de chave a serem importados.

Procedimento

  1. Faça logon no console de gerenciamento.
  2. Clique em no canto superior esquerdo do console de gerenciamento e selecione uma região ou um projeto.
  3. Clicar em . Escolha Security & Compliance > Data Encryption Workshop.
  4. Clique em Import Key. A caixa de diálogo Import Key é exibida.
  5. Configure os parâmetros de chave.

    Figura 1 Criar uma chave vazia
    • Alias é o alias da CMK a ser criada.
      • Você pode inserir dígitos, letras, sublinhados (_), hifens (-), dois-pontos (:) e barras (/).
      • Você pode inserir até 255 caracteres.
    • Key Algorithm: selecione um algoritmo de chave. Para obter mais informações, consulte Tabela 1.
      Tabela 1 Algoritmos de chave suportados pelo KMS

      Tipo de chave

      Tipo de algoritmo

      Especificações de chave

      Descrição

      Utilização

      Chave simétrica

      AES

      AES_256

      Chave simétrica de AES

      Criptografa e descriptografa uma pequena quantidade de dados ou chaves de dados.

      Chave assimétrica

      RSA

      • RSA_2048
      • RSA_3072
      • RSA_4096

      Senha assimétrica de RSA

      Criptografa e descriptografa uma pequena quantidade de dados ou cria assinaturas digitais.

      ECC

      • EC_P256
      • EC_P384

      Curva elíptica recomendada pelo NIST

      Assinatura digital

    • Usage: selecione SIGN_VERIFY ou ENCRYPT_DECRYPT.
      • Para uma chave simétrica, o valor padrão é ENCRYPT_DECRYPT.
      • Para chaves assimétricas RSA, selecione ENCRYPT_DECRYPT ou SIGN_VERIFY. O valor padrão é SIGN_VERIFY.
      • Para uma chave assimétrica ECC, o valor padrão é SIGN_VERIFY.

      O uso da chave só pode ser configurado durante a criação da chave e não pode ser modificado posteriormente.

    • (Opcional) Description é a descrição da CMK.
    • O parâmetro Enterprise Project precisa ser definido apenas para usuários corporativos.

      Se você for um usuário corporativo e tiver criado um projeto corporativo, selecione o projeto corporativo necessário na lista suspensa. O projeto padrão é default.

      Se não houver opções do Enterprise Management exibidas, não será necessário configurá-lo.

  6. (Opcional) Adicione tags à CMK conforme necessário e insira a chave da tag e o valor da tag.

    • Se uma CMK foi criada sem nenhuma tag, você pode adicionar uma tag à CMK mais tarde, conforme necessário. Clique no alias da CMK, clique na guia Tags e clique em Add Tag.
    • A mesma tag (incluindo chave de tag e valor de tag) pode ser usada para diferentes CMKs. No entanto, na mesma CMK, uma chave de tag pode ter apenas um valor de tag.
    • Um máximo de 20 tags podem ser adicionadas para cada CMK.
    • Se desejar excluir uma tag da lista de tags ao adicionar várias tags, você pode clicar em Delete na linha onde a tag a ser adicionada está localizada para excluir a tag.

  7. Clique em security and durability para entender a segurança e a durabilidade da chave importada.
  8. Selecione I understand the security and durability of using an imported key e crie uma CMK cujo material da chave esteja vazio.
  9. Clique em Next para ir para a etapa Download the Import Items. Selecione um algoritmo de encapsulamento de chave com base em Tabela 2.

    Tabela 2 Algoritmos de encapsulamento de chave

    Algoritmo

    Descrição

    Configuração

    RSAES_OAEP_SHA_256

    Algoritmo de criptografia de RSA que usa OAEP e tem a função de hash SHA-256

    Escolha um algoritmo na caixa de listagem suspensa.

    Se os HSMs oferecerem suporte ao algoritmo RSAES_OAEP_SHA_256, use RSAES_OAEP_SHA_256 para criptografar materiais de chave.

    Se você interromper um processo de importação de material de chave e quiser tentar novamente, clique em Import Key Material na linha da CMK necessária e importe o material de chave na caixa de diálogo exibida.

  10. Clique em Download. Os seguintes arquivos são baixados: wrappingKey, importToken e README, como mostrado na Figura 2.

    Figura 2 Download de arquivo
    • wrappingKey_CMKID_DownloadTime é uma chave de encapsulamento usada para criptografar materiais de chave.
    • importToken_CMKID_DownloadTime é um token usado para importar materiais de chave para o KMS.
    • README_CMKID_DownloadTime é um arquivo de descrição que registra informações como o número de série de uma CMK, o algoritmo de encapsulamento, o nome da chave de encapsulamento, o nome do arquivo de token e o tempo de expiração do arquivo de token e da chave de encapsulamento.
    • wrappingKey_Key ID_Download_time é codificado em formato binário.
    • A chave de encapsulamento e o token de importação expiram em 24 horas. Se tiverem expirado, baixe-os novamente.
    Você também pode obter a chave de encapsulamento e importar o token via API.
    1. Chame a API get-parameters-for-import para obter a chave de encapsulamento e importar o token.

      O exemplo a seguir descreve como obter a chave de encapsulamento e o token de importação de uma CMK (ID: 43f1ffd7-18fb-4568-9575-602e009b7ee8; algoritmo de criptografia: RSAES_OAEP_SHA_256).

      public_key: conteúdo da chave de encapsulamento (codificação Base-64) retornado após a chamada da API

      import_token: conteúdo do token de importação (codificação Base-64) retornado após a chamada da API

      • Exemplo de solicitação
        {      
            "key_id": "43f1ffd7-18fb-4568-9575-602e009b7ee8",
            "wrapping_algorithm":"RSAES_OAEP_SHA_256"
        }
      • Exemplo de resposta
        {
            "key_id": "43f1ffd7-18fb-4568-9575-602e009b7ee8",    
            "public_key":"public key base64 encoded data",
            "import_token":"import token base64 encoded data",
            "expiration_time":1501578672
        }
    2. Salve a chave de encapsulamento e converta seu formato. Somente o material da chave criptografado usando a chave de encapsulamento convertida pode ser importado para o console de gerenciamento.
      1. Copie o conteúdo da chave public_key, cole-a em um arquivo .txt e salve o arquivo como PublicKey.b64.
      2. Use OpenSSL para executar o seguinte comando para executar a codificação Base-64 no conteúdo do arquivo PublicKey.b64 para gerar dados binários e salvar o arquivo convertido como PublicKey.bin:

        openssl enc -d -base64 -A -in PublicKey.b64 -out PublicKey.bin

    3. Salve o token de importação, copie o conteúdo do token import_token, cole-o em um arquivo .txt e salve o arquivo como ImportToken.b64.

  11. Use o arquivo wrappingKey para criptografar os materiais de chave a serem importados.

    • Método 1: use a chave de encapsulamento baixada para criptografar materiais de chave em seu HSM. Para obter detalhes, consulte o guia de operação do seu HSM.
    • Método 2: use o OpenSSL para criptografar os materiais de chave.

      Se você precisar executar o comando openssl pkeyutl, a versão do OpenSSL deve ser 1.0.2 ou posterior.

      O exemplo a seguir descreve como usar a chave de encapsulamento baixada para criptografar o material da chave gerada (chave simétrica de 256-bit). O procedimento é o seguinte:
      1. Para gerar um material de chave para uma chave simétrica de 256-bit usando o algoritmo AES256, no agente em que o OpenSSL foi instalado, execute o seguinte comando para gerar o material de chave e salve-o como PlaintextKeyMaterial.bin:

        openssl rand -out PlaintextKeyMaterial.bin 32

        Para gerar um material de chave para uma chave assimétrica RSA ou ECC, execute as seguintes operações:

        1. Gere uma chave hexadecimal AES256.

          openssl rand -out 0xPlaintextKeyMaterial.bin -hex 32

        2. Converta a chave hexadecimal AES256 para o formato binário.

          cat 0xPlaintextKeyMaterial.bin | xxd -r -ps > PlaintextKeyMaterial.bin

      2. Use a chave de encapsulamento baixada para criptografar o material da chave e salve o material da chave criptografada como EncryptedKeyMaterial.bin.

        Substitua PublicKey.bin no comando com o nome da chave de encapsulamento wrappingKey_key ID_download time baixado em Passo 10.

        Tabela 3 Criptografar o material de chave gerado usando a chave de encapsulamento baixada

        Algoritmo de chave de encapsulamento

        Criptografia de material de chave

        RSAES_OAEP_SHA_256

        openssl pkeyutl

        -in PlaintextKeyMaterial.bin

        -inkey PublicKey.bin

        -out EncryptedKeyMaterial.bin

        -keyform der

        -pubin -encrypt

        -pkeyopt rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256

      3. Para importar uma chave assimétrica, gere uma chave privada assimétrica e use um material de chave temporária para criptografar a chave privada.
        • Tome o algoritmo RSA4096 como um exemplo. Realize as operações a seguir:
          1. Gere uma chave privada.

            openssl genrsa -out rsa_private_key.pem 4096

          2. Converta a chave para o formato DER.

            openssl pkcs8 -topk8 -inform PEM -outform DER -in rsa_private_key.pem -out rsa_private_key.der -nocrypt

          3. Use um material de chave temporária para criptografar a chave privada.

            openssl enc -id-aes256-wrap-pad -K $(cat 0xPlaintextKeyMaterial.bin) -iv A65959A6 -in rsa_private_key.der -out out_rsa_private_key.der

            Por padrão, o algoritmo -id-aes256-wrap-pad não está habilitado no OpenSSL. Para envolver uma chave, atualize o OpenSSL para a versão mais recente e corrija-a primeiro. Para obter detalhes, consulte Perguntas frequentes.

  12. Clique em Next para ir para a etapa Import Key Material.

    Tabela 4 Parâmetros para importar materiais de chave (para chaves simétricas)

    Parâmetro

    Descrição

    Key ID

    ID aleatório de uma CMK gerada durante a criação da CMK

    Key material

    Importar um material de chave.

    Tabela 5 Parâmetros para importar materiais de chave (para chaves assimétricas)

    Parâmetro

    Descrição

    Key ID

    ID aleatório de uma CMK gerada durante a criação da CMK

    Material de chave temporária

    Importar um material de chave temporária.

    Texto cifrado de chave privada

    Selecione texto cifrado de chave privada.

    Figura 3 Importação de materiais de chave

  13. Clique em Next para ir para a etapa Import Key Token. Configure os parâmetros conforme descrito em Tabela 6.

    Tabela 6 Parâmetros para importar um token de chave

    Parâmetro

    Descrição

    Key ID

    ID aleatório de uma CMK gerada durante a criação da CMK

    Token de importação de chave

    Selecione o token baixado em Passo 10.

    Modo de expiração do material de chave

    • O material de chave nunca expirará: utilize esta opção para especificar que os materiais de chave não expirarão após a importação.
    • O material de chave expirará: use essa opção para especificar o tempo de expiração dos materiais de chave. Por padrão, os materiais de chave expiram em 24 horas após a importação.

      Depois que o material da chave expira, o sistema exclui automaticamente o material da chave dentro de 24 horas. Uma vez que o material da chave é excluído, a chave não pode ser usada e seu status muda para Pending import.

  14. Clique em OK. Quando a mensagem Key imported successfully é exibida no canto superior direito, os materiais são importados.

    Os materiais de chave podem ser importados com sucesso quando correspondem ao ID da CMK e ao token correspondentes.

    Os materiais importados são exibidos na lista de CMKs. O status padrão de uma CMK importada é Enabled.