O AO realiza operações de assinatura e verificação pelo Google Distributed Cloud (GDC) isolado do KMS por um cliente gRPC.
Antes de começar
Para receber as permissões necessárias para assinar dados, peça ao administrador do IAM da organização para conceder a você o papel de Desenvolvedor do KMS (kms-developer
) no namespace do projeto.
Assinar dados
Para assinar dados, use o comando gdcloud kms keys asymmetric-sign
. Esse comando
cria uma assinatura digital de um arquivo de entrada usando a chave Signing
e salva
a assinatura codificada em base64.
Para assinar seus dados, transmita o nome da chave e o seguinte:
gdcloud kms keys asymmetric-sign \ namespaces/NAMESPACE/signingKeys/KEY_NAME \ --input-file=INPUT_PATH \ --signature-file=SIGNATURE_FILE
Substitua as seguintes variáveis:
- NAMESPACE: o namespace do projeto, por exemplo:
kms-test1
. - KEY_NAME: o nome da chave usada para assinar. Por
exemplo:
key-1
. - INPUT_PATH: o caminho do arquivo de entrada que você quer assinar.
- SIGNATURE_FILE: o caminho do arquivo de saída para salvar a assinatura codificada em base64.
Depois de executar o comando, você vai encontrar um arquivo de saída especificado na flag
--signature-file
que contém a assinatura codificada em base64.- NAMESPACE: o namespace do projeto, por exemplo:
Verificar dados
Depois de assinar os dados, verifique a assinatura digital base64 usando
o comando gdcloud kms keys asymmetric-verify
. Esse comando verifica se a assinatura digital codificada em base64 que você recebe depois de executar o comando gdcloud kms keys asymmetric-sign
é válida.
Para verificar a assinatura, transmita o arquivo de assinatura e o seguinte:
gdcloud kms keys asymmetric-verify \ namespaces/NAMESPACE/signingKeys/KEY_NAME \ --input-file=INPUT_PATH \ --signature-file=SIGNATURE_FILE
Depois de executar o comando, você vai ver a saída
Verification OK
se a operação for bem-sucedida. Caso contrário, você vai ver a saída de falhaVerification Failure
.