このうちの問合せフォームについて悩んでいます。
問合せフォームの条件として、入力された「内容」をEメールで送信させたいです。
問題はこの内容がメール送信->メールサーバの間、暗号化されない点です。
そこで、
1)送信の際(PHP?)で暗号化し、メールサーバ(Courier IMAP)で復号化したいのですが、可能でしょうか。
(とりあえずレンタルサーバーである事は無視して、設定等で可能か教えて頂ければ嬉しいです。英語でも。。)
ちなみに、「内容」をEメールで送信しない手は使いたくありません。
(「問合せフォームに入力があったよー」、とお知らせEメールだけを送信し、「内容」は別途安全な方法で取りに行く手です。)
2)そもそも問合せフォームにSSLは必要なものでしょうか?
ちゃんと盗聴を防ごうと思えばSSLだけでは不十分ですし、また使うとしても共用SSLなので、
問合せフォームだけ別ドメインになります。
そのため、問合せする人がアドレスが違う事に気づき、かえってアヤシイと思うかもしれません。
何かヒントをください。
1)不可能です。
メールサーバの段階で複合できてしまっては、暗号化した意味がありません。
受信するメーラーで復号化する手段ならあります。
もっともポピュラーな方法としては、送信側(PHPスクリプト)でopenssl_pkcs7_encryptを使ってS/MIMEメッセージを暗号化するものです。この方法であれば、OutlookExpressなどほとんどのメーラーで復号化することができます。
2)個人情報(メールアドレスを含む)を投稿させるようなフォームなら、SSLで構築すべきです。
1)不可能です。
メールサーバの段階で複合できてしまっては、暗号化した意味がありません。
受信するメーラーで復号化する手段ならあります。
もっともポピュラーな方法としては、送信側(PHPスクリプト)でopenssl_pkcs7_encryptを使ってS/MIMEメッセージを暗号化するものです。この方法であれば、OutlookExpressなどほとんどのメーラーで復号化することができます。
2)個人情報(メールアドレスを含む)を投稿させるようなフォームなら、SSLで構築すべきです。
ご回答ありがとうございます。
無理とかポピュラーな方法が分かるだけでもありがたいです。
メールサーバとメーラーの接続はSTARTTLSで考えてまして、メールサーバーまで暗号化できればなぁと考えてました。
(また実は、メーラー同士の暗号化方法としてS/MIMEがあるのは知ってたのですが、
今回の件と頭の中で結びついていませんでした。)
今回のフォームはメールアドレスを投稿させるので、共用でもSSLにしようかなと思いました。
1)
こちらを参考にしてください。
http://kuroutoshikou.blog16.jp/index.php/2010/06/05/s_mime_a_a_m...
2)
>そもそも問合せフォームにSSLは必要なものでしょうか?
たいていの企業がSSLを採用してます。
>ちゃんと盗聴を防ごうと思えばSSLだけでは不十分ですし、
不十分だからないほうがよいというわけではないでしょう。
SSLをしないとブラウザとサーバー間で盗聴されてしまいます。
>また使うとしても共用SSLなので、問合せフォームだけ別ドメインになります。
>そのため、問合せする人がアドレスが違う事に気づき、かえってアヤシイと思うかもしれません。
それはその通りです。独自のSSLを使える(お金を出せる)会社は同様な理由で安心するでしょう。
具体的な参考ページありがとうございます。助かります。
あと、2)については、すみません、本当は言いたかった事と多少ずれてしまってました。
(500文字制限があったので修正ミスしてしまいました)
本当は言いたかったのは、今回の問合せフォームは、基本的に返答をEメールでするため、
メールアドレスを含め、結局は平文でネットワークに流れます。
なので、こういう用途で暗号化しても半分しか効果がないため、ふと質問にしました。
問合せフォームから投稿する人がどう思うかという観点が大切と思いましたので、
とりあえずSSLとS/MIMEの方向で検討してみます。
(でも、証明書の値段とその更新作業の手間が決定を左右しそうです。)
ご回答ありがとうございます。
無理とかポピュラーな方法が分かるだけでもありがたいです。
メールサーバとメーラーの接続はSTARTTLSで考えてまして、メールサーバーまで暗号化できればなぁと考えてました。
(また実は、メーラー同士の暗号化方法としてS/MIMEがあるのは知ってたのですが、
今回の件と頭の中で結びついていませんでした。)
今回のフォームはメールアドレスを投稿させるので、共用でもSSLにしようかなと思いました。