web-dev-qa-db-ja.com

平易な英語の非対称アルゴリズムの原理

私は、非対称アルゴリズムとその使用法について説明した暗号の基礎について同僚にプレゼンテーションを行っていました。非対称アルゴリズムの暗号化/復号化に関する聴衆からの一般的な質問の1つは、(対称アルゴリズムのように)暗号化に使用したのと同じ鍵(公開鍵など)を使用して暗号データ​​を復号化できないのはなぜですか?これを防ぐのは数学的な性質であることは知っていますが、英語で説明する方法がわかりません。質問は、「10 + 2」(10をプレーンテキスト、2がキーであると想定)を実行する場合に似ていますが、「12-2」(12は暗号化テキスト、2は暗号化キー)を実行して元のデータを取得できないのはなぜですか。 。

誰かが私に単純な英語で非対称アルゴリズムの原理を説明するのを手伝ってくれる?

28
Sivachandran

これは次のいずれかです。

enter image description here

ボックスに何かを固定したいとします。誰でもロック(公開鍵)を閉じることができます。これは、誰でも何かを箱に入れて箱をロックできることを意味します(いったんロックすると、ロックを開くことができなくなります(閉じたものをつまむだけです))。鍵を開けるための鍵は、あなただけが持っているもの(秘密鍵)です。あなたはロックを開けて箱の中身を見ることができる唯一の人です。

これらがどのように機能するかを示すためにこれらを購入することをお勧めします。

48
Lucas Kauffman

@Lucasによるすばらしい回答に加えて、比較を行うことができます。

対称暗号化はドアロックのようなものです。キーを持つすべての人がロックおよびロック解除できます。

Doorlock

非対称暗号は一般的な錠前や手錠のようなものです。誰でもロックできますが、(プライベート)キーだけがロックを解除します。

Lockhandcuff

14
ypercubeᵀᴹ

私はこれらのビデオを理解しやすく、便利であると感じました:

https://www.youtube.com/watch?v=3QnD2c4Xovk

2つ目はSSLから始まりますが、後でその男は対称暗号と非対称暗号について話しています。

https://www.youtube.com/watch?v=JCvPnwpWVUQ

13
Salvador Dali

これをXFigを使用して、およそ2002年に描きました。

Symetric - asymetric keys

symetricはインとアウトで同じキーを使用しますが、

一方、asymetricは、異なる(互換性がない、または交換できない)キーを使用します。

もちろん、これはschematicです!この図では、リバースキーを簡単に作成できるように見えます。暗号化では、prime quotienのようなおもしろいことがあり、この操作を(ほぼ)不可能にしています。

この助けを願っています...(このものはLGPL V2の下でライセンスされています)

8
F. Hauri

ルーカスの基本的な前提を露骨に盗み、優れたものにし、それについての完全なナラティブを構築します。

対称暗号は、小さな防火金庫などのロックボックスのようなものです。ボックスのロックとロック解除の両方にキーが必要であり、同じキーが両方の機能を果たします。あなたと私がこれらのロックボックスの1つの鍵を持っている場合、他の誰もボックス内のものにアクセスできなくても、秘密のメッセージや他の貴重なオブジェクトを互いに交換できます。箱を相互に郵送することもでき、輸送中に荷物を処理する人は、箱の中に何が入っているかを見ることができません。

ただし、外に出て2つのキーが付いた新しいロックボックスを購入し、このメッセージ交換方法を設定するためにキーの1つを私に渡す必要がある場合はどうでしょうか。まあ、一つのオプションは私たちが直接会うことです、そしてあなたが私に鍵の一つを実際に手渡すことです。コンピューター用語では、これは「オフラインの鍵交換」であり、特定の状況で発生します。

しかし、私が世界の反対側にいた場合はどうなりますか?キーを物理的に交換するためにあなたが私に飛んだり、その逆を行ったりするのは、高価で非現実的です。あなたの唯一の選択肢は鍵を私にメールすることです。しかし、普通の封筒や箱に入れて郵送するのは安全ではありません。理論的には、誰かが封筒や箱を開けて鍵を取り出し、コピーを作成してから、鍵を再パッケージして送り返します。これが完了すると、後で交換するロックボックスの内容を見ることができるのは2人だけではないため、キーとロックボックスは安全ではありません。そして、私は鍵をロックボックスに入れて送ることはできません。ロックボックスへのキーの送信に使用するロックボックスへのキーがありません。

代わりに、南京錠をお送りします。ロックが入っているパッケージには、私の返送先住所と地元の郵便局からの消印があり、南京錠には私の名前が刻印されています。南京錠にもシリアル番号が記載されており、鍵を販売していた店から刻印されているので、疑問がある場合は、お店に電話をかけてもらうと、受け取った南京錠が私に渡されたことを確認できます。

南京錠は開いています。この南京錠のキー(または組み合わせ)を持っているのは私だけです。あなたは鍵をロックボックスに持っていき、それをラッチと掛け金の付いた丈夫な箱に入れ、それから私の南京錠を箱の掛け金の上に置き、錠を閉めます。これを行ったら、私はそのロックを開ける唯一の人物であり、あなたがそれを置いた箱は二度とありません。南京錠が付いた箱を私に郵送してください、それを手に入れ、鍵で南京錠を開きます。これでロックボックスの鍵が手に入りました。傍受できる人は誰もいないので、他の誰もコピーを持っていないと確信できます。輸送中の荷物には、私が嫉妬している南京錠の鍵が必要です。南京錠があなたに送られて箱に閉じられたときに、南京錠自体を見て調べても、鍵の偽造やその組み合わせの推測に役立つ情報は得られませんでした。これでロックボックスの鍵が手に入ったので、ロックボックスを使用してさらにメッセージを安全に交換できます。

さて、これらの現実世界のアナロジーを1対1で適用すると壊れてしまういくつかの事実を無視してしまいました。おそらく最も単純なのは、平均10ドルの南京錠は、熟練した鍵屋(または強盗)が選ぶのは簡単で、誰もがボルトカッターのペアで開けるのは簡単なことです。 1000ドルの金庫でも、これらの手法を組み合わせて約15分以上開けても抵抗されません。これらの方法に抵抗するのに十分な強度と安全性を備えた錠と箱は、メールでやり取りするには重すぎます。

デジタルの世界では、ブルートフォース(ボルトカッター/ドリル)と暗号解読(ロックピッキング)に耐性のある暗号を作成することが懸念され、アルゴリズムは理論的な形式で検査され、プロの暗号学者(および実社会ではハッカー)によって常にテストされています。しかし、ロックと金庫の同等物である暗号アルゴリズムは、非常に強力にすることができ(ブルートフォーシングとロックピッキングは非現実的であるほど時間がかかる)、非常に軽量です(暗号化された形式のデータは元のデータよりもはるかに大きくありません)メッセージ)、そして非常に簡単に開閉できますif正しいキー(アルゴリズムの高速実行)を持っているため、正当な関係者が会話を簡単に使用できます。暗号は、それらに対する最もよく知られている攻撃の時間および/またはスペースの複雑さに基づいて評価されます。現在のほとんどの暗号は2のべき乗であり、ショートカットがないと、暗号は少なくとも優れたものによって解読できませんでした。攻撃者の孫。

もう1つの懸念は、金庫を解読する人が、ロックされた箱の内容について、クリスマスプレゼントのように拾って振るだけで、知りたくない情報を得る可能性があることです。または、ボックスの素材が完全に不透明ではないため、誰かがボックスをはっきりと見えなくても、ボックスの内容を大まかに知ることができます。デジタルの世界には同等のものがあり、通常は基本的な暗号化メカニズムの弱点と見なされていますが、適切な「パディング」を使用することで軽減できます。クリスマスプレゼントのように、箱の中に何かを適切に埋め込んだものを振っても、ほとんどまたはまったく音が鳴りません。パディングが厚く、十分に不透明で、ボックス全体を埋める場合、ボックスはLexanでできている可能性があり、実際の内容についての有用な手掛かりはまだありません。これらの両方のデジタル同等物は、適切に埋め込まれた暗号化メッセージを使用すると、暗号化されたデータの綿密な検査は、ランダムノイズと区別できなくなり、基礎となるメッセージデータに基づくパターンが明らかになったり、情報の繰り返しブロックが攻撃者に与えられたりすることはありません。暗号文の真の内容に関する情報。

最後に、現実世界であなたに南京錠を送る私は、誰かがその南京錠を傍受してから自分自身の南京錠を送って、それが私から来たように見せかけ、それから帰りにロックされたボックスを傍受し、ロックを解除してコピーしますキーを押し、ボックスを南京錠で再度ロックします。最初にあなたに送ろうとしたのですが、それを私に送る前に送りました。

これはデジタル形式では「中間者攻撃」と呼ばれ、真の懸念事項です。一般的に、私およびロックについての情報を「信頼性証明書」に含めるのと同等の方法で軽減または排除されます。これは、それを販売したベンダーによってロックと一緒に、独自のワックスシール付きの封筒にパッケージされています。そのロックベンダーだけが持っていること。証明書を読んで、あなたの手にある錠が私から直接来たことを確信してください。ロックベンダーを完全に信頼していない場合は、ロックの製造元によって証明書とほぼ同じ方法でパッケージ化された情報が証明書に含まれています。デジタル形式では、これらの「信頼性の証明書」はまさにそのとおりであり、証明書の情報のハッシュダイジェストが含まれています。これには、証明書を提供したエンティティによって非対称に暗号化されています。エンティティが使用していた秘密キーがわからないため、そのダイジェストを暗号化することはできませんでした。ただし、そのダイジェストを復号化するためのキーを取得し、それが証明書にリストされているエンティティーによって発行されたことを証明できます。次に、証明書のハッシュを計算し、それが暗号化されたものと一致することを確認して、証明書であることを証明できます。改ざんされていません。

7
KeithS

このタイプの暗号化は、人生のいくつかのことがある「方向」では簡単に実行でき、他の「方向」では非常に難しいという単純な事実に依存しています。たとえば、急な崖の上から海に飛び込みます。これは簡単。しかし、海から崖の上に登るのは非常に困難です。

数学には、他の方法よりも簡単にできることもあります。例えば。 6 x 6 x 6の基本的な乗算を計算するように依頼した場合。 216の立方根を見つけるように依頼した場合、これはそれほど簡単ではありません。

非対称暗号化では、数学的な手順を利用します。これは、一方向に行うのは簡単ですが、逆に行うことは困難です-秘密鍵がない場合を除きます。

4
user5065