如何使用 PHP 将加密电子邮件发送到 iOS 设备



我正在尝试使用 PHP 发送加密和签名的电子邮件,当我终于让它工作时,它在 iOS 上不起作用,例如,当我尝试在 iPhone 上打开电子邮件时,我收到以下错误:"此消息已加密。安装包含您的加密身份的配置文件以解密此消息。证书已正确安装,如果我使用 Outlook 或从 Mac 发送邮件,它可以完美运行,问题是如果我尝试使用 PHP 发送它。

我得到了答案,似乎iOS只喜欢Cipher 3DES,所以我们需要告诉PHP使用它:

我使用以下代码进行加密:

$encrypt = @openssl_pkcs7_encrypt(
                        $signed,
                        $encrypted,
                        file_get_contents($this->encrypt_cert_file),
                        null,
                        0,
                        1
                    );

我改为:

$encrypt = @openssl_pkcs7_encrypt(
                        $signed,
                        $encrypted,
                        file_get_contents($this->encrypt_cert_file),
                        null,
                        0,
                        OPENSSL_CIPHER_3DES
                    );

它现在有效!我希望这对某人有所帮助。

最新更新