POLYALPHABETIC SUBSTITUTION PUZZLE 03【Cypher編】
はじめに
いつもブログをご覧いただきありがとうございます。
コーストFIRE中のIPUSIRONです😀
暗号文
LAFLUIWOYWPADUFHSNBVSWVNDZQDUF
RBPLUYQPLWLPHZRLUEDUBSYMIPRDIJ
HTYQUCUZYLKFRSKHZBUHULUEKPQFOY
LYSSAMWOCWHZOLGDTDDPPOFDDTGOPY
UDGWOYOSDRYKVVDVLAULRZYGWPLJZY
QKYPTWVLJIAFHHSWOMUVDDAPLMJLUE
PVLRNPDWFXWMQAFHZSEQCFAGQDFLJF
LHLDSWCLMQLFXUBULBDUBVPVWFQHWY
UHRHJGSOCUZZXAGFVLILQVAFDARKPQ
LZCQAGULJBUCZAMPL
ヒント
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
DUF LUE
Try to find rotations which result in very few low frequency letters such as K, Q, X, J or Z.
解答への道
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
1:暗号文を眺める
・単語の区切りがない。
・暗号文メッセージが長い。
多換字式暗号なので、そのまま頻度分析はできません。やるなら、鍵長を推測・特定してから、グループ分けしてからなら、頻度分析できます。
・解読すべき暗号文キーワードは"PVLRNRDWF"
2:繰り返しの3連字を探す
dCodeで繰り返し文字列を探します。
最初は4連字を探しましたが、2回以上のものがありませんでした[1]本当は5連字が望ましいですが、4連字さえも見つかりませんでした。『暗号技術のすべて』P.77。
次に3連字を探します。
左側の結果から2以上のものを探します。
7つ("LUE"、"WOY"、"DUF"、"DUB"、"KPQ"、"AFH"、"CUZ")の3連字が見つかりました。
ヒントの1行目には"DUF"と"LUE"が示されていました。
そこで、この2つに注目することにします。
[1]"DUF"間の文字間隔を調べる
LAFLUIWOYWPADUFHSNBVSWVNDZQDUFRBPLUYQPLWLPHZRLUEDUBSYMIPRDIJHTYQUCUZYLKFRSKHZBUHULUEKPQFOYLYSSAMWOCWHZOLGDTDDPPOFDDTGOPYUDGWOYOSDRYKVVDVLAULRZYGWPLJZYQKYPTWVLJIAFHHSWOMUVDDAPLMJLUEPVLRNPDWFXWMQAFHZSEQCFAGQDFLJFLHLDSWCLMQLFXUBULBDUBVPVWFQHWYUHRHJGSOCUZZXAGFVLILQVAFDARKPQLZCQAGULJBUCZAMPL
--- ---
「1番目の"DUF"」と「2番目の"DUF"」の文字間隔=15文字
共通する因数は、1, 2, 3, 5, 15
[2]"LUE"間の文字間隔を調べる
LAFLUIWOYWPADUFHSNBVSWVNDZQDUFRBPLUYQPLWLPHZRLUEDUBSYMIPRDIJHTYQUCUZYLKFRSKHZBUHULUEKPQFOYLYSSAMWOCWHZOLGDTDDPPOFDDTGOPYUDGWOYOSDRYKVVDVLAULRZYGWPLJZYQKYPTWVLJIAFHHSWOMUVDDAPLMJLUEPVLRNPDWFXWMQAFHZSEQCFAGQDFLJFLHLDSWCLMQLFXUBULBDUBVPVWFQHWYUHRHJGSOCUZZXAGFVLILQVAFDARKPQLZCQAGULJBUCZAMPL
--- --- ---
・「1番目の"LUE"」と「2番目の"LUE"」の文字間隔=36文字[2]'l’のインデックスの差分を取ると計算できます。"LUE"間の文字数をカウントして33と判断しないようにしてください。
⇒約数=1, 2, 3, 4, 6, 9, 12, 18, 36
・「2番目の"LUE"」と「3番目の"LUE"」の文字間隔=96文字
⇒約数=1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48, 96
共通する因数は、1, 2, 3, 4, 6, 12
the ←平文
??? ←鍵
LUE ←暗号文
したがって、[1][2]の共通因数を取ると、2と3になります。
鍵長が2というのは考えにくいので、3と仮定します。
4:暗号文メッセージを3グループに分割して、頻度分析する
暗号文メッセージに1~3のインデックスを割り当てます。
LAFLUIWOYWPADUFHSNBVSWVNDZQDUFRBPLUYQPLWLPHZRLUEDUBSYMIPRDIJ
123123123123123123123123123123123123123123123123123123123123
HTYQUCUZYLKFRSKHZBUHULUEKPQFOYLYSSAMWOCWHZOLGDTDDPPOFDDTGOPY
123123123123123123123123123123123123123123123123123123123123
UDGWOYOSDRYKVVDVLAULRZYGWPLJZYQKYPTWVLJIAFHHSWOMUVDDAPLMJLUE
123123123123123123123123123123123123123123123123123123123123
PVLRNPDWFXWMQAFHZSEQCFAGQDFLJFLHLDSWCLMQLFXUBULBDUBVPVWFQHWY
123123123123123123123123123123123123123123123123123123123123
UHRHJGSOCUZZXAGFVLILQVAFDARKPQLZCQAGULJBUCZAMPL
12312312312312312312312312312312312312312312312
インデックス1、インデックス2、インデックス3のグループに分けます。それぞれのグループをグループ1、グループ
2、グループ3と呼ぶことにします
グループ1 LLWWDHBWDDRLQWHLDSIDHQULRHULKFLSWWODDODOUWORVVUZWJQPVIHWUDLLPRDXQHEFQLLDCQXUDVWHUHSUXFIVDKLQUBZP
グループ2 AUOPUSVVZUBUPLZUUYPITUZKSZHUPOYAOHLTPFTPDOSYVLLYPZKTLAHOVAMUVNWWAZQADJHSLLULUPFWHJOZAVLAAPZALUAL
グループ3 FIYAFNSNQFPYLPREBMRJYCYFKBUEQYSMCZGDPDGYGYDKDARGLYYWJFSMDPJELPFMFSCGFFLWMFBBBVQYRGCZGLQFRQCGJCM
それぞれのグループで頻度分析します。
dCodeを使いました。
[1]グループ1を頻度分析した結果
[2]グループ2を頻度分析した結果
[3]グループ3を頻度分析した結果
[1]~[3]の結果とビジュネル表より、次を主張できます。
・グループ1の頻度分析の結果より、平文文字’e’に対応する暗号文文字の候補は、’D’、’L’、’W’⇒それぞれの鍵文字の候補は’Y’、’G’、’R’
・グループ2の頻度分析の結果より、平文文字’e’に対応する暗号文文字の候補は、’U’、’A’、’L’⇒それぞれの鍵文字の候補は’P’、’V’、’G’
・グループ3の頻度分析の結果より、平文文字’e’に対応する暗号文文字の候補は、’F’、’Y’、’G’⇒それぞれの鍵文字の候補は’A’、’T’、’B’
まだ手がかりが少ないし、このままでは誤った方向に進む可能性があります。
これについては、いったん保留しておきましょう。
5:"the"から鍵キーワードを特定する
“LUE"、"WOY"、"DUF"、"DUB"、"KPQ"、"AFH"、"CUZ"の3連字は複数回現れていることは前述しました。
複数回現れるということは、このうちのどれかが"the"に復号される可能性が高いといえます。
[1]"LUE"が"the"に対応すると仮定した場合⇒ここでの鍵は"CMZ"⇒"LUE"の前に45文字(3の倍数)ある⇒鍵キーワードは"CMZ"
[2]"WOY"が"the"に対応すると仮定した場合⇒ここでの鍵は"CGY"⇒(1番目の)"WOY"の前に6文字ある⇒鍵キーワードは"CGY"
[3]"DUF"が"the"に対応すると仮定した場合⇒ここでの鍵は"JMA"⇒"DUF"の前に12文字ある⇒鍵キーワードは"JMA"
[4]"DUB"が"the"に対応すると仮定した場合⇒ここでの鍵は"JMW"⇒"DUB"の前に48文字ある⇒鍵キーワードは"JMW"
[5]"KPQ"が"the"に対応すると仮定した場合⇒ここでの鍵は"QHL"⇒"KPQ"の前に84文字ある⇒鍵キーワードは"QHL"
[6]"AFH"が"the"に対応すると仮定した場合⇒ここでの鍵は"GXC"⇒"AFH"の前に160文字ある⇒3で割ると1余る⇒鍵キーワードは"CGX"
[7]"CUZ"が"the"に対応すると仮定した場合⇒ここでの鍵は"IMV"⇒"CUZ"の前に65文字ある⇒3で割ると2余る⇒鍵キーワードは"UZC"
英単語らしい鍵があれば、それが正しい鍵の可能性が高いといえましたが、すべてランダムな3文字でした。
こうなった場合は、実際に得られた鍵単語で復号して、英文らしいものを探します。
dCodeのビジュネル暗号の暗号化ツールを活用します。
ただし、デフォルト設定だと、Cypherで与えられたビジュネル表と違っています。
Cypherのビジュネル表は最初の行が"BC…ZA"です。一方、dCodeのデフォルトのビジュネル表は最初の行が"AB…Z"です。
これを調整するには、2つの方法があります。
①ツールに与える鍵を+1する。例えば、鍵キーワードが"ABC"なら、ツールには"BCD"を指定する。
②設定のアルファベットの並びを調整する。デフォルトでは"ABCDEFGHIJKLMNOPQRSTUVWXYZ"になっているが、"ZABCDEFGHIJKLMNOPQRSTUVWXY"にする。
今回は後者を選択します。
[1]鍵キーワード:"CMZ"
INFIHITBYTCAAHFEFNYISTINAMQAHFOOPIHYNCLTYPEMRIHEAHBPLMFCRAVJEGYNHCRMYIXFOFKEMBRUUIHEHCQCBYILSPNMTBCTUZLYGAGDACPLSDAGGLCYRQGTBYLFDOLKSIDSYARYRWLGTCLGMYNXYMGWSYJFNFEUSTBMRIDANPIZJIHEMILOAPAJFUJMNNFEMSBDCCNGNQFIWFIULAFWZYMNYFUHBRYBAHBSCVTSQEJYRUREWGPBCRMZUNGCILFYQSNFANRHCQIMCNNGRYJYHCWNMMY
[2]鍵キーワード:"CGY"
ITGINJTHZTIBANGELOYOTTOOASRANGOUQINZNIMTEQESSINFANCPRNFISABKEMZNNDRSZIDGOLLESCRAVINFHIRCHZIRTPTNTHDTAALEHAMEAIQLYEAMHLIZRWHTHZLLEORLSOESEBRESWRHTIMGSZNDZMMXSEKFTGEATTHNROEATQIFKINFMOMOGQAPGUPNNTGESTBJDCTHNWGICGIAMALXZENNEGUNCRECANCSIWTYREPZRASECHPHDRSAUTHCOMFERSTGATSHIRISDNTHREKYNDWTNME
[3]鍵キーワード:"JMA"
BNEBHHMBXMCZTHEXFMRIRMIMTMPTHEHOOBHXGCKMYOXMQBHDTHAILLYCQTVIXGXGHBKMXBXEHFJXMAKUTBHDACPVBXBLRINLMBBMUYEYFTGCTCOESCTGFECXKQFMBXEFCHLJLICLYZKYQPLFMCKZMXGXXFGVLYIYNEXURMBLKICTNOBZIBHDFIKHAOTJENJLGNEXMRUDBVNFGQEBWEBUKTFVSYLGYENHAKYATHALCUMSPXJXKUQXWFIBBKMYNNFVIKYYPLNETNQACPBMBGNFKYIRHBPNLFY
[4]鍵キーワード:"JMW"
BNIBHLMBBMCDTHIXFQRIVMIQTMTTHIHOSBHBGCOMYSXMUBHHTHEILPYCUTVMXGBGHFKMBBXIHFNXMEKUXBHHACTVBBBLVINPMBFMUCEYJTGGTCSESGTGJECBKQJMBBEFGHLNLIGLYDKYUPLJMCOZMBGXBFGZLYMYNIXUVMBPKIGTNSBZMBHHFIOHASTJINJPGNIXMVUDFVNJGQIBWIBUOTFZSYPGYINHEKYETHELCYMSTXJBKUUXWJIBFKMCNNJVIOYYTLNITNUACTBMFGNJKYMRHFPNPFY
[5]鍵キーワード:"QHL"
USTUMWFGMFHOMMTQKBKNGFNBMREMMTATDUMMZHZFDDQRFUMSMMPBQARHFMAXQLMZMQDRMUCTAKYQRPDZIUMSTHEOGMUQGBSAFGQFZNXDUMLRMHDXXRMLUXHMDVUFGMXKRAQYENREDODDFIQUFHZSRMZCMYLKEDXRSTQZGFGADNRMSDUEXUMSYNZAFDMOTGOAZSTQRGNIQOSUZVTUBTUZZMKKLDAZDTGMPDDPMMPEHJFXEQOMDZFQBUBGQDRNGSUONZRDEESTMSFTHEURQZSUDDXKMQISAYD
[6]鍵キーワード:"CGX"
ITHINKTHATICANHELPYOUTOPASSANHOURINANINTERESTINGANDPROFITABLEMANNERSAIDHOLMESDRAWINGHISCHAIRUPTOTHETABLEIAMFAIRLYFAMILIARWITHALLFORMSOFSECRETWRITINGSANDAMMYSELFTHEAUTHOROFATRIFLINGMONOGRAPHUPONTHESUBJECTINWHICHIANALYZEONEHUNDREDANDSIXTYSEPARATECIPHERSBUTICONFESSTHATTHISISENTIRELYNEWTOME
[7]鍵キーワード:"UZC"
QACQUFBOVBPXIUCMSKGVPBVKIZNIUCWBMQUVVPIBLMMZOQUBIUYXYJNPOIIGMTVVUZZZVQKCWSHMZYZHRQUBPPNKOVQYPXAJBOZBHWTLDITAIPMTFAITDTPVZDDBOVTSAWYHAVAALXZLOEYDBPIOZVVKVUTTALGNACMHPBOJZVAIAMQMGQUBUVIWNMIWCCWJVACMZPJQZKADVDCQJCQHIISTHLJVLCCUYZLYIUYAPSBFNMWVZHOMJDXOZZZWCADKVINLNAACIAOPPNQZZVADZLGGUZEAJUL
[6]の以外は、英文らしさはありません。
ゆえに鍵キーワードが"CGX"に確定しました。
復号結果が見やすいように適当に場所に空白と改行を入れると、次のようになります。
I THINK THAT I CAN HELP YOU TO PASS AN HOUR IN AN INTERESTING AND PROFITABLE MANNER SAID
HOLMES DRAWING HIS CHAIR UP TO THE TABLE
I AM FAIRLY FAMILIAR WITH ALL FORMS OF SECRET WRITINGS AND AM MYSELF THE AUTHOR
OF A TRIFLING MONOGRAPH UPON THE SUBJECT IN WHICH I ANALYZE ONE HUNDRED AND SIXTY SEPARATE
CIPHERS BUT I CONFESS THAT THIS IS ENTIRELY NEW TO ME
6:解読すべきキーワードを特定する
“PVLRNRDWF"は"MONOGRAPH"に解読されています。
これが正解のキーワードになります。
解答
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
↓↓下にスクロール↓↓
補足
アーサー・コナン・ドイル著『踊る人形 – シャーロック・ホームズの帰還』("The Adventure of the Dancing Men – The Return of Sherlock Holmes")からの2ヶ所抜粋して、つなげたたものが平文メッセージになっています。
“I think that I can help you to pass an hour in an interesting and profitable manner,” said Holmes, drawing his chair up to the table
I am fairly familiar with all forms of secret writings, and am myself the author of a trifling monograph upon the subject, in which I analyze one hundred and sixty separate ciphers, but I confess that this is entirely new to me
解読手法をより知りたい方へ
参考図書
カシスキー検査については何度か取り上げています。
・『暗号技術のすべて』P.75-
・『Pythonでいかにして暗号を破るか』P.379-
文字の間隔(スペーシング)の数え方を知りたい方にもどうぞ。
おわりに
以上で多換字式暗号ステージ(ルーム 04)はすべてクリアしました。