验证签名
功能介绍
功能介绍:使用非对称密钥的私钥对消息或消息摘要进行签名验证。
接口约束
仅支持key_usage为SIGN_VERIFY的非对称密钥进行验签操作。
使用SM2密钥签名时,仅支持对消息摘要签名。根据GBT32918国家标准,计算SM2签名值时,消息摘要不是对原始消息直接计算SM3摘要,而是对Z(A)和M的拼接值计算的摘要,其中M是待签名的原始消息,Z(A)是GBT32918中定义的用户A的杂凑值。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v1.0/{project_id}/kms/verify
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
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 |
签名算法,枚举如下:
|
message_type |
否 |
String |
消息类型,默认为“DIGEST”,枚举如下:
|
sequence |
否 |
String |
请求消息序列号,36字节序列号。 例如:919c82d4-8046-4722-9094-35c3c6524cff。 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
key_id |
String |
密钥ID。 |
signature_valid |
String |
签名验证合法性,“true”表示验证签名合法,“false”表示验证签名非法。 |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 404
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 500
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 502
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码 |
error_msg |
String |
错误请求返回的错误信息 |
状态码: 504
参数 |
参数类型 |
描述 |
---|---|---|
error |
Object |
错误信息返回体。 |
参数 |
参数类型 |
描述 |
---|---|---|
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" }
状态码
状态码 |
描述 |
---|---|
200 |
请求已成功 |
400 |
请求参数有误 |
401 |
被请求的页面需要用户名和密码 |
403 |
认证失败 |
404 |
资源不存在,资源未找到 |
500 |
服务内部错误 |
502 |
请求未完成。服务器从上游服务器收到一个无效的响应 |
504 |
网关超时 |
错误码
请参见错误码。