暗号化のユースケース:安全な通信からデータ・セキュリティーまで
2024年1月17日
所要時間:6

データ・セキュリティーに関して言うと、古代の暗号化技術が今日のデジタル時代の重要な基礎となっています。極秘の政府情報から日常における個人的なメッセージまで、暗号技術によって、私たちの最も機密性の高い情報を、望まない人に見られないようにすることが可能になります。オンラインで買い物をするにしても、重要な企業秘密をディスクに保存するにしても、プライバシーが守られているように見えるのは暗号化のおかげです。

暗号化の主な原則により、オンラインでビジネスを行う際の信頼を確立することができます。主な原則には次が含まれます。

  • 機密性:暗号化された情報には、特定の対人物のみがアクセスでき、それ以外の人はアクセスできません。
  • 完全性:暗号化された情報は、保存中、または送信者と対象とした受信者の間での転送中に、変更が検出されずに改ざんすることはできません。
  • 否認防止:暗号化された情報の作成者/送信者は、意図があり情報を送信したことを否定することはできません。
  • 認証:送信者と受信者の身元、情報の発信元と宛先を確認します。
  • 鍵管理:データの暗号化と復号化(および鍵の長さ・配布・生成・ローテーションなどの関連タスク)に使用される鍵は安全に管理されます。

暗号化のユースケースにについて見ていく前に、暗号化の基本を確認しましょう。

暗号化の基本を理解する

歴史を通じて、暗号学者は個人情報をエンコードし、暗号化されたメッセージを作成するためにさまざまな方法を使用してきました。現代の暗号化アルゴリズムは、はるかに高度ですが、基本的な手順は極めてよく似ています。

基本的な暗号化では、元のエンコードされていない情報(平文と呼びます)を取得し、秘密鍵を使用してスクランブル・コード(暗号文と呼びます)にエンコードします。秘密鍵は、暗号文を平文に復号するために使用することもできます。

暗号化アルゴリズム

暗号化アルゴリズムは、データの暗号化と復号化に使用される数式です。これらのアルゴリズムは秘密鍵を作成し、データを元の平文から暗号文に、またはその逆に、どのように変換するかを決定します。よく知られている暗号化アルゴリズムには、RSA(Rivest-Shamir-Adleman)AES(Advanced Encryption Standard)ECC(Elliptic Curve Cryptography)などがあります。

基本レベルでは、ほとんどの暗号化アルゴリズムは、巨大な素数を掛け算して鍵を作成します。現代のコンピューターでは掛け算は簡単ですが、巨大な数を2つの巨大な素数に戻すには、膨大な計算が必要であり、事実上不可能です。小さい鍵を使用する暗号化システムは、比較的簡単にリバース・エンジニアリングできますが、最速のスーパーコンピューターでも、今日の強力な暗号化アルゴリズムをブルート・フォース攻撃するには、数百年から数十万年の時間を必要とします。楕円曲線暗号(ECC)は、乱数を使用して次世代の量子コンピューターでも解読できない強力な鍵を作成することで、セキュリティーのレベルをさらに高めます。

キー管理

鍵管理は、暗号化において不可欠な要素であり、すべての暗号化システムは、データの暗号化と復号化の両方に鍵を使用します。鍵管理には、暗号鍵を安全に生成、保存、およびユーザー間で配布することが含まれます。弱い鍵や盗まれた鍵は、どの暗号化システムにおいても重大な脆弱性を生み出す可能性があるため、適切な鍵管理は暗号化されたデータのセキュリティーを維持するために極めて重要です。鍵のサイズ、ランダム性、保管はすべて鍵管理の重要な機能です。

対称暗号化

対称暗号化システムは、秘密鍵暗号(もしくはシークレット・キー暗号)とも呼ばれ、暗号化と復号化の両方に1つの鍵のみを使用します。このようなシステムが機能するには、各ユーザーが同じ秘密鍵にアクセスできる必要があります。秘密鍵は、事前に確立された、セキュアな通信チャネル(宅配便やセキュアな回線など)を介して共有されるか、より実用的なものとしては、ディフィー・ヘルマン鍵共有のようなセキュアな鍵交換方法を介して共有できます。

単一の鍵のみを使用することによって脆弱性が発生するにもかかわらず、他の方法よりも高速かつ効率的な暗号化方法です。一般的な対称暗号化アルゴリズムには、DES(Data Encryption Standard)3DES(Triple DES)AESなどがあります。

非対称暗号化

非対称暗号化は、公開鍵暗号化とも呼ばれ、公開鍵と秘密鍵のペアを使用します。公開鍵は暗号化に使用され、秘密鍵は復号化に使用され、各ユーザーは独自の鍵のペアを持ちます。公開鍵の暗号化で使用される2つの暗号化鍵によりセキュリティーが強化されますが、効率は低下します。RSA、ECC、およびセキュア・シェル(SSH)プロトコルは、一般的な非対称暗号化アルゴリズムです。

暗号化のユースケース

安全な通信

暗号化の最も一般的なユースケースの1つは、インターネット上で安全な通信を提供することです。トランスポート・レイヤー・セキュリティー(TLS)とその前身であるセキュア・ソケット・レイヤー(SSL)は、暗号化プロトコルを使用して、Webブラウザとサーバー間の保護された接続を確立します。この安全なチャネルにより、ユーザーのブラウザとWebサイト間で共有されるデータはプライベートな状態に保たれ、悪意のある攻撃者によって傍受されることがなくなります。

暗号化は、エンド・ツー・エンドの暗号化(E2EE)を提供し、ユーザーの会話のプライバシーを確保するために、EメールやWhatsAppなどの一般的なメッセージ・アプリケーションにも使用されています。E2EEでは、送信者と意図された受信者のみがメッセージを復号して読むことができるため、ユーザーのサービス・プロバイダーを含む、第三者が内容にアクセスすることは、ほとんど不可能になります。

データ暗号化

データ暗号化は、ハードドライブ、スマートフォン、クラウド・ストレージ・サービスなどのさまざまなデバイスに保存されている機密情報を保護するための、広く使用されている方法です。AESのような強力な暗号化アルゴリズムでは、平文を暗号文に効果的に変換できるため、権限のない人物がアクセスを得たとしても、権限のあるユーザーの暗号化鍵にアクセスできない限り、機密データを復号化することはできません。

データ完全性

暗号化は、データの完全性を確保するためにも使用されます。ハッシュ関数は、データの固定サイズのハッシュ(ダイジェストとも呼ばれます)を生成する暗号化アルゴリズムの一種で、データのセットを一意のハッシュ値に変換します。これらのハッシュは、極めて一意性が高く、平文内の1文字もしくはスペースを変更するだけで、まったく異なる数値が生成されます。受信者、アプリケーション、Webサイトは、受信したデータのハッシュを予想されるハッシュと比較することでデータの完全性を検証し、送信中にデータが変更されていないことを確認できます。

ハッシュ関数は、クライアント側にプライベート・パスワードの脆弱なデータベースを作成することなく、ユーザーのパスワードを検証するためによく使用されます。オンライン・バンキング・ポータルなどのサービスは、ユーザーのパスワードのハッシュのみを収集して保存します。このデータベースが盗まれたとしても、悪意のある攻撃者はユーザーのハッシュのみからユーザーのパスワードを推測することはできません。

認証

送受信された情報の信頼性を検証することは、あらゆるビジネスで使用される暗号化の重要な機能であり、デジタル署名によって可能になります。非対称暗号化により、秘密鍵を使用しないと生成できないデジタル署名を使用して、文書を修正できます。デジタル署名された文書の受信者は、送信者の公開鍵を使用して署名の信頼性を検証し、文書が送信中に改ざんされていないことを確認できます。

否認防止

否認防止は、受信したメッセージの信頼性を保証し、送信者が特定の送信メッセージの正当性を潜在的に否定することを回避する法的な概念です。デジタル署名は、他の誰でもない、送信者自身がメッセージや文書に署名したことを証明するため、否認防止における重要な要素です。データ完全性プロトコルとデジタル署名によって確立される暗号化対応の否認防止は、法的拘束力のある交渉、契約、その他の法的取引やビジネスを検証するための実行可能なフレームワークを提供します。

鍵交換

安全な通信の主要な要素である鍵交換は、特に非対称暗号化システムにおいて、安全な接続を確立する上で重要です。暗号化は、この準備段階でも重要な役割を果たします。公開鍵暗号方式の開発における指標である「ディフィー・ヘルマン鍵交換アルゴリズム」を使用することで、二者間で安全でないチャネル上で暗号鍵を安全に交換できます。この方法により、盗聴者が鍵交換ダイアログを傍受したとしても、交換される暗号化鍵を解読することができなくなります。暗号化を通じて、ディフィー・ヘルマン鍵交換プロトコルのようなアルゴリズムを使用することで、以前に確立された潜在的に脆弱な代替の鍵交換を必要とせずに、公開鍵暗号により安全な接続を確立できます。

API通信のセキュリティー保護

Web 2.0(およびそれ以降)の特徴である協調的なアプリ間の操作性により、さまざまなアプリケーションやWebサービスがそれぞれの壁に囲まれた仮想エコシステム内からデータを取得できるようになり、ニュース記事へのソーシャル・メディア投稿の埋め込みから、クリティカルなシステム分析データの高度な運用ダッシュボードでの共有に至るまで、あらゆるアプリの機能を大幅に拡張できるようになっています。

アプリケーション・プログラミング・インターフェース(API)として知られるこれらのシステムは、プログラム間の通信を容易にするように設計されており、暗号化によってこの機密データが侵入的な盗聴や改ざんから保護し、許可された当事者だけが情報にアクセスできるようになります。APIキーとトークンは、特に公共事業やインフラストラクチャーなどのセキュリティーが重要な環境において、アプリケーション間で交換される機密データを保護するために暗号化と併用されることがよくあります。

量子コンピューティングのサイバーセキュリティー

量子コンピューティングの台頭は、既存の暗号化手法やサイバーセキュリティー・システムに大きな脅威をもたらします。今日の暗号化システムのほとんどは、従来のコンピューターの潜在的な計算能力に耐えるように設計されており、今日の暗号化アルゴリズムに対するブルート・フォース攻撃を成功させるには、数百年から数十万年もの時間がかかります。しかし、量子コンピューターは、現在のコンピュータの能力を格段に高め、最強の暗号鍵を解読するのにかかる時間を、数千年からわずか数秒に短縮できる可能性があります。

今日暗号化アルゴリズムのほとんどは、理論上の量子コンピュータ攻撃に耐えることはできませんが、暗号学者は量子耐性暗号化技術を開発することで、これらの脆弱性に対応しようとしています。耐量子暗号化およびポスト量子暗号のユースケースは、一般的な暗号化の同じくらい豊富にあります。量子コンピューティングは、まだプロトタイピングの段階にあると考えられていますが、ほとんどのコンピューター科学者は、今後10~50年以内に大きな進歩があれば、耐量子暗号の開発が量子コンピューティング自体と同じくらい重要になるだろうと予測しています。

ブロックチェーン・セキュリティー

ブロックチェーン技術は、すべてのオンチェーン・トランザクションと更新のセキュリティーと不変性を確保するにあたって、暗号化に大きく依存しています。ビットコインのような暗号通貨は、暗号化アルゴリズムを使用して新しいコインを採掘したり、鋳造したりする一方で、暗号学的ハッシュ関数はチェーン内のブロックの完全性を確保します。トランザクションが行われる際に、公開鍵暗号化により、デジタル署名が作成および検証されます。暗号化の核となる原理のほとんどを包含するブロックチェーン技術は、暗号化を使用して、すべてのアクションを簡単に認証および検証できるトラストレスなエコシステムを構築します。

IBM暗号化ソリューションが企業の重要なデータの保護にどのように役立つかをご覧ください

IBM暗号化ソリューションは、最先端テクノロジーやコンサルティング、システム連携およびマネージド・セキュリティー・サービスを組み合わせて、暗号化の俊敏性、量子コンピューターによる攻撃に対する防御、堅牢なガバナンスとリスク・ポリシーを確保するのに役立ちます。対称暗号から非対称暗号、ハッシュ関数まで、ビジネス・ニーズに合わせてカスタマイズされたエンドツーエンドの暗号化により、データとメインフレームのセキュリティーを確保します。

著者
Josh Schneider Writer, IBM Blog