「デジタル署名」の版間の差分

提供: セキュリティ
移動: 案内検索
(使い方)
(インストール)
 
行53: 行53:
 
# 送信者の[[公開鍵]]で署名を復号化する
 
# 送信者の[[公開鍵]]で署名を復号化する
 
# 2 と 3 で得られた値を比較し、一致すれば、署名の検証が成功とする
 
# 2 と 3 で得られた値を比較し、一致すれば、署名の検証が成功とする
 
== インストール ==
 
  
 
== 使い方 ==
 
== 使い方 ==

2014年4月29日 (火) 13:59時点における最新版


デジタル署名とは、データの送信元が正しいか、データが改ざんされてないかを確認するための公開鍵暗号の一種です。 電子署名、署名(signature)とも呼ばれます。

読み方

でじたるしょめい

概要

公開鍵暗号では、公開鍵秘密鍵を逆に使えるアルゴリズムがあります。 たとえば、RSA暗号です。

デジタル署名では、署名の作成に「送信者の暗号化の鍵」として秘密鍵を使用します。 受信者は、署名の検証に「送信者の復号鍵」として公開鍵を利用します。

デジタル署名の仕組み

ここでは、デジタル署名の2つの方法について紹介します。

メッセージに署名するケース

送信者

  1. データを作成
  2. 送信者の秘密鍵で、データを暗号化し、署名を作成する
  3. データと署名を受信者に送信する

受信者

  1. データと署名を受け取る
  2. 送信者の公開鍵で署名を復号化する
  3. データ と 2 で得られた値を比較し、一致すれば、署名の検証が成功とする

メッセージのハッシュ値に署名するケース

送信者

  1. データを作成
  2. ハッシュ関数でデータのハッシュ値を算出する
  3. 送信者の秘密鍵で、ハッシュ値暗号化し、署名を作成する
  4. データと署名を受信者に送信する

受信者

  1. データと署名を受け取る
  2. ハッシュ関数でデータのハッシュ値を算出する
  3. 送信者の公開鍵で署名を復号化する
  4. 2 と 3 で得られた値を比較し、一致すれば、署名の検証が成功とする

使い方

関連項目