株式会社わくわくスタディワールド

株式会社わくわくスタディワールド

今年の情報処理技術者試験で出そうな技術

試験問題を分析していると,「よく出る技術」と「あまり出ない技術」に偏りがあるのがわかります。
だから,「よく出る技術」だけ勉強しておけばいい,という単純な話では実はありません。

よく出る技術は,よく出るからこそ,単純に用語を聞かれるような問題は少なく,深く突っ込んだ問題が多く出てきます。同じ技術を視点を変えたり,計算問題で考えさせたり,いろいろな形で出題してきます。
そのため,一つの用語の対しての学習する内容が多くなってくるのです。

ちなみに,今回予想する,今年の情報処理技術者試験(秋期開催全区分)で一番出そうな技術は...

TLS(Transport Layer Security)
です。

なんか,「当たり前じゃん!」と石投げられそうなぐらいよく出てくる技術ですが。

だけど,このTLS,奥も深いですし,単に「TLSを使えばWebを暗号化できる」ぐらいの覚え方だと,基本情報技術者試験や情報セキュリティマネジメント試験でも太刀打ちできないんじゃないかと感じています。

ちなみに,以前はTLSはSSL(Secure Socket Layer)と呼ばれており,こちらの方が有名なので,SSL/TLSと並記されることも多いです。ただ,現在使うべき技術はTLSですし,近年の情報処理技術者試験や情報処理安全確保支援士試験では,TLSで統一されています。

ということで,レベル別に4段階で,TLSのポイントを挙げておきます。

レベル1.TLSでできること


TLSでできることは,大きく次の4つです。


  • 証明書を用いてサーバ(またはクライアント)を認証

  • 公開鍵暗号方式を用いて,通信で使用する共通鍵の鍵交換

  • 共通鍵暗号方式を用いて,通信を暗号化

  • ハッシュ関数を用いて,通信の改ざんを検知

それぞれ,PKI(Public Key Infrastructure),公開鍵暗号方式,共通鍵暗号方式,ハッシュ関数の仕組みの応用です。
1つ1つの技術とその仕組みを押さえておくことで,TLS以外の他の問題にも対応できます。このあたりを完全に理解できたら,TLS以外でも,情報セキュリティ問題の3分の1から半分ぐらいは解けるんじゃないかと感じています。

ちなみに,わくすたAIが分析した,情報処理技術者試験全体で一番出題されている内容は,「公開鍵暗号方式」でした。TLSとからめつつ,公開鍵暗号方式(認証,暗号化の両方)は,しっかり押さえておきましょう。

レベル2.TLSはトランスポート層


TLSは,名前のとおり,OSI基本参照モデルでのトランスポート層(Transport Layer)のセキュリティプロトコルです。役割的にセッション層も含まれるので,トランスポート層かセッション層かは議論があるところですが,少なくともアプリケーション層ではありません。
そのため,アプリケーションと合わせて使用することが基本です。

例えば,一番有名な,Webページを暗号化しているのは,TLS単独ではなく,HTTPS(Hyper Text Transfer Protocol Secure)です。これは,HTTP over TLS とも表されるとおり,HTTPをTLSで暗号化したものになります。
ちなみに,ポート番号は443番で,HTTPの80番とは異なります。

他だと,メールのSMTP(Simple Mail Transfer Protocol)でTLSを使うとSMTPS(SMTP over TLS)になります。SMTPはポート番号25番ですが,SMTPSではポート番号は465番になります。

レベル3.TLSで暗号化すると通信の中身が見えない


TLSは,アプリケーションでの通信内容全体を暗号化する仕組みです。
そして,暗号化を行うと,通信の内容を解読できなくなります。

そのため,ネットワークの途中で,通信内容を確認しようとしたときに困ることがあります。
具体的には,TLSでの暗号化中は,マルウェア(ウイルス)の検査を行うことができません。
Webページのクッキーなども暗号化されるため,クッキーを用いたサーバの振り分けなども行えません。
プロキシサーバなどで,URLの一部(ディレクトリやパスなど)の確認もできません。

暗号化は便利ですが,暗号化してしまうとできなくなることも多いのです。

レベル4.TLS1.3以外は脆弱性あり


このあたりは,情報処理安全確保支援士試験やネットワークスペシャリスト試験のレベルになりますが,SSL/TLSは歴史的に,SSL1.0,SSL2.0,SSL3.0,TLS1.0,TLS1.1,TLS1.2,TLS1.3とバージョンが上がってきました。
それぞれで改善ポイントがあり,TLS1.3が最新です。

最新の部分では,TLS1.2とTLS1.3での一番の違いとして,鍵交換のアルゴリズムがあります。
具体的には,鍵交換で使用する公開鍵暗号方式で,RSAがダメでDHE(Ephemeral Diffie-Hellman)やECDHE(Elliptic Curve DHE)にする必要があるというあたりがポイントです。
過去にさかのぼって通信が解読されないという性質,PFS(Perfect Forward Secrecy)がキーワードになってきます。

このレベルの方は,単に知識でこれを覚えるのではなく,ぜひIPAセキュリティセンターの「SSL/TLS暗号設定ガイドライン~安全なウェブサイトのために(暗号設定対策編)~」をご覧ください。
TLSについては近年,かなり深掘りして出題されています。

単に用語を「覚える」だけだと,情報処理技術者試験や情報処理安全確保支援士試験は合格レベルには到達できません。
1つ1つの用語について確実に理解し,必要なレベルの知識やスキルを身につけていきましょう。