Todos os produtos
Search
Central de documentação

:AsymmetricVerify

Última atualização: Jul 09, 2026

A operação AsymmetricVerify verifica uma assinatura com uma chave assimétrica.

Observações de uso

Chame esta operação por meio de um Shared Gateway ou de um gateway dedicado. Para mais informações, consulte Alibaba Cloud SDK.

  • Shared Gateway: acesse o KMS pela rede pública ou por um nome de domínio de VPC. Esse método exige a ativação do acesso à rede pública. Para mais informações, consulte Chaves de acesso em uma instância do KMS pela rede pública.

  • Gateway Dedicado: acesse o KMS por um endpoint privado (<YOUR_KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com).

Limites de QPS

  • Chamadas via Shared Gateway: o limite de consultas por segundo (QPS) para um único usuário é 200. Se esse limite for excedido, a chamada da API sofrerá limitação de taxa, o que pode afetar seus negócios. Planeje suas chamadas adequadamente.

  • Chamadas via gateway dedicado: o limite de QPS por usuário depende das especificações de desempenho da sua instância do KMS. Para mais detalhes, consulte Métricas de desempenho.

Descrição

Esta operação aceita apenas chaves assimétricas cujo parâmetro Usage esteja definido como SIGN/VERIFY. A tabela a seguir descreve os algoritmos de assinatura compatíveis.

KeySpec

Algorithm

Description

RSA_2048

RSA_PSS_SHA_256

RSASSA-PSS usando SHA-256 e MGF1 com SHA-256

RSA_2048

RSA_PKCS1_SHA_256

RSASSA-PKCS1-v1_5 usando SHA-256

RSA_3072

RSA_PSS_SHA_256

RSASSA-PSS usando SHA-256 e MGF1 com SHA-256

RSA_3072

RSA_PKCS1_SHA_256

RSASSA-PKCS1-v1_5 usando SHA-256

EC_P256

ECDSA_SHA_256

ECDSA na curva P-256 (secp256r1) com resumo SHA-256

EC_P256K

ECDSA_SHA_256

ECDSA na curva P-256K (secp256k1) com resumo SHA-256

EC_SM2

SM2DSA

Algoritmo de assinatura digital de curva elíptica SM2

Nota

De acordo com o padrão GB/T 32918, ao calcular uma assinatura SM2, o parâmetro

Digest

não corresponde ao resumo SM3 da mensagem original. Trata-se, na verdade, do resumo dos valores combinados Z(A) e M. M representa a mensagem original a ser assinada, enquanto Z(A) é o valor de hash do Usuário A conforme definido no GB/T 32918.

Este tópico apresenta um exemplo de verificação da assinatura M2CceNZH00ZgL9ED/ZHFp21YRAvYeZHknJUc207OCZ0N9wNn9As4z2bON3FF3je+1Nu+2+/8Zj50HpMTpzYpMp2R93cYmACCmhaYoKydxylbyGzJR8y9likZRCrkD38lRoS40aBBvv/6iRKzQuo9EGYVcel36cMNg00VmYNBy3pa1rwg3gA4l3cy6kjayZja1WGPkVhrVKsrJMdbpl0ApLjXKuD8rw1n1XLCwCUEL5eLPljTZaAveqdOFQOiZnZEGI27qIiZe7I1fN8tcz6anS/gTM7xRKE++5egEvRWlTQQTJeApnPSiUPA+8ZykNdelQsOQh5SrGoyI4A5pq**== para o resumo ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuyjfzw=. A verificação utiliza uma chave assimétrica com ID de chave 5c438b18-05be-40ad-b6c2-3be6752c, ID de versão da chave 2ab1a983-7072-4bbc-a582-584b5bd8** e o algoritmo RSA_PSS_SHA_256.

Depuração

Chame esta operação diretamente no OpenAPI Explorer para eliminar a necessidade de calcular assinaturas. Após uma chamada bem-sucedida, o OpenAPI Explorer gera automaticamente códigos de exemplo para diferentes SDKs.

Parâmetros da solicitação

Name

Type

Required

Example

Description

Action String Yes AsymmetricVerify

Operação a executar. Defina o valor como AsymmetricVerify.

KeyId String Yes 5c438b18-05be-40ad-b6c2-3be6752c****

Identificador globalmente exclusivo (GUID) da chave mestra do cliente (CMK).

Nota Também é possível especificar um alias vinculado à CMK. Para mais informações, consulte Uso de aliases.
KeyVersionId String Yes 2ab1a983-7072-4bbc-a582-584b5bd8****

ID da versão da chave. O ID da versão da chave é um GUID.

Algorithm String Yes RSA_PSS_SHA_256

Algoritmo de assinatura.

Digest String Yes ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuy****=

Resumo da mensagem original. O resumo é gerado pelo algoritmo de hash correspondente ao valor do parâmetro Algorithm.

Nota O valor deve estar codificado em Base64.
Value String Yes M2CceNZH00ZgL9ED/ZHFp21YRAvYeZHknJUc207OCZ0N9wNn9As4z2bON3FF3je+1Nu+2+/8Zj50HpMTpzYpMp2R93cYmACCmhaYoKydxylbyGzJR8y9likZRCrkD38lRoS40aBBvv/6iRKzQuo9EGYVcel36cMNg00VmYNBy3pa1rwg3gA4l3cy6kjayZja1WGPkVhrVKsrJMdbpl0ApLjXKuD8rw1n1XLCwCUEL5eLPljTZaAveqdOFQOiZnZEGI27qIiZe7I1fN8tcz6anS/gTM7xRKE++5egEvRWlTQQTJeApnPSiUPA+8ZykNdelQsOQh5SrGoyI4A5pq****==

Valor da assinatura a verificar.

Nota O valor deve estar codificado em Base64.
DryRun String No false

Especifique se o modo de simulação deve ser ativado.

  • true: ative o modo de simulação.
  • false (padrão): desativa o modo de simulação.

O modo de simulação serve para testar a chamada da API. Ele verifica se você possui as permissões necessárias e se os parâmetros da solicitação são válidos. Nesse modo, o KMS sempre retorna uma resposta de falha com o respectivo motivo. Os motivos incluem:

  • DryRunOperationError: a solicitação teria sido bem-sucedida caso o parâmetro DryRun não fosse especificado.
  • ValidationError: um parâmetro na solicitação é inválido.
  • AccessDeniedError: você não tem permissão para executar esta operação no recurso do KMS.

Parâmetros de resposta

Name

Type

Example value

Description

KeyVersionId String 2ab1a983-7072-4bbc-a582-584b5bd8****

Número da versão da chave mestra usada para criptografar o texto simples.

KeyId String 5c438b18-05be-40ad-b6c2-3be6752c****

Identificador globalmente exclusivo (GUID) da chave mestra.

Nota Se o parâmetro KeyId na solicitação for um alias de uma chave mestra, a resposta retornará o ID da chave mestra correspondente a esse alias.
Value Boolean true

Indica se a assinatura passou na verificação.

RequestId String 475f1620-b9d3-4d35-b5c6-3fbdd941423d

ID da solicitação. A Alibaba Cloud gera este identificador exclusivo para a solicitação. Utilize este ID para solucionar problemas.

Exemplos

Exemplo de solicitação

http(s)://[Endpoint]/?Action=AsymmetricVerify
&KeyId=5c438b18-05be-40ad-b6c2-3be6752c****
&KeyVersionId=2ab1a983-7072-4bbc-a582-584b5bd8****
&Algorithm=RSA_PSS_SHA_256
&Digest=ZOyIygCyaOW6GjVnihtTFtIS9PNmskdyMlNKiuy****=
&Value=M2CceNZH00ZgL9ED/ZHFp21YRAvYeZHknJUc207OCZ0N9wNn9As4z2bON3FF3je+1Nu+2+/8Zj50HpMTpzYpMp2R93cYmACCmhaYoKydxylbyGzJR8y9likZRCrkD38lRoS40aBBvv/6iRKzQuo9EGYVcel36cMNg00VmYNBy3pa1rwg3gA4l3cy6kjayZja1WGPkVhrVKsrJMdbpl0ApLjXKuD8rw1n1XLCwCUEL5eLPljTZaAveqdOFQOiZnZEGI27qIiZe7I1fN8tcz6anS/gTM7xRKE++5egEvRWlTQQTJeApnPSiUPA+8ZykNdelQsOQh5SrGoyI4A5pq****==
&DryRun=false
&<Common request parameters>

Exemplo de resposta

Formato XML

HTTP/1.1 200 OK
Content-Type:application/xml

<AsymmetricVerifyResponse>
    <KeyVersionId>2ab1a983-7072-4bbc-a582-584b5bd8****</KeyVersionId>
    <KeyId>5c438b18-05be-40ad-b6c2-3be6752c****</KeyId>
    <Value>true</Value>
    <RequestId>475f1620-b9d3-4d35-b5c6-3fbdd941423d</RequestId>
</AsymmetricVerifyResponse>

Formato JSON

HTTP/1.1 200 OK
Content-Type:application/json

{
  "KeyVersionId" : "2ab1a983-7072-4bbc-a582-584b5bd8****",
  "KeyId" : "5c438b18-05be-40ad-b6c2-3be6752c****",
  "Value" : true,
  "RequestId" : "475f1620-b9d3-4d35-b5c6-3fbdd941423d"
}

Códigos de erro

HTTP status code

Error code

Error message

Description

400

InvalidParameter

The specified parameter is not valid.

O parâmetro especificado é inválido.

404

Forbidden.AliasNotFound

The specified Alias is not found.

O alias especificado não foi encontrado.

404

Forbidden.KeyNotFound

The specified Key is not found.

A chave especificada não existe.

Para obter uma lista de outros códigos de erro, consulte o API Error Center.