私が達成したいのは、署名されたメールを送信して、ユーザーのメールクライアントがそのようなメールを信頼できるものとして表示できることです(Thunderbirdなどでメールが閉鎖された封筒アイコンで表示されることがあります)。PHPを使用して署名付きのメールを送信
署名された電子メールを送信するはずのPHPMailerライブラリが見つかりましたが、openssl_pkcs7_sign PHP関数をラップすると思います。関数の引数であるキーと証明書を取得して使用する方法がわかりません。パラメータには$ signcertと$ privkeyがあります。私が理解しているところでは、$ signcertは、メッセージが正しく署名されたことを検証するために使用される公的に知られている証明書でなければなりません。 $ privkeyは証明書と結びついたもので、秘密にしておくと電子メールに署名するのに使われます。これまで正しい?
私の問題は、適切な証明書を取得する方法です。私はOpenSSLは私自身の証明書を生成することができますが、私のニーズに十分な証明書ですか?そうであれば、どうすればそれらを正しく生成できますか?私は、異なる長さの証明書と、重要であり、私が気づいていない他のオプションがあるかもしれないことを意味します。ところで、「https」という自己署名証明書がブラウザで警告を発することに気付きました。メールでも同じことが起こりますか?その場合、おそらく私は信頼できる証明センターから証明書を購入する必要があります。あなたは私が考慮すべきセンターのアドバイスをくれますか?
http://kb.mozillazine.org/Getting_an_SMIME_certificateちょうどFYI - セキュアな電子メールが普遍HTTPSとは異なり、サポートされていません。これは、ほとんどの場合、メールシステムのかなりの部分が自動的にサポートされないためです(Outlookは、たとえば、有効になっていても有効になっていません)。代わりに、あなたは[Hushmail](http://www.hushmail。com /)であり、これはこれを一貫して達成するための仲介システムを提供する。ただし、サーバーにメールを送信してそのサーバーだけで解読できる(ユーザーの個人証明書ではない)場合、それは本質的に安全ではないと考えてください。 –