問題
問70
大文字の英字から成る文字列の暗号化を考える。暗号化の手順と例は次のとおりである。この手順で暗号化した結果が“EGE”であるとき、元の文字列はどれか。

- BED
- DEB
- FIH
- HIF
[出典:ITパスポート試験 令和元年度 問70]
スポンサーリンク
正解
正解は「イ」です。
解説
本問は、与えられた暗号化手順に従って逆算を行い、元の文字列を導き出す問題です。
暗号化手順は以下の通りです:
- 文字を数字に変換(A=1~Z=25)
- 各文字の位置にそのインデックスを加算(1文字目に+1、2文字目に+2…)
- 26で割った余りを新しい文字番号とする
- それを英字に戻す 問題の暗号化結果「EGE」は、文字番号にすると5, 7, 5となります。
これらから逆算するには、暗号化後の値からインデックスを引いて、26の倍数で調整すればよいです:
- 1文字目: 5 – 1 = 4(元の番号) → D
- 2文字目: 7 – 2 = 5(元の番号) → E
- 3文字目: 5 – 3 = 2(元の番号) → B
よって、元の文字列は「DEB」であり、選択肢「イ」が正解です。
ア(BED):
「B=2, E=5, D=4」で計算すると、(2+1, 5+2, 4+3) = (3, 7, 7) →「C, G, G」で暗号化結果と一致しません。
ウ(FIH):
「F=6, I=9, H=8」で計算すると、(6+1, 9+2, 8+3) = (7, 11, 11) →「G, K, K」となり一致しません。
エ(HIF):
「H=8, I=9, F=6」で計算すると、(8+1, 9+2, 6+3) = (9, 11, 9) →「I, K, I」で一致しません。
難易度
この問題は四段階の処理を追う必要があり、順を追って手計算できるかがポイントとなるため、初心者にはやや複雑に感じられます。しかし、例題が丁寧に示されており、パターンに気づければ正解は導きやすいため、中程度の難易度といえます。
スポンサーリンク
用語補足
暗号化:
情報を特定のルールに従って変換し、第三者に読まれないようにする技術です。代表例は「共通鍵暗号」や「公開鍵暗号」です。
文字コード:
文字と数字の対応関係を定めた規則のこと。ここではA=1、B=2…といった単純な対応関係を使っています。
剰余演算:
ある数を割ったときの余りを求める計算です。例えば 27 ÷ 26 の余りは 1です。この問題では文字番号を26で割って処理しています。
対策
この種の問題は手順通りに丁寧に追う力が必要です。まずは与えられた手順を紙に書いて整理し、例題の動き方を真似て逆算する訓練をするとよいです。模試などで繰り返しパターンに慣れておくと、試験本番でも焦らず対応できます。