Distributed-dbms-database-security-cryptography
DDBMS-データベースのセキュリティと暗号化
この章では、データベースシステムが直面する脅威と制御の手段について説明します。 また、セキュリティツールとして暗号化についても学習します。
データベースのセキュリティと脅威
データセキュリティは、データベースシステムの不可欠な側面です。 多数のユーザー、断片化および複製されたデータ、複数のサイト、分散制御のため、分散システムでは特に重要です。
データベース内の脅威
- 可用性の損失-可用性の損失とは、正当なユーザーによるデータベースオブジェクトの非可用性を指します。
- 完全性の損失-データベースに対して許容できない操作が誤ってまたは悪意を持って実行されると、完全性の損失が発生します。 これは、データの作成、挿入、更新、または削除中に発生する可能性があります。 その結果、データが破損し、誤った判断につながります。
- 機密性の損失-機密情報の不正または意図しない開示により機密性の損失が発生します。 違法行為、セキュリティ上の脅威、および国民の信頼の喪失につながる可能性があります。
対策
制御の手段は、次のカテゴリに大きく分けることができます-
- アクセス制御-アクセス制御には、不正アクセスから保護するためのデータベース管理システムのセキュリティメカニズムが含まれます。 ユーザーは、有効なユーザーアカウントのみでログインプロセスをクリアすると、データベースにアクセスできます。 各ユーザーアカウントはパスワードで保護されています。
- フロー制御-分散システムは、あるサイトから別のサイトへ、そしてサイト内の多くのデータフローを包含します。 フロー制御は、許可されていないエージェントがアクセスできるような方法でデータが転送されるのを防ぎます。 フローポリシーは、情報が流れることができるチャネルをリストします。 また、トランザクションだけでなくデータのセキュリティクラスも定義します。
- データの暗号化-データの暗号化とは、機密データがパブリックチャネルを介して通信される場合のデータのコーディングを指します。 許可されていないエージェントがデータにアクセスしても、理解できない形式であるため、データを理解できません。
暗号化とは何ですか?
- 暗号化*は、信頼できない通信パスを介して送信する前に情報をエンコードする科学であり、許可された受信者のみがそれをデコードして使用できます。
コード化されたメッセージは cipher text と呼ばれ、元のメッセージは plain text と呼ばれます。 送信者がプレーンテキストを暗号化テキストに変換するプロセスは、エンコーディングまたは*暗号化*と呼ばれます。 受信者が暗号化テキストをプレーンテキストに変換するプロセスは、デコードまたは*復号化*と呼ばれます。
暗号化を使用して通信する手順全体は、次の図を介して説明することができます-
従来の暗号化方法
従来の暗号化では、暗号化と復号化は同じ秘密鍵を使用して行われます。 ここでは、送信者は、秘密鍵のコピーを使用して暗号化アルゴリズムでメッセージを暗号化します。 暗号化されたメッセージは、パブリック通信チャネルを介して送信されます。 暗号化されたメッセージを受信すると、受信者は同じ秘密鍵を使用して、対応する復号化アルゴリズムでメッセージを復号化します。
従来の暗号化のセキュリティは2つの要因に依存しています-
- すべてに知られている健全なアルゴリズム。
- ランダムに生成された、好ましくは送信者と受信者のみが知っている長い秘密鍵。
最も有名な従来の暗号化アルゴリズムは、 Data Encryption Standard または DES です。
この方法の利点は、簡単に適用できることです。 ただし、従来の暗号化の最大の問題は、通信する当事者間で秘密鍵を共有することです。 キーを送信する方法は面倒であり、盗聴されやすくなります。
公開鍵暗号
従来の暗号化とは対照的に、公開キー暗号化では、公開キーと秘密キーと呼ばれる2つの異なるキーを使用します。 各ユーザーは、公開鍵と秘密鍵のペアを生成します。 次に、ユーザーは公開キーをアクセス可能な場所に置きます。 送信者がメッセージを送信する場合、受信者の公開キーを使用してメッセージを暗号化します。 暗号化されたメッセージを受信すると、受信者は自分の秘密キーを使用してメッセージを復号化します。 秘密鍵は受信者以外には知られていないため、メッセージを受信した他の人は解読できません。
最も一般的な公開鍵暗号アルゴリズムは、 RSA アルゴリズムと Diffie– Hellman アルゴリズムです。 この方法は、プライベートメッセージを送信するのに非常に安全です。 ただし、問題は、多くの計算を伴うため、長いメッセージに対しては非効率であることが判明しています。
解決策は、従来の暗号化方式と公開鍵暗号方式を組み合わせて使用することです。 秘密鍵は、通信する当事者間で共有する前に、公開鍵暗号を使用して暗号化されます。 次に、メッセージは、共有秘密鍵を使用して従来の暗号化を使用して送信されます。
デジタル署名
デジタル署名(DS)は、電子商取引アプリケーションで使用される公開鍵暗号に基づく認証技術です。 メッセージ本文内の個人に一意のマークを関連付けます。 これは、他の人がメッセージの有効な送信者を認証するのに役立ちます。
通常、ユーザーのデジタル署名は、偽造に対するセキュリティを提供するためにメッセージごとに異なります。 メソッドは次のとおりです-
- 送信者はメッセージを取得し、メッセージのメッセージダイジェストを計算し、プライベートキーでダイジェストに署名します。
- 次に、送信者は署名付きダイジェストをプレーンテキストメッセージと共に追加します。
- メッセージは通信チャネルを介して送信されます。
- 受信者は、追加された署名済みダイジェストを削除し、対応する公開キーを使用してダイジェストを検証します。
- 次に、受信者はプレーンテキストメッセージを取得し、同じメッセージダイジェストアルゴリズムで実行します。
- ステップ4とステップ5の結果が一致する場合、受信者はメッセージに整合性と信頼性があることを認識します。