TOOLPIPO LAB IMAGE
画像を共有すると「見えないデータ」も渡る?
画像を開いても、ファイルの中身がすべて見えるわけではありません。透明な部分の色、別のサムネイル、末尾の追加データを、3つの合成画像で確かめました。
公開日:2026年9月28日 / 検証日:2026年9月28日

結論
見える画像が同じでも、透明部分・サムネイル・末尾に別のデータが残る場合があります。画像を開いて目視するだけでは、ファイル内の情報を全部は確認できません。
検証概要
- 使用ツール
- 画像共有前・隠しデータチェッカー
- 検証日
- 検証条件
- 自作ファイル・条件・実測結果は本文に掲載
- 再現用ファイル
- 本文に作成条件・確認方法を掲載
画像に表示されない情報も、ファイル内には残った
画像を開くだけでは、ファイルに含まれる情報を全部は確認できません。
今回の3ファイルでは、透明な部分の色、別の小さな画像、画像の終端より後ろの文字列が残っていました。すべての画像に同じ情報があるわけではありません。
| 実験 | 普通に画像を見るだけで分かる? | 内部には存在した? |
|---|---|---|
| 透明な部分に保存された色 | 分からない | 今回のPNGでは1024 pixelに存在 |
| EXIF内の小さな画像 | 主画像だけでは分からない | 今回のJPEGでは別の画像が存在 |
| 画像の終端より後ろのデータ | 分からない | 今回のPNGでは22 byteが存在 |
透明PNGに残る色
透明に見える部分にも、色の値を保存できます。透明度だけを変えると、その色が見えるようになりました。
透明PNGの作り方と仕様
transparent-rgb.png は64×64 pixel、計4096 pixelのalphaをすべて0にしました。中央32×32 pixelだけRGBを (220, 40, 40)、残りを (0, 0, 0) にしてあります。普通に表示すると全面が透明です。

検証ファイルを画像共有前・隠しデータチェッカーで解析すると、完全透明pixelは4096個、そのうち0以外のRGB値を持つpixelは1024個でした。割合は25.0%です。右図は元の写真の復元ではなく、今回ToolPipoが保存した合成RGB値を見えるようにした診断図です。
W3CのPNG Specification Third Editionでは、alpha=0は完全透明で、RGB値はalphaで事前乗算しない形式とされています。したがって透明度0でもRGB sampleが必ず0になるわけではありません。ただし編集ソフトが実際に何を保存するかは処理方法によって異なり、「透明PNGには元画像が必ず残る」とは言えません。
JPEGに残した別のサムネイル
画像ファイルには、主画像とは別に小さな画像を入れられます。今回のJPEGは、普通に開くと青い画像ですが、中には赤いサムネイルも入っていました。
exif-thumbnail.jpg は、青い背景に「MAIN」と描いた320×200 pixelの主JPEGへ、赤い背景に「THUMB」と描いた80×50 pixelの別JPEGをEXIF IFD1として埋め込みました。どちらもToolPipoが作った架空の図です。

ブラウザの通常表示では320×200 pixelのMAINが表示されます。チェッカーはEXIF内から80×50 pixelのTHUMBを抽出し、そのJPEGデータは1654 byteでした。主画像とthumbnailは別の画像データになり得ることを、この合成ファイルで確かめました。
CIPA DC-008-2026(Exif Version 3.1)は、主画像とは別のthumbnail dataを1st IFDに記録できる形式を定めています。この実験はその構造を用いましたが、実際の編集ソフトやカメラが古い画像を必ず残すことを示してはいません。
PNGの終端より後ろのデータ
PNGには画像データの終わりを示す印があります。その後ろに文字列を付けても、今回のブラウザでは画像を表示できました。
png-trailing-data.png は64×64 pixelの単純な合成画像です。PNGのIEND chunkの後ろに、無害なASCII文字列 TOOLPIPO_TRAILING_TEST を付けました。

このファイルは検証したChromiumブラウザの <img> で通常の画像として表示できました。一方、チェッカーはIEND後に22 byteの追加データを検出しました。文字列は画像表示に使われません。
W3C仕様ではIENDがPNG datastreamの終端であり、適合するdatastreamにはその後の内容を置きません。Security considerationsはIEND後にデータが存在し得ることにも注意を促しています。つまり、今回ブラウザで表示できたことは、末尾付きファイル全体の規格適合を意味しません。追加データがあるだけでmalware・改ざん・情報漏洩と断定することもできません。
画像を共有する前に確認したいこと
- EXIFに撮影日時・機種・GPSなどが残っていないか。
- 主画像と異なるサムネイルがないか。
- 完全に透明なピクセルのRGBに意図しない値がないか。
- XMPや画像末尾の追加データがないか。
- Motion Photoなど、静止画以外の情報を持つ形式ではないか。
この一覧は共有前の確認ポイントです。GPS、XMP、Motion Photo、ステガノグラフィは今回の3ファイルでは検証していません。手元のJPEGやPNGを調べるには画像共有前・隠しデータチェッカーを使えます。ただし、何も検出されなくても「共有して安全」とまでは言えません。
検証用ファイル
すべてToolPipoが検証用に作成した合成ファイルです。実在する人物・位置情報・個人情報は含みません。
- transparent-rgb.png をダウンロード:完全透明4096 pixel、非ゼロRGB 1024 pixel
- exif-thumbnail.jpg をダウンロード:MAIN 320×200、THUMB 80×50
- png-trailing-data.png をダウンロード:IEND後に22 byte
手元で確かめる
- 上の検証ファイルをダウンロードします。
- 画像共有前・隠しデータチェッカーを開きます。
- 各ファイルを1件ずつ読み込みます。
- 透明pixel数・非ゼロRGB数、サムネイルの表示とbyte数、末尾byte数を記事の値と比較します。
画像は同じファイルを普通のブラウザ表示でも開き、通常表示と解析結果の違いを確かめられます。EXIF thumbnailの寸法はチェッカーの抽出プレビューで確認できます。
参考資料
- W3C:PNG Specification (Third Edition) — alpha representation、IEND、conformance、security considerations
- CIPA:DC-008-2026 デジタルスチルカメラ用画像ファイルフォーマット規格 Exif 3.1 — thumbnail data・1st IFD