対称暗号化、非対称暗号化、ハッシュアルゴリズムについてお話ししましょう

対称暗号化、非対称暗号化、ハッシュアルゴリズムについてお話ししましょう

  [[327803]]

対称暗号化

対称キー暗号化とは何ですか?

対称暗号化は、対称暗号コーディング技術を使用します。暗号化と復号化に同じキーが使用され、このキーは暗号化にも復号化にも使用できるという特徴があります。

基本的なプロセス:

当事者 A (主導者またはサーバー) は暗号化キーを生成し、そのキーを当事者 B (クライアントまたは受信者) と非公開で共有します。当事者 A または当事者 B が暗号文情報を交換する場合、このキーを使用して平文を暗号化して暗号文を生成するか、暗号文を復号化して平文を生成します。

一般的な対称暗号化アルゴリズム:

DES、3DES、Blowfish、IDEA、RC4、RC5、RC6、AES

一般的に使用される対称暗号化アルゴリズム:

AES、DES

アドバンテージ:

鍵生成アルゴリズムは公開されており、計算量が少なく、暗号化速度が速く、暗号化効率が高く、鍵が短い

欠点:

一方では、2 つの当事者のうちの 1 つが共通のキーを持っていて、それが盗まれた場合、両方の当事者が影響を受けます。一方、顧客ごとに異なるキーを生成すると、キーの数が膨大になり、キー管理がストレスになります。

適用シナリオ:

ログイン情報のユーザー名とパスワードの暗号化、送信の暗号化、命令の暗号化(控除、発注操作など)

非対称暗号化

非対称キー暗号化とは何ですか?

非対称暗号化アルゴリズムには、公開鍵と秘密鍵 (プライベートキー) のペア (2 つのキー) が必要です。公開鍵と秘密鍵はペアで生成されます。公開鍵による暗号化は、対応する秘密鍵でのみ復号化できます。同様に、秘密鍵による暗号化は、対応する公開鍵でのみ復号化できます。

基本的なプロセス:

当事者 A (主導当事者またはサーバー) は、一対の鍵 (つまり、公開鍵と秘密鍵) を生成し、公開鍵の 1 つを公開するか、他の当事者と非公開で共有します。公開鍵を取得した当事者 B は、公開鍵を使用して機密情報を暗号化し、それを当事者 A に送信します。その後、当事者 A は保持しているもう 1 つの対応する秘密鍵を使用して、暗号化された情報を復号化します。これは、当事者 A と当事者 B がそれぞれキーを保持しているのと同じです。このとき、乙は1人の「者」であっても、複数の「者」であっても構いません。

一般的な非対称暗号化アルゴリズム:

RSA、ECC、Diffie-Hellman、El Gamal、DSA(デジタル署名用)

一般的に使用される非対称暗号化:

RSA、ECC

アドバンテージ:

高いセキュリティ(解読はほぼ不可能)

欠点:

暗号化と復号化は比較的遅く、鍵が長く、計算量が多く、効率が低い

適用シナリオ:

HTTPS (ssl) 証明書の生成、CRS 証明書の要求、金融通信の暗号化、Bluetooth などのハードウェア情報の暗号化ペアリング送信、キーログイン情報の検証。

RSAとECCの比較

公開鍵と秘密鍵のペアを生成する両方のアルゴリズムは、現在のコンピュータでは解決されていない数学的な問題に基づいています。

非常に大きな整数を因数分解することの難しさによって、RSA アルゴリズム、ECC 楕円曲線暗号の信頼性が決まります。

RSA は一般的に少量のデータを暗号化しますが、ECC は主にモバイル デバイスで使用されます。この 2 つを比較すると、ECC キーは同じセキュリティでより短く、より高速です。送信されるデータの量が少ない。

(1)RSA署名アルゴリズムは、検証操作の頻度が高く、署名操作の頻度が低いアプリケーションシナリオに適しています。たとえば、分散システムにおける機能ベースのアクセス制御はそのようなシナリオです。

(2)ECDSA署名アルゴリズムは、署名と検証操作の頻度が等しいアプリケーションシナリオに適している。たとえば、ポイントツーポイントの安全なチャネルの確立

対称暗号化と非対称暗号化の詳細な比較

管理の面では、非対称暗号化の方が対称暗号化よりも多くの利点があります。対称暗号化キーの管理と配布はより困難で、安全性が低く、キー管理の負担が重くなります。

セキュリティの観点では、非対称暗号化アルゴリズムは未解決の数学的な問題に基づいており、解読することはほぼ不可能です。対称暗号化 AES に関しては、理論的には解読は不可能ですが、コンピュータ開発の観点からはそうではありません。非対称暗号化のセキュリティはより優れています。

速度の面では、例えば対称暗号化方式 AES のソフトウェア実装速度は、毎秒数メガビットから数十メガビットに達しています。非対称暗号公開鍵の100倍です。ハードウェアで実装すれば、この比率は1000倍に拡大します。

対称暗号化の利点と欠点: 非対称暗号化アルゴリズムと比較すると、対称暗号化ははるかに効率的で、暗号化速度も速くなります。

非対称暗号化のメリットとデメリット: セキュリティが高く、公開鍵は公開され、秘密鍵は自分で保管し、秘密鍵を他人に渡す必要はありません。デメリット: 暗号化と復号化には時間がかかり、速度も遅いため、少量のデータの暗号化にしか適していません。

要約(ハッシュアルゴリズム)

ダイジェストの特別な点は、一方向アルゴリズムであることです。一方向ハッシュ関数は、一般的にメッセージダイジェストを生成するために使用されます。ユーザーはハッシュアルゴリズムを使用して、対象情報に対して特定の長さの一意のハッシュ値を生成できますが、このハッシュ値を使用して対象の元の情報を逆に取得することはできません。 (元の平文に戻すことはできませんが、同じ平文からは同じダイジェストが生成されます)

一般的なハッシュアルゴリズム

MD2、MD4、MD5、HAVAL、SHA、SHA-1

よく使われるハッシュアルゴリズム

MD5、SHA-1

適用シナリオ:

1. ハッシュ アルゴリズムは、不可逆的なパスワードの保存や情報の整合性の検証によく使用されます。

2. 文書、音声およびビデオファイル、ソフトウェアインストールパッケージなどの古い要約と新しい要約を比較して、同じかどうか(受信したファイルが変更されているかどうか)を確認します。

3. ユーザー名またはパスワードを暗号化してデータベースに保存します (ほとんどのデータベースはキー情報をプレーンテキストで保存しません。多くのログイン機能では忘れたパスワードを取得できず、リセットすることしかできないのと同じです)

4. デジタル署名とデータの取得。

SHA-1とMD5の比較:

どちらも MD4 から派生しているため、SHA-1 と MD5 は非常によく似ています。したがって、強度やその他の特性も同様です。

セキュリティ: 最も顕著で重要な違いは、SHA-1 ダイジェストが MD5 ダイジェストよりも 32 ビット長いことです。ブルートフォース手法を使用すると、特定のメッセージのダイジェストと等しいダイジェストを持つメッセージを生成することの難しさは、MD5 の場合は約 2128 回の演算、SHA-1 の場合は約 2160 回の演算になります。したがって、SHA-1 はブルート フォース攻撃に対してより強力です。暗号解読に対するセキュリティ: MD5 は設計上、暗号解読攻撃に対して脆弱ですが、SHA-1 はそのような攻撃に対して脆弱性が低いようです。

速度: SHA-1 は同じハードウェア上で MD5 よりも遅く動作します

デジタル署名

デジタル署名は非常にシンプルです。上記の要約を暗号化することで取得されます。

つまり、デジタル署名は、ハッシュ アルゴリズムを使用して平文自体のダイジェストを計算し、それを当事者 A (または発信者、または直接コード名 A) の秘密鍵で暗号化することによって取得されます。簡単に言えば、デジタル署名=要約の暗号化

それは主に、あなたが私に要約をくれたが、その要約があなたのものかどうかは誰にもわからないという問題を解決します。提供された要約が私に届く前に変更されていないことをどのように確認すればよいですか?したがって、要約を暗号化するには、相手側の秘密鍵が使用されます。署名が個人ではなく信頼できる組織によって行われた場合、それは実際には公証です。

デジタル証明書

上で説明した非対称暗号化とハッシュサマリーのアプリケーションシナリオはすべて、デジタル証明書に関連しています。つまり、それらに基づいてデジタル証明書が生成されます。

デジタル証明書は、A(または当事者 A)がデジタル証明機関(CA)に申請します。デジタル証明書は、A(または当事者 A の組織または企業)の個人情報と、CA の秘密鍵で暗号化された公開鍵で構成されます。公証に相当するものです。デジタル証明機関 (CA) は、ルート証明書の作成者です。Windows システムの多くのブラウザー ルート証明書は、1 つ以上の信頼されたルート証明機関によって発行されます。 (Microsoft と Apple にもルート証明機関があります)。

プロセスは次のとおりです。

1. デジタル証明書リクエストを生成します(私のために何かをするためにあなたの印鑑が必要なので、準備します)

元のテキストが非常に大きい場合があるため、非対称暗号化と復号化には時間がかかり、長い時間がかかり、ネットワークを介して送信されるデータの量も大きくなります。そのため、証明書要求を生成するときに、元のテキストまたは情報をハッシュ化する必要があります(MD5またはSHA形式)。このようにして、元の情報がどれだけ長くても、固定された短い情報サマリーを取得し、次にA(またはParty A)の秘密鍵を使用してデジタル署名(サマリーの暗号化)を行います。次に、署名 + 個人情報 (または企業機関) + 公開鍵を CRS (証明書要求) に組み合わせ、CA (デジタル証明書センター) にデジタル証明書 (つまり、CA 秘密鍵暗号化) を生成させるか、またはそれにスタンプを押します。このようにして、CA は公証された証明書と同等のデジタル証明書を発行します。


証明書要求を生成する

2. CA署名証明書を取得した後の復号化プロセス

[追記: 証明書は上下にリンクできます。たとえば、ルート証明書を通じてサブ証明書を取得した組織は、証明書を生成することもできます。これは、複数の暗号化に相当します。この場合、証明書の復号化プロセスには、CA 公開キーの復号化のレイヤーが必要です。]

適用シナリオ:

一般的な https 証明書、ブロックチェーン証明書、一部の金融口座開設、Bluetooth リンク送信など。

<<:  作業の重複をなくしましょう! 30分で独自のディープラーニングマシンを作成する方法を教えます

>>:  「顔認識」は「性格認識」を生み出しました。テクノロジーが善のために使われるようになるまでにはどれくらい時間がかかるのでしょうか?

ブログ    
ブログ    

推薦する

10000000000!マイクロソフトはTransformerを改良し、一度に多くのトークンを記憶できるようにした

Microsoft Research Asia の最新の調査は少々衝撃的だ。彼らは、実際にトークンを...

ボストン大学の「Platypus-70B」がHugging Face大型模型ランキングでトップに!効率的なデータセットと独自のLoRA微調整が鍵

Hugging Faceのオープンソース大型モデルのランキングがまた更新されました。今回のランキング...

百度の新しいAI翻訳機は80以上の言語をリアルタイムで翻訳できる

海外旅行の際、最大の問題は言語かもしれません。相手の言っていることを理解できれば、他のコミュニケーシ...

金融業界がビッグモデルの導入を遅らせているのはなぜでしょうか?

ChatGPTの登場以来、金融業界はたちまち不安に陥っています。テクノロジーを信頼するこの業界は、...

...

深センの無人バスの試験走行がWeChatモーメンツで話題に!

この日が来ることは誰もが知っていた!しかし、こんなに早く来るとは誰も予想していませんでした! 201...

...

「アルゴリズム」の混乱にどう向き合うか?

「アルゴリズム」の問題について困惑している人から手紙を受け取りました:私はネットワーク専攻なのでソ...

機械読解とは何ですか?これは自然言語処理とどのような関係があるのでしょうか?

[[324510]] 01 機械読解タスク2002 年に発表された論文で、学者の C. スノーは読...

...

AIはどのようにして責任を持つようになるのでしょうか?英国規格協会が答えを持っている

人工知能(AI)は、現在世界で最も革新的で影響力のある技術の1つであり、さまざまな分野や産業に浸透し...

自動運転ブームがAIチップ戦争に火をつけ、爆発したのはテスラだけではない

以前から大きく騒がれ、メディアもその信憑性を証明する手がかりを繰り返し探していた「テスラの自社開発A...

画像の混合を利用してより細かい特徴表現を学習するCMU Xing Boのチームの新しい論文がAAAIに選出されました

これは、カーネギーメロン大学とカリフォルニア大学バークレー校の Eric Xing 氏と Trevo...

...

機械学習によって IoT アプリケーションのセキュリティはどのように向上するのでしょうか?

モノのインターネットの世界は手の届くところにありますが、それには良い面と悪い面の両方が伴います。機械...