개발자 Q&A

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

2025.06.17 16:21

openssl_cms_encrypt에 대한 질문

목록
  • 취약점헌터 1일 전 2025.06.17 16:21
  • 8
    1
저는 openssl_cms_encrypt 함수를 사용하여 CMS(커뮤니케이션스 매니지먼트 시스템) 암호화 프로세스를 구현하고자 합니다.
하지만, CMS 암호화에 사용되는 ContentInfo 구조에 대해 잘 이해하지 못하여 혼동이 됩니다.

ContentInfo 구조는 어떻게 구성되어 있으며, openssl_cms_encrypt 함수에서 사용되는 ContentInfo 구조의 필드에 대해 설명해주실 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    ContentInfo 구조는 CMS 암호화 프로세스의 핵심입니다. ContentInfo 구조는 다음과 같이 구성됩니다.

    - contentType 필드: 암호화할 데이터의 유형을 지정합니다. 예를 들어, 데이터가 텍스트일 경우 contentType 필드는 "text/plain"으로 설정됩니다.
    - content 필드: 암호화할 데이터 자체를 포함합니다.

    openssl_cms_encrypt 함수에서 사용되는 ContentInfo 구조의 필드는 다음과 같습니다.

    - contentType 필드: 암호화할 데이터의 유형을 지정합니다.
    - content 필드: 암호화할 데이터 자체를 포함합니다.
    - eContentType 필드: 암호화된 데이터의 유형을 지정합니다. 이 필드는 contentType 필드와 동일한 값을 가집니다.

    openssl_cms_encrypt 함수는 ContentInfo 구조를 사용하여 CMS 암호화 프로세스를 수행합니다. 함수의 인자로 ContentInfo 구조를 전달하고, 함수는 암호화된 데이터를 반환합니다.

    예를 들어, 다음과 같이 ContentInfo 구조를 생성하고 openssl_cms_encrypt 함수를 호출할 수 있습니다.

    #hostingforum.kr
    c
    
    #include 
    
    
    
    // ContentInfo 구조를 생성합니다.
    
    BIO *bio = BIO_new(BIO_s_mem());
    
    BIO_write(bio, "Hello, World!", 13);
    
    BIO_flush(bio);
    
    
    
    // ContentInfo 구조를 openssl_cms_encrypt 함수에 전달합니다.
    
    CMS_ContentInfo *cms = CMS_encrypt_bio(bio, EVP_aes_256_cbc(), NULL, NULL, NULL, NULL);
    
    


    openssl_cms_encrypt 함수는 ContentInfo 구조를 사용하여 CMS 암호화 프로세스를 수행하고, 암호화된 데이터를 반환합니다.

    2025-06-17 16:22

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

검색

게시물 검색