Cryptography-cryptosystems

提供:Dev Guides
移動先:案内検索

暗号システム

暗号システムは、情報セキュリティサービスを提供するための暗号技術とそれに付随するインフラストラクチャの実装です。 暗号システムは、*暗号システム*とも呼ばれます。

送信される情報に機密性を提供する暗号システムの簡単なモデルについて説明しましょう。 この基本モデルは、次の図に示されています-

暗号システム

この図は、通信チャネル上で傍受または盗聴された者がデータを抽出できないように、一部の機密データを受信者に転送したい送信者を示しています。

この単純な暗号システムの目的は、プロセスの最後に、送信者と受信者のみが平文を知ることです。

暗号システムのコンポーネント

基本的な暗号システムのさまざまなコンポーネントは次のとおりです-

  • * Plaintext。*送信中に保護されるデータです。
  • *暗号化アルゴリズム*これは、任意のプレーンテキストと暗号化キーの暗号文を生成する数学的プロセスです。 これは、入力としてプレーンテキストと暗号化キーを受け取り、暗号文を生成する暗号化アルゴリズムです。
  • * Ciphertext。*特定の暗号化キーを使用して暗号化アルゴリズムによって生成された平文のスクランブルバージョンです。 暗号文は保護されていません。 それは公開チャンネルで流れます。 通信チャネルにアクセスできるすべてのユーザーが傍受または侵害する可能性があります。
  • *復号化アルゴリズム*これは、特定の暗号文と復号化キーに対して一意の平文を生成する数学的プロセスです。 これは、暗号文と復号化キーを入力として受け取り、平文を出力する暗号化アルゴリズムです。 復号化アルゴリズムは、基本的に暗号化アルゴリズムを逆にするため、それに密接に関連しています。
  • *暗号化キー。*これは送信者に知られている値です。 送信者は、暗号文を計算するために、暗号化キーを平文とともに暗号化アルゴリズムに入力します。
  • *復号化キー。*これは受信者に知られている値です。 復号化キーは暗号化キーに関連していますが、常に同じではありません。 受信者は、平文を計算するために、暗号化テキストとともに復号化キーを復号化アルゴリズムに入力します。

特定の暗号システムでは、可能なすべての復号化キーのコレクションは*キースペース*と呼ばれます。

インターセプター(攻撃者)は、プレーンテキストを判別しようとする無許可のエンティティです。 彼は暗号文を見ることができ、解読アルゴリズムを知っているかもしれません。 しかし、彼は決して復号化キーを知らないでください。

暗号システムの種類

基本的に、暗号化-復号化がシステムで実行される方法に基づいて2種類の暗号システムがあります-

  • 対称キー暗号化
  • 非対称キー暗号化

これらの暗号システムの主な違いは、暗号化キーと復号化キーの関係です。 論理的に、どの暗号システムでも、両方のキーは密接に関連付けられています。 暗号化キーとは関係のないキーを使用して暗号文を復号化することは事実上不可能です。

対称キー暗号化

情報の暗号化と復号化に*同じキーが使用される暗号化プロセスは、対称キー暗号化と呼ばれます。

対称暗号システムの研究は、「対称暗号」と呼ばれます。 対称暗号システムは、*秘密鍵暗号システム*とも呼ばれます。

対称キー暗号化方式のいくつかのよく知られた例は次のとおりです-Digital Encryption Standard(DES)、Triple-DES(3DES)、IDEA、およびBLOWFISH。

対称キー暗号化

1970年以前は、すべての暗号システムで対称キー暗号化が採用されていました。 今日でも、その関連性は非常に高く、多くの暗号システムで広く使用されています。 この暗号化が非対称キー暗号化よりも特定の利点があるため、この暗号化が消えることはほとんどありません。

対称鍵暗号化に基づく暗号システムの顕著な特徴は次のとおりです-

  • 対称キー暗号化を使用する人は、情報を交換する前に共通キーを共有する必要があります。
  • システムへの攻撃を防ぐために、キーを定期的に変更することをお勧めします。
  • 通信する当事者間で鍵を交換するには、堅牢なメカニズムが必要です。 キーは定期的に変更する必要があるため、このメカニズムは高価で扱いにくくなります。
  • n 人のグループでは、任意の2人の間で2者間通信を可能にするために、グループに必要なキーの数は n×(n – 1)/2 です。
  • この暗号化のキーの長さ(ビット数)は小さいため、暗号化-復号化のプロセスは非対称キー暗号化よりも高速です。
  • 対称アルゴリズムを実行するために必要なコンピューターシステムの処理能力は低くなります。

対称鍵暗号システムの課題

対称キー暗号化の採用には、2つの制限的な課題があります。

  • キーの確立-通信の前に、送信者と受信者の両方が秘密の対称キーに同意する必要があります。 安全なキー確立メカニズムが必要です。
  • 信頼の問題-送信者と受信者は同じ対称キーを使用するため、送信者と受信者が互いに「信頼」するという暗黙の要件があります。 たとえば、受信者が攻撃者へのキーを失い、送信者に通知されないことがあります。

これらの2つの課題は、現代のコミュニケーションを非常に制限しています。 今日、人々は馴染みのない、信頼できない人と情報を交換する必要があります。 たとえば、オンライン販売者と顧客間の通信。 対称キー暗号化のこれらの制限により、非対称キー暗号化スキームが発生しました。

非対称キー暗号化

  • 異なるキーが情報の暗号化と復号化*に使用される暗号化プロセスは、非対称キー暗号化と呼ばれます。 キーは異なりますが、数学的に関連しているため、暗号文を復号化して平文を取得することは可能です。 プロセスは、次の図に示されています-

非対称キー暗号化

非対称キー暗号化は、通信する人の間で事前共有秘密キーの必要性を克服するために20世紀に発明されました。 この暗号化スキームの顕著な特徴は次のとおりです-

  • このシステムのすべてのユーザーは、異なるキーのペア、*プライベートキー*および*パブリックキー*を持っている必要があります。 これらのキーは数学的に関連しています。1つのキーが暗号化に使用されると、もう1つのキーは暗号文を解読して元のプレーンテキストに戻すことができます。
  • 公開鍵を公開リポジトリに、秘密鍵を十分に保護された秘密として配置する必要があります。 したがって、この暗号化スキームは「公開鍵暗号化」とも呼ばれます。
  • ユーザーの公開鍵と秘密鍵は関連していますが、計算上、1つを見つけることはできません。 これがこのスキームの強みです。
  • _Host1_は_Host2、_にデータを送信する必要がある場合、リポジトリから_Host2_の公開キーを取得し、データを暗号化して送信します。
  • _Host2_は、プライベートキーを使用してプレーンテキストを抽出します。
  • この暗号化のキーの長さ(ビット数)は大きいため、暗号化/復号化のプロセスは対称キー暗号化よりも遅くなります。
  • 非対称アルゴリズムを実行するために必要なコンピューターシステムの処理能力は高くなります。

対称暗号システムは自然な概念です。 対照的に、公開鍵暗号システムは理解するのが非常に困難です。

_暗号化キーと復号化キーはどのように「関連する」ことができますが、暗号化キーから復号化キーを決定することは不可能ですか?_答えは数学的概念にあります。 キーにこのプロパティがある暗号システムを設計することができます。 公開鍵暗号の概念は比較的新しいものです。 対称アルゴリズムよりも少ない公開鍵アルゴリズムが知られています。

公開鍵暗号システムの課題

公開鍵暗号システムには1つの重要な課題があります。ユーザーは、人との通信に使用している公開鍵が本当にその人の公開鍵であり、悪意のある第三者になりすまされていないことを信頼する必要があります。

これは通常、信頼できるサードパーティで構成される公開キー基盤(PKI)によって実現されます。 サードパーティは、公開キーの信頼性を安全に管理および証明します。 第三者が通信者Xに公開鍵を提供するよう要求された場合、第三者は正しい公開鍵を提供することが信頼されます。

サードパーティは、認証、公証、またはその他のプロセスによってユーザーIDについて満足します。Xは唯一の、またはグローバルに一意のXです。 検証済みの公開キーを利用可能にする最も一般的な方法は、信頼できる第三者によってデジタル署名された証明書にそれらを埋め込むことです。

暗号化スキーム間の関係

2種類の暗号システムの基本的な主要特性の概要を以下に示します-

Symmetric Cryptosystems Public Key Cryptosystems
Relation between Keys Same Different, but mathematically related
Encryption Key Symmetric Public
Decryption Key Symmetric Private

両方のシステムの長所と短所のために、実用的な情報セキュリティシステムでは対称キーと公開キー暗号システムがしばしば一緒に使用されます。

暗号システムのKerckhoffの原則

19世紀、オランダの暗号作成者A。 Kerckhoffは、優れた暗号システムの要件を提供しました。 Kerckhoffは、暗号システムは、キー以外のシステムに関するすべてが公の知識であっても安全である必要があると述べました。 暗号システムのためにケルコフによって定義された6つの設計原則は-

  • 暗号システムは、数学的にではないにしても、実際には壊れないものでなければなりません。
  • 暗号システムが侵入者の手に落ちても、システムのセキュリティ侵害につながることはなく、ユーザーの不便を防ぎます。
  • キーは、簡単に伝達、記憶、および変更可能である必要があります。
  • 暗号文は、安全でないチャネルである電信で送信できる必要があります。
  • 暗号化装置とドキュメントは、持ち運び可能で、一人で操作できるものでなければなりません。
  • 最後に、システムは使いやすく、精神的な負担も、観察するための長いルールの知識も必要ありません。

2番目のルールは、現在* Kerckhoffの原則*として知られています。 DES、AESなど、ほぼすべての現代の暗号化アルゴリズムに適用されます。 これらの公開アルゴリズムは、完全に安全であると見なされます。 暗号化されたメッセージのセキュリティは、秘密暗号化キーのセキュリティのみに依存します。

アルゴリズムを秘密にしておくことは、暗号解読に対する重要な障壁として機能する可能性があります。 ただし、アルゴリズムを秘密に保つことは、それらが厳密に制限された円で使用される場合にのみ可能です。

現代では、暗号化はインターネットに接続しているユーザーに対応する必要があります。 そのような場合、秘密のアルゴリズムを使用することは実行不可能であるため、現代の暗号化でアルゴリズムを設計するためのケルコフの原則は不可欠なガイドラインになりました。