Hero-oo

Hero-oo

email

私たちが DH アルゴリズムを必要とする理由

最近安全を復習しているときに、DH について 2 つの疑問が浮かびました:

  1. 非対称暗号アルゴリズムが身分認証付きの安全な鍵交換を実現できるのに、なぜ身分認証のない DH アルゴリズムが必要なのでしょうか?
  2. 非対称暗号アルゴリズム体系の身分認証は実際には第三者 CA の権威性に依存しているので、DH の CA を構築することはできるのでしょうか?

この記事はこの 2 つの疑問に答えるためのものです。

〇、DH アルゴリズムの概要#

安全なアルゴリズムについて知っている人は、DH アルゴリズムが非常に広く使われている鍵交換アルゴリズムであり、TLS や IPsec などの交渉の第一段階でよく使用されることを知っています。多くの人が誤解しているのは、DH アルゴリズムは非対称暗号アルゴリズムに属すると考えていることですが、DH アルゴリズムには暗号化や復号化の機能がないため、非対称暗号アルゴリズムとは見なせません。DH アルゴリズムは鍵の交渉にのみ使用されます。

一、DH アルゴリズムの原理#

まず、DH アルゴリズムの原理図を示します。Wikipedia のクラシックな図です:

DH アルゴリズムの原理

DH アルゴリズムの鍵交渉プロセスは以下の通りです:

  1. アリスは大きなランダム整数 $x$ を取り、ボブに送信します:$X = g^x \mod p$
  2. ボブは大きなランダム整数 $y$ を取り、アリスに送信します:$Y = g^y \mod p$
  3. アリスは $k=Y^x \mod p = (g^y \mod p)^x \mod p = g^{xy} \mod p$ を計算します
  4. アリスは $k'=X^y \mod p = (g^x \mod p)^y \mod p = g^{xy} \mod p$ を計算します

交渉プロセスでは、g、p は公開され、X、Y はネットワークで送信されます。x、y を計算するには離散対数問題を解く必要があります。

利点#

  1. 計算が簡単
  2. 動的で、鍵ペアを生成しやすく、毎回の交渉で再生成される
  3. 多数の参加者に拡張しやすい $g^{xyz} \mod p$

欠点#

  1. 身分認証の能力がないため、中間者攻撃の問題を解決できない

二、非対称暗号アルゴリズムとの比較#

非対称暗号アルゴリズムは公開鍵と秘密鍵のペアを使用し、公開鍵で暗号化し秘密鍵で復号化します。DH に対して、非対称暗号アルゴリズムの特徴は次の通りです:

  1. 公開鍵と秘密鍵のペアは生成後に変更できない
  2. 身分認証に使用できる
  3. 身分認証体系を構築できる —— デジタル証明書体系
  4. 前方秘匿性(PFS)を持たないため、秘密鍵が漏洩すると過去のすべてのメッセージが復号される可能性がある

そのため、身分認証の属性を持ち、鍵交換(情報暗号化)、デジタル署名、身分認証に頻繁に使用されます。

なぜ DH が必要なのか#

問題に戻りましょう:

  1. 非対称暗号アルゴリズムが身分認証付きの安全な鍵交換を実現できるのに、なぜ身分認証のない DH アルゴリズムが必要なのでしょうか?

非対称暗号アルゴリズムの静的で前方秘匿性を持たないという問題が大きいからです。これは、秘密鍵が漏洩すると過去のすべてのメッセージが解読されることを意味します。一方、DH の動的な特性はこれを補うことができ、DH アルゴリズムを使用して一定の時間ごとに再鍵を生成することで、通信の両者の共有鍵が周期的に変更されます。たとえ 1 つの鍵が解読されても、完全な通信データを得ることはできません。

しかし、DH には身分認証の能力がないため、中間者攻撃を防ぐためにデジタル証明書体系と組み合わせる必要があります。

  1. 非対称暗号アルゴリズム体系の身分認証は実際には第三者 CA の権威性に依存しているので、DH の CA を構築することはできるのでしょうか?

この問題は比較的答えやすいです。根本的な理由は、DH には身分認証機能がないからです。PKI 体系では、CA が秘密鍵を使用して証明書を発行し、ユーザーのシステムやブラウザに CA の公開鍵が保存されており、証明書の有効性を簡単に検証できます。この検証プロセスは、非対称暗号アルゴリズムの身分認証属性に基づいて実現されており、DH では実現できません。

Done!

この記事は Mix Space によって xLog に同期更新されました
元のリンクは https://www.vikifish.com/posts/security/why-we-need-dh-group


読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。