#author("2024-09-05T23:23:24+09:00","default:k1rou","k1rou") #author("2024-12-27T23:56:35+09:00","default:k1rou","k1rou") *デジタル署名 [#wc867124] **名称 [#beff45d8] -Digital Signature **概要 [#vab1fffe] -[[ハッシュ]]と[[公開鍵暗号方式]]([[PKI]])を使った[[電子署名]]を実現する仕組み。 -データの正当性を保証するために付与される[[暗号化]]した情報。 -データの送信者を証明し、データが[[改ざん]]されていないことを保証する。 -公開鍵暗号[[PKC]]の一種([[PKE]]ではない) -電子署名法 *デジタル署名 でできること [#ice53ea3] **データの[[完全性]]の検証 [#x121ed4c] -通信経路上でデータが[[改ざん]]されていないことや、データが欠落していないことを保証 **[[なりすまし]]防止 [#bff95498] -署名者が作成したデータであることを証明 -データの送信者が本人であることを証明 -[[否認防止]] --本人がデータを送信したということを否定できなくなる *デジタル署名の手順(例) [#r06717d8] **送信者 [#nadbc045] +[[ハッシュ]]関数を使って送信するデータ(平文)のハッシュ値(メッセージダイジェスト)を作成する +秘密鍵を使ってメッセージダイジェストを暗号化してデジタル署名を作成する +データ(平文)、デジタル署名、デジタル証明書(公開鍵が格納)を送信する **受信者 [#m4f74f4f] +[[ハッシュ]]関数を使って受信したデータ(平文)のハッシュ値(メッセージダイジェスト)を作成する +デジタル証明書の公開鍵を使ってデジタル署名を復号してメッセージダイジェストを作成する +メッセージダイジェストを比較して一致していれば、データ(平文)の完全性と正当性が証明される *デジタル署名のフォーマット [#xe6eaf5a] **CMS [#i5cda4cc] -「[[CMS(Cryptographic Message Syntax)]]」参照 -[[PKCS]]#7 を拡張したフォーマット **XMLデジタル署名 [#wd426a36] -「[[XMLデジタル署名]]」参照 *デジタル署名に使用するアルゴリズム [#j0e5ffeb] -[[公開鍵暗号方式]]と[[ハッシュ]]関数との組み合わせ。 -MD5 |~ |~公開鍵暗号方式 |~ハッシュ関数 |h | HMAC-MD5 (MD5MAC) | [[HMAC]] | MD5 | -SHA-1 |~ |~公開鍵暗号方式 |~ハッシュ関数 |h | Sha-1 with RSA encryption | [[RSA]] | SHA-1 | | id-dsa-with-sha1 | [[DSA]] | SHA-1 | | ecdsa-with-SHA1 | [[ECDSA]] | SHA-1 | -SHA-256 |~ |~公開鍵暗号方式 |~ハッシュ関数 |h |[[RS256]] | [[RSA]] | SHA-256 | |[[HS256]] | [[HMAC]] | SHA-256 | |[[ES256]] | [[ECDSA]] | SHA-256 | |[[PS256]] | RSASSA-[[PSS]] | SHA-256 | **[[公開鍵暗号方式]]([[PKC]]) [#e5e24288] **暗号化([[PKE]]) [#r4a7c32b] -[[RSA]] -[[ElGamal]] -[[Rabin]] **署名(暗号化ではない) [#ba67c532] -[[DSA]] -[[ECDSA]] -[[EdDSA]] ***[[PQC]](耐量子コンピューター暗号) [#k5786b26] -[[ML-DSA]] -[[SLH-DSA]] -[[FN-DSA]] *デジタル署名の方法 [#d36dca72] -データに直接署名する -データのハッシュ値に署名する *デジタル署名の用途 [#mf01cc0f] -HTTP通信 --[[SSL/TLS]] --公開鍵の証明書 -[[電子メール]] --[[DomainKeys]] --[[DKIM]] --[[S/MIME]] -コードサイン --[[コードサイニング証明書]] --ソースコードの保護対策 --発行元の真正性、ソフトウェアが改ざんされていないことの証明。 -[[時刻認証]] -[[DNS]] --[[DNSSEC]] *セキュリティの脅威 [#g996ec2b] -Adaptively Chosen Message 攻撃 --適応的選択文書攻撃 *関連用語(デジタル署名) [#se3b77ff] -デタッチ署名 --署名の対象と署名自体が分離した形式の署名のこと *関連用語 [#l1a0d211] -[[CA/Browser Forum]] -[[PKI]] -[[PKCS]] -[[VC]] -[[暗号化]] -[[公開鍵暗号方式]] -[[セキュリティ]] -[[時刻認証]](タイムスタンプ) -[[ダイジェスト]] -[[認証]] -[[長期署名技術]] -[[長期保存]] -[[ハッシュ]] -[[ヒステリシス署名]] -[[マルウェア]] -[[メッセージ認証コード]]