私はSSLを初めて使用します。読んだものは何でも、有料のデジタル証明書を知っていて、Webサイトhttps://でSSLを使用した後、データ転送はネットワーク層で安全です。
私のアプリケーションでは、loginnameとpasswordを除いて、セキュリティ上の懸念はあまりありません。
SSLを使用せずにLoginnameとパスワードを保護する方法はありますかhttps://
私はSSLを初めて使用します。読んだものは何でも、有料のデジタル証明書を知っていて、Webサイトhttps://でSSLを使用した後、データ転送はネットワーク層で安全です。
私のアプリケーションでは、loginnameとpasswordを除いて、セキュリティ上の懸念はあまりありません。
SSLを使用せずにLoginnameとパスワードを保護する方法はありますかhttps://
プレーンHTTP上で安全に機能できる認証スキームは多数あります。これらの中で最も一般的なのはダイジェストです。これは、すべての主要なWebブラウザーと、事実上すべてのWebプログラミングフレームワークでサポートされています。
Webサイトにダイジェストを使用することの欠点は次のとおりです。
認証は、Webサイトのログインページではなく、ブラウザ自体によって処理されます。このページは見栄えがよくなく、「パスワードを忘れましたか?」などの周囲のヘルパー機能をすべて使用することはできません。私たちが今日期待するようになったこと。
SSL接続がない場合、知識のあるユーザーは、資格情報を入力するときにSSL接続を探すように訓練されているため、パスワードを安全に送信していないのではないかと心配するかもしれません。
プレーンHTTPよりも安全なOAuthなどの他のスキームもありますが、これはWebサイトよりもAPIの方が実際に多いため、おそらくあなたが望むものではありません。
ユーザーがログインしているすべてのページに SSL を使用する以外に、ブラウザーの HTTP セキュリティに代わるものはありません。他の手法は完全に安全ではなく、あいまいな層にすぎません。
HTTP を介した自作ソリューションは、他の脆弱性とともに、MITM 攻撃に対して常に脆弱です。
SSL を使用する場合でも、ログインとセッションのメカニズムは安全でなければなりません。そうしないと、他のエクスプロイトを使用してクラックされる可能性があります。
証明書は自己署名のものである可能性があります。必ずしも有料のものである必要はありません:)
また、StartSSL.Org を試すこともできます。私は現在それを使用していますが、うまく機能しますが、cacert.org と同じように動作します。デフォルトでは、ブラウザーによって信頼されていません。
トピックから外れて、openssl を使用して独自の (自己署名) 証明書を取得できます。
自己署名証明書を生成するには、最初に RSA キーと CSR を生成する必要があります。openssl がインストールされている Linux マシンの場合:
openssl genrsa -des3 -out mydomain.key 1024
openssl req -new -key mydomain.key -out mydomain.csr // fill in the details
mv mydomain.key mydomain.key.org
openssl rsa -in mydomain.key.org -out mydomain.key // creates passphraseless key
openssl x509 -req -days 365 -in mydomain.csr -signkey mydomain.key -out mydomain.crt