Criptografa texto simples em texto cifrado.
Descrição da operação
O Key Management Service (KMS) oferece duas operações de criptografia: Encrypt e AdvanceEncrypt. A principal diferença entre elas é a versão da chave usada e a operação de descriptografia necessária posteriormente.
|
Encrypt |
AdvanceEncrypt |
|
|
Versão da chave usada |
Versão inicial |
Versão primária |
|
Operações de descriptografia compatíveis |
Decrypt ou AdvanceEncrypt |
Apenas AdvanceDecrypt |
Se você usar uma chave simétrica em uma instância de gerenciamento de chaves por software com rotação automática ativada, use AdvanceEncrypt em vez de Encrypt. O uso do Encrypt com rotação automática ativada interrompe o funcionamento do recurso de rotação de chaves. Para mais informações, consulte Configurar rotação de chaves.
Para obter detalhes sobre especificações de chaves, modos de criptografia e versões de chaves, consulte Tipos e especificações de chaves.
Observações de uso
O corpo da requisição não pode exceder 3 MB após a codificação com Protocol Buffers. Se esse limite for ultrapassado, o servidor rejeitará a requisição e retornará o código HTTP 413.
Em uma única operação de criptografia ou descriptografia, mantenha os dados dentro dos seguintes limites:
Chaves simétricas: 6 KB
Chaves assimétricas: 1 KB
Para volumes maiores de dados, use a criptografia de envelope.
Cargas úteis grandes aumentam o risco de falhas de rede, prolongam o tempo de transmissão e adicionam latência ao processamento do KMS.
Parâmetros da requisição
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
KeyId |
string |
Sim |
key-hzz62f1cb66fa42qo**** |
ID globalmente exclusivo da chave. Também é possível especifique um alias vinculado à chave. |
|
Plaintext |
bytes |
Sim |
Dados binários |
Texto simples a ser criptografado. |
|
Algorithm |
string |
Não |
AES_GCM |
Algoritmo de criptografia. Se não for especificado, o KMS usará o algoritmo padrão da chave. Para mais informações, consulte Tipos e especificações de chaves. |
|
Iv |
bytes |
Não |
Dados binários |
Vetor de inicialização (IV) para criptografia. Aplica-se apenas quando |
|
Aad |
binary |
Não |
Dados binários |
Dados autenticados adicionais (AAD) para autenticação no modo GCM. Aplica-se quando a chave é simétrica e |
|
PaddingMode |
string |
Não |
PKCS7_PADDING |
Modo de preenchimento. Necessário apenas quando |
Valores de PaddingMode
PKCS7_PADDING(padrão): Usa preenchimento PKCS#7. Se a entrada tiver L bytes, o KMS adicionará K − (L mod K) bytes de preenchimento, onde K representa o tamanho do bloco de cifra.NO_PADDING: Nenhum preenchimento é adicionado. O comprimento do texto simples deve ser um múltiplo inteiro do tamanho do bloco de cifra.
Elementos da resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
Iv |
bytes |
Dados binários |
Vetor de inicialização (IV) usado na criptografia. Retorna um valor apenas quando |
|
CiphertextBlob |
bytes |
Dados binários |
Texto cifrado resultante da criptografia. Quando se usa o algoritmo Elliptic Curve Integrated Encryption Scheme (ECIES), o formato do texto cifrado segue os padrões SEC 1: Elliptic Curve Cryptography, Version 2.0. |
|
KeyId |
string |
key-hzz62f1cb66fa42qo**** |
ID globalmente exclusivo da chave. Se um alias foi especificado na requisição, este campo retorna o ID da chave vinculada a esse alias. |
|
Algorithm |
string |
AES_GCM |
Algoritmo de criptografia usado. |
|
PaddingMode |
string |
PKCS7_PADDING |
Modo de preenchimento aplicado. Retorna um valor apenas quando |
|
RequestId |
string |
475f1620-b9d3-4d35-b5c6-3fbdd941423d |
ID da requisição, usado para localizar e solucionar problemas. |
Códigos de erro
Para consultar a lista de códigos de erro, veja Códigos de erro do serviço.