RFC 3161

TSA에 보내는 요청 형식과 응답 형식을 정의한다.

 

TimeStampReq(TSQ)

클라이언트 -> TSA 타임스탬프 발급 요청 

 

1. messageImprint

 - hashAlgorithm OID + hashedMessage(해시값)

 - TSA는 원문을 받지 않고 이 해시 값만 다룬다.

 

2. nonce(optional)

 - 재전송 공격 방지용 랜덤 값

 - 요청에 nonce를 넣어서 전송했으면, 응답에도 같은 nonce가 와야한다.

 

3. reqPolicy(optional)

 - 특정 정책(policy OID)로 발급 요청

 - TSA가 지원하지 않으면 unacceptedPolicy 에러 발생 가능

 

4. certReq(optional)

 - 응답에 TSA 인증서를 포함해달라는 힌트

 - 서버 정책/프로파일에 따라 다르게 동작한다.

 

5. 전자서명

 - GTSA의 경우 TSQ에 서버인증서의 개인키로 전자서명을 해서 보내야한다.

 

TimeStampResp(TSR)

TSA -> 클라이언트 타임스탬프 응답

 

1. status(PKIStatusInfo)

 - 처리 결과 코드

 

2. (status가 성공이면) timeStampToken

 

3. 대표적인 실패 케이스로는

 - badAlg (해시 알고리즘 불가)

 - badRequest (요청 불가/미지원)

 - timeNotAvailable (시간원 문제)

 - unacceptedPolicy / unacceptedExtension (지원하지 않는 정책)

 - systemFailure (TSA 시스템 에러)

 

정리

TSQ = 해시 + 옵션

TSR = 상태 +(성공 시) 토큰

 

'TSA' 카테고리의 다른 글

[TSA] 전자서명에서 타임스탬프가 필요한 이유  (0) 2026.01.21
[TSA] TimeStampToken(TST) 검증  (0) 2026.01.20
[TSA] TimeStampToken(TST)  (0) 2026.01.15
[TSA] TSA(Time-Stamp Authority)란?  (0) 2026.01.06

+ Recent posts