Crypto
300 points
PNG over Telegraph
Analyze signal in this video.
You will able to get PNG, if you success to decode it.
https://youtu.be/Y6voaURtKlM
SECCON{SEMAPHORE_LINE_IS_THE_1ST_TELEGRAPH_SYSTEM_IN_THE_WORLD}
idzuna
動画のフレームを1秒ごとに切り出す.
オフセットは試行錯誤の結果,0.8秒がちょうどよかった.
動画を見ていると,腕木のシンボルは32通りあるっぽい.
三十二進数であると仮定して,PNGフォーマットのヘッダ構造や,特定の符号 (0や31) が連続することなどから,腕木シンボルと数値の対応関係を推測する.
動画の冒頭部分を見ると,腕木のシンボルと,A-Yまでのアルファベットの対応がわかる.
これら A-Y はそれぞれ三十二進数の 0 - 24 に対応しているっぽい.
残りの 25 - 31 も,A-Y までの規則性などからなんとなく推測できる.
わからないところは試行錯誤.
三十二進数に対応する32種類の画像を人力で探し出し,それらとマッチさせる.
単純に画像をベクトルと見なして,平均0, ノルム1になるように正規化しておき,内積の大きいやつを選べば識別できた.
腕木がぶれたりカメラの位置がずれたりするので,画像を1画素ずつずらしながらマッチングし,一番内積が大きいものを採用する.
これが出てくる.
三十二進数っぽい
三十二進数なので,それに加えて7つのシンボルがあるみたいだけど対応がよくわからない.