ブラインド透かしツール
任意の写真に見えない文字や画像を埋め込みます。ピクセルは無傷に見え、同じ2つのパスワードでもう一度処理するとメッセージを取り出せます。すべてブラウザ内で完結し、アップロードは一切ありません。
2つのパスワードは実際に何をしているのか?
どちらのパスワードも画像自体を暗号化しません — ファイルは普通に開きます。制御しているのはアルゴリズム内部の2つの独立したシャッフルです。読み出すには両方を厳密に一致させる必要があります。
- 1. 4×4 ブロックに分割写真は 4×4 ピクセルのブロックに分割。各ブロックが隠し場所の候補になります。
- 2. DCT → 画像パスワードでシャッフル各ブロックを周波数領域へ変換し、画像パスワード由来の種でブロック内ピクセルを決定的に入れ替え。
- 3. 透かしパスワードでビットを並べ替えメッセージビットを別の種でシャッフルしてから、特異値に書き込みます。
- 4. 逆変換で写真を再構築見た目は変わりません。読むには同じ2つのパスワードで両方のシャッフルを逆にやる必要があります。
パスワード誤 → ノイズ. どちらかを 1 ずらすだけで、間違ったマスから読むか、順序を間違えて読むかになり、純粋なノイズしか得られません — 「部分的に正しい」メッセージは絶対に出ません。
Robustness boundaries
Blind watermarks are useful for quiet ownership marks and internal review trails, but they are not magic DRM. Test the exact transformations your image will face before relying on it.
PNG round trips, mild brightness changes, and controlled resize tests.
JPEG export, noise, platform recompression, screenshots, and heavy filters.
Large crop, rotation, severe downscaling, or edits that remove the marked region.
Use the extraction attack simulator below to rehearse resize, crop, rotation, brightness, and noise before shipping an image.
仕組み
- 1. 写真を選ぶ
PNG または JPG。大きい画像ほど長いメッセージを隠せます。
- 2. 秘密を入力
テキスト、URL、または小さなロゴ画像。2 つの数字パスワードを設定。
- 3. 結果を保存
透かし入り PNG をダウンロード。元と見分けはつきません。
- 4. 後で抽出
同じ写真をここに置き、同じパスワードを入れれば内容が現れます。
使いどころ
- クレジットなしで転載された写真の所有権を証明。
- 受け取り手ごとにパスワードを変えれば、漏れた経路を特定可能。
- 商品レンダー内に注文 ID、タイムスタンプ、契約番号など短い文字列を潜ませる。
- すべてブラウザ内。アップロードもアカウントも不要。
よくある質問
ブラインド透かしとは?
画像に隠された情報。人には見えず、プログラムだけが取り出せます。元画像は不要です。
編集に耐えますか?
はい。DWT-DCT-SVD はトリミング、リサイズ、回転、明度、軽いノイズに耐性があります。
画像はアップロードされますか?
いいえ。すべて WebAssembly を用いてブラウザ内で処理されます。
どれくらい隠せますか?
画像サイズ次第。1024×1024 なら約 16,000 ビット (~2,000 文字)。
パスワードが 2 つ必要な理由は?
一方は「どこに隠すか」、もう一方は「どの順で隠すか」。両方一致する必要があります。
Python 版 blind-watermark と互換ですか?
はい。同じアルゴリズムとパラメータで、双方向に抽出できます。