란 모음집

SCEP(Simple Certificate Enrollment Protocol) 란

burdock129 2022. 11. 18. 08:58
반응형

SCEP(Simple Certificate Enrollment Protocol)란 IETF(Internet Engineering Task Force)의 Internet Draft로 인증서 등록 프로토콜을 의미합니다.

 

특징

  • HTTP(GET 메서드,POST 방법에 대한 선택적 지원)
  • RSA 기반 암호화 만 지원
  • PKCS#10을 인증서 요청 형식으로 사용
  • 암호화 서명/암호화 메시지를 전달하기 위해 PKCS#7을 사용합니다.
  • 요청자의 정기적인 폴링을 통해 서버에서 비동기 권한 부여를 지원합니다.
  • 제한된 CRL(Certificate Revocation List) 검색 지원(확장성으로 인해 CDP(CRL Distribution Point) 쿼리를 통해 선호하는 방법)
  • 온라인 인증서 해지를 지원하지 않음(다른 방법을 통해 오프라인으로 수행해야 함)
  • CSR(Certificate Signing Request) 내에서 챌린지 비밀번호 필드를 사용해야 합니다. 이 필드는 서버와 요청자 간에만 공유되어야 합니다.

 

등록 및 사용

1. CA인증서의 복사본을 구하여 유효성을 검사

2. CSP을 생성하여 CA에 전송

3. SCEP 서버를 폴링하여 인증서가 서명 되었는지 여부 확인

4. 현재 인증서가 만료되기 전에 새 인증서를 얻으려면 필요에 따라 다시 등록

5. 필요에 따라 CRL 검색

 

CA 인증

SCEP는 CSR에 대한 메시지 교환을 보호하기 위해 CA 인증서를 사용합니다.따라서 CA 인증서의 사본을 가져와야 합니다.GetCACert 작업이 사용됩니다.

Request

요청은 다음과 유사한 패킷으로 HTTP GET으로 전송 된다.

GET /cgi-bin/pkiclient.exe?operation=GetCACert

Response

응답은 단순히 이진 인코딩 된 CA 인증서(X.509)

클라이언트는 CA 인증서가 Fingerprint/Hash 검사를 통해 신뢰할 수 있는지 확인해야 함

이 작업은 시스템관리자를 통해서나 Trust Point 내에서 Fingerprint를 미리 구성하여 수행해야 함

Request

등록 요청은 다음과 같은 유사한 패킷으로 HTTP GET으로 전송 된다.

/cgi-bin/pkiclient.exe?operation=PKIOperation&message= MIIHCgYJKoZIhvcNAQcCoIIG%2BzCCBvcCAQExDjA......

 

1."message=" 다음의 텍스트는 GET 요청 문자열에서 추출된 URL 인코딩된 문자열 이다.

2. 텍스트는 URL 디코딩되어 ASCII 텍스트 문자열이 된다. 이 텍스트 문자열은 Base64로 인코딩 된 SignedData PKCS # 7 이다.

3. SIgnedData PKCS # 7 은 클라이언트가 이 인증서 중 하나를 사용하여 서명한다. 클라이언트가 전송 했으며 전송 중에 변경되지 

않았음을 증명하는데 사용된다.

4. 자체 서명 인증서 (초기 등록시 사용됨)

5. 제조업체 설치 인증서 (MIC)

6. 곧 만료되는 현재 인증서 (재동록)

7.SIgnedData PKCS # 7 의 "서명된 데이터" 부분은 EnvelopedData PKCS # 7 이다..

8. ENvelopedData PCKS # 7 은 "암호화된 데이터" 및 "암호 해독 키"가 포함 된 컨테이너다.. 암호 해독 키는 수신자의 공개

키로 암호화 된다. 이 경우 수신자는 CA 이다. 그 결과로 CA만 실제로 "암호화된 데이터"를 해독 할 수 있다.

9. Enveloped PKCS # 7  의 "Encrypted Data" 부분은 CSR (PKCS # 10)이다.

 

 

그리고 이 SCEP에서 가장 중요하다고 생각하는 PKI(Public Key Infrastructure) 작업에 사용되는 프로토콜이다.

 

 

 

반응형