暗号化システムは現在、対称暗号化と非対称暗号化という 2 つの主要な研究分野に分かれています。対称暗号化は対称暗号化の同義語としてよく使用されますが、非対称暗号化には非対称暗号化とデジタル署名という 2 つの主要な使用例があります。

したがって、これらのグループは次のように表すことができます。

  • 対称鍵暗号

    • 対称暗号化

  • 非対称暗号(または公開鍵暗号)

    • 非対称暗号化(または公開鍵暗号化)

    • デジタル署名(暗号化を含む場合と含まない場合があります)

この記事では、対称暗号化アルゴリズムと非対称暗号化アルゴリズムに焦点を当てます。


対称暗号化と非対称暗号化

暗号化アルゴリズムは、対称暗号化と非対称暗号化という 2 つのカテゴリに分けられることがよくあります。これら 2 つの暗号化方法の基本的な違いは、対称暗号化アルゴリズムでは 1 つのキーを使用するのに対し、非対称暗号化では 2 つの異なるが関連するキーを使用するという点にあります。この区別は一見単純なものですが、2 つの暗号化技術とその使用方法の機能的な違いを説明しています。


暗号化キーを理解する

暗号化では、暗号化アルゴリズムによって、情報の暗号化と復号化に使用される一連のビットとしてキーが生成されます。これらのキーの使用方法によって、対称暗号化と非対称暗号化の違いが生じます。

対称暗号化アルゴリズムでは、暗号化と復号化の両方の機能を実行するために同じキーを使用しますが、対照的に、非対称暗号化アルゴリズムでは、データの暗号化に 1 つのキーを使用し、復号化に別のキーを使用します。非対称システムでは、暗号化に使用されるキーは公開キーと呼ばれ、他のユーザーと自由に共有できます。一方、復号化に使用されるキーは秘密キーであり、秘密にしておく必要があります。

たとえば、アリスが対称暗号化で保護されたメッセージをボブに送信する場合、アリスは暗号化に使用したのと同じキーをボブと共有して、ボブがメッセージを復号できるようにする必要があります。つまり、悪意のある人物がキーを傍受した場合、暗号化された情報にアクセスできることになります。

しかし、アリスが代わりに非対称方式を使用する場合、アリスはボブの公開鍵でメッセージを暗号化するため、ボブは自分の秘密鍵でそれを復号化できます。したがって、誰かがメッセージを傍受してボブの公開鍵を見つけたとしても、メッセージを復号化できないため、非対称暗号化はより高いレベルのセキュリティを提供します。


キーの長さ

対称暗号化と非対称暗号化のもう 1 つの機能上の違いは、キーの長さに関係しています。キーの長さはビット単位で測定され、各暗号化アルゴリズムによって提供されるセキュリティ レベルに直接関係しています。

対称方式では、キーはランダムに選択され、その長さは必要なセキュリティ レベルに応じて通常 128 ビットまたは 256 ビットに設定されます。ただし、非対称暗号化では、公開キーと秘密キーの間に数学的な関係がなければなりません。つまり、2 つのキーの間には数学的なパターンがあるということです。このパターンは攻撃者が暗号化を解読するために悪用される可能性があるため、同等のセキュリティ レベルを実現するには、非対称キーをはるかに長くする必要があります。キーの長さの違いは非常に顕著であるため、128 ビットの対称キーと 2,048 ビットの非対称キーは、ほぼ同じレベルのセキュリティを提供します。

 

長所と短所

どちらのタイプの暗号化にも、それぞれ長所と短所があります。対称暗号化アルゴリズムははるかに高速で、必要な計算能力も少なくて済みますが、主な弱点はキーの配布です。情報の暗号化と復号化に同じキーが使用されるため、そのキーはデータにアクセスする必要のあるすべてのユーザーに配布する必要があり、当然ながらセキュリティ リスクが生じます (前述のとおり)。

逆に、非対称暗号化では、暗号化に公開鍵を使用し、復号化に秘密鍵を使用することで、鍵配布の問題を解決します。ただし、そのトレードオフとして、非対称暗号化システムは対称システムに比べて非常に遅く、鍵の長さが非常に長いため、より多くの計算能力が必要になります。


ユースケース

対称暗号化

対称暗号化は、その高速性から、多くの現代のコンピュータ システムでデータ保護に広く使用されています。たとえば、Advanced Encryption Standard (AES) は、米国政府によって機密情報や機密情報の暗号化に使用されています。AES は、1970 年代に対称暗号化の標準として開発された以前の Data Encryption Standard (DES) に代わるものです。


非対称暗号化

非対称暗号化は、多くのユーザーがメッセージやデータ セットを暗号化および復号化する必要があるシステムに適用できます。特に、速度や計算能力が主な問題ではない場合に有効です。このようなシステムの 1 つの例としては、暗号化された電子メールがあります。このシステムでは、公開キーを使用してメッセージを暗号化し、秘密キーを使用してメッセージを復号化できます。


ハイブリッドシステム

多くのアプリケーションでは、対称暗号化と非対称暗号化が併用されています。このようなハイブリッド システムの代表的な例としては、インターネット内で安全な通信を提供するために設計された、セキュリティ ソケット レイヤー (SSL) とトランスポート レイヤー セキュリティ (TLS) の暗号化プロトコルがあります。SSL プロトコルは現在安全ではないと考えられており、使用を中止する必要があります。一方、TLS プロトコルは安全であると考えられており、すべての主要な Web ブラウザーで広く使用されています。


暗号通貨は暗号化を使用していますか?

暗号化技術は、エンドユーザーに高いレベルのセキュリティを提供する方法として、多くの暗号通貨ウォレットで使用されています。暗号化アルゴリズムは、たとえば、ユーザーが暗号通貨ウォレットのパスワードを設定するときに適用されます。つまり、ソフトウェアへのアクセスに使用されるファイルが暗号化されているということです。

しかし、ビットコインやその他の暗号通貨は公開鍵と秘密鍵のペアを使用しているため、ブロックチェーン システムは非対称暗号化アルゴリズムを使用しているという誤解がよくあります。しかし、前述のように、非対称暗号化とデジタル署名は、非対称暗号化 (公開鍵暗号化) の 2 つの主要な使用例です。

したがって、公開鍵と秘密鍵を提示する場合でも、すべてのデジタル署名システムが暗号化技術を使用するわけではありません。実際、メッセージは暗号化されなくてもデジタル署名できます。RSA は暗号化されたメッセージに署名するために使用できるアルゴリズムの一例ですが、ビットコインで使用されるデジタル署名アルゴリズム (ECDSA という名前) では暗号化はまったく使用されません。


最後に

対称暗号化と非対称暗号化はどちらも、今日のデジタル依存の世界で機密情報と通信を安全に保つ上で重要な役割を果たします。どちらも便利ですが、それぞれに長所と短所があり、異なる用途に使用されます。暗号化の科学は、より新しく、より洗練された脅威から身を守るために進化し続けているため、対称暗号化システムと非対称暗号化システムはどちらも、コンピューター セキュリティにとって重要なものとなるでしょう。