暗号化の基本:保管中、移動中、およびエンドツーエンドの暗号化

Security Muhammad Raza

暗号化の起源は4,000年前までさかのぼることができます。今日では、人々のプライバシーに対する意識の高まりを受けて、ほとんどのワイヤレス通信プロバイダーやサービスプロバイダーが、エンドツーエンドの暗号化を提供しています。

この記事では、保管中、移動中、およびエンドツーエンドの暗号化を中心に、暗号化について詳しく取り上げます。

暗号化の概要と仕組み

暗号化とは、元のメッセージ(平文)を判読不能な形式(暗号文)に変換する手法のことです。このプロセスでは、数学的アルゴリズムと暗号関数を使用することで、平文を暗号文に変換します。

この平文に対して、アルゴリズムで生成されたランダムな(実際には擬似ランダムな)鍵を使った数学演算が行われます。このプロセスが暗号化と呼ばれます。

出力結果は逆変換可能な暗号文となり、必要なランダム鍵と逆数学演算を使用して、元の形式に戻すことができます。このプロセスが復号化と呼ばれます。

(一般的なデータ暗号化の種類、アルゴリズム、ベストプラクティスについては、こちらをご覧ください。)

セキュリティ

暗号化と復号化の簡単な例

簡単な例として、数値の平文を乱数(鍵)で乗算する(数学演算を行う)ケースを考えてみましょう。その結果は平文とまったく異なるもので、暗号化された平文、または暗号文と呼ばれます。

暗号文から元の平文を得るには、同じ乱数(鍵)を使用して、暗号文に対して逆数学演算(除算)を実行します。この演算によって元の文が返されるため、この演算は復号化プロセスと呼ばれます。

(関連記事:シーザー暗号:初期の最もシンプルな暗号化技術)

実例

実際には、擬似乱数鍵を生成する数学演算やアルゴリズムは非常に複雑です。アルゴリズムに関する詳しい知識がなく、擬似乱数鍵を使用していない場合、効率的な手段や実際に利用可能なコンピューティングリソースを使っても暗号文を復号化することはできません。

そこで、今日の暗号化プロセスでこれらの鍵の生成によく使われている暗号化システムについて考えてみましょう。たとえば、RSA-2048暗号化アルゴリズムによって生成された鍵を従来のコンピューターで解読するには、300兆年以上かかります。そのため、少なくとも現時点では、金融や医療など機密性の高いオンラインサービスにログインする際のメール通信の暗号化やデジタル署名検証の暗号化に、このアルゴリズムがよく使用されています。

ただし、数年先とまではいかなくても、今後このような暗号を解読できる強力な量子コンピューターが登場する可能性があるため、今すぐ量子暗号化の準備を始める必要があると専門家は指摘しています。

暗号化の簡単な歴史

4000年以上前の古代エジプトでは、洞窟の壁に刻んだ文字の意味をわかりにくくするために、独特の象形文字が使われていました。20世紀初頭までは、主に王や将軍、政府高官らが、限られた人しか公式文書を読めないようにする目的で暗号化を採用していました。

その後、ワイヤレス通信の登場により、第1世代の暗号化方式が大量の情報伝達に使われるようになりました。多くのテクノロジーと同じく、その起源は世界大戦中のエニグマ暗号機のように、軍人や企業がワイヤレステクノロジーを使い始めたことにあります。ワイヤレス通信技術が一般の人々の間で普及し始めた1960年代初頭には、電気通信システムやコンピューターネットワークシステムにおいて、企業が保存中のデータや移動中のデータを保護するために暗号化を採用するようになりました。

2020年代の今日では、多くのワイヤレス通信プロバイダーやサービスプロバイダーがエンドツーエンドの暗号化を提供しています。そればかりか、攻撃者がランサムウェアを使用してターゲットのデータとシステムを暗号化するなど、暗号化が攻撃戦略としても利用されています。Splunkのセキュリティ調査チームSURGeは最近の調査で、「ランサムウェアがシステムを暗号化するまでにどれくらい時間がかかるのか」という疑問に答えています。

その答えは、皆さんが考えているよりはるかに短いものでした。

保管中、移動中、およびエンドツーエンドの暗号化の違い

歴史が示しているように、暗号化方式にはさまざまな種類があります。安全性の高さや実装の複雑さは、それぞれの暗号化方式によって異なります。しかし、そもそも暗号化は何に対して使用すべきなのでしょうか。サーバーに保存されているデータでしょうか。インターネットで転送中のデータでしょうか。それとも、その両方でしょうか。

保管中の暗号化とは、保存されているデータに適用される暗号化のことです。この場合、データは最初に生成されて保存される場所で暗号化されます。

移動中の暗号化とは、ネットワークの2つのノード間で転送されるデータの暗号化を意味します。この場合、送信元のストレージシステムと送信先のストレージシステムでは、データが暗号化されていない形式で保存される可能性があります。送信先のストレージシステムでは、データは復号化されて、元の平文に変換されます。

エンドツーエンドの暗号化とは、保管中の暗号化と移動中の暗号化を組み合わせた暗号化のことです。データは、生成元で生成される時点ですでに暗号化されて保存されます。そして、暗号化されたデータのみが送信先に転送され、対応する復号鍵を持つユーザーが、暗号文を平文に変換して元の情報を表示します。

暗号化戦略の選択

企業ネットワーク内のデータワークロードやトラフィックにとって適切な暗号化戦略とはどのようなものでしょうか。歴史的に、暗号化スキームの目的は、もっぱらデータの整合性を確保することにありました。ストレージサーバーと伝送ネットワークがそれぞれ直面しているセキュリティリスクのレベルによっては、保管中および移動中の暗号化だけでこの目標を十分に達成できる場合もあります。

しかし、現代のデジタル時代におけるオンラインコミュニケーションでは、信頼関係を確立していない相手との複雑なやり取りを伴います。たとえば電子投票、電子オークション、オンラインバンキングの取引などです。こうしたやり取りでは、生成元で使用および生成されるデータだけでなく、処理中のデータも保護しなければなりません。このような場合は、オンラインエクスペリエンス全体を保護できるエンドツーエンドの暗号化が極めて有効です。

また、個人のプライバシーや広告会社による個人情報の利用に対する意識が高まっていることから、多くのインターネット企業は、エンドツーエンドの暗号化を、エンドユーザーに再び安心してオンラインで機密情報をやり取りしてもらうための有効な手段と考えています。

このブログはこちらの英語ブログの翻訳です。

関連記事

ソフトウェアサプライチェーンのセキュリティ:実績あるフレームワークと戦術で脅威に先手を打つ
セキュリティ
12 分程度

ソフトウェアサプライチェーンのセキュリティ:実績あるフレームワークと戦術で脅威に先手を打つ

実際の事例、重大なリスク、実用的な戦略に基づいてコード、ツール、依存関係を保護しながら、ソフトウェアサプライチェーンの安全を確保する方法について説明します。
CloudTrailデータをセキュリティ運用と脅威ハンティングに活用する方法
セキュリティ
10 分程度

CloudTrailデータをセキュリティ運用と脅威ハンティングに活用する方法

このブログ記事では、AWS CloudTrailをセキュリティログツールとして使って脅威ハンティングを行う方法について説明します。
高度化するランサムウェア攻撃:AI悪用含む最新動向と対策
セキュリティ
13 分程度

高度化するランサムウェア攻撃:AI悪用含む最新動向と対策

組織にとって重大な脅威の1つとなっているのがランサムウェア攻撃です。その手口は高度化を続け、三重脅迫や恐喝型マルウェア(Extortionware)、さらには生成AIの悪用といった新たな手法も確認されています。本記事では、ランサムウェア攻撃の最新動向から攻撃の流れ、対策までを詳しく解説します。