web-dev-qa-db-ja.com

NTSを使用するときにbootstrap問題のリスクがありますか?

NTPプロトコルウィキペディアのページとNTSに関するブログの投稿を読んでいると、NTSがTLSを使用して暗号化された接続を開始しているように見えます。私が理解しているところによると、TLSサーバーとクライアントの時間に大きな違いがある場合、NTSを使用していない場合、クライアントのシステム時間が正しく構成されていないと、TLS接続を確立できないためにNTS呼び出しが失敗する可能性がありますか?

1
Nzall

TLS 1.3についての事柄は、両方の当事者する必要がないことです単一の時間枠内でハンドシェイクを実行するか、最初に時間関連の情報を共有します。 TLS 1.1TLS 1.2ただし、クライアントに時間要素がありましたこんにちはメッセージ

TLS 1.1TLS 1.2クライアントのHelloメッセージ、

Structure of this message:

      The client hello message includes a random structure, which is
      used later in the protocol.

      struct {
         uint32 gmt_unix_time;
         opaque random_bytes[28];
      } Random;

gmt_unix_time上記の変数、 TLS 1.1Client Hello MessageTLS 1.2クライアントのHelloメッセージ

送信者の内部クロックによる、標準のUNIX 32ビット形式の現在の日時(1970年1月1日から始まる午前0時からの秒数、うるう秒は無視)。 基本的なTLSプロトコルで時計を正しく設定する必要はありません。より高いレベルまたはアプリケーションプロトコルは、追加の要件を定義する場合があります。

上記の段落では、時間が含まれていても、メッセージをランダム化する方法でのみ使用されているという事実をサポートしています。

TLS 1.3クライアントのHelloメッセージ、これは TLS 1.3クライアントのHelloメッセージのドキュメントです

Structure of this message:

      uint16 ProtocolVersion;
      opaque Random[32];

      uint8 CipherSuite[2];    /* Cryptographic suite selector */

      struct {
          ProtocolVersion legacy_version = 0x0303;    /* TLS v1.2 */
          Random random;
          opaque legacy_session_id<0..32>;
          CipherSuite cipher_suites<2..2^16-2>;
          opaque legacy_compression_methods<1..2^8-1>;
          Extension extensions<8..2^16-1>;
      } ClientHello;

変数gmt_unix_timeTLS 1.3で削除されました

[〜#〜] nts [〜#〜] を使用してもTLS 1.2およびTLS 1.3、初期時間は問題ではありません!

1
mallocation