手探り
### ファイルを落として、調べてみる $ wget http://files.2015.volgactf.ru/poem/poem.pdf ### ファイル形式でだまされないように、ちゃんと確認。 $ file poem.pdf poem.pdf: PDF document, version 1.5
ちゃんとpdfでした。
中身を見てみる
行間が怪しい。バーコードか。ってことは2進数か。ASCII変換か。
改行してないものを0、改行を1として調べて行く。
地味な作業。
なんか途中で9bit部分が出て来た。ページじゃなくて全体としてビット数を数えていくっぽい。
とりあえずhttp://d.hatena.ne.jp/kobapan/20081225/1230156733 に当てはめて行く
{siz
まで読めたが、次から読めなかった。
文末か文頭にビットが入るのかな?
文末に0が入る事にしてみると、全て8ビットに入れ替わったページをまたぐ部分は米印を入れている
{ 01111011 s 01110011 i 01101001 z 01111010 e *01100101 _ 01011111 d 01100100 o 01101111 % *00100101 s 01110011 _ 01011111 m 01101101 A *01000001 t 01110100 t 01110100 e 01100101 r *01110010 _ 01011111 a 01100001 f 01100110 p *01110000 e 01100101 r 01110010 _ 01011111 ` *01100000 l 01101100 l 01101100 ~ 01111110
うむ。{で始まってるのに、}で終わってない。
最後は01111101になるべきだ。ということは文末は0or1で正しく出力出来た方か。
というかこの段階でなんとなくキーは予想出来そう笑
完成品
ASCII | 2進数 |
{ | 01111011 |
s | 01110011 |
i | 01101001 |
z | 01111010 |
e | ページまたぎ 01100101 |
_ | 01011111 |
d | 01100100 |
o | 01101111 |
e | ページまたぎ 01100101 |
s | 01110011 |
_ | 01011111 |
m | 01101101 |
a | ページまたぎ 01100001 |
t | 01110100 |
t | 01110100 |
e | 01100101 |
r | ページまたぎ 01111000 |
_ | 01011111 |
a | 01100001 |
f | 01100110 |
t | ページまたぎ 01110100 |
e | 01100101 |
r | 01110010 |
_ | 01011111 |
a | ページまたぎ 01100001 |
l | 01101100 |
l | 01101100 |
} | 01111111 |
答え
{size_does_matter_after_all}