1. Http
ハイパーテキスト転送プロトコル (Hypertext Transfer Protocol) は、インターネット上で最も広く使用されているプロトコルです。 . プロトコル、すべての WWW ファイルが従わなければならない標準。 HTTP プロトコルによって送信されるデータは暗号化されていない、つまり平文であるため、HTTP プロトコルを使用して個人情報を送信することは非常に危険です。
使用される TCP ポートは 80
2. https
セキュア ソケット レイヤ上のハイパー テキスト転送プロトコル、安全なハイパーテキスト転送プロトコル、ネットワーク Jingfuセッション中のセキュリティを確保するために、HTTP プロトコルによって送信されるデータを暗号化する SSL (Secure Sockets Layer) プロトコルを設計しました。
使用されるデフォルトの TCP ポートは 443
3. SSL プロトコルの暗号化方式
SSL プロトコルは対称暗号化と非対称暗号化 (公開キー) の両方を使用します。暗号化)では、SSL は送信リンクを確立する際に、まず公開鍵を使用して対称暗号鍵の非対称暗号化を行い、リンク確立後は送信内容を対称暗号化します。
対称暗号化
セッション中のメッセージの暗号化に使用される、高速で大容量の暗号化コンテンツ
公開キー暗号化
暗号化速度は遅いですが、可能性があります。対称暗号化のキーの暗号化に使用される、より優れた ID 認証テクノロジを提供します。
関連する推奨事項: "FAQ"
4. 双方向認証
双方向認証と一方向認証の原理は基本的に同じですが、クライアントがサーバーを認証する必要があることに加えて、サーバーもクライアントを認証する点が異なります。具体的なプロセスは次のとおりです:
1. クライアントは、SSL プロトコルのバージョン番号、暗号化アルゴリズムの種類、乱数、その他の情報をサーバーに送信します。
2. サーバーは、SSL プロトコルのバージョン番号、暗号化アルゴリズムの種類、乱数などの情報と、サーバー側の証明書 (公開鍵証明書) をクライアントに返します。
3. クライアントは、サーバーから返された以下の情報を使用してサーバーの正当性を検証します:
(1) 証明書の有効期限が切れているかどうか。
(2) サーバー証明書を発行している CA が信頼できるかどうか。
(3) 返された公開キーが、返された証明書内のデジタル署名を正しく復号できるかどうか。
(4) サーバー証明書のドメイン名がサーバーの実際のドメイン名と一致するかどうか。
(5) 認証に合格した場合は通信を継続しますが、認証に合格しなかった場合は通信を終了します。
4. サーバーはクライアントにクライアントの証明書を送信することを要求し、クライアントは独自の証明書をサーバーに送信します。
5. クライアントの証明書を検証します。検証に合格すると、クライアントの公開キーが取得されます。
6. クライアントは、サポートできる対称暗号化スキームをサーバーに送信し、サーバーが選択できるようにします。
7. サーバーは、クライアントが提供する暗号化方式の中から、最も暗号化度の高い暗号化方式を選択します。
8. 前に取得した公開鍵を使用して暗号化スキームを暗号化し、クライアントに返します。
9. サーバーから返された暗号化スキームの暗号文を受信した後、クライアントは独自の秘密キーを使用して復号化し、特定の暗号化方式を取得し、暗号化方式のランダム コードを生成します。暗号化プロセス: キーは、サーバー証明書から事前に取得した公開キーを使用して暗号化され、サーバーに送信されます。
10. サーバーは、クライアントから送信されたメッセージを受信した後、独自の秘密キーを使用してメッセージを復号化し、対称暗号化キーを取得します。後続のセッションでは、サーバーとクライアントはこのパスワードを使用します。対称暗号化を使用して、通信中の情報のセキュリティを確保します。
以上がhttps双方向認証を有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。