Introdução ao IBM Cloud Hyper Protect Crypto Services

IBM Cloud® Hyper Protect Crypto Services (Hyper Protect Crypto Services para abreviação) é um serviço de gerenciamento de chave dedicado e módulo de segurança de hardware (HSM) baseado em IBM Cloud. Com este serviço, é possível utilizar a propriedade do HSM de nuvem para gerenciar totalmente suas chaves de criptografia e realizar operações criptográficas. O Hyper Protect Crypto Services também é o único serviço na indústria de nuvem que é desenvolvido com hardware certificado por FIPS 140-2 Nível 4. A função do Unified Key Orchestrator fornece um exclusivo ponto único de controle nativo de cloud de chaves de criptografia por meio de ambientes multicloud híbridos de sua empresa.

Este tutorial mostra as etapas de alto nível sobre como configurar sua instância de serviço carregando suas chaves mestras, criar e gerenciar chaves de criptografia com a IU e executar operações criptográficas com a API PKCS #11 ou com a API GREP11.

Antes de Iniciar

Para usar o Hyper Protect Crypto Services, certifique-se de atender aos pré-requisitos a seguir:

  1. Você tem uma conta pré-paga ou de assinatura do IBM Cloud.

    É possível usar o código promocional HPCRYPTO30 para obter duas unidades de criptografia sem encargos por 30 dias.

  2. Você provisionou uma instância de serviço com um dos planos a seguir:

Etapa 1: inicializar sua instância de serviço

Dependendo de onde sua instância de serviço está localizada e de seus requisitos de segurança, o Hyper Protect Crypto Services fornece as três opções a seguir para inicializar sua instância de serviço:

Etapa 2 (Somente plano padrão): criar chaves.

Com o Plano Padrão, é possível criar chaves raiz ou chaves padrão para a criptografia de dados Conclua as etapas a seguir para criar sua primeira chave criptográfica. Para concluir essas etapas, certifique-se de que você seja o proprietário da conta IBM Cloud ou que esteja designado à função writer. Para obter detalhes, consulte Designando acesso ao Hyper Protect Crypto Services na UI.

  1. Na UI, clique em Chaves do KMS > Incluir chave.
  2. Selecione Criar uma chave.
  3. Especifique Chave raiz ou Chave padrão como o tipo de chave e insira um nome exclusivo para a sua chave Certifique-se de que o nome da chave não contenha informações pessoalmente identificáveis (PII), como seu nome ou local.
  4. Clique em Incluir chave para confirmar..

A chave criada é uma chave simétrica de 256 bits, suportada pelo algoritmo AES-CBC. É possível inspecionar as características gerais de suas chaves na tabela Chaves de serviço de gerenciamento de chaves Também é possível trazer suas próprios chaves importando os base64-encoded codificados em base64.

Etapa 2 (somente PlanoUnified Key Orchestrator ): Gerenciar suas chaves de criptografia

Siga estas etapas para gerenciar suas chaves de criptografia se você estiver usando o Hyper Protect Crypto Services com Unified Key Orchestrator. Para concluir essas etapas, certifique-se de que você seja o proprietário da conta IBM Cloud ou designado à função de administrador do Vault. Para obter detalhes, consulte Designando acesso ao Hyper Protect Crypto Services na UI.

1. Criar áreas seguras

Uma área segura é um único repositório que controla o acesso de um usuário ou um grupo de acesso às chaves gerenciadas e aos keystores por meio do Cloud Identity and Access Management (IAM).

Conclua as etapas a seguir para criar sua primeira área segura:

  1. Em sua IU de instância de serviço, clique em Áreas seguras na navegação para visualizar todas as áreas seguras disponíveis.
  2. Clique em Criar área segura.
  3. Insira um nome em Nome da área segura. O nome da área segura pode ter de 1 a 100 caracteres. Opcionalmente, é possível incluir uma descrição estendida em sua área segura na seção Descrição.
  4. Clique em Criar área segura para confirmar.

2. Criar keystores

Um keystore é um repositório que armazena as chaves criptográficas. É possível criar um keystore interno dentro da instância de serviço ou se conectar a um keystore externo em outra instância de serviço ou até mesmo em outro provedor em nuvem, como o Microsoft Azure Key Vault, o Amazon Web Services (AWS) Key Management Service (KMS) e o Google Cloud KMS.

Conclua as etapas a seguir para criar seu primeiro keystore interno:

  1. Em sua IU da instância de serviço, clique em Keystores na navegação para visualizar todos os keystores disponíveis.
  2. Clique em Incluir keystore.
  3. Sob Área segura, selecione a área segura que você criar e clique em Avançar. Se desejar designar o keystore a uma nova área segura, clique em Criar área segura.
  4. Em Tipo de keystore, selecione IBM Cloud KMS e clique em Avançar.
  5. Sob Propriedades do keystore, insira um nome em Nome do keystore. O nome do keystore pode ter de 1 a 100 caracteres. E, em seguida, clique em Avançar.
  6. Sob Resumo, é possível visualizar o resumo do keystore que você cria, incluindo o tipo de keystore, a área segura designada e as propriedades gerais.
  7. Depois de confirmar os detalhes do keystore, clique em Criar keystore para criar o keystore.

3. Criar modelos de chave

especifica as propriedades das chaves gerenciadas a serem criadas, como a convenção de nomenclatura, o algoritmo de chave e o comprimento da chave.

Conclua as etapas a seguir para criar seu primeiro modelo de chave:

  1. Na UI da instância de serviço, clique em Modelos de chave na navegação.
  2. Clique em Criar modelo de chave..
  3. Em Área Segura, selecione a área segura recém-criada e, em seguida, clique em Avançar.
  4. Em Keystores, selecione IBM Cloud KMS como o tipo de keystore, selecione o keystore recém-criado e, em seguida, clique em Avançar.
  5. Em Propriedades do modelo de chave. especifique os detalhes a seguir do modelo de chave.. Clique em Avançar para continuar.
  6. Em Resumo, visualize o resumo de seu modelo de chave e, em seguida, clique em Criar modelo de chave para concluir a criação do modelo de chave

4. Criar chaves gerenciadas

É possível usar uma chave gerenciada para criptografia ou decriptografia somente depois que ela for criada e ativada em pelo menos um keystore. Conclua as etapas a seguir para criar sua primeira chave do KMS do IBM Cloud e ativar a chave no keystore criado:

  1. Em sua IU de instância de serviço, clique em Chaves gerenciadas na navegação para visualizar todas as chaves disponíveis.
  2. Clique em ** Criar chave **.
  3. Em Área Segura, selecione a área segura recém-criada e, em seguida, clique em Avançar.
  4. Em Modelo de chave, selecione Criar a partir de um modelo de chave e, então, selecione o modelo de chave que você acabou de criar e clique em Avançar.
  5. Em Propriedades da chave, especifique os detalhes da chave. Clique em Avançar para continuar quando estiver pronto. Observe que as chaves Pre-active não devem ser instaladas em keystores até que você as ative manualmente. As chaves Active devem ser instaladas automaticamente nos keystores. Para obter mais informações sobre as propriedades-chaves, consulte Criando chaves gerenciadas com um modelo de chave na IU do IBM Cloud
  6. Em Resumo, visualize o resumo da chave e, em seguida, clique em Criar chave para criar a chave.

Etapa 3: criptografe seus dados com o HSM de nuvem

É possível acessar remotamente o HSM em nuvem dos Hyper Protect Crypto Services para executar operações criptográficas com a API PKCS n.º 11 ou com a API GREP11. Para concluir essas etapas, certifique-se de que você seja o proprietário da conta IBM Cloud ou que esteja designado à função writer. Para obter detalhes, consulte Designando acesso ao Hyper Protect Crypto Services na UI.

Executando operações criptográficas com a API do PKCS n.º 11

Para executar operações criptográficas com a API do PKCS n.º 11, conclua as etapas a seguir:

  1. Configure IDs de serviço, funções e ações do PKCS #11 . Para obter mais informações, consulte Configurando tipos de usuário da API do PKCS #11
  2. Faça o download, instale e configure a biblioteca do cliente PKCS #11 Para obter mais informações sobre como configurar a biblioteca do cliente PKCS #11 , consulte Executando operações de criptografia com a API PKCS #11.

Executando operações criptográficas com a API GREP11

Para executar operações criptográficas com a API GREP11, é necessário certificar-se de que seus aplicativos sejam desenvolvidos com linguagens de programação suportadas pelo gRPC.

O procedimento a seguir usa o código do Golang como exemplo para testar funções do GREP11.

  1. Instale Golang seguindo a instrução.

  2. Clone o repositório sample GitHub para Golang em um diretório local de sua escolha. Os módulos do go são usados para este repositório, portanto, não é necessário colocar o repositório clonado em seu GOPATH. Consulte o arquivo README do repositório para obter mais informações sobre os exemplos de código do Go do GREP11.

  3. Atualize o snippet de código a seguir no arquivo examples/server_test.go.

    var (
        Address        = "<instance_ID>.ep11.us-east.hs-crypto.appdomain.cloud"
        APIKey         = "<ibm_cloud_apikey>"
    )
    

    No exemplo de código,

    • Substitua <instance_ID> pelo valor do terminal de API GREP11. Para localizar a URL do terminal em serviço, por meio de sua IU da instância de serviço provisionada, clique na Visão geral >> Conectar > URL do terminal do Enterprise PKCS #11
    • Substitua <ibm_cloud_apikey> pela chave de API do ID de serviço criada.
  4. No diretório <your_repository_path>/hpcs-grep11-go/examples, execute os exemplos, executando o comando go test -v -run Example.