Apple의 인증서 투명성 로그 프로그램
Apple의 인증서 투명성 로그 프로그램의 정책 및 프로그램 등록 신청 방법에 대해 알아봅니다.
Apple의 인증서 투명성 로그 프로그램의 목표는 Apple의 플랫폼에서 신뢰하는 CT(인증서 투명성) 로그 집합을 설정하여 공식적으로 신뢰할 수 있는 TLS 서버 공인 인증서에 대해 SCT(서명된 인증서 타임스탬프)를 제공하기 위한 것입니다.
프로그램 정책 및 요구 사항
RFC 6962
Apple의 인증서 투명성 로그 프로그램에 등록되도록 고려되려면 RFC 6962를 준수하는 로그가 다음 조건을 충족해야 합니다.
RFC 6962에 지정된 대로 CT를 구현해야 합니다.
시간대 및/또는 당사자가 다르다고 해서 둘 이상의 상충하는 Merkle Tree 보기를 제시해서는 안 됩니다.
Apple의 기준에 따라 측정된 99% 이상의 업타임 요구 사항을 충족해야 합니다.
24시간을 초과하는 MMD(Maximum Merge Delay, 최대 병합 지연 시간)를 지정해서는 안 됩니다.
MMD 이내에 SCT를 생성한 인증서를 포함해야 합니다.
Apple의 인증서 보관함에 포함된 루트 CA 인증서를 모두 신뢰해야 합니다.
로그는 Apple의 인증서 보관함에 포함되지 않은 루트를 신뢰할 수 있습니다.
RFC 6962를 준수하는 로그는 다음을 수행할 수 있습니다.
만료된 인증서를 거부할 수 있습니다.
파기된 인증서를 거부할 수 있습니다.
id-kp-serverAuth EKU(확장 키 사용)가 포함되지 않은 리프 인증서를 거부할 수 있습니다.
로그 운영자는 로그가 승인하는 리프 인증서 유형을 변경할 경우 적어도 45일 전에 certificate-transparency-program@group.apple.com으로 서면 통지해야 합니다.
STATIC-CT-API
Apple의 인증서 투명성 로그 프로그램에 등록되도록 고려되려면 static-ct-api C2SP 사양을 준수하는 로그가 다음을 충족해야 합니다.
The Static Certificate Transparency API, v1.0.0(정적 인증서 투명성 API, v1.0.0)에 지정된 대로 CT를 구현해야 합니다.
시간대 및/또는 당사자가 다르다고 해서 둘 이상의 상충하는 Merkle Tree 보기를 제시해서는 안 됩니다.
Apple의 기준에 따라 측정된 99% 이상의 업타임 요구 사항을 충족해야 합니다.
1분을 초과하는 MMD(Maximum Merge Delay, 최대 병합 지연 시간)를 지정해서는 안 됩니다.
MMD 이내에 SCT를 생성한 인증서를 포함해야 합니다.
Apple의 인증서 보관함에 포함된 루트 CA 인증서를 모두 신뢰해야 합니다.
로그는 Apple의 인증서 보관함에 포함되지 않은 루트를 신뢰할 수 있습니다.
static-ct-api C2SP 사양을 준수하는 로그는 다음을 수행할 수 있습니다.
만료된 인증서를 거부할 수 있습니다.
파기된 인증서를 거부할 수 있습니다.
id-kp-serverAuth EKU(확장 키 사용)가 포함되지 않은 리프 인증서를 거부할 수 있습니다.
로그 운영자는 로그가 승인하는 리프 인증서 유형을 변경할 경우 적어도 45일 전에 certificate-transparency-program@group.apple.com으로 서면 통지해야 합니다.
Apple 플랫폼에 있는 로그의 상태
Apple의 플랫폼에 포함된 로그의 상태는 다음 중 하나일 수 있습니다.
Pending(대기 중)
로그를 Apple의 신뢰하는 로그 목록에 포함하기 위한 요청이 제출되었으나 아직 승인되지 않았습니다. 대기 중인 로그는 현재 인증된 로그 또는 인증된 적이 있는 로그로 간주되지 않습니다.
Qualified(인증됨)
로그가 Apple 프로그램에서 승인되었으며 Apple의 플랫폼에 배포될 예정입니다. 인증된 로그는 현재 인증된 로그로 간주됩니다.
Usable(사용 가능)
Apple의 클라이언트 CT 정책을 충족하기 위해 로그의 SCT를 활용할 수 있습니다. 사용 가능한 로그는 현재 인증된 로그로 간주됩니다. 로그는 Qualified(인증됨) 상태에서 최소 74일이 지난 후에 Usable(사용 가능) 상태로 전환됩니다.
Readonly(읽기 전용)
Apple의 플랫폼에서 신뢰하는 로그이지만 읽기 전용입니다(예: 로그에서 인증서 제출 승인을 중단함). 읽기 전용 로그는 '현재 인증된' 로그로 간주됩니다.
Retired(비활성화됨)
특정 비활성화 스탬프가 적용되기 전까지 Apple 플랫폼에서 신뢰하는 로그였습니다. 비활성화된 타임스탬프가 적용되기 전에 문제의 SCT가 발급된 경우 비활성화된 로그는 인증된 적이 있는 로그로 간주됩니다. 비활성화된 로그는 '현재 인증된' 로그로 간주되지 않습니다.
Rejected(거부됨)
로그가 현재는 물론 향후에도 Apple의 플랫폼에서 신뢰되지 않습니다. 거부된 로그는 현재 인증된 로그 또는 인증된 적이 있는 로그로 간주되지 않습니다.
등록 절차
Apple의 인증서 투명성 로그 프로그램에서 승인된 로그는 모니터링 기간에 Apple 정책을 준수하는지에 대한 확인 과정을 거칩니다. 이 기간에 로그는 'Pending'(대기 중) 상태로 설정됩니다.
Apple은 재량에 따라 로그를 거부할 수 있습니다. 이 경우 로그의 상태는 'Rejected'(거부됨)가 됩니다. 모니터링 기간에 Apple에서 문제를 발견하지 못한 경우 로그가 승인될 수 있으며, 이때 로그 상태는 'Qualified'(인증됨)가 됩니다.
Apple은 로그가 로그 프로그램 정책을 준수하는지 지속적으로 모니터링합니다. 이 시기의 로그의 상태는 'Qualified'(인증됨), 'Usable'(사용 가능), 'Readonly'(읽기 전용) 또는 'Retired'(비활성화됨)일 수 있습니다.
로그는 Apple의 재량에 따라 또는 로그 프로그램 정책을 준수하지 않는 경우 언제든지 비활성화될 수 있습니다. 이때 로그의 상태는 'Retired'(비활성화됨)가 됩니다.
프로그램 등록 신청하기
Apple의 CT 로그 프로그램 등록을 신청하려면 다음 사항을 기재하여 certificate-transparency-program@group.apple.com으로 이메일을 보내십시오.
다음을 포함한 로그에 대한 설명
인증서 승인 정책(있는 경우)
로깅에 대한 인증서 거부 정책(있는 경우)
대상 DN 및 SHA256 지문에 따라 승인된 루트 인증서 목록 및
로그가 준수하는 사양(RFC 6962 또는 static-ct-api)
공개적으로 접근 가능한 CT 로그 서버 URL(HTTP)
로그의 공개 키(SubjectPublicKeyInfo ASN.1 구조의 DER 인코딩)
로그의 MMD
다음을 포함하여 로그의 시간 기반으로 분할된 인증서 만료 범위
UTC 형식으로 된 ISO 8601 날짜 및 시간의
end_exclusive
값 및UTC 형식으로 된 ISO 8601 날짜 및 시간의
start_inclusive
값
연락처 정보(운영자 운영팀 연락처 2개 및 운영자 대표 연락처 2개에 대한 이메일 주소 포함)
Apple이 제조하지 않은 제품에 관한 정보 또는 Apple의 관리 또는 테스트 대상이 아닌 독립적인 웹 사이트는 권장 또는 보증 없이 제공되는 것입니다. Apple은 타사 웹 사이트 또는 제품에 대한 선택, 성능 및 사용과 관련하여 발생하는 결과에 대해 책임을 지지 않습니다. Apple은 타사 웹 사이트의 정확성 또는 신뢰도에 대해 어떠한 언급도 하지 않습니다. 자세한 내용은 해당 업체에 문의하시기 바랍니다.