PHP 大会日本 2024

CMS 标志/常量

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

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

添加注释

用户贡献的注释

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