테크독해: 자체 인증서의 신뢰 경로/폐기 검사 대조

목적: 같은 중간키의 교차 서명과 CRL 제공/검사 적용을 구분한다.
실제 eMudhra 인증서, 외부 개인키, 사용자 설정을 읽지 않는다.
자체 키는 메모리에서 생성하고 파일에 기록하지 않는다.
임시 공개 인증서/CRL만 생성 후 삭제한다. OS 신뢰 목록 변경 없음.

검증 환경: macOS arm64, Python3.14.5, cryptography48.0.0,
OpenSSL4.0.3. OpenSSL은 PATH에 있어야 한다.
OpenSSL3.x/4.x 옵션을 사용하나 다른 버전의 결과는 직접 검증하지 않았다.
인증서/CRL 유효기간과 검사 시각은 고정한다. 매번 난수키가 달라도
예상하는 검증 결과와 중간 SPKI 일치/인증서 불일치 조건은 같다.

압축 해제한 폴더에서:
python3 -m venv .venv
.venv/bin/python -m pip install cryptography==48.0.0
.venv/bin/python check-paths.py > result.json

의존성 설치는 인터넷을 사용하며, check-paths.py 자체는 네트워크 호출을 하지 않는다.
result.json의 passed=5, 마지막 returncode=2와 certificate revoked를 확인한다.
번들 observed-result.json은 작성 당시 실행 기록이다.

범위: 명시적 CAfile/중간 인증서/CRL을 사용하는 오프라인 검증.
브라우저, rustls, 실제 eMudhra 계층, SPKI차단 구현, CT, 온라인TLS,
자동 대체경로 탐색, 운영 앱의 기본 폐기 정책을 검증하지 않는다.
코드를 운영 서버 검증기나 보안 인증 도구로 쓰지 않는다.

권리: 스크립트·설명은 이 글을 위한 자체 제작.
