公開鍵暗号方式は選択肢からどう見分けるか
基本情報技術者試験 平成29年度春期 午前 問40 / セキュリティ › 情報セキュリティ
過去問にチャレンジ
公開鍵暗号方式の暗号アルゴリズムはどれか。
- ア
AES
- イ
KCipher-2
- ウ
RSA
- エ
SHA-256
会話形式の解説
講師まず、公開鍵と秘密鍵の組を使う方式かどうかに注目します。
受験者私はAESも暗号なので候補だと思いました。鍵の種類が違うのですか。
講師はい。AESは共通鍵を使うブロック暗号です。データを一定の大きさの単位で処理しますが、公開鍵と秘密鍵の組は使いません。
受験者KCipher-2も暗号ですが、AESとは処理方法が違うのですね。
講師そのとおりです。KCipher-2は共通鍵を使うストリーム暗号です。処理方法はAESと異なっても、公開鍵暗号方式ではありません。
受験者では、RSAは公開鍵と秘密鍵の組を使うのでしょうか。
講師はい。RSAが公開鍵暗号方式のアルゴリズムなので、正解です。安全性は大きな整数の素因数分解の難しさに基づきます。
受験者SHA-256は鍵を使う暗号だと考えてよいですか。
講師いいえ。SHA-256は入力データから256ビットのハッシュ値を求める関数です。鍵を使って暗号化・復号する方式には分類しません。
受験者公開鍵と秘密鍵の組を使うRSAを選び、AESとKCipher-2は共通鍵暗号、SHA-256はハッシュ関数として分ければよいのですね。
講師はい。ブロック暗号とストリーム暗号の違いに気を取られず、まず鍵の使い方と、そもそも暗号化方式かどうかを確かめましょう。
まとめ
公開鍵暗号方式に該当するのはRSAです。RSAは公開鍵と秘密鍵の組を使います。AESとKCipher-2はどちらも共通鍵暗号で、SHA-256はハッシュ値を求める関数です。鍵の使い方と方式の種類を分けて考えると判断できます。
解答・解説
正解はウです
この問題のテーマ
暗号アルゴリズムを、公開鍵暗号方式・共通鍵暗号方式・ハッシュ関数に分類できるかを問う問題です。
解き方の考え方
まず、その方式が公開鍵と秘密鍵の組を使うか、暗号化と復号に共通の鍵を使うかを見分けます。ハッシュ値を求める関数は暗号化方式とは区別します。この基準で四つを分類すると、公開鍵暗号方式に該当するのはウです。
選択肢ごとの解説
- ×ア AESAESは共通鍵を用いるブロック暗号です。データを一定の大きさの単位で処理しますが、公開鍵と秘密鍵の組を使う方式ではありません。
- ×イ KCipher-2KCipher-2は共通鍵を用いるストリーム暗号です。ブロック暗号とはデータの処理方法が異なりますが、公開鍵暗号方式には該当しません。
- ○ウ RSARSAは公開鍵暗号方式のアルゴリズムです。公開鍵と秘密鍵の組を使い、その安全性は大きな整数の素因数分解の難しさに基づきます。したがって、設問の答えはウです。
- ×エ SHA-256SHA-256は、入力データから256ビットのハッシュ値を求める関数です。鍵を使って暗号化・復号するアルゴリズムではないため、公開鍵暗号方式には該当しません。
POINT
- 公開鍵暗号方式を探すときは、公開鍵と秘密鍵の組を使うかに着目します。
- 共通鍵暗号にはブロック暗号とストリーム暗号があり、どちらも公開鍵暗号とは区別します。
- ハッシュ関数はハッシュ値を求めるもので、暗号化方式として分類しません。
