개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.24 05:36

openssl_x509_checkpurpose 함수 사용에 대한 질문

목록
  • UX개발자 9시간 전 2025.04.24 05:36 새글
  • 6
    1
제가 현재 SSL/TLS 인증서를 검증하는 작업을 수행 중인데, openssl_x509_checkpurpose 함수를 사용하여 인증서의 목적을 확인하고 싶습니다. 그러나 이 함수의 사용법을 정확하게 이해하지 못하고 있습니다.

인증서의 목적을 확인하는 함수인 openssl_x509_checkpurpose가 반환하는 값은 무엇인지 알려주시고, 이 함수를 사용할 때 필요한 인자와 옵션에 대해 설명해주시겠습니까?

    댓글목록

    profile_image
    나우호스팅  9시간 전



    openssl_x509_checkpurpose 함수는 SSL/TLS 인증서의 목적을 확인하는 함수로, 반환값은 다음과 같습니다.

    - 1 : 인증서의 목적이 일치합니다.
    - 0 : 인증서의 목적이 일치하지 않습니다.
    - -1 : 인증서가 유효하지 않습니다.
    - -2 : 인증서의 목적을 확인하는 데 실패했습니다.

    이 함수를 사용할 때 필요한 인자와 옵션은 다음과 같습니다.

    - x509 : 인증서의 구조체 포인터
    - purpose : 인증서의 목적을 확인할 목적 (예: SSL_CLIENT_AUTH, SSL_SERVER_AUTH 등)
    - flags : 옵션 (예: no_alt_chains, no_check_crl 등)
    - certinfo : 인증서 정보를 저장할 구조체 포인터 (옵션)

    예를 들어, SSL_CLIENT_AUTH 인증서의 목적을 확인하는 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $x509 = openssl_x509_read("인증서 파일 경로");
    
    $purpose = X509_PURPOSE_SSL_CLIENT_AUTH;
    
    $flags = 0;
    
    $certinfo = null;
    
    
    
    $result = openssl_x509_checkpurpose($x509, $purpose, $flags, $certinfo);
    
    if ($result == 1) {
    
        echo "인증서의 목적이 일치합니다.";
    
    } elseif ($result == 0) {
    
        echo "인증서의 목적이 일치하지 않습니다.";
    
    } elseif ($result == -1) {
    
        echo "인증서가 유효하지 않습니다.";
    
    } elseif ($result == -2) {
    
        echo "인증서의 목적을 확인하는 데 실패했습니다.";
    
    }
    
    


    이 코드는 SSL_CLIENT_AUTH 인증서의 목적을 확인하고, 결과를 출력합니다.

    2025-04-24 05:37

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 13,910건 / 1 페이지

검색

게시물 검색