最近のアクセス:
GeneXusCryptography Module の非対称暗号方式

: これは、GeneXus Cryptography Module の一部です。

非対称暗号方式

これは公開鍵暗号方式とも呼ばれています。
非対称暗号方式の主な特徴は、数学的にバインドされた一対の鍵を使用する点です。一方は秘密鍵、もう一方は公開鍵です。公開鍵は秘密鍵から導出されますが、秘密鍵を公開鍵から導出することはできません。
この暗号方式は、対称暗号方式よりも低速で、より限定的であるため、対称暗号方式と同じ用途に加え、デジタル署名にも使用できます。
特に一般的に使用されている鍵ペアのタイプは RSA と ECDSA です。これらは鍵ペア生成の数学的基礎が異なるため、それぞれ固有のプロパティがあります。
秘密鍵は秘密にしておく必要があります。秘密鍵はどのような状況でも共有されません。この鍵は、誰も必要とせず、誰も求めることはできません (ただし、正式なものではなく、テスト用の場合は除く)。
公開鍵は、接続チャネルを確立するすべての相手と共有することを意図しています。通常はデジタル証明書で配布されます。PKI (Public Key Infrastructure: 公開鍵インフラストラクチャ) を使用した X509 が証明書の標準仕様です。
秘密鍵を使用して暗号化を行ってから公開鍵で復号化すること、およびその逆が可能です。これは暗号化の目的や、通信を行う両者の場所に応じます。秘密鍵でメッセージを暗号化する場合、公開鍵を持っていれば誰でも復号化できます。公開鍵でメッセージを暗号化する場合、その鍵の所有者のみがそのメッセージを復号化できます。秘密鍵を持っているか、知っているのは所有者のみだからです。一部の通信方式は、誰かが公開鍵で暗号化したものを秘密鍵で復号化する、またはその逆として定義されています。その前か後の署名と組み合わさっている場合もあります。
メッセージは常に秘密鍵で署名され、公開鍵で検証されます。

公開鍵インフラストラクチャ

インターネット上には、認証局 (CA) と呼ばれる信頼できる第三者機関があり、信頼されているシステムが実装されています。CA の目標は、証明書の所有者の身元を検証することです。
このプロセスは次のとおりです:
  • 個人または会社が鍵ペアを作成し、公開鍵を証明書に含めて CA に送信します。証明書には、CA がこの個人または会社の身元確認のために必要とするその他の識別情報も含まれます。
  • CA が、公開鍵およびその他の必要なデータを含む証明書を作成し、独自の秘密鍵で署名します。
CA の公開鍵は、一般に知られていて、一般的に使われているソフトウェアにプリインストールされている場合もあります。この場合、CA の署名を誰でも検証でき、信頼の連鎖 (Chain of Trust) が確立されます。CA を信頼することは、その CA によって署名された証明書を信頼することです。このため、証明書には、階層構造の信頼の連鎖を表す、証明書チェーンを含めることができます。

鍵のペアの生成

鍵のペアはいくつかのツールを使用してローカルに生成することができます。最も一般的なのは OpenSSL です。
証明書は、誰でも作成し、署名し、配布することができますが、このような証明書はほとんどの人が信頼しません。また、ソフトウェアも既定で信頼しません。このタイプの証明書は、自己署名証明書と呼ばれ、一般的にテストに使用されます。
鍵のペアが生成されると、署名の生成と検証に使用されるハッシュアルゴリズムとともに、暗号化アルゴリズムおよび署名アルゴリズムが確立されます。署名は、常に証明書にあらかじめ設定されたアルゴリズムを使用して検証されます。

デジタル署名

NIST による定義:
「デジタル署名は、発信元の認証とデータ整合性を保証するために使用します。この保証が拡張され、当事者 (署名者) が、署名されたドキュメントの有効性を否認 (反駁) できないことを保証することもあります。これは一般に否認不可と呼ばれています。」(出典
署名するメッセージは通常、このようなアルゴリズムには大きすぎます。このため、実際には、メッセージのハッシュダイジェストが計算され (安全なハッシュ関数を使用)、実際のメッセージではなくこのダイジェストが署名されます。この理由から、証明書でハッシュ関数を設定し、それに従う必要があります。

NIST の推奨事項 (2019 年 3 月 21 日)

デジタル署名のプロセス ドメインパラメーター ステータス
デジタル署名
生成
ECDSA: len(n) < 224
RSA: len(n) < 2048
容認されない
ECDSA: len(n) ≥ 224
RSA: len(n) ≥ 2048
容認
デジタル署名
検証
ECDSA: 160 ≤ len(n) < 224
RSA: 1024 ≤ len(n) < 2048
過去データへの使用のみ
ECDSA: len(n) ≥ 224
RSA: len(n) ≥ 2048
容認
ステータスを表す用語の説明
  • 容認: FIPS または SP のアルゴリズムおよび鍵の長さを安全に使用できることを示しています。ガイダンスに従って使用した場合に現時点で既知のセキュリティリスクはありません。
  • 非推奨: アルゴリズムと鍵の長さを使用することはできるが、ユーザーが一定のセキュリティリスクを受け入れる必要があることを示しています。
  • 容認されない: アルゴリズムまたは鍵の長さが、暗号化による保護に認められていないことを示しています。

有用なツール

参照

 




サブページ
Created: 20/12/14 21:40 by Admin Last update: 21/05/20 08:05 by Admin
カテゴリ
Powered by GXwiki 3.0