デジタル署名 のバックアップ(No.3)


デジタル署名とは

名称

  • Digital Signature

概要

デジタル署名 でできること

改ざん検知

  • 通信経路上でデータが改ざんされていないことを保証

なりすまし防止(否認防止

  • データの送信者が本人であることを証明

デジタル署名の手順(例)

送信者

  1. ハッシュ関数を使って送信するデータ(平文)のハッシュ値(メッセージダイジェスト)を作成する
  2. 秘密鍵を使ってメッセージダイジェストを暗号化してデジタル署名を作成する
  3. データ(平文)、デジタル署名、デジタル証明書(公開鍵が格納)を送信する

受信者

  1. ハッシュ関数を使って受信したデータ(平文)のハッシュ値(メッセージダイジェスト)を作成する
  2. デジタル証明書の公開鍵を使ってデジタル署名を復号してメッセージダイジェストを作成する
  3. メッセージダイジェストを比較して一致していれば、データ(平文)の完全性と正当性が証明される

デジタル署名のフォーマット

CMS

XMLデジタル署名

デジタル署名に使用するアルゴリズム

公開鍵暗号方式ハッシュ関数
Sha-1WithRSAEncryptionRSASHA-1
id-dsa-with-sha1DSASHA-1
ecdsa-with-SHA1ECDSASHA-1
Sha-256WithRSAEncryptionRSASHA-256

公開鍵暗号方式

その他(暗号化ではない)

デジタル署名の方法

  • データに直接署名する
  • データのハッシュ値に署名する

デジタル署名の用途

  • HTTP通信
  • コードサイン

セキュリティの脅威

  • Adaptively Chosen Message 攻撃
    • 適応的選択文書攻撃

関連用語