暗号スイート
暗号方式をネゴシエートします
「暗号スイート」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
暗号スイートとは
暗号スイートは、TLS接続で組み合わせて使用する暗号アルゴリズムの名前付きセットです。
ハンドシェイク中に、クライアントとサーバーは共通のリストから使用するスイートをネゴシエートします。
スイート名の構成
TLS 1.2のスイート名には、複数のアルゴリズムがまとめて示されています。
例:ECDHE_RSA_WITH_AES_128_GCM_SHA256。
- ECDHE = 鍵交換
- RSA = 認証
- AES_128_GCM = バルク暗号化
- SHA256 = メッセージ認証 / PRF
鍵交換コンポーネント
鍵交換アルゴリズムによって、共有秘密を確立する方法が決まります。
- ECDHEとDHEは前方秘匿性を提供します。
- 静的なRSA鍵交換(古い方式で、TLS 1.3では削除されています)は前方秘匿性を提供しません。
認証コンポーネント
認証アルゴリズムは、証明書の鍵タイプに関連付けられたサーバーの身元を証明します。
- RSA証明書ではRSA署名を使用します。
- ECDSA証明書では楕円曲線署名を使用します。楕円曲線署名はより小さく、高速です。
バルク暗号化
バルク暗号は、実際のアプリケーションデータを暗号化します。
- AES-GCMとChaCha20-Poly1305は、最新のAEAD暗号です。
- 古いCBCモードは安全性が低く、段階的に廃止されています。
AEAD暗号
AEAD(関連データ付き認証暗号)のような暗号は、暗号化と完全性の保護を1回の処理で提供します。
TLS 1.3ではAEADが必須となり、古いモードに存在したパディング関連攻撃の一種が排除されました。
TLS 1.3で簡略化されたスイート
TLS 1.3の暗号スイートは、鍵交換と認証が別々にネゴシエートされるため、非常に短くなっています。
例:TLS_AES_128_GCM_SHA256では、バルク暗号とハッシュだけが示されます。
利用可能なスイートの一覧表示
使用しているOpenSSLビルドがサポートする暗号スイートを一覧表示できます。
openssl ciphers -v 'HIGH:!aNULL:!MD5'ネゴシエーションの順序
通常はサーバーがスイートを選択します。サーバー側の暗号スイート優先を有効にすると、クライアントに選択を任せず、双方がサポートする中で最も強力なスイートを選びます。
これにより、クライアントが弱い暗号方式へ誘導することを防げます。
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';安全なスイートの選択
安全な設定にするためのベストプラクティスは次のとおりです。
- 前方秘匿性(ECDHE/DHE)を必須にします。
- AEAD暗号(GCMまたはChaCha20)を使用します。
- RC4、3DES、CBCのレガシー暗号を無効にします。
- TLS 1.2と1.3だけを優先します。
設定のテスト
サーバーが実際にネゴシエートする内容をテストし、受け入れるスイートと拒否するスイートを確認します。
nmap --script ssl-enum-ciphers -p 443 example.com確認問題
スイートECDHE_RSA_WITH_AES_128_GCM_SHA256で、前方秘匿性を提供する部分はどれですか?
まとめ
暗号スイートには、鍵交換、認証、バルク暗号化、ハッシュがまとめられていることを学びました。
- ECDHEは前方秘匿性をもたらします。
- AES-GCMのようなAEAD暗号は、データの暗号化と完全性の保護を同時に行います。
- TLS 1.3では簡略化されたスイート名を使用します。
次は、サーバーの証明書の検証に焦点を当てます。
よくある質問
「暗号スイート」レッスンは無料ですか?
はい。「暗号スイート」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「暗号スイート」で何を学びますか?
暗号方式をネゴシエートします ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「暗号スイート」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。