セキュリティ|平成21年度 秋期 ITパスポート試験 問62
小文字の英字からなる文字列の暗号化を考える。次表で英字を文字番号に変換し,変換後の文字番号について 1 文字目分には 1 を,2 文字目分には 2 を,…,n 文字目分には n を加える。それぞれの数を 26 で割った余りを新たに文字番号とみなし,表から対応する英字に変換する。
例 fax → 6,1,24 → 6+1,1+2,24+3 → 7,3,27 → 7,3,1 → gca
この手続で暗号化した結果が “tmb” であるとき,元の文字列はどれか。
| 文字番号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 英字 | a | b | c | d | e | f | g | h | i | j | k | l | m |
| 文字番号 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 英字 | n | o | p | q | r | s | t | u | v | w | x | y | z |
- she
- shy
- ski
- ✓ これが正解sky
解説
暗号のほうから戻すので、足した数をそのまま引きます。
この手続は、文字を番号に直してから位置の数を足すものでした。足す数は位置で決まり、一文字目には一、二文字目には二を足します。設問は逆向きなので、位置ぶんの数を引いて元へ戻します。暗号は三文字で、番号に直すと二十と十三と二になります。一文字目からは一を引くので、十九という数になりました。二文字目からは二を引いて、十一になります。三文字目からは三を引くのですが、二から三は引けません。そこで二十六を足してから引き、二十五としました。番号を文字に戻すと、十九と十一と二十五になります。表を引くと、それぞれ対応する英字が並びました。その三文字を挙げた肢が当たり、意味のある短い語になります。引けないときに二十六を足す一手が、この問の勘どころでした。暗号の考え方は、鍵と手続をそろえて初めて戻せます。
ほかの選択肢はなぜ違うのか
- 三文字目が別の英字になっている肢のほうです。三文字目からは三を引く必要が在りました。引けないときに二十六を足す一手を忘れると、ここへ落ちます。前の二文字は合っているので、いちばん紛れる形でした。最後の一文字だけが違っています。
- やはり三文字目が違う肢というのが、こちらです。二文字目までは、確かに正しく戻せています。ところが最後の位置で、引く数を取り違えました。位置ぶんの数は、一つずつ増えていきます。三文字目に足す数は三でした。
- 二文字目と三文字目が違う肢が、こちらに当たります。引く向きを取り違えると、この辺りの並びになります。暗号にするときは足し、戻すときは引くのが手続でした。向きを逆に読むと、二文字目からずれていきます。最初の一文字だけが合っています。
この問題に関係する言葉
- 暗号
出典:平成21年度 秋期 ITパスポート試験 問62(改変:原典の図表をテキストに書き起こした)
同じ単元をまとめて解くならセキュリティへ。
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)