2017-09-06 11 views
1

answer from SOに基づくセキュアな接続でNode.jsサーバーを作成しています。答えからNodeJS httpsはトラフィックの対称暗号化を実行しますか

コード、

var https = require('https'); 

私が理解から、接続を確保するための2つの部分があります。

  1. 証明書検証と対称鍵交換を行うSSLハンドシェイク。
  2. 対称キーを使用してトラフィックを暗号化します。

httpsはSSLハンドシェイクのみを実行しますか?要求を解読し、応答を暗号化することは世話をしていますか?対称鍵アルゴリズムを使用していますか?それはAESを使用していますか?対称鍵暗号化を使用しない場合、どうすればよいですか?

トラフィックフローは暗号化されていますか?

P.S:引用した回答の下にコメントを残しました。あなたがSOの答えから質問を得ることは大丈夫です。

答えて

3

私が理解するところでは、接続を保護するための2つの部分があります。

  1. 証明書検証と対称鍵交換を行うSSLハンドシェイク。

証明書の検証と対称鍵交渉。

トラフィックを対称鍵で暗号化します。

正しい。

httpsはSSLハンドシェイクのみを実行しますか?

HTTPSはこれを実行しません。 HTTPSはTLS上のHTTPだけです。 TLSはハンドシェイクと暗号化を行います。 HTTPSの唯一の追加機能は、ホスト名検証です。

リクエストを復号化してレスポンスを暗号化しますか?

はい。

対称鍵アルゴリズムを使用していますか?

はい。あなたはすでにあなたの上にそれを言った。

AESを使用していますか?

ピア間の合意によって、多数の暗号のいずれかを使用します。

対称鍵暗号化を使用しない場合、どうすればよいですか?

これはありません。

トラフィックフローは暗号化されていますか?

4回目はyesです。

+0

TLSが暗号化を行う場合。このソリューションは、TLSパッケージを使用せずにトラフィックをどのように暗号化しますか?私はhttpsがTLSライブラリを使用していると思う。その部分を説明していただけますか?コードから、私はTLSがどのように使われているのか分かりません。 – ProgramCpp

+1

TLSパッケージを使用しないと思われる理由は何ですか?もちろんそうです。 – EJP

関連する問題