今期の講義科目のレポート課題(暗号解読)は,いつものように単一換字暗号でした.
暗号文です.
ULBEBWTEBWUWBWUSIQYYHYBLBYDOWQSCEBWBLUWT LIEBLDHSYUWRWUSFWBWTSDSOWHWBLDRWBSBSPWPE BEYBLUWWUUEPLEUULPWQWBYRWENEDWTSDSFSUSIE BWLHEULBYILUWTWLDWIYPSRSHSILPWNEBBLDHEUY PLHECWUULBEUWPWNYDSTLIEBLDHSYUWRWBWILPWH EIWNYDESBWHEUWCWEBSBYRSDSUYTEFSUYOYDWYUW TLNERSYHQWDSYHEISDEUSCEUYBETEFSULEHEULBS BSPLBEUWDSRWHSYUWNETWDDSTLIEBLDOWUSCYUWC EDECWUUWCWUUWUSHLDEDRSTSPWUWSHWILUWQSHET WBWHLUWHSYUWHSILEBLUSEUUWEPWHWIWDEHLDHEU YDSSBYPYBWBYUSHHEDHEUWHSYHWPWHWDNEKKYDCW BWIEUYRYEUWHEBWHEUYEDEPYTEBSDSHYOWUWTSPE UWEDEWNWDSWIYSUSBSTSTEUYBWIWDWBWUUWNWDDL DRWBSBSTWRLSEUYTLULDEOLIWILUWBWHSYEUULIQ YYHYBLBYDOWPWOWTEFSHEDWOWIWPYUSTEIYUSTSD WHEDETEULEIYUSHLDHEUYDSULDNQSYDSHYBETWBW IWYHYCSDQWIEUSHEUWPEBWIEOWHWHEULHSILOWUY EUWIEBELUWIEHYIYQSYRLWIY
解読にあたっての諸情報です.
- 原文は,書籍に収録された文章(日本語・会話を含む)の一部で,句読点などの記号類を取り除いてから,ローマ字で表記したものが平文です.
- ローマ字はヘボン式ではありません.訓令式に近いですが一部異なります.原文の助詞の「は」「を」は,平文では「ha」「wo」にしています.
- 平文文字のうち出現頻度が最も大きいのは「a」です.
- 原文には「メリケン」が3回出現します.
原文は,危し!! 潜水艦の秘密の「「敵か、味方か!」と龍介君が呼びかけた。」から「それが点いたり消えたりするようである。」までです.Pythonを用いた単一換字暗号の解読のコードと同様に,上記の暗号文を文字列として変数sに格納してから,「s.translate(str.maketrans('BCDEFHIKLNOPQRSTUWY', 'kbniwsrpezghydomtau'))」により,平文を得ます.
昨年度の暗号解読は:https://takehikom.hateblo.jp/entry/2024/06/29/225616
といったところで問題です.
『危し!! 潜水艦の秘密』に書かれた以下の暗号文は,どのような暗号方式が採用されているのでしょうか?
- ○ツエイ ハ ヨ○八時三十分 ヨリ行ウ ○ショップ ○ンセン同伴ス
- ゴクロウ○マ スミタ○ ウエハ コレデ シツレイ オチノ○ル ○ンセン
解答です.これは換字式暗号です.単一換字暗号の簡単な場合,とみなすことができます.
最初に出現する暗号文「○ツエイ ハ ヨ○八時三十分 ヨリ行ウ ○ショップ ○ンセン同伴ス」を,「①ツエイ ハ ヨ②八時三十分 ヨリ行ウ ③ショップ ④ンセン同伴ス」と読み替えます.そして,①にサ,②にル,③にビ,④にヤを割り当てることで,意味のあるメッセージになります.
「ゴクロウ○マ スミタ○ ウエハ コレデ シツレイ オチノ○ル ○ンセン」についても同様に「ゴクロウ①マ スミタ② ウエハ コレデ シツレイ オチノ③ル ④ンセン」としたあと,同じ割り当てで,メッセージが作れます.
龍介君は,1つ目の暗号文から,換字ルール(鍵)を見出し,その鍵を2つ目の暗号文にも適用したのでした.