2007/12/13にとある呟きが投稿されました。以下のようなものです。
tdetyttstttettdeshhhhhhh h ilmmHttttttttat oi tbi aaaaaaaaa o
一見すると何の変哲もない文字列に見えますが、よく見ると違和感っぽいものが浮き彫りに…。
なんと…全く意味不明な英字の羅列なのです!
ひいいいええええええっ!
恐ろしく恐ろしい怪文です!
そして更に奇妙な事に、文字a
、h
、t
は連続する傾向にある点も気になります。一体誰が何の目的でこんな物を作り出してしまったのでしょうか?
解読するのは骨が折れそうです。暗号解読の専門家の栗原さんに相談したいくらいです。
BWT
同じ文字が連続するという変換と言えば、圧縮力を磨いている読者ならピンくるかもしれません。そう、あの有名なBurrows Wheeler Transform(BWT)です。
しかしその逆変換には復元情報が必要となります。元の文字列を見てもそれらしきものが見当たりません。
文字数が70なので70未満の数値が必要…。そうなると70未満の数値を総当たりで試してみる事になります。その結果まともっぽい英文は得られましたが、微妙に変でした。
BWT2
次は接尾辞配列を経由して構築するBWTの逆変換処理を施してみました。復元の為の70以下の数値を手あたり次第試す羽目になります。結論から言うとやはり失敗です。
真の解
私は真に驚くべき解法を導き出しましたが、それをここに書くには余白が狭過ぎます。
と、ここまでは茶番です。長い間お付き合い下さりありがとうございました。2007/12/13に奇妙な呟きが投稿されたというのもでっち上げです。
解読にはCodePenに投稿したおもちゃを使って下さい。呟きたい文字列を変換してから投稿して楽しむも良し。ちなみに絵文字には絶賛非対応中でございます。65000文字程度までは処理可能(手抜き)
See the Pen BWTS for tweet by xezz (@xezz) on CodePen.
参考文献
- 投稿元?
- 高速版(github)
- 作者公式page(作者は既に他界)