[python] PyOpenSSL을 사용하여 SSL 인증서 체인을 구축하는 방법은 무엇인가요?

먼저, 다음과 같이 PyOpenSSL 패키지를 설치해야 합니다.

pip install pyOpenSSL
import OpenSSL

# 인증서 파일 경로
cert_path = 'path/to/certificate.crt'

# 인증서 체인 생성
def build_certificate_chain(cert_path):
    # 인증서 객체 생성
    cert = OpenSSL.crypto.load_certificate(OpenSSL.crypto.FILETYPE_PEM, open(cert_path).read())

    # 신뢰할 수 있는 루트 인증서 검색
    store = OpenSSL.crypto.X509Store()
    store.set_default_paths()

    # 인증서 체인 생성
    chain = OpenSSL.crypto.X509StoreContext(store, cert)
    return chain.get1_chain()

# 인증서 체인 생성 함수 호출
certificate_chain = build_certificate_chain(cert_path)

# 개별 인증서 정보 출력
for cert in certificate_chain:
    print(f"Subject: {cert.get_subject().CN}")
    print(f"Issuer: {cert.get_issuer().CN}")
    print("----------------------------------------")

위 코드에서 cert_path 변수에 자신의 인증서 파일 경로를 설정해야 합니다. build_certificate_chain 함수를 호출하여 인증서 체인을 생성하고, 생성된 인증서 체인에서 개별 인증서의 정보를 출력합니다.

이 코드는 PyOpenSSL을 사용하여 SSL 인증서 체인을 구축하는 기본적인 방법을 보여줍니다. 개발 환경에 따라 추가 구성이 필요할 수 있습니다.

참고 문서: