PKCS7 Flags/Constants

S/MIME 함수는 다음 값 중 하나 이상을 포함할 수 있는 비트 필드를 사용하여 지정된 플래그를 사용합니다.

PKCS7 CONSTANTS

상수 설명
PKCS7_TEXT 암호화/서명된 메시지에 텍스트/일반 콘텐츠 유형 헤더를 추가합니다. 복호화 또는 확인하는 경우 출력에서 ​​해당 헤더를 제거합니다. 복호화 또는 확인된 메시지가 MIME 유형 text/plain이 아닌 경우 오류가 발생합니다.
PKCS7_BINARY 일반적으로 입력 메시지는 S/MIME 사양에서 요구하는 대로 줄 끝으로 CRLF를 효과적으로 사용하는 "표준" 형식으로 변환됩니다. 이 옵션이 있으면 번역이 발생하지 않습니다. 이것은 MIME 형식이 아닐 수 있는 이진 데이터를 처리할 때 유용합니다.
PKCS7_NOINTERN 메시지를 확인할 때 일반적으로 메시지에 포함된 인증서(있는 경우)에서 서명 인증서를 검색합니다. 이 옵션을 사용하면 openssl_pkcs7_verify()의 extracerts 매개변수에 지정된 인증서만 사용됩니다. 그러나 제공된 인증서는 여전히 신뢰할 수 없는 CA로 사용할 수 있습니다.
PKCS7_NOVERIFY 서명된 메시지의 서명자 인증서를 확인하지 마십시오.
PKCS7_NOCHAIN 서명자 인증서의 확인을 연결하지 마십시오. 즉, 서명된 메시지의 인증서를 신뢰할 수 없는 CA로 사용하지 마십시오.
PKCS7_NOCERTS 메시지에 서명할 때 일반적으로 서명자의 인증서가 포함됩니다. 이 옵션을 사용하면 제외됩니다. 이렇게 하면 서명된 메시지의 크기가 줄어들지만 검증자는 로컬에서 사용할 수 있는 서명자 인증서 사본이 있어야 합니다(extracerts를 사용하여 openssl_pkcs7_verify()에 전달됨).
PKCS7_NOATTR 일반적으로 메시지가 서명될 때 서명 시간과 지원되는 대칭 알고리즘을 포함하는 속성 집합이 포함됩니다. 이 옵션을 사용하면 포함되지 않습니다.
PKCS7_DETACHED 메시지에 서명할 때 MIME 유형이 "multipart/signed"인 일반 텍스트 서명을 사용하십시오. openssl_pkcs7_sign()flags를 지정하지 않은 경우 이것이 기본값입니다. 이 옵션을 끄면 메일 릴레이에 의한 번역에 더 저항하지만 S/MIME를 지원하지 않는 메일 에이전트가 읽을 수 없는 불투명 서명을 사용하여 메시지에 서명합니다.
PKCS7_NOSIGS 메시지의 서명을 확인하려고 하지 마십시오.