Cloudflare

写真のメタデータを水際で自動除去しプライバシーを保護
ーコラムー
2020年11月24日号



Exif(イグジフ)というものをご存知でしょうか。デジカメやスマホなどで撮影した画像データに含まれるメタデータのことで、撮影時の位置情報なども含まれ、芸能人の自宅住所がバレるなどの出来事もありましたので知っている人も多いのではないかと思います。

昔よりはユーザの意識が高くなったものの、やはり人間ですからExif付きの画像をインターネット上へアップロードしてしまうことはあり得ますよね。 GPSをオフにしておくことも有効ですが、地図アプリやカーナビアプリを使った後にオフにし忘れてそのままの状態で写真撮影してしまうこともあるのではないかと思います。

Webサイトを管理する立場であれば、ユーザが画像をアップロードするようなサイトや、広報担当が撮影した写真がアップロードされるホームページなどを管理する上でメタデータ自動削除などの仕組みを取り入れたいですよね。 各種プログラミング言語でExifを削除できるライブラリを備えたものもあり、これを使えばアップロード時に削除することも出来ますが、実装するのが面倒な人や何らかの漏れが心配な人もいると思います。

Cloudflareでは、画像のメタデータを削除してくれる機能があります。 Polish機能といって余計なデータを除去することでファイルサイズを小さくし、表示を高速化する機能なのですが、プライバシー保護の目的でも使えるのではないかと思います。

Polish機能を使うと、コンテンツがCloudflareを通過する際に、画像ファイルを最適化し、表示速度を向上させます。また、転送量削減の効果もあります。Polish機能は以下のファイルに対して動作します。

*.jpg    *.jpeg    *.png   *.gif   *.img
設定値とその動作は以下の通りです。

Off

Polish機能が無効

Lossless

画質無劣化で画像ファイルのサイズを削減します。画像ファイルが含む撮影日時、GPS情報、カメラの機種などのメタデータのみ取り除いたり、可逆式の圧縮方式を用います。 Cloudflare社の調査によると、実サイト上で平均して21%のファイルサイズ削減が見られたとのことです。

メタデータ削除

PNG、GIF、JPEG

可逆式圧縮

GIF、PNG

Lossy

メタデータ削除に加え、適切な圧縮アルゴリズムを使用することで、肉眼では区別がつかない程度の画質劣化をもってサイズを削減します(非可逆圧縮:JPEG)。


Cloudflare社の調査によると、実サイト上で平均して48%のサイズ削減が見られたとのことです。


WebP

クライアントがWebP(うぇっぴー)形式ををサポートし、且つWebPが元のイメージよりもパフォーマンスが良い場合はWebP形式へ変換して画像を送ります。 また、サイズの大きなJPEGはプログレッシブ形式(粗い画像を表示し、徐々に高解像度になっていく形式)へ変換されます。

メタデータに関する検証結果

Polish機能:Offの時にダウンロードしたファイルのプロパティ

Polish機能:Losslessの時にダウンロードしたファイルのプロパティ

通信経路上の必ず通る箇所で強制的に削除してくれると安心感があります。表示速度も速くなりますが、プライバシー保護の目的で導入するのもアリだと思います。










角田貴寛

 執筆者:角田 貴寛

三井情報株式会社
ソリューション技術本部 次世代基盤第二技術部 第一技術室
CISSP、CCSP、CEH、CND
現在、セキュリティ関連調査研究・教育業務に従事