AES-256暗号化とは何か、そしてなぜ写真にそれが必要なのか
AES-256は米国の機密データやiPhoneのストレージを守る標準的な暗号方式です。本記事ではその仕組みと、写真に専用のAES-256ボールトが必要な理由を分かりやすく解説します。
AES-256は、米国政府の機密データから、いまあなたのiPhoneに入っている写真まで、あらゆるものを守っている暗号化方式です。問題は、「iPhoneによって暗号化されている」ことと、「友人や家族、修理スタッフに写真を見られないように暗号化されている」ことが同じではない、という点にあります。本記事では、AES-256とは実際に何なのか、どのように動くのか、そしてなぜ最もプライベートな写真には、その上にもう一段、専用のAES-256ボールトが必要なのかを、できるだけ平易な言葉で説明します。
AES-256とは何か
AES-256は、256ビット鍵を使うAdvanced Encryption Standard(高度暗号化標準)の略です。アルゴリズム自体は公開されており、世界中の誰でも仕様を読むことができます。そして鍵がなければ、出力されるのは数学的なノイズにしか見えない形にデータをかき混ぜます。米国国立標準技術研究所(NIST)が2001年にこの設計を採用し、FIPS 197として正式化しました。以後、AESはインターネットにおける事実上の標準的な共通鍵暗号となっています。
「256」は鍵長(ビット数)を表します。AESには128ビットや192ビットの方式もありますが、256ビット版は米国政府がTOP SECRET(極秘)レベルの情報の保護にも承認している唯一の方式です。HTTPSやパスワードマネージャ、暗号化バックアップ、そして最新のiPhoneのストレージの裏側にも、同じ暗号が使われています。
AES-256のしくみ
AESは、暗号研究者が「共通鍵ブロック暗号」と呼ぶ種類の暗号です。「共通鍵」とは、同じ鍵で暗号化と復号を行うという意味で、システムの安全性はこの鍵をいかに他人の手に渡さないかにかかっています。「ブロック暗号」とは、データを128ビットの固定サイズの塊として処理するという意味です。
写真を暗号化するとき、AES-256はファイルをそれらの塊に分割し、それぞれを14ラウンドの変換にかけます。各ラウンドではバイトを置換表で入れ替え、小さな格子の行をずらし、列ごとにバイトを混ぜ合わせ、そこに鍵の一部を加算します。14ラウンドを通すと元のブロックは識別不能になり、同じ鍵で逆向きに辿ることで元のデータが取り戻せます。
ストレージ用途(スマートフォン、ノートPC、ボールトアプリなど)では、AESはXTSモードで使われるのが普通です。XTSは各ブロックのディスク上の位置に応じた調整値を加えるため、同じ写真がディスク上で同じ暗号文パターンにならないようになっています。25年に及ぶ公開された暗号解析でも、AES-256全体に対する実用的な攻撃は発見されていません。
なぜ写真には専用のAES-256ボールトが必要なのか
ここで多くの人が見落としている点があります。あなたのiPhoneはすでにAES-256を使っています。パスコードを設定した瞬間、AppleのData Protectionは作成するファイルごとに新しい256ビット鍵を生成し、専用のハードウェア暗号化エンジンに渡します。写真、動画、メモ、メッセージ — すべてがAES-256で保存時に暗号化されますが、それは端末がロックされている間だけです。
EFFのSurveillance Self-Defenseガイドはこの点を率直に説明しています。フルディスク暗号化は、ロックされた端末を物理的に持ち去ろうとする相手に対しては有効です。しかし、いったんロックを解除して、友人や子ども、修理スタッフ、誰かに端末を渡した瞬間、カメラロールの写真はメモリ上で復号され、その人の目に触れる状態になります。iPhoneの「非表示」アルバムも、見えにくくしているだけで、別の鍵で暗号化されているわけではありません。本当に隠したい写真には、iPhoneのロックが解けても勝手には開かない、もう一段のAES-256のロックが必要です。
Privaraはこれをどう扱うか
Privaraは、写真、動画、書類、連絡先を、iPhoneのパスコードとは独立した一つのAES-256暗号化レイヤーの背後に置く、iPhone向けのプライベートボールトです。外から見ると、アプリは普通の電卓そのものです。電卓画面に自分のPINを入力するとボールトが開き、それ以外のものを入力してもただの電卓のままです。たとえ端末のロックが解かれていても、そのPINが入力されない限り、Privaraの中身は暗号化されたままです。
鍵が端末の外に出ることはありません。アカウントを作る必要もなく、既定ではサーバーに何もアップロードされず、設計はゼロ知識(zero-knowledge)です。日常利用ではFace IDやTouch IDをPINの上に重ねることもでき、鍵管理はSecure Enclave — メインプロセッサから鍵を切り離して保持する専用のハードウェアサブシステム — に支えられています。
人に端末を渡すかもしれない、あの写真、動画、書類、連絡先を表に出したくない、という用途であれば、Privaraはそれらを置くのに最適な場所です。まだ迷っているなら、姉妹記事のiPhoneで写真を非表示にする方法でiOSが標準で提供する選択肢を確認できます。App StoreでPrivaraをダウンロードしてください。
よくある質問
AES-256は本当に破れないのですか?
まじめな暗号研究者で、ある暗号を「絶対に破れない」と言い切る人はいません。AES-256は四半世紀にわたって公に検証され続けてきましたが、いまだに完全な形での実用的な攻撃は見つかっていません。さらに、仮に大規模な量子コンピュータが登場したとしても残る安全性の余裕があるため、NISTは長期の機密性確保にも適すると評価しています。
iPhoneはもう写真を暗号化しているのでは?
その通りです。パスコードを設定していれば、iOSはロック中のカメラロールをAES-256で暗号化しています。問題はロック解除後で、端末を手にしている人は誰でも写真アプリを開けます。別のボールトを使えば、本当に重要な画像にもう一段の錠前をかけられます。
AES-256で守れないものは何ですか?
保存時の暗号化は、保存されているデータを守るものです。すでに撮られたスクリーンショット、別のサービスに自分でアップロードしたコピー、ロック解除済みの画面に映っている内容までは守れません。鍵そのものが漏れた場合にも守れないので、鍵は自分しか知らない要素と結び付けておく必要があります。
AES-256はAES-128より優れていますか?
どちらも今日の用途では十分に安全とされています。ただしAES-256のほうが安全性の余裕が大きく、量子計算への耐性の見通しも長く、TOP SECRETレベルの情報に承認されている方式でもあります。個人の写真アーカイブのように長期にわたって守りたいデータには、AES-256を既定にしておくのが適切です。