公開鍵暗号化がデータの整合性を確保する方法
公開: 2021-07-30データにはセキュリティが必要であり、セキュリティには暗号化が必要です。
とりわけ、 暗号化 データのセキュリティを確保する上で重要な役割を果たします。 これは、暗号化キーを使用してのみデコードまたは復号化できる、判読不能な形式にデータを変換するプロセスです。
暗号化キーは、暗号化メカニズムで生成されるランダムな文字列です。 暗号化中に平文を暗号文に変換するために使用されます。 同じキー (対称暗号化) または別のキー (非対称暗号化) を使用して、暗号文を平文に変換できます。
暗号化は、実際のメッセージを隠して暗号文に変換し、判読不能にします。 公開鍵暗号化は、メッセージを暗号化できる方法の 1 つです。 2 つの鍵 (公開鍵と秘密鍵) を持つロックと考えてください。 ユーザーが最初のキーでロックした場合、2 番目のキーでのみロックを解除できます。
対称暗号化やハイブリッド暗号化など、他の方法もありますが、ここでは、公開鍵暗号化を詳しく見て、それがどのようにユーザーに高度なデータ セキュリティを提供するかを見てみましょう。
公開鍵暗号とは?
公開キー暗号化とも呼ばれる公開キー暗号化は、2 つの異なるキーを使用してデータの暗号化と復号化を行う技術です。 1 つは誰でもデータを暗号化するために使用できる公開鍵で、もう 1 つはイニシエーターが復号化に使用できる秘密鍵です。
公開鍵暗号化は非対称暗号化とも呼ばれ、Transport Layer Security/Secure Sockets Layer (TLS/SSL) で広く使用されているため、Hypertext Transfer Protocol Secure (HTTPS) が可能になります。
公開鍵暗号化のコンポーネントは次のとおりです。
- 平文:暗号化アルゴリズムに入力として与えられる、読み取り可能で理解可能なデータ
- 暗号文:人が理解できない判読不能な形式での暗号化の出力
- 秘密鍵:暗号化されたメッセージをデコードするために一般的に使用される秘密鍵
- 公開鍵:誰でも利用でき、通常はメッセージの暗号化に使用されます
暗号化されたメッセージを送信するために、共有ディレクトリから受信者の公開鍵を取得できます。 このキーを使用してメッセージを送信前に暗号化すると、受信者は対応する秘密キーを使用してメッセージを復号化できます。
対照的に、秘密鍵を使用してメッセージを暗号化すると、受信者は公開鍵でのみメッセージを復号化し、身元を確認できます。 メッセージを物理的にロックおよびロック解除することなく、暗号化と復号化の両方を自動的に実行できます。 組織は 暗号化ソフトウェア プロセスをシームレスに実行し、堅牢なデータ保護を確保します。
42%
の回答者が顧客データの暗号化を使用しています。
出典:ポネモン研究所
公開鍵暗号化は、秘密鍵を共有する必要がなく、送信中の漏洩を防ぐため、非常に安全な暗号化プロセスです。 実質的な情報セキュリティを提供し、不正アクセスからデータを保護します。
インターネット通信では、公開鍵インフラストラクチャ (PKI) を使用して ID とセキュリティを管理します。 非対称暗号化 (公開鍵暗号化) は、PKI を可能にし、さまざまな通信チャネルでデータ保護を提供するコア テクノロジです。
一方、対称暗号化とも呼ばれる秘密鍵暗号化は、暗号化と復号化の両方に 1 つの鍵を使用する手法です。 両方 対称および非対称暗号化 ユースケースに基づいた利点と課題、および必要な暗号化の強度があります。
公開鍵暗号化はどのように機能しますか?
公開鍵暗号化により、ユーザーは秘密裏にメッセージを送受信できます。 各ユーザーは、公開鍵と秘密鍵のペアを作成できます。 両方のキーには、それらの間に数学的な関係があります。 しかし、公開鍵から秘密鍵を実際に導出することはできません。
暗号化では、公開鍵を使用してメッセージを暗号化できますが、受信者の秘密鍵でしか解読できません。 さらに、送信者が秘密鍵を使用してメッセージを暗号化すると、受信者は公開鍵を使用して送信者の身元を確認できます。
公開鍵暗号化では、鍵を交換する必要がないため、鍵管理の煩わしさを軽減する長い鍵を使用します。 メッセージの暗号化にキーが使用されると、そのキーを使用してメッセージを復号化することはできません。
公開鍵暗号化システムの重要な特性には、次のようなものがあります。
- 暗号化と復号化は異なるキーを使用します
- 受信者は、メッセージの復号化に使用される一意の秘密鍵を所有しています
- 受信者は、誰でも利用できる公開鍵を公開します
- 信頼できる第三者は、なりすましを避けるために、公開鍵が特定の個人またはエンティティに属していることを保証します
- 公開鍵暗号化では、公開鍵から秘密鍵を導出することはできません
公開鍵暗号の応用
公開鍵暗号は通常、電子署名で使用されます。 電子署名は、ユーザーの身元を認証し、ドキュメント、メッセージ、またはソフトウェアの整合性を維持するための数学的方法です。 企業は一般的に使用します 電子署名ソフトウェア 法的に機密性の高いドキュメントを配布し、デジタル署名を収集します。
デジタル署名とは別に、公開鍵暗号はさまざまな目的で使用されます。
Web サーバーのセキュリティ
公開鍵暗号化は、HTTPS のセキュリティを保証する TLS/SSL 暗号化プロトコルの中核です。 Web サーバーとクライアントを保護します。 サイバー攻撃 中間者攻撃のように、攻撃者が通信を傍受し、メッセージ内のコンテンツにアクセスします。 対称暗号化も HTTPS の一部であり、公開鍵暗号化を使用して 2 つの当事者間で鍵を交換し、対称暗号化鍵を使用して暗号化プロセスを実行します。
公開キー暗号化により、送信者と受信者は身元を確認できるようになり、中間者攻撃から防御するのに役立ちます。 Web サーバーのセキュリティは、Google や Bing などの検索エンジンで Web サイトを上位にランク付けするという追加の利点も提供します。
身元認証
現在、データは従来のネットワークを超えてクラウド、モバイル デバイス、モノのインターネット (IoT) デバイス、およびその他のさまざまなテクノロジに移行しており、企業が ID を保護することは非常に重要になっています。 公開鍵暗号化により、組織はデジタル ID 証明書を使用し、パスワードを置き換えて、 ブルートフォース攻撃。
メールの暗号化
電子メールの暗号化では、公開鍵暗号化を使用してメッセージを認証および暗号化します。 許可されていないエンティティや悪意のあるハッカーからメッセージを保護するのに役立ちます。 攻撃者がメールサーバーのパスワードを解読しても、暗号化されているためメールの内容を閲覧することはできません。
使用できます メール暗号化ソフト 電子メールにデジタル署名を付けて身元を証明し、送信中またはサーバーに保存されているコンテンツと添付ファイルを暗号化することで電子メールを保護します。
Secure/Multipurpose Internet Mail Extensions (S/MIME) 証明書などの安全な電子メール暗号化方法は、公開鍵インフラストラクチャを使用してデジタル ID を検証し、暗号化を容易にします。
暗号通貨
ビットコインのような著名な暗号通貨は、トランザクションの公開鍵暗号化に依存しています。 ユーザーは誰でも利用できる公開鍵を持ち、秘密鍵は秘密にされ、トランザクションの実行に使用されます。
たとえば、ビットコイン台帳では、未使用のトランザクション出力 (UTXO) が公開鍵にリンクされています。 ユーザー A がユーザー B とのトランザクションに署名したい場合、ユーザー A は秘密鍵を使用して UTXO を使用し、ユーザー B の公開鍵にリンクされた新しい UTXO を生成します。

公開鍵暗号アルゴリズム
公開キー暗号化アルゴリズムは、メッセージを暗号化するか、メッセージの発信元と送信者の身元を確認するために使用される数学関数です。
一般的な公開鍵暗号化アルゴリズムの一部を以下に示します。
Rivest-Shamir-Adleman (RSA) アルゴリズム
RSA アルゴリズムを使用すると、公開鍵と秘密鍵を使用してメッセージを暗号化できます。 公開鍵が暗号化に使用される場合、秘密鍵は復号化を容易にし、その逆も同様です。 この特性により、一般的な非対称暗号化アルゴリズムになりました。 RSA は、組織が保管中または転送中の情報の機密性、整合性、否認防止、および信頼性を確保するのに役立ちます。
RSA アルゴリズムは、2 つの大きな素数の積である大きな整数の因数分解を含む複雑なプロセスを通じて、公開鍵と秘密鍵を生成します。
例を挙げて、RSA アルゴリズムがどのように機能するかを見てみましょう。 Rabin-Miller 素数性テスト アルゴリズムを使用して生成された 2 つの素数 p と q を考えます。 Rabin-Miller 素数性テスト アルゴリズムは、数値が素数かどうかを判断します。 2 つの素数を使用して、それらのモジュラス n を計算します。
係数、N = pxq
公開鍵は、モジュラス (n) と公開指数 (e) で構成されます。 公開鍵は誰でもアクセスできるため、公開指数の値は秘密である必要はありません。 通常は 65537 と見なされます。
秘密鍵は、モジュラス (n) と秘密指数 d (拡張ユークリッド アルゴリズムから計算され、n の総和に関する乗法逆数を求める) で構成されます。
知ってますか? の 拡張ユークリッド アルゴリズム ユークリッド アルゴリズムの拡張です。 ax + by = 最大公約数 (a,b) となるように、2 つの整数 (a,b) の最大公約数とベズー恒等係数 (x, y) を計算します。
RSA キーの長さは通常 1024 ビットですが、政府や一部の業界では、セキュリティを強化するために最小キーの長さを 2048 ビットにするように指示しています。
デジタル署名アルゴリズム (DSA)
デジタル署名アルゴリズムは、電子署名の生成に使用される公開鍵暗号化アルゴリズムの一種です。 これにより、受信者は送信者の身元を認証し、メッセージの発信元を確認できます。
興味深いことに、送信者は秘密鍵を使用して電子署名を行い、対応する公開鍵を使用して受信者によって検証されます。 簡単に言えば、秘密鍵は一意です。 1 人の個人または団体が使用できます。 ただし、公開鍵はすべての人が利用できるため、誰でも公開鍵を使用してメッセージの発信元を認証できます。
デジタル署名アルゴリズムはかなりの強度がありますが、署名の長さは他の署名アルゴリズムに比べて短くなります。 その計算速度は遅く、作業に必要な記憶域も少なくて済みます。
楕円曲線暗号 (ECC)
楕円曲線暗号は、楕円曲線理論を利用して効率的で効果的な暗号鍵を生成する公開鍵暗号の一種です。 ECC は、2 つの大きな素数を因数分解するのではなく、楕円曲線方程式のプロパティを通じてキーを生成します。
RSA などの他の暗号化システムが 3072 ビット キーで提供するのと同じレベルのセキュリティを 256 ビット キーで提供するため、モバイル アプリケーションで人気があります。
量子コンピューティングの継続的な開発により、2 つの大きな素数の素因数分解に依存する暗号化アルゴリズムは解読が容易になります。 ECC と量子キーの配布は、今後データを暗号化するための最良の合理的な代替手段になる可能性があります。
TLS/SSL での公開鍵暗号化
TLS/SSL プロトコルは、エンド ツー エンドのデータ セキュリティを提供しながら、非対称暗号化と対称暗号化の両方を活用することで、ネットワーク上で暗号化された通信を保証します。 TLS/SSL ハンドシェイクでは、サーバーは暗号化アルゴリズムに同意します。 Web サイトには、公開鍵を保持する TLS/SSL 証明書がありますが、秘密鍵はサーバーにインストールされます。
クライアントとサーバー間の通信は、決定された暗号化アルゴリズムと対応するキーを使用して暗号化されます。 悪意のあるハッカーからメッセージを保護し、クライアントとサーバー間の安全な通信チャネルを確保します。
プロセス全体で、暗号化キーを共有する必要はありません。 受信者の公開鍵は、受信者の秘密鍵によってのみ復号化できるメッセージを暗号化するために使用されます。
公開鍵暗号化の方が優れていますか?
公開キー暗号化は 2 つのキーを使用することで構成され、対称暗号化と比較してより安全な暗号化方法を提供します。 公開鍵暗号では秘密鍵の交換がないため、鍵管理の手間が省けます。 対照的に、交換された秘密鍵が対称暗号化で盗まれたり紛失したりすると、システム全体が危険にさらされる可能性があります。
公開鍵暗号化は、メッセージを暗号化する複雑なプロセスに従います。 対称暗号化よりも時間がかかり、場合によってはリソースも消費しますが、より優れたセキュリティが提供されます。 また、デジタル証明書を暗号化して、悪意のあるハッカーが危険にさらされてもアクセスできないようにします。
暗号化の選択は、その用途、デバイスの性質、ストレージ、計算能力、セキュリティのレベル、およびその他の要素によって異なります。 これらのパラメータに応じて、対称暗号システムと非対称暗号システムの両方に長所と短所があります。
公開鍵暗号化の利点
公開鍵暗号化を使用する主な利点は、より堅牢なデータ セキュリティです。 ユーザーは自分の秘密鍵を誰とも共有、送信、開示する必要がないため、サイバー犯罪者が秘密鍵を傍受し、それを悪用して通信を解読するリスクが軽減されます。
これは、ユーザーが秘密鍵暗号化を使用する際に直面する鍵配布の問題に対処するのに役立ちます。 これにより、組織はデータの機密性と整合性を維持できるようになり、より堅牢な情報セキュリティが実現します。
暗号化の強度とは別に、公開鍵暗号化により、ユーザーは否認防止を保証しながらデジタル ID を検証することもできます。 これらの利点により、Pretty Good Privacy (PGP) や HTTPS から OpenID Connect (OIDC) や WebAuthN に至るまで、非対称暗号化が一般的な暗号化の選択肢になりました。
公開鍵暗号化の課題
公開鍵暗号化の主な欠点は、暗号化プロセスの実行速度が遅いことです。 かなりの素数因数分解を含む複雑な数学的操作を使用して、公開鍵と秘密鍵のペアを生成するには、より多くの計算能力とストレージが必要です。
公開鍵暗号化の一般的な課題は次のとおりです。
- ブルート フォース攻撃:計算能力の高いコンピューターは、広範な検索を実行して秘密鍵の詳細を見つけることができます。
- プログラミングの課題:公開鍵暗号化を実装する前に、ユーザーは急な学習曲線を経なければならない場合があります。
- 鍵の管理: 送信者と受信者の間で鍵を交換する必要はありませんが、イニシエーターは秘密鍵を自分で管理する必要があります。
暗号化する装備
セキュリティ スタックに暗号化ソフトウェアを装備し、プライバシーを維持する必要があるすべての通信を保護します。 公開鍵暗号化は、複雑な暗号化メカニズムを使用してデータを堅牢に保護するのに役立ちます。
暗号化やその他のセキュリティ防御に加えて、情報セキュリティを確保し、規制基準に準拠することができます。
組織の情報セキュリティを強化するために他に何が必要かを発見してください。