公開鍵暗号方式の理解の確認
とらさん
(No.1)
自分は公開鍵暗号方式を以下のように認識しています。何か間違いがあればご指摘お願いします。
【条件】
Aさんが秘密鍵と公開鍵を作る。
BさんがAさん公開鍵を持っている。
【例えば】
内容を誰にも見られたくないとき:
BさんがAさんの公開鍵を使って内容を暗号化し、AさんがAさんの秘密鍵を使って内容を復号する。
(公開鍵で暗号化されているので公開鍵では復号できない。したがってAさん以外は誰も複合できない。)
内容を改ざんされているか確認したいとき(デジタル署名をやりとりするとき):
Aさんが自分の秘密鍵を使って内容を暗号化する。BさんがAさんの公開鍵を使って復号し、改ざんの有無を確認する。
(デジタル署名は改ざんの有無を確認したいだけなので、最悪AさんBさん以外の人に見られてもよい。)
ーーーーーーーーーーーーーーーー
現在この認識で問題に取り組んでいて、今のところは正解できています。しかし根本のロジックまで理解できていないと思い質問しました。
何か間違いがあれば教えてください。もしくはこうなる理由など教えていただければとてもハッピーです。
【条件】
Aさんが秘密鍵と公開鍵を作る。
BさんがAさん公開鍵を持っている。
【例えば】
内容を誰にも見られたくないとき:
BさんがAさんの公開鍵を使って内容を暗号化し、AさんがAさんの秘密鍵を使って内容を復号する。
(公開鍵で暗号化されているので公開鍵では復号できない。したがってAさん以外は誰も複合できない。)
内容を改ざんされているか確認したいとき(デジタル署名をやりとりするとき):
Aさんが自分の秘密鍵を使って内容を暗号化する。BさんがAさんの公開鍵を使って復号し、改ざんの有無を確認する。
(デジタル署名は改ざんの有無を確認したいだけなので、最悪AさんBさん以外の人に見られてもよい。)
ーーーーーーーーーーーーーーーー
現在この認識で問題に取り組んでいて、今のところは正解できています。しかし根本のロジックまで理解できていないと思い質問しました。
何か間違いがあれば教えてください。もしくはこうなる理由など教えていただければとてもハッピーです。
2021.09.03 23:25
関数従属さん
★FE ゴールドマイスター
(No.2)
おおよそ上記で合っております。
補足しますと、内容を改ざんされているか確認の部分は
AさんからBさんにメッセージを送付する際に使用し、
1.Aさんがメッセージ本体よりハッシュ関数でメッセージダイジェストを作成
2.Aさんが秘密鍵でメッセージダイジェストを暗号化(デジタル署名)
3.AさんがBさんにメッセージ本体とデジタル署名を送付
4.Bさんがメッセージ本体よりハッシュ関数でメッセージダイジェストを作成
5.Bさんが公開鍵でデジタル署名を復号化
6.4.と5.を比較し改ざんされていない事を確認
となります。
メッセージダイジェストより元のメッセージ本体は復元できませんので、
メッセージダイジェストは他の第3者に見られても問題ありません。
補足しますと、内容を改ざんされているか確認の部分は
AさんからBさんにメッセージを送付する際に使用し、
1.Aさんがメッセージ本体よりハッシュ関数でメッセージダイジェストを作成
2.Aさんが秘密鍵でメッセージダイジェストを暗号化(デジタル署名)
3.AさんがBさんにメッセージ本体とデジタル署名を送付
4.Bさんがメッセージ本体よりハッシュ関数でメッセージダイジェストを作成
5.Bさんが公開鍵でデジタル署名を復号化
6.4.と5.を比較し改ざんされていない事を確認
となります。
メッセージダイジェストより元のメッセージ本体は復元できませんので、
メッセージダイジェストは他の第3者に見られても問題ありません。
2021.09.04 16:24
とらさん
(No.3)
なるほど。内容の確認と追加の解説ありがとうございます。
蛇足ですが、私はデジタル署名のことを「誰かの物理的な署名を画像として認識し、デジタル情報に置き換えたもの」だと認識していたので、その誤解も解けました。
ありがとうございました。
蛇足ですが、私はデジタル署名のことを「誰かの物理的な署名を画像として認識し、デジタル情報に置き換えたもの」だと認識していたので、その誤解も解けました。
ありがとうございました。
2021.09.04 23:34
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告