わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

暗号解読

 今期の講義科目のレポート課題(暗号解読)は,いつものように単一換字暗号でした.
 課題を示したのも,提出を締め切ったのも,6月でしたが,採点が8月に入ってしまい,Teamsでの解答・解説の投稿も,つい先日のことです.
 といったところで暗号文です.

JRIXATTERBXIHYDBDADJRAXEDGRJRBPDHQTJTATY
DODJXOXIHADVRDIDJRARJDYDOXRIHGRJRITOXARJ
HODHQTATVTQPDHATJTJXAARJDYDOXMDRIHYDTHAD
OXRYYRBDADBHQTADBXAMDAADJXTQTYRYTFRPRJHT
JJRFXYHMDJRJRYYXBRFRBTMRERYYXMDVRJJXABRI
XARJRYYRJDADJRAXOXRIHYRYDTJDADMRMRERIXER
IXFRYPDHORTBTYXDTYRYDJDIDOXORIXFRHYRFRHM
DADJRERIXERIXATBTYRYYXFDBXAXAPDITVRFDMRA
XAADVDHFRRITFRYRTOXVRARTJRBDIXPDITMDDBDI
DBTTADVRJPRYHBTABTODIDGDHADVHJHBPHHOXRIH
JDTYHFRDBDIDBTTJXTJTADADGTIHADEDFTBXTATB
TYXMROXJRJHBTYXDTYRJDADJRAXEDPDJDODITBRI
XYRYDBTYYRIRJPRYHRADRJHQTATJRJXYXVRYXABR
TYDTYYXMDPDTYDJDIDADJPRYHFRMTADFRBTYXDJD
HVRQHFRART

 今回の課題で示したヒントは,以下の通りです.

  • 原文は,Web上で公開されている,日本語で書かれた文章の一部で,それをローマ字で表記したものが平文です.
  • 句読点や記号類は取り除いています.「五千円」をローマ字にすると「gosenen」です*1
  • 平文文字のうち最も出現頻度の大きいのは「a」です.
  • 原文には,「五千円」と「五万円」が1回ずつ出現します.

 解読にあたり,暗号文の文字ごとの出現頻度をもとに,平文の「a」になる暗号文文字が「R」なのを把握したら,次は,平文の「gosenen」と「gomanen」になる文字列を見つけます.「enen」「anen」の暗号文は「●▲●▲」「R▲●▲」であり,「FDBXAXA」「FDMRAXA」として,発見することができます.
 平文(解読結果)は割愛します.原文は江戸川乱歩二銭銅貨青空文庫)の,以下のところです.

彼に云わせると、その金を馬鹿正直に届け出るのは、愚なことであるばかりでなく、同時に、非常に危険なことでもあるというのであった。其筋の専門の刑事達が、約一箇月もかかって探し廻っても、発見されなかったこの金である。仮令このまま我々が頂戴して置いた所で、誰が疑うものか、我々にしたって、五千円よりは五万円の方が有難いではないか。それよりも恐しいのは、彼奴、紳士泥坊の復讐である。こいつが恐しい。刑期の延びるのを犠牲にしてまで隠して置いたこの金を、横取りされたと知ったら、彼奴、あの悪事にかけては天才といってもよい所の彼奴が、見逃して置こう筈がない

 この直前には「彼の電気工場へ持参すれば、五千円の懸賞金に与ることの出来る五万円であった。だが、松村はそうしない積りだと云った。そして、その理由を次の様に説明した。」とあります.道徳のモラルジレンマと,いくらか関連しますが,セキュリティでは,暗号解読または素因数分解の問題に懸賞金がかけられ,答えを得たというとき,「答えと求め方を示して懸賞金をもらう」か「懸賞金はもらえないけれど求め方を自分の中で持っておく」かの選択の話が,近いと言っていいでしょう.
 「二銭銅貨」の本文で出現する暗号文は,「南無阿弥陀仏」と読点で構成されており,さらに読み進めると,解読の方法が画像になっています.これまでの,青空文庫の文章を出典とするレポート課題と同じく,使用していません.

*1:小学校で学習する,「ごせんえん」に対応するローマ字の表記は「gosen'en」です.