web-dev-qa-db-ja.com

IPv6通信ではデータは常に暗号化されますか?

私はこの質問に対してまっすぐな答えを得ることができないようです。ウィキペディアは「IPsecはIPv6の基本プロトコルスイートの不可欠な部分です」と述べていますが、それはすべての通信が常に暗号化されることを意味しますか、それとも暗号化がオプションであることを意味しますが、デバイスはそれを理解できなければなりません(使用する必要があります) )?

暗号化がオプションの場合、暗号化を使用するかどうかを決定するのはオペレーティングシステムですか、それともアプリケーションですか?一般的なオペレーティングシステムとソフトウェアは一般的に暗号化を有効にしますか?

私はこれを自分で調べますが、IPv6接続がありません。

pdate: OK、それはオプションです。私のフォローアップ質問:通常、暗号化を使用するかどうかを定義するのはアプリケーションですか、それともオペレーティングシステムですか?

具体的な例:ネイティブのipv6をサポートする最新バージョンのWindowsを使用していて、Mozilla Firefoxを使用してipv6.google.comで何かを検索するとします。暗号化されますか?

30
alan

番号。

IPv6にはプロトコルの一部としてIPsecが組み込まれており、IPv4の場合のようにボルトオンではありません。ただし、これはデフォルトで有効になっているという意味ではなく、ネットワークスタックのオーバーヘッドが(理論的には)低いことを意味します。

一般に、IPsecの使用はネットワークスタックのIPレベルで決定されるため、システムポリシー自体によって決定されます。例えばシステムAには、4.0.0.0/8サブネットと通信するためにAHとESPの両方を必要とするポリシーがある場合があります。

pdate:明確にするために、アプリケーションは気にしません-どこかでネットワーク接続を開き、データを送受信する必要があることを知っているだけです。次に、システムは、要求された特定の接続に対してIPsecをネゴシエートするかどうかを判断する必要があります。 IPsecは、低レベルの認証/暗号化メカニズムとなるように非常に設計されており、意図的に構築されているため、高レベルのプロトコルとアプリケーションがそれについて心配する必要はありません。

つまり、これは単なるネットワークレベルのセキュリティ制御であり、必ずしも単独で使用したり、「セキュリティ」を保証するために使用したりする必要はありません。問題を解決して認証しようとしている場合は、マシンレベルの認証をIPsecに任せながら、ユーザーレベルの認証を強制するアプリケーション。

31
growse

短い答え:いいえ。

長い答え:IPv4とは異なり、IPsec(使用時)はIPv6ヘッダーの一部であるという意味で、IPv6を設計するときにIPsecが考慮されました。

詳細説明:IPv4では、IPsecは上に IP自体を実行します。これは実際には、レイヤー3プロトコルとして「偽装」するレイヤー4プロトコルです(通常のL4プロトコルTCPおよびUDPは引き続き機能します)。ESP(カプセル化セキュリティペイロード)はIPパケット間にまたがることはできません。その結果、通常、IPsecパケットは、断片化が防止されるとペイロード容量が大幅に減少します。さらに、IPの上にあるため、IPのヘッダーは保護されません。

IPv6では、IPsec の一部 IP自体。 ESPヘッダーはIPのヘッダーの一部になりました。IPと統合されているため、IPヘッダーのより多くの部分を保護できます。

「一言で言えば」の説明が十分明確であることを願っています。

20
pepoluan

フォローアップ質問へ:

オペレーティングシステムは、暗号化をいつ使用するかを定義します。これらの「ポリシー」オプションは、コントロールパネル/構成ポリシー内にあります。 「サブネットab12 ::の任意のアドレスに接続する場合は、シークレットBlah1234が必要です」のように言います。 PKIを使用するオプションがあります。

現時点では、アプリケーションはこのポリシーに追加できないか、このポリシーのセットアップを要求できません。 Linuxソケットのipv6セクションに「EHヘッダーとAHヘッダーのIPSecサポートがありません。」との記述があるため、人々はこれについて考えてきましたが、現時点では既知の動作する実装はありません。

2
Mike F

あなたのフォローアップの質問にイエスとノー。

アプリケーションは暗号化を指定できますが、暗号化はアプリケーションレベルで行われます。 HTTP/HTTPS、LDAP/LDAPS、IMAP/IMAPS、SMTP/SSMTPなどのさまざまなポートを使用する、さまざまな非暗号化/暗号化プロトコルのペアがあります。これらはすべてSSLまたはTLS暗号化を使用します。一部のサービスは、通常は暗号化されていないポートで暗号化接続を開始できるようにするstartTLSオプションを提供します。 SSHは、常に暗号化された接続を使用するアプリケーションです。これらの場合、暗号化はエンドツーエンドです。 (使用できるNULL暗号化アルゴリズムがあり、暗号化されたコンテンツは暗号化されずに転送されます。)

IPSECは管理者によって構成され、アプリケーションは接続が暗号化されているかどうかを認識しません。私は主に、セキュリティで保護されていない接続(VPN接続)を介してLAN間のトラフィックをブリッジするために使用されるIPSECを見てきました。 IPSECはルートの一部にのみ適用される可能性があるため、一部のネットワークセグメントでは、データは平文(暗号化されていない)で送信されます。

ネットワーク暗号化はあまり使用されていないので、選択肢があればアプリケーション暗号化を使用します。

1
BillThor