Easy1
Cryptographyの問題
https://play.picoctf.org/practice/challenge/43
/icons/hr.icon
Writeupt6o_o6t.icon
問題文を読む
One-time padが、キーが分かっているときに安全ではないという内容について考える
One-time padは、平文と同じ長さのキーを使う(or 取り出す)
平文をA、キーをB、暗号文をCとする
https://scrapbox.io/files/650951d0c1db3d001c57f712.png
暗号文(C)とキー(B)のXORから、平文が分かる
注:これはバーナム暗号であって、使い捨てパッドとイコールではないらしいt6o_o6t.icon
暗号技術入門を読むうえで、注意が必要
方針
キーと暗号文のXORを取る
テーブルを見る
XORではない気がしてきた
cf. Easy1#650955a98458750000b3e3af
新しい方針
$ iについて、暗号文の各文字$ c_iと、キーの各文字$ k_iを考える
テーブル上で交差する点にある文字を見ていく
この方針だと、MTUFBSQOJGPという無意味な文字列が出てくる
テーブルの意味を改めて考える
暗号化するためのテーブルかもしれない
復号するには、$ k_iの列で$ c_iが出現した行を調べる必要があるのでは?
各$ k_i、$ c_iについて、の方針で調べてみる
意味のある文字列が現れたので、picoCTF{}で囲って答えが分かりましたt6o_o6t.icon