- ベストアンサー
httpでもログインフォームは暗号化される?
- phpでトップページログインフォームより会員がログインできる仕組みを作りたいと思っています。
- この場合、ログイン認証部分のみSSL通信をおこないたいと考えています。
- てっきりログインフォームのあるページURLはhttpsでないと暗号化されないと思っていたのですが、action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> phpでトップページログインフォームより会員がログインできる仕組みを作りたいと思っています。 > この場合、ログイン認証部分のみSSL通信をおこないたいと考えています。 こういうことをしても許されるのって2000年代までだと思ってました。 https://www.verisign.co.jp/ssl/first/always-on-ssl/faq.html#a01 その後のページでSSLを使っていないとなると、認証クッキーを盗聴して、なりすましし放題ですよね。 それに、SSLはスループットの良い暗号を選べば、随分CPU負荷が少ないと思います。 > action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか? はい。https://....と書いてあるなら、HTTPSで接続してデータを送信します。つまり、暗号化されています。本当に暗号化されるか不安ならwiresharkなどで実際の通信をダンプしてみると良いでしょう。 ちなみに、情報セキュリティというと、機密性(Confidential)、完全性(Integrity)、可用性(Availability)を考えます。それぞれ、権限がない人に情報を見せない、情報が改竄されていない、権限がある人が情報を利用できるという意味です。 「暗号化」と機密性にばかり注目しがちかもしれませんが、SSLはこの機密性と完全性の両方を提供するものだと思います。つまり、盗聴対策と改ざん対策です。 > この場合、 > トップページをhttps://toppage.html(sあり)とし、 > ログインフォームのaction先を、http://check.php(sなし)のように考えていたのですが、 これは何をしたいのかわかりませんが、action先がHTTPSでないということは、平文でパスワードなどが送られます。 なんというか、羊頭狗肉ですね。 (SSLを使っているように見せかけて、本当は使っていない) > こちらのサイトURLは、トップページがhttpになっており、 > 会員ログインフォームのaction先がhttps:〇〇〇 > となっています。 これも典型的な駄目なケースだと思います。 通信経路上でトップページの改ざんが行われた場合や、フィッシング詐欺が行われている場合、攻撃者のサイトにHTTPSで接続してパスワードを送ることになりますよね。 しかも、ブラウザで見る限りは異常が見えないので、ユーザーは攻撃者のサイトにパスワードを送るまで攻撃者のサイトにパスワード送ることに気づけないでしょう。 というわけで、ログインページからログアウトするまでちゃんとHTTPSを使ったほうがよいと思います。
その他の回答 (2)
- notnot
- ベストアンサー率47% (4900/10358)
直接の回答はNo1さんの通り。 なお、セキュリティの観点からは、formを表示するページ、action先のページ、両方がhttpsである必要があります。 参考: http://takagi-hiromitsu.jp/diary/20051130.html
お礼
ご回答ありがとうございます。 片方のみhttpsがついているサイトが多かったのでそれに惑わされていました。 教えていただきました参考ページ、とてもわかりやすいです。 ありがとうございます。
- bx2
- ベストアンサー率47% (97/206)
> action先がhttpsになっていれば暗号化されてデータは送られるのでしょうか? その通りです。 ログインフォームが http と https のどちらで表示されようが関係ありません。 送信先(action)が https のときだけ暗号化されます。 受信は送信に使用した接続を使用するので、受信の暗号化有無は送信方法で決まります。
お礼
ご回答ありがとうございます。 ログインフォームのあるページがhttpだとhttpsのページへ暗号されずに POSTされてしまうのではないかと勘違いしていましたがお蔭様で解決できました。
お礼
ご回答ありがとうございます。 安全性を考えてすべてのページで使う方向で検討したいと思います。 詳しく説明していただきありがとうございます。