PKCS7 标志/常量

S/MIME 函数使用标志,这些标志使用位字段指定,该位字段可以包含以下一个或多个值

PKCS7 常量
常量 描述
PKCS7_TEXT (int) 在加密/签名消息中添加 text/plain 内容类型头。如果解密或验证,它会从输出中删除这些头 - 如果解密或验证的消息不是 MIME 类型 text/plain,则会发生错误。
PKCS7_BINARY (int) 通常,输入消息被转换为“规范”格式,这实际上是使用 CRLF 作为行尾:如 S/MIME 规范所要求的那样。当存在此选项时,不会发生任何转换。这在处理可能不是 MIME 格式的二进制数据时很有用。
PKCS7_NOINTERN (int) 在验证消息时,通常会在消息中包含的证书(如果有)中搜索签名证书。使用此选项,仅使用 openssl_pkcs7_verify()untrusted_certificates_filename 参数中指定的证书。提供的证书仍然可以作为不受信任的 CA 使用。
PKCS7_NOVERIFY (int) 不验证签名消息的签名者证书。
PKCS7_NOCHAIN (int) 不链接签名者证书的验证:即不使用签名消息中的证书作为不受信任的 CA。
PKCS7_NOCERTS (int) 签名消息时,通常会包含签名者的证书 - 使用此选项,它将被排除在外。这将减小签名消息的大小,但验证者必须在本地拥有签名者的证书副本(例如,使用 untrusted_certificates_filename 传递给 openssl_pkcs7_verify())。
PKCS7_NOATTR (int) 通常,在签名消息时,会包含一组属性,其中包括签名时间和支持的对称算法。使用此选项,它们将不被包含。
PKCS7_DETACHED (int) 签名消息时,使用具有 MIME 类型 "multipart/signed" 的明文签名。如果您没有为 openssl_pkcs7_sign() 指定任何 flags,这是默认设置。如果您关闭此选项,消息将使用不透明签名签名,这更能抵抗邮件中继的翻译,但无法被不支持 S/MIME 的邮件代理读取。
PKCS7_NOSIGS (int) 不要尝试验证消息上的签名。
PKCS7_NOOLDMIMETYPE (int) 从 PHP 8.3.0 开始可用。将内容类型设置为 application/pkcs7-mime 而不是 application/x-pkcs7-mime 来加密消息。

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top