暗号(Cipher)で何を守るのか
暗号(Cipher)は、オンライン上でやり取りされるデータを、第三者が読めない形に変換するための考え方と手順です。目的は主に「機密性(他人に内容を知られないこと)」です。ただし、暗号化が担うのは機密性が中心で、データが途中で改ざんされていないこと(完全性)や、送信者が本物であること(真正性)を同じ仕組みだけで常に満たせるとは限りません。
また、「Cipher」という言葉は、方式そのもの(変換のルール)や、暗号化アルゴリズム全般を指す文脈で使われます。どちらにせよ、守り方の全体像では「何を、どの鍵で、いつ、どの手順で」扱うかが重要になります。ここを押さえると、暗号化が効いているのか、どこに限界があるのかを整理しやすくなります。
暗号化の基本モデル(平文→暗号文→復号)
基本の流れは、(1) 平文(読めるデータ)を、(2) 暗号化のための鍵を使って暗号文(読めないデータ)に変換し、(3) 復号のための鍵を使って暗号文から元に戻す、というモデルです。鍵が第三者に漏れない限り、暗号文から平文を推測するのは現実的には困難になります。
ここで「鍵」は、暗号の強さに直結する要素です。鍵の管理(生成、保存、配布、更新、削除)は、方式の良し悪しだけではカバーできない部分になります。たとえば、暗号方式がどれほど良くても、鍵が不適切に扱われれば保護は崩れます。逆に言えば、鍵管理が適切なら、同じ暗号方式でも安全性が確保されやすくなります。
代表的な関連概念:暗号化だけで足りるとは限らない
オンラインでの保護は、暗号化以外の要素と組み合わさって成立することが多いです。典型的には次の概念が絡みます。
- 完全性(Integrity):通信途中でデータが改ざんされていないこと。改ざん検知は、暗号化方式とは別の仕組み(たとえば認証付きの構成)で提供されることがあります。
- 真正性(Authenticity):相手が本物であること。暗号化だけだと「正しい相手と通信しているか」は別問題です。
- 鍵交換(Key Exchange):通信開始時に、両者が同じ鍵を安全に共有する仕組み。鍵交換が弱いと、暗号化しても前段で破られ得ます。
重要なのは、「暗号=万能」ではない点です。暗号化は“読めないようにする”力が中心であり、完全性や真正性は別の設計・運用とセットで考える必要があります。さらに、暗号化の対象範囲(通信だけか、端末内の保存データも含むか)によって効果が変わります。
暗号(Cipher)による保護の制限:何が残るリスクか
暗号化には限界があります。代表的には次のような論点です。
- 鍵や設定が原因で崩れる:鍵の漏えい、鍵の使い回し、古い方式の採用、設定ミスなどがあると、安全性は想定より下がります。 暗号方式の理論だけで安全を語りにくいのはこのためです。 2. メタデータは見える可能性:暗号化しても、通信相手・通信量・タイミングなど“中身以外”は、状況によって推測され得ます。
