아닙니다. 인증서 notBefore–notAfter는 사용할 수 있는 기간을 나타내며, 그 기간 안에 있다는 사실만으로 인증서가 폐기되지 않았다고 증명하지 않습니다. 폐기 정보는 CRL 또는 OCSP 같은 별도 status source에서 확인해야 합니다.

OCSP의 good은 최소한 특정 일련번호에 관해 responder가 현재 유효기간 내 revoked 상태를 찾지 못했다는 응답이며, 인증서가 발급됐거나 전체 검증이 완료됐다는 보장은 아닙니다. revoked는 거부해야 하고 unknown·timeout은 good과 다릅니다. 사례는 학습을 위해 직접 만들었습니다.

시간 유효성과 폐기 상태는 다른 검증 축입니다

X.509 인증서에서 notBefore와 notAfter는 인증서의 validity period를 정합니다. RFC 5280은 이 기간을 CA가 인증서 상태 정보를 유지하겠다고 보증하는 시간 범위로 설명합니다. 현재 시간이 범위 안에 있으면 유효기간 조건을 만족할 수 있지만, 그 사이에 키 유출이나 소유자 변경으로 인증서가 폐기됐는지는 별도 상태 정보입니다. 따라서 ‘아직 안 만료됐으니 쓸 수 있다’는 추론에는 폐기 상태와 신뢰 경로·이름·용도 검증이 빠져 있습니다.

CA가 배포하는 CRL은 폐기된 인증서 목록을 제공하고, nextUpdate는 다음 CRL이 발행될 때까지의 기한을 나타냅니다. 클라이언트는 발급자 서명과 목록의 범위, 시각과 해당 인증서 serial이 있는지 살핍니다. OCSP는 특정 인증서 식별자에 대해 온라인 responder의 상태 답변을 요청합니다. RFC 6960은 good, revoked, unknown을 별도 값으로 정의하며 definitive response가 서명돼야 한다고 설명합니다. 상태 확인은 인증서의 이름·인증 경로·용도 검사와 병행해야 합니다.

직접 만든 가상 인증서 상태 응답의 결론
관찰된 조건유효기간 판단상태 source 결과말할 수 있는 범위
인증서 기간 안, OCSP revoked기간은 아직 유효revoked와 revocation time 확인폐기된 인증서이므로 거부해야 함
인증서 기간 안, OCSP good기간 조건 통과서명·응답 시각을 검증한 good최소 폐기 조회는 통과했지만 전체 경로·이름·발급 사실은 별도 검증
인증서 기간 안, OCSP unknown기간 조건 통과responder가 이 상태를 알 수 없음폐기되지 않았다고 단정할 수 없고 CRL 등 다른 source를 검토
인증서 기간 안, OCSP 연결 timeout기간 조건 통과서명된 OCSP 응답 자체가 없음good 응답이 아니며 실패 정책에 따라 추가 확인·거부 등을 판단
인증서 기간 지남, OCSP good유효기간 밖상태 응답만 good기간 검증 실패를 상쇄하지 않음

OCSP good이 말하는 최소 범위를 읽습니다

인증서 A의 기간이 2026년 1월부터 12월까지라고 하고, 검증 시점이 10월이라고 합시다. 유효기간만 보면 시간 조건은 통과할 수 있습니다. 하지만 그 인증서가 8월에 폐기됐다면 CA의 폐기 정보나 OCSP 응답은 revoked를 알려야 합니다. 즉 만료 전이라도 인증서는 더 이상 신뢰되지 않을 수 있습니다. 반대로 OCSP good을 받았다고 하더라도 RFC 6960은 최소 의미를 제한합니다. 해당 serial의 certificate가 현재 그 validity interval 안에서 revoked됐다는 답이 없다는 뜻이며, 그 인증서가 실제 발급됐는지 또는 다른 경로·이름 검증을 모두 통과하는지까지 보증하지는 않습니다.

OCSP 응답에는 thisUpdate, nextUpdate, producedAt 같은 시간이 있을 수 있습니다. thisUpdate는 responder가 해당 status가 맞다고 알고 있는 가장 최근 시점이고 nextUpdate는 더 최신 정보가 나올 시점 또는 그 이전입니다. 검증자는 응답 서명자의 권한과 응답 식별자, 시간 범위를 확인해야 합니다. 네트워크 오류로 응답이 도착하지 않은 상황은 서명된 good 응답이 아닙니다. unknown은 해당 responder가 정보를 모른다는 값이어서 필요하면 CRL 같은 다른 자료원을 확인할 수 있습니다.

인증서 신뢰를 다섯 검증 기록으로 나눕니다

  1. 검증 시점과 인증서 notBefore·notAfter를 대조합니다.
  2. 발급자에서 신뢰 앵커까지의 경로와 이름·용도 제약을 확인합니다.
  3. CRL을 쓰면 발급자·서명·목록 범위·thisUpdate/nextUpdate 및 serial을 확인합니다.
  4. OCSP를 쓰면 서명된 definitive response인지, 대상 인증서와 상태·응답 시간을 확인합니다.
  5. revoked, unknown, responder 오류, 응답 부재를 각각 기록하고 조직의 실패 정책을 적용합니다.

요청에 대한 정책은 구현과 조직 위험 기준에 따라 다를 수 있습니다. 폐기 서버에 접속할 수 없을 때 항상 허용해야 한다거나 무조건 거부해야 한다고 여기서 일반 지침을 만들지 않습니다. 중요한 점은 조회 실패를 ‘폐기 없음’으로 기록하지 않고, 검증 결과와 운영상 판단을 구분하는 것입니다. 기존 PKI 학습 글은 CRL·OCSP의 차이를 설명합니다. 여기서는 상태 응답의 의미와 누락된 정보가 어떤 결론을 허용하는지를 연습합니다.

good·미응답·unknown을 같은 상태로 쓰지 않습니다

세 표현을 ‘이 인증서는 문제가 없다’는 한 문장으로 뭉치면 오류입니다. good은 서명과 유효 시점을 확인해야 하는 긍정 상태 응답이며, revoked는 폐기 통지, unknown은 responder가 status를 결정하지 못한 응답입니다. timeout은 응답 자체가 도착하지 않은 상황입니다. 이 중 뒤의 세 경우를 good으로 바꾸지 말고, 인증서 유효기간과 경로 검증도 병렬 조건으로 남겨야 합니다. 상태 정보는 인증서가 만료되지 않았다는 사실에서 추론할 수 없습니다.

각 응답에서 추가 확인할 근거를 말해 봅니다

회상 연습: 유효기간 안인 인증서 B에 대한 OCSP 결과가 unknown이고, CRL은 지난주 nextUpdate가 이미 지났습니다. 폐기되지 않았다고 답할 수 있나요? 아닙니다. OCSP responder가 상태를 결정하지 못했고 CRL도 신선한 자료가 아닙니다. 신뢰할 다른 상태 자료원 또는 서비스의 인증서 검증 정책을 확인해야 합니다. 이 예시는 학습용으로 직접 작성했으며 실제 기출이나 집중 180제 카드 문항이 아닙니다. 상품 구성은 /decks/security#focus-180 안내에서 확인하세요.

정답을 가리고 확인해 보세요

이 글을 위해 만든 학습 예시이며 공식 기출문제나 판매 카드의 인용이 아닙니다.

유효기간 안인 인증서의 OCSP 결과가 unknown이고 CRL nextUpdate가 지났다. 폐기되지 않았다고 결론낼 수 있는가? 어떤 추가 상태 근거가 필요한가?

정답과 해설 확인그렇게 결론낼 수 없습니다. unknown은 responder가 상태를 결정하지 못했고 오래된 CRL은 최신 상태를 뒷받침하지 않습니다. 서명·시간이 유효한 다른 OCSP responder 또는 신선한 CRL 등 승인된 status source를 확인해야 합니다.

notBefore/notAfter는 폐기 status와 별개입니다. RFC 6960의 unknown은 상태를 결정하지 못한 응답이며 RFC 5280의 CRL nextUpdate는 다음 정보 갱신 기한을 나타냅니다.

이 주제의 회상 연습 이어가기