Criptografa dados usando uma chave assimétrica.
Descrição da operação
Precauções
-
Para obter detalhes sobre a política de acesso que deve ser concedida a um usuário do Resource Access Management (RAM) ou a uma função do RAM para invocar esta operação de API, consulte Controle de acesso.
-
Você pode invocar esta operação de API usando um gateway compartilhado ou um gateway dedicado. Para obter detalhes, consulte Alibaba Cloud SDK.
Gateway compartilhado: Acesse o KMS por meio de acesso à rede pública ou um nome de domínio de VPC. Para usar este método, você deve ativar a opção de acesso à rede pública. Para operações específicas, consulte Acessar chaves em uma instância do KMS por meio de acesso à rede pública.
Gateway dedicado: Acesse o KMS usando o endpoint privado do KMS (
<YOUR_KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com).
Limites de QPS
Gateway compartilhado: O limite de QPS por usuário para esta operação de API é 200. Se o limite for excedido, as chamadas de API serão limitadas, o que pode afetar seus negócios. Faça chamadas de API em uma taxa razoável.
Gateway dedicado: O limite de QPS por usuário para esta operação de API depende das especificações de desempenho de computação da sua instância do KMS. Para mais informações, consulte Dados de desempenho.
Descrição da operação
Somente chaves assimétricas cujo Uso está definido como ENCRYPT/DECRYPT são suportadas. A tabela a seguir descreve os algoritmos de criptografia suportados.
| KeySpec | Algoritmo | Descrição | Número máximo de bytes que podem ser criptografados |
| RSA_2048 | RSAES_OAEP_SHA_256 | RSAES-OAEP usando SHA-256 e MGF1 com SHA-256 | 190 |
| RSA_2048 | RSAES_OAEP_SHA_1 | RSAES-OAEP usando SHA1 e MGF1 com SHA1 | 214 |
| RSA_3072 | RSAES_OAEP_SHA_256 | RSAES-OAEP usando SHA-256 e MGF1 com SHA-256 | 318 |
| RSA_3072 | RSAES_OAEP_SHA_1 | RSAES-OAEP usando SHA1 e MGF1 com SHA1 | 342 |
| EC_SM2 | SM2PKE | Algoritmo de criptografia de chave pública de curva elíptica SM2 | 6047 |
O exemplo a seguir mostra como usar o algoritmo de criptografia RSAES_OAEP_SHA_1 para criptografar o texto simples SGVsbG8gd29ybGQ= usando uma chave assimétrica cujo ID da chave é key-hzz630494463ejqjx**** e o ID da versão da chave é 2ab1a983-7072-4bbc-a582-584b5bd8****.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
kms:AsymmetricEncrypt |
get |
*Chave.
|
|
Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| Plaintext |
string |
Sim |
O texto simples a ser criptografado. O texto simples deve ser codificado em Base64. |
SGVsbG8gd29ybGQ= |
| KeyId |
string |
Sim |
O ID da chave. Você também pode especificar o alias ou o Nome do Recurso do Alibaba Cloud (ARN) da chave. Para mais informações sobre aliases, consulte Gerenciar aliases de chave. Nota
Para acessar uma chave que pertence a outra conta do Alibaba Cloud, você deve inserir o ARN da chave. O ARN de uma chave está no formato |
key-hzz630494463ejqjx**** |
| KeyVersionId |
string |
Sim |
O ID da versão da chave. O identificador globalmente exclusivo da versão da chave. Nota
Você pode chamar a operação ListKeyVersions para obter o ID da versão da chave. |
2ab1a983-7072-4bbc-a582-584b5bd8**** |
| Algorithm |
string |
Sim |
O algoritmo de criptografia. |
RSAES_OAEP_SHA_1 |
| DryRun |
string |
Não |
Especifica se o modo dry run deve ser ativado. Valores válidos:
O modo dry run é usado para testar chamadas de API e verificar se você tem as permissões necessárias nos recursos e se os parâmetros da solicitação estão configurados corretamente. Quando o modo dry run está ativado, o KMS sempre retorna uma falha e fornece a causa da falha. As causas incluem:
|
false |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
|||
| KeyVersionId |
string |
O número da versão da chave mestra usada para criptografar o texto simples. |
2ab1a983-7072-4bbc-a582-584b5bd8**** |
| KeyId |
string |
O ID da chave. Se o parâmetro KeyId na solicitação estiver definido como o alias ou o ARN da chave, o ID da chave também será retornado na resposta. |
key-hzz630494463ejqjx**** |
| CiphertextBlob |
string |
O texto criptografado gerado após a criptografia. O texto criptografado é codificado em Base64. |
BQKP+1zK6+ZEMxTP5qaVzcsgXtWplYBKm0NXdSnB5FzliFxE1bSiu4dnEIlca2JpeH7yz1/S6fed630H+hIH6DoM25fTLNcKj+mFB0Xnh9m2+HN59Mn4qyTfcUeadnfCXSWcGBouhXFwcdd2rJ3n337bzTf4jm659gZu3L0i6PLuxM9p7mqdwO0cKJPfGVfhnfMz+f4alMg79WB/NNyE2lyX7/qxvV49ObNrrJbKSFiz8Djocaf0IESNLMbfYI5bXjWkJlX92DQbKhibtQW8ZOJ//ZC6t0AWcUoKL6QDm/dg5koQalcleRinpB+QadFm894sLbVZ9+N4GVsv1Wbjwg== |
| RequestId |
string |
O ID da solicitação. O ID é um identificador exclusivo gerado pelo Alibaba Cloud para a solicitação e pode ser usado para solucionar problemas. |
475f1620-b9d3-4d35-b5c6-3fbdd941423d |
Exemplos
Resposta de sucesso
JSON formato
{
"KeyVersionId": "2ab1a983-7072-4bbc-a582-584b5bd8****",
"KeyId": "key-hzz630494463ejqjx****",
"CiphertextBlob": "BQKP+1zK6+ZEMxTP5qaVzcsgXtWplYBKm0NXdSnB5FzliFxE1bSiu4dnEIlca2JpeH7yz1/S6fed630H+hIH6DoM25fTLNcKj+mFB0Xnh9m2+HN59Mn4qyTfcUeadnfCXSWcGBouhXFwcdd2rJ3n337bzTf4jm659gZu3L0i6PLuxM9p7mqdwO0cKJPfGVfhnfMz+f4alMg79WB/NNyE2lyX7/qxvV49ObNrrJbKSFiz8Djocaf0IESNLMbfYI5bXjWkJlX92DQbKhibtQW8ZOJ//ZC6t0AWcUoKL6QDm/dg5koQalcleRinpB+QadFm894sLbVZ9+N4GVsv1Wbjwg==",
"RequestId": "475f1620-b9d3-4d35-b5c6-3fbdd941423d"
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | Rejected.UnsupportedOperation | Unsupported operation. | |
| 404 | Forbidden.AliasNotFound | The specified Alias is not found. | |
| 404 | Forbidden.KeyNotFound | The specified Key is not found. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.