指定された証明書を使用してデジタル署名を検証します。

リクエストパラメーターの署名アルゴリズムは、キータイプと一致する必要があります。 次の表に、署名アルゴリズムとキータイプの間のマッピングを示します。

アルゴリズム

Key type

RSA_PKCS1_SHA_256

RSA_2048

RSA_PSS_SHA_256

RSA_2048

ECDSA_SHA_256

EC_P256

SM2DSA

EC_SM2

この例では、IDが12345678-1234-1234-1234-12345678 **** である証明書と署名アルゴリズムECDSA_SHA_256を使用して、デジタル署名ZOyygCyaOW6Gj **** MlNKiuyjfzw= of the raw data VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4=

デバッグ

OpenAPI Explorer は署名値を自動的に計算します。 この操作は、OpenAPI Explorer で呼び出すことを推奨します。 OpenAPI Explorer は、さまざまな SDK に対して操作のサンプルコードを動的に生成します。

リクエストパラメーター

パラメーター データ型 必須/任意 説明
操作 String 必須 CertificatePublicKeyVerify

実行する操作です。 値をCertificatePublicKeyVerifyに設定します。

アルゴリズム String 必須 ECDSA_SHA_256

署名アルゴリズム。 設定可能な値は以下のとおりです。

  • RSA_PKCS1_SHA_256
  • RSA_PSS_SHA_256
  • ECDSA_SHA_256
  • SM2DSA
    The SM2DSA signature algorithm is supported only in regions where managed hardware security modules (HSMs) are used in mainland China. 詳細については、「マネージドHSMの概要」をご参照ください。
CertificateId String 必須 12345678-1234-1234-1234-12345678 ****

証明書の ID 。 It is the globally unique identifier (GUID) of the certificate in Certificates Manager.

Message String 必須 VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4=

署名された生データ。

値はBase64でエンコードする必要があります。 たとえば、16進形式の生データが [0x31,0x32,0x33,0x34] の場合、このパラメーターをBase64-encoded値MTIzNA= に設定します。

If the MessageType parameter is set to RAW, the size of the data must be less than or equal to 4 KB.

データのサイズが4 KBを超える場合は、MessageTypeパラメーターをDIGESTに設定し、Messageパラメーターをデータのダイジェストに設定できます。 ダイジェストは、ハッシュ値とも呼ばれる。 オンプレミスマシンでデータのダイジェストを計算できます。 Certificates Manager uses the digest that you compute in your own certificate application system. The message digest algorithm that you use must match the specified signature algorithm. 署名アルゴリズムとメッセージダイジェストアルゴリズムの間の次のマッピングに従います。

  • 署名アルゴリズムがRSA_PKCS1_SHA_256、RSA_PSS_SHA_256、またはECDSA_SHA_256の場合、メッセージダイジェストアルゴリズムをSHA-256する必要があります。
  • 署名アルゴリズムがSM2DSAの場合、メッセージダイジェストアルゴリズムはSM3でなければならない。
証明書のキータイプがEC_SM2で、MessageTypeパラメーターがDIGESTに設定されている場合、Messageパラメーターの値はeになります。これはGB/T 32918.2 2016 6.1で説明されています。
MessageType String 必須 RAW

メッセージのタイプ。 設定可能な値は以下のとおりです。

  • RAW: 生データ。 デフォルト値です。
  • DIGEST: 生データのメッセージダイジェスト (ハッシュ値) 。
SignatureValue String 必須 ZOyyygCyaOW6Gj **** MlNKiuyjfzw=

署名値です。

値はBase64でエンコードする必要があります。

共通リクエストパラメーターの詳細については、「共通パラメーター」をご参照ください。

レスポンスパラメーター

パラメーター データ型 説明
CertificateId String 12345678-1234-1234-1234-12345678 ****

証明書の ID 。

RequestId String 5979d897-d69f-4fc9-87dd-f3bb73c40b80

リクエストの ID です。

SignatureValid Boolean true

検証結果。 設定可能な値は以下のとおりです。

  • true: 署名は有効です。
  • false: 署名が無効です。

リクエストの例

http(s)://[Endpoint]/? アクション=CertificatePublicKeyVerify
&アルゴリズム=ECDSA_SHA_256
&CertificateId=12345678-1234-1234-1234-12345678 ****
&メッセージ=VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4=
&MessageType=RAW
&SignatureValue=ZOyygCyaOW6Gj **** MlNKiuyjfzw=
&<共通リクエストパラメーター> |

正常に処理された場合のレスポンス例

XML 形式

<KMS>
<CertificateId>12345678-1234-1234-1234-12345678 ****</CertificateId>
<SignatureValid>true</SignatureValid>
<RequestId>5979d897-d69f-4fc9-87dd-f3bb73c40b80</RequestId>
</KMS>

JSON 形式

{
  "CertificateId": "12345678-1234-1234-1234-12345678 ****" 、
  "SignatureValid": "true" 、
  "RequestId": "5979d897-d69f-4fc9-87dd-f3bb73c40b80"
}

エラーコード

HTTP ステータスコード エラーコード エラーメッセージ 説明
404 InvalidAccessKeyId.NotFound 指定されたAccessKey IDは存在しません。 指定されたAccessKey IDが存在しない場合に返されるエラーメッセージ。 操作を呼び出すときに、有効なAccessKey IDが指定されているかどうかを確認します。

エラーコードリストについては、「API エラーセンター」をご参照ください。