令和1年度 秋期 ITパスポート 問70(テクノロジ)
出典:令和元年度 秋期 ITパスポート試験 公開問題 問70(独立行政法人情報処理推進機構(IPA))
大文字の英字から成る文字列の暗号化を考える。暗号化の手順と例は次のとおりである。この手順で暗号化した結果が“EGE”であるとき,元の文字列はどれか。
- アBED
- イDEB
- ウFIH
- エHIF
正解と解説を見る
正解:イ
【図の値】
暗号化の手順は、次のとおりです。
・手順1:表から英字を文字番号に変換する(A=0、B=1、…、Z=25)
・手順2:1文字目に1、2文字目に2、n文字目にnを加える
・手順3:26で割った余りを新たな文字番号とする
・手順4:表から文字番号を英字に変換する
例では、FAX → 5, 0, 23 → 6, 2, 26 → 6, 2, 0 → GCA となります。
【逆にたどって元の文字列を求める】
暗号化した結果の EGE を、手順を逆にたどって元に戻します。
・EGE を文字番号に変換すると、4, 6, 4 です
・n文字目からnを引くと、4 - 1 = 3、6 - 2 = 4、4 - 3 = 1 です(どれも0以上なので、26で割った余りの調整は不要です)
・3, 4, 1 を英字に変換すると、D, E, B です
元の文字列は DEB です。
【確かめ】
DEB → 3, 4, 1 → 1、2、3 を加えて 4, 6, 4 → 26で割った余りも 4, 6, 4 → EGE となり、一致します。
【選択肢の検討】
ア:BED を暗号化すると、1, 4, 3 → 2, 6, 6 → CGG になります。
ウ:FIH を暗号化すると、5, 8, 7 → 6, 10, 10 → GKK になります。
エ:HIF を暗号化すると、7, 8, 5 → 8, 10, 8 → IKI になります。
よって、正解は選択肢イです。