名前が似てるけど違う
資格の勉強してたら、混同してしまったので整理するために調べる。ディジタル署名とデジタル証明書。名前は一文字違い。
紛らわしすぎるので、ざっくりまとめる。
デジタル署名
データの正当性を保証するために、データの送信者の署名を電子的施す。この一連の技術をデジタル署名と呼ぶ。(引用:2024年度版ITストラテジスト オールインワンパーフェクトマスター)
通信をする時に、送信者が自身の秘密鍵で送るデータを暗号化して、ハッシュ化したもの。
受信者は公開鍵でデータ本体を再度暗号化して、ハッシュ化。自分で暗号化したハッシュと送られてきたハッシュが同じかを比べて、データが送信者本人からのもので、改ざんされていないかを確認する。
詳しい仕組みは以下のサイトが分かりやすかったです。
デジタル証明書
デジタル証明書とは、配送されてきた公開鍵の所有者の真正性を確認するために送付されてくるデータセットである。(引用:2024年度版ITストラテジスト オールインワンパーフェクトマスター)つまり、公開鍵が本物ですよと証明するもの。上のデジタル署名のところで、送信者の公開鍵を何らかの方法で入手した際、これが本当に送信者の物ですか?偽物じゃないですか?というものを確認するデータセット。
CA(認証局)という第三者機関があって、そこに公開鍵とデータセット(デジタル証明書)を持っていくと、CAが「正しいですよ!」と太鼓判を押してくれる(正しいとデジタル証明書に"署名"してくれる)。
違いは?
どちらも何らかの正しさを担保するものでありつつも、担保するものがデジタル署名では送信するデータで、デジタル証明書では公開鍵という違いがある。”何を”正しいと担保するのかが違う。
資格の勉強用なので、覚え方としては、
デジタル署名:署名は自分の名前を書くもの→自分(送信者)が書くもの→自分自身のデータを担保する
デジタル証明書:証明するには第三者機関が必要→CAが必要→でも、データを第三者に証明してもらうのはおかしい→公開鍵を担保する
くらいで覚えることにします。
参考
2024年度版ITストラテジスト オールインワンパーフェクトマスター