Esta página mostra como obter a parte da chave pública de uma versão de chave assimétrica ativada.
O formato da chave pública depende de se tratar de um algoritmo de computação pós-quântica (PQC) ou convencional:
Para algoritmos não PQC, o formato predefinido da chave pública é o formato de correio eletrónico otimizado para privacidade (PEM). Também pode obter chaves públicas não PQC no formato Distinguished Encoding Rules (DER). Para mais informações, consulte a RFC 7468, em particular as secções "Considerações gerais" e "Codificação textual de informações de chave pública de assunto".
Para algoritmos PQC padronizados pela NIST (Pré-visualização), pode obter a chave pública no formato identificado nas normas PCQ da NIST para esse algoritmo. Para mais informações, consulte as normas FIPS-203, FIPS-204 e FIPS-205. Os formatos PEM e DER não são suportados para estas chaves.
Para o X-Wing (pré-visualização), pode obter a chave pública no formato de bytes brutos especificado pela norma X-Wing. Os formatos PEM e DER não são suportados para estas chaves.
Funções necessárias
Para obter as autorizações de que
precisa para obter uma chave pública,
peça ao seu administrador para lhe conceder a função da IAM
Visualizador de chaves públicas de CryptoKey do Cloud KMS (roles/cloudkms.publicKeyViewer)
na sua chave ou num recurso principal.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Esta função predefinida contém as autorizações necessárias para obter uma chave pública. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para obter uma chave pública:
-
cloudkms.cryptoKeyVersions.viewPublicKey -
cloudkms.locations.get -
cloudkms.locations.list -
resourcemanager.projects.get
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Obtenha uma chave pública
Pode especificar o formato no qual quer obter a chave pública.
Se o formato for especificado, a chave é devolvida no formato especificado
no campo public_key da resposta. Caso contrário, é devolvido no campo pem da resposta.
Para transferir a chave pública de uma versão de chave assimétrica ativada:
Consola
Na Google Cloud consola, aceda à página Gestão de chaves.
Clique no nome do conjunto de chaves que contém a chave assimétrica para a qual quer obter a chave pública.
Clique no nome da chave para a qual quer obter a chave pública.
Na linha correspondente à versão da chave para a qual quer obter a chave pública, clique em Ver mais .
Clique em Obter chave pública.
A chave pública é apresentada no comando. Pode copiar a chave pública para a área de transferência. Para transferir a chave pública, clique em Transferir.
Se não vir a opção Obter chave pública, verifique o seguinte:
- A chave é uma chave assimétrica.
- A versão da chave está ativada.
- Tem a autorização
cloudkms.cryptoKeyVersions.viewPublicKey.
O nome do ficheiro de uma chave pública transferida a partir da consola tem o seguinte formato: Google Cloud
KEY_RING-KEY_NAME-KEY_VERSION.pub
Cada parte do nome do ficheiro é separada por um hífen, por exemplo
ringname-keyname-version.pub.
gcloud
Para usar o Cloud KMS na linha de comandos, primeiro instale ou atualize para a versão mais recente da CLI do Google Cloud.
gcloud kms keys versions get-public-key KEY_VERSION \
--key KEY_NAME \
--keyring KEY_RING \
--location LOCATION \
--public-key-format PUBLIC_KEY_FORMAT \
--output-file OUTPUT_FILE_PATH
Substitua o seguinte:
KEY_VERSION: o número da versão da chave.KEY_NAME: o nome da chave.KEY_RING: o nome do conjunto de chaves que contém a chave.LOCATION: a localização do Cloud KMS do conjunto de chaves.PUBLIC_KEY_FORMAT: o formato no qual quer exportar a chave pública. Para algoritmos PQC da NIST (pré-visualização), usenist-pqce, para o X-Wing (pré-visualização), usexwing-raw-bytes. Para todas as outras chaves, pode usarpem,derou omitir este parâmetro.OUTPUT_FILE_PATH: o caminho onde quer guardar o ficheiro de chave pública, por exemplo,public-key.pub.
Para ver informações sobre todas as flags e valores possíveis, execute o comando com a flag --help.
C#
Para executar este código, primeiro configure um ambiente de desenvolvimento C# e instale o SDK C# do Cloud KMS.
Go
Para executar este código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK Go do Cloud KMS.
Java
Para executar este código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK Java do Cloud KMS.