Tuxia解説 · 約5分で読めます
ステガノグラフィーの最大の敵は圧縮です — WeChatやQQを一度通れば、隠したデータは消えてしまいます。圧縮やスクリーンショット、再共有の後でも復元できる方法はないのでしょうか?シャッフルはその答えの一つです。何も隠さず、画像をブロックに切って混ぜ合わせるのです。
画像は突き詰めればピクセルの集まりで、各ピクセルは位置と色を持っています。シャッフルが行うことはただ一つ:ブロックの位置を入れ替え、色には一切触れないことです。元の赤い点も青い点もすべて残っています — ただ場所が変わっただけです。「移動のルール」を知らなければ、誰の目にも色ブロックのモザイクにしか見えません。
Tuxiaは画像を数十ピクセル四方のブロックに切り、ブロックごと移動させます:ブロック内のピクセルはそのまま、位置だけを混ぜ合わせます。ブロックが大きいほど粗く、小さいほど細かく — 強さは3段階から選べます。移動のルールは固定シードで決まり、完全に可逆です。シャッフル解除ではすべてのブロックがピクセル単位で元の位置に戻ります。
実測:シャッフル後にシャッフル解除すると、結果はオリジナルとピクセル単位で同一になります(可逆転送の場合)。
シャッフルが変えるのは「どこ」であって「何色」かではありません — 画像全体の色の構成はオリジナルと同一です。JPEG圧縮が主に捨てるのは高周波成分と色の微調整です。ブロックサイズは8の倍数なので、各ブロック内は元の連続した内容で、JPEGの8×8圧縮ブロックとぴったり合います — 圧縮のダメージは小さく、シャッフル解除後の被写体は判読可能なままです。これが「圧縮では洗い流せない」の正体です。
このサイトは固定シード+ブロック置換を使っています — 両者がTuxiaで同じ強度を選ぶだけでよく、パスワードの交換は不要です。