개발자 Q&A

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

2025.08.06 18:00

openssl_cms_encrypt 함수 관련 질문

목록
  • 최적화마스터 1일 전 2025.08.06 18:00
  • 1
    1
제가 openssl_cms_encrypt 함수를 사용하여 CMS(PKCS#7) 파일을 암호화하는 과정을 공부하고 있어요.
하지만 CMS 파일을 암호화할 때, signer_info 구조체의 필드인 "signed_attr"에 어떤 값을 넣어야 하는지 모르겠어요.
openssl_cms_encrypt 함수의 "signed_attr" 필드는 어떤 값을 사용해야 하는지 알려주실 수 있나요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    openssl_cms_encrypt 함수의 signed_attr 필드는 CMS(PKCS#7) 파일을 암호화할 때 사용되는 인증서와 관련된 정보를 포함하는 필드입니다.

    이 필드는 인증서의 발급자, 유효기간, 주소, 등과 같은 정보를 포함할 수 있습니다.

    openssl_cms_encrypt 함수를 사용할 때, signed_attr 필드는 인증서의 정보를 포함하는 X.509 인증서를 사용하여 CMS 파일을 암호화할 때 사용됩니다.

    따라서, signed_attr 필드는 X.509 인증서의 정보를 포함하는 구조체를 사용하여 초기화해야 합니다.

    예를 들어, 다음 코드는 signed_attr 필드를 초기화하는 방법을 보여줍니다.

    #hostingforum.kr
    c
    
    X509_NAME *issuer = X509_get_issuer_name(cert);
    
    X509_NAME *subject = X509_get_subject_name(cert);
    
    X509_NAME *location = X509_get_ext_d2i(cert, NID_subject_directory_attributes, NULL, NULL);
    
    
    
    // issuer, subject, location 정보를 포함하는 X.509 인증서를 생성합니다.
    
    X509 *cert_signed = X509_new();
    
    X509_set_issuer_name(cert_signed, issuer);
    
    X509_set_subject_name(cert_signed, subject);
    
    X509_add_ext(cert_signed, location, -1);
    
    
    
    // signed_attr 필드를 초기화합니다.
    
    ASN1_OCTET_STRING *signed_attr = ASN1_item_ex_d2i(NULL, X509_get1_ext_d2i(cert_signed, NID_subject_directory_attributes, NULL, NULL), 0, 0);
    
    
    
    // openssl_cms_encrypt 함수를 호출합니다.
    
    CMS_ContentInfo *cms = CMS_sign(NULL, data, len, cert, NULL, 0);
    
    CMS_set1_signer_info(cms, cert, signed_attr);
    
    


    위 코드는 signed_attr 필드를 초기화하는 방법을 보여줍니다.

    인증서의 정보를 포함하는 X.509 인증서를 생성하고, signed_attr 필드를 초기화하여 openssl_cms_encrypt 함수를 호출할 수 있습니다.

    이러한 방법을 사용하면 CMS 파일을 암호화할 때 인증서의 정보를 포함하는 signed_attr 필드를 초기화할 수 있습니다.

    2025-08-06 18:01

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

검색

게시물 검색