数据加密服务 DEW数据加密服务 DEW

更新时间:2021/09/07 GMT+08:00
分享

验证签名

功能介绍

使用非对称密钥的公钥钥对数字签名真实性进行验证。

接口约束

  • 仅支持key_usage为SIGN_VERIFY的非对称密钥进行验签操作。
  • 使用SM2密钥签名时,仅支持对消息摘要签名。根据GBT32918国家标准,计算SM2签名值时,消息摘要不是对原始消息直接计算SM3摘要,而是对Z(A)和M的拼接值计算的摘要,其中M是待签名的原始消息,Z(A)是GBT32918中定义的用户A的杂凑值。

调试

您可以在API Explorer中调试该接口。

URI

POST /v1.0/{project_id}/kms/verify

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

key_id

String

密钥ID,36字节,满足正则匹配“^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$”。 例如:0d0466b0-e727-4d9c-b35d-f84bb474a37f。

message

String

待签名的消息摘要或者消息,消息长度要求小于4096字节,使用Base64编码。

signature

String

待验证的签名值,使用Base64编码。

signing_algorithm

String

签名算法,枚举如下:

  • RSASSA_PSS_SHA_256
  • RSASSA_PSS_SHA_384
  • RSASSA_PSS_SHA_512
  • RSASSA_PKCS1_V1_5_SHA_256
  • RSASSA_PKCS1_V1_5_SHA_384
  • RSASSA_PKCS1_V1_5_SHA_512
  • ECDSA_SHA_256
  • ECDSA_SHA_384
  • ECDSA_SHA_512
  • SM2DSA_SM3

message_type

String

消息类型,默认为“DIGEST”,枚举如下:

  • DIGEST 表示消息摘要
  • RAW 表示消息原文

sequence

String

请求消息序列号,36字节序列号。 例如:919c82d4-8046-4722-9094-35c3c6524cff。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

key_id

String

密钥ID。

signature_vaild

Boolean

签名验证合法性,“true”表示验证签名合法,“false”表示验证签名非法。

状态码: 400

表5 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表6 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

状态码: 403

表7 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表8 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

状态码: 404

表9 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表10 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码。

error_msg

String

错误请求返回的错误信息。

请求示例

{
  "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
  "signing_algorithm" : "RSASSA_PKCS1_V1_5_SHA_256",
  "signature" : "jFUqQESGBc0j6k9BozzrP9YL4qk8/W9DZRvK6XXX...",
  "message" : "MmFiZWE0ZjI3ZGIxYTkzY2RmYmEzM2YwMTA1YmJjYw=="
}

响应示例

状态码: 200

请求已成功。

{
  "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
  "signature_valid" : "true"
}

状态码: 400

请求参数有误。

{
  "error" : {
    "error_code" : "KMS.XXX",
    "error_msg" : "XXX"
  }
}

状态码: 403

认证失败。

{
  "error" : {
    "error_code" : "KMS.XXX",
    "error_msg" : "XXX"
  }
}

状态码: 404

资源不存在,资源未找到。

{
  "error" : {
    "error_code" : "KMS.XXX",
    "error_msg" : "XXX"
  }
}

状态码

状态码

描述

200

请求已成功。

400

请求参数有误。

403

认证失败。

404

资源不存在,资源未找到。

错误码

请参见错误码

分享:

    相关文档

    相关产品