logo hsb.horse

ピクセル暗号(PNGエンベロープ暗号化)

パスワードベースのエンベロープ暗号で画像をローカル暗号化し、復号メタデータをPNGのtEXtチャンクに埋め込んで自動復号に対応します。

共有前のプレビューを守ります。AES-GCMでデータ鍵をラップし、AES-CTRでRGBをマスク、復元手順はPNG内部に保存。すべてブラウザ内で完結します。

1. 画像をアップロード

暗号化または復号したい画像を選択

2. マスターパスワードを設定

2. マスターパスワードを設定

PBKDF2 + AES-GCMでランダム生成のAES-CTRデータ鍵をラップし、各ピクセルのRGBをXORマスクします。透明ピクセルはシルエット保護のためスキップ。

暗号化PNGにはsalt・IV・ラップ済み鍵をtEXtチャンクへ格納し、再アップロード時に復号モードを自動検出します。

3. エクスポート

3. エクスポート

画像を待機しています

ピクセル暗号プレビュー

画像をアップロードして開始

ユースケース

オリジナルを漏らさずプレビュー共有

パスワードを共有した協力者だけが復元できるティザー画像を送信できます。

制作途中のアセット保護

チャットにデザインコンプを載せても、意図しない再利用やネタバレを抑えられます。

ファイルと手順を一体で配布

PNGのtEXtチャンクにsaltやIV、鍵を同梱するため、受信者は追加マニュアルなしで復号できます。

プロ向けヒント

  • 長いパスフレーズを推奨。PBKDF2(10万回)で派生した鍵強度が高まります。
  • 透明ピクセルは処理対象外です。全ピクセルを完全に隠したい場合は背景を塗りつぶしてください。
  • 共有前に一度、暗号化PNGを再アップロードして復号モード検知を確認すると安心です。

ツール

オンデバイスのエンベロープ暗号(PBKDF2 + AES-GCM/CTR)

tEXtチャンクのメタデータで復号モードを自動検出

透明ピクセルをスキップしてシルエットを保持

アップロード不要、処理はすべてブラウザ内で完結

使い方

  1. 1

    任意の画像をアップロード

    PNG / JPEG / WebPに対応。暗号化時の保存形式はメタデータを載せるため常にPNGです。

  2. 2

    強力なパスワードを設定

    パスワードからAES-GCMのKEKを導出し、ランダムな256ビットAES-CTRデータ鍵をラップします。

  3. 3

    ピクセル処理を待つ

    RGBにキーストリームでXORマスクをかけます。透明ピクセルはスキップして輪郭を維持します。

  4. 4

    暗号化PNGをダウンロード

    salt・IV・ラップ鍵・元のMIMEをtEXtチャンクへ保存し、ピクセルと一緒に出力します。

  5. 5

    復号テストを一度行う

    保存したPNGを再度開き、パスワードを入力して復元できるか確認してから共有しましょう。

よくある質問

画像はブラウザ外へ送信されますか?
いいえ。暗号化・復号ともWeb Crypto APIでローカル処理します。アップロードやトラッキングは一切ありません。
対応フォーマットは?
ブラウザで開ける形式ならプレビューできます。暗号化出力は常にPNG、復号時は保存された元MIMEに応じて復元を試みます。
透明部分はどう扱われますか?
シルエットを守るため透明ピクセルはマスクをスキップします。暗号化時は保存時のRGB崩れを防ぐためアルファを255に固定します。
鍵導出の方法は?
パスワードからPBKDF2(10万回)でKEKを生成し、ランダムなAES-CTR鍵をAES-GCMでラップ。saltとIVをPNGに保存します。