PKI・電子証明書の解説

電子署名とは

電子署名は、実社会でのサインや印鑑に相当します。公開鍵暗号基盤(PKI)を利用して、データの改ざん検知と署名者の特定を行うことができます。

 
  1. GMOグローバルサイン
  2. SSLとPKI・電子証明書ガイド
  3. PKI・電子証明書の解説
  4. 電子署名とは

電子署名の役割

電子署名とは電子証明書の利用方法の一つで、実社会でのサインや印鑑に相当します。通常、電子署名をする場合は、電子証明書が含まれます。 電子証明書が実社会における「印鑑証明書」なら、電子署名は「印鑑」と同じ役割を果たしています。
電子署名は、公開鍵暗号基盤(PKI)を利用して、データの改ざん検知と署名者の特定を行うことができます。

電子署名の仕組み

電子署名では、データが正しいものであると証明する「公開鍵」と送信者がデータを暗号化する「秘密鍵」が使われます。
送信する側は相手に渡す情報を秘密鍵で暗号化し、公開鍵と電子証明書を添付して送信します。
すると受信者側は電子証明書が有効なものかどうかを認証局に確認します。
電子証明書の有効性が確認できたうえで、公開鍵を使って情報を解読できれば、電子署名の本人からの電子文書であるということが確認できるのです。

電子署名の流れと改ざん検知

ハッシュ値
  1. ハッシュ関数を使ってデータを圧縮(ハッシュ値を作成)。
  2. 秘密鍵を使って、文書を暗号化。電子証明書を使って電子署名。
  3. 電子署名付き暗号化ファイルを送信。
  4. 電子署名に含まれている暗号化されたハッシュ値を公開鍵で復号。
  5. 送られてきたファイルからハッシュ関数を使ってハッシュ値を作成。
  6. [4]で復号したハッシュ値と[5]で作成したハッシュ値を比較。

上記の図では、AさんがBさんに電子署名を付けたファイルを送信しています。電子署名の中には、ハッシュ値と呼ばれる値を秘密鍵で暗号化した値が含まれます。

Aさんからファイルを受け取ったBさんは、まず電子署名に含まれている暗号化されたハッシュ値をAさんの公開鍵を使って復号します。そして、Aさんから送られてきたファイルからハッシュ関数を使ってハッシュ値を作成します。この2つのハッシュ値を比較し同一であれば改ざんされていないことが証明されます。

では、なぜ2つのハッシュ値を比較して同一であれば改ざんされていないと証明できるのでしょうか。それは、元データが一部でも異なれば、同一のハッシュ値が出力される可能性が非常に低いというハッシュ値の特徴を利用しています。2つのハッシュ値を比較して同一であれば元データも同一である言えるのです。

電子署名が本物か確認を解決するのは

「本当にAさんが署名したのか?」を解決するのが、秘密鍵と公開鍵を利用した公開鍵暗号基盤(PKI)です。公開鍵暗号基盤(PKI)の特徴として秘密鍵で暗号化したデータは公開鍵でのみ復号化できるとの特徴があります。Aさんの公開鍵で復号できるのは、Aさんの秘密鍵で暗号化したデータのみとなります。そのため、電子署名に含まれるハッシュ値はAさんのみが保有している秘密鍵で暗号化されているため、Aさんが署名したと証明できるのです。

※ハッシュ値:あるデータをハッシュ関数を使って演算した結果。同じ元データからは同じハッシュ値が得られ、少しでも異なるデータからは同じハッシュ値が得られる可能性はほとんどありません。また、ハッシュ値とハッシュ関数から元データを算出することはできません。

電子署名・暗号化の仕組みを利用した電子証明書

S/MIME(電子メール署名・暗号化)

電子メールの暗号化と電子署名は、S/MIMEにて行います。メールの送り主の身元証明と、暗号化したメールの送受信が可能です。送信者なりすましや盗聴による被害を防ぐ役割があります。

コード署名(コードサイニング証明書)

ソフトウェアやプログラムコードへのデジタル署名は、コード署名を用います。作成元や配布元を認証し、ソフトウェアの改ざん防止や、配布元を認証しなりすまし配信を防ぐ役割があります。

ドキュメント署名(文書署名用証明書)

PDF文書やWord・Excel・PowerPointで作成された電子文書への署名は、クライアント証明書などを用います。改ざんを防止し、文書の原本性を確保する役割があります。

各電子証明書解説PDFを無料で配布中!

ページのトップへ戻る