--- title: "Verify" slug: "security-kms-verify" tags: ["KMS", "Key Management Service"] updated: 2026-09-17T09:16:56Z published: 2026-09-17T09:16:56Z canonical: "api.ncloud-docs.com/security-kms-verify" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Verify Classic/VPC 환경에서 이용 가능합니다. 최대 8 KB 크기로 서명된 데이터와 서명값을 비교하여 검증된 결과를 반환합니다. RSA2048 또는 ECDSA 키 타입으로만 요청할 수 있습니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | POST | - API Gateway request signature v1: /keys/v1/{keyTag}/verify - API Gateway request signature v2: /keys/v2/{keyTag}/verify | ### 요청 헤더 Key Management Service API에서 공통으로 사용하는 헤더에 대한 정보는 [Key Management Service 요청 헤더](/docs/security-kms#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%941)를 참조해 주십시오. ### 요청 경로 파라미터 요청 경로 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `keyTag` | String | Required | 키 태그 - 키 이름에서 파생된 키의 고유 식별자 - [Get Key List](/docs/security-kms2-key-list) 참조 - REST API로 암호화 또는 복호화 요청 시 사용 - 키 태그는 기밀 정보로 취급되지 않음 | ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `data` | String | Required | 서명 시 사용한 Base64로 인코딩된 문자열 데이터 - 최대 8 KB 입력 가능 - [Sign](/docs/security-kms-sign) 요청의 `data`와 동일한 값 입력 | | `signature` | String | Required | 비교할 서명값 - [Sign](/docs/security-kms-sign) 응답의 `data.signature` 값을 그대로 입력 - `ncpkms:v{키 버전}:{Base64로 인코딩된 서명값}` 형식 - 접두사를 제거한 서명값만 입력할 경우 검증 불가 - 서명 생성에 사용된 키 버전으로 검증되며, 해당 키 버전이 비활성화된 경우 검증 불가 | 참고 Verify는 서명 생성 시와 동일한 파라미터로 KMS가 검증하므로 서명 알고리즘 파라미터를 지정할 필요가 없습니다. 공개 키를 조회해 직접 검증하는 경우에는 파라미터를 동일하게 맞춰야 하며, 자세한 내용은 [Sign](/docs/security-kms-sign#%EC%84%9C%EB%AA%85%ED%8C%8C%EB%9D%BC%EB%AF%B8%ED%84%B0)의 서명 파라미터를 참조해 주십시오. ### 요청 예시 요청 예시는 다음과 같습니다. - API Gateway request signature v1 요청 ``` curl --location --request POST 'https://kms.apigw.ntruss.com/keys/v1/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6/verify' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-apigw-api-key: {API Gateway API Key}' \ --header 'x-ncp-iam-access-key: {Sub Account Access Key}' \ --header 'x-ncp-apigw-signature-v1: {API Gateway Signature}' \ --data '{ "data": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX==", "signature": "ncpkms:v1:{BASE64_SIGNATURE}" }' ``` - API Gateway request signature v2 요청 ``` curl --location --request POST 'https://kms.apigw.ntruss.com/keys/v2/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6/verify' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Sub Account Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --data '{ "data": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX==", "signature": "ncpkms:v1:{BASE64_SIGNATURE}" }' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `code` | String | - | 성공 여부 | | `msg` | String | - | 응답 코드(`code`)에 대한 설명 - 요청 성공(`SUCCESS`) 시 빈값("")으로 표시 | | `data` | Object | - | 응답 결과 | | `data.valid` | String | - | 서명된 데이터와 서명값 일치 여부 - `true` \| `false` - `true`: 일치 - `false`: 미일치 | ### 응답 상태 코드 Key Management Service API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Key Management Service 응답 상태 코드](/docs/security-kms#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C1)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "code": "SUCCESS", "msg": "", "data": { "valid": true } } ```