デジタル署名とは? 仕組みや電子署名との違い、活用できる場面を紹介
デジタル署名とは公開鍵暗号技術の一種です。なりすましや改ざんといったリスクから文書データを守るため、デジタル署名の技術を活用するケースが増えています。
この記事では、デジタル署名の概要や仕組み、電子署名との違い、活用場面などを紹介します。また、この記事の後半部分では、デジタル署名のメリットとデメリットをまとめましたので、ぜひ参考にしてください。
デジタル署名とは?
デジタル署名とは、電子的に生成される特殊なコードで、デジタルデータの送信者の身元を確認し、そのデータが途中で改ざんされていないことを保証します。また、デジタル上で書類の真正性や署名者の身元の証明を行います。
具体的な種類や法的拘束力の有無、電子署名との違いなどを見ていきましょう。
種類
ハッシュ関数と公開鍵暗号方式それぞれの組み合わせにおうじて、デジタル署名は3つの種類に分かれています。
アルゴリズムの名称 |
ハッシュ関数 |
公開鍵暗号方式 |
---|---|---|
Sha-256WithRSAEncryption |
SHA-256 |
RSA |
Sha-1WithRSAEncryption |
SHA-1 |
RSA |
id-dsa-with-sha1 |
SHA-1 |
DSA |
法的効力の有無
デジタル署名は「真正性」と「完全性」が確保されていれば、紙の契約書と同様の法的拘束力が認められています。2001年に定められた電子署名法第3条により、デジタル署名の効果を保証しているためです。
- 真正性:作成者と送信者が一致し、なりすましを防ぐこと
- 完全性:署名後の書類の改ざんを防ぐこと
(出典:電子署名法 第3条)
電子署名との違い
電子署名は、文書の真正性を示す技術の総称で、誰がいつ何の文書に合意したかを証明します。一方、デジタル署名は電子署名の枠組みに入っており、公開暗号鍵を使う署名技術です。デジタル署名は、送受信者の間で、データの真正性と完全性を証明します。
したがって、デジタル署名は電子署名の一部であり、より具体的なセキュリティ機能を提供します。
デジタル署名の仕組み
デジタル署名の仕組みを解説します。
送信者が公開鍵と秘密鍵を生成し、受信者に公開鍵を送付
デジタル署名を利用するためには、まず認証機関で登録したうえで、公開鍵と秘密鍵を生成し、電子証明書を発行してもらわなければなりません。認証機関とは、電子署名法で規定された要件を満たしていると、政府が認めた機関です。
送信データの暗号化時に必要ですので、送信者が秘密鍵を保管します。また、公開鍵・電子証明書は受信者に送付し、共有する必要があります。これで、デジタル署名の準備ができました。
送信者がハッシュ関数を用いてハッシュ値を算出
受信者への送信データを、送信者はハッシュ関数を利用してハッシュ値を求めます。
- ハッシュ関数:送信するデータを既定の計算で算出し、決まった長さの文字列を出力するための関数です。
- ハッシュ値:ハッシュ関数によって算出された値です。
秘密鍵でハッシュ値を暗号化
送信者は自身が持つ秘密鍵でハッシュ値を暗号化します。ハッシュ値をそのまま送信すると、そのハッシュ値を何らかの方法で入手した第三者が、ハッシュ関数を使って元のデータに復元できるためです。
受信者が公開鍵を使ってデータを復元
あらかじめ送信者から送付された公開鍵を使って、受信者は送られてきたデータを復元します。受信者の持つ公開鍵と、送信者の持つ秘密鍵はペアになっているため、受信者と送信者以外の人がデータを復元できない仕組みです。
これにより、送信したデータの漏洩や第三者による復元が不可能になり、情報の安全性を確保します。
ハッシュ関数を使ってハッシュ値を算出
送信データは送信者と同じハッシュ関数を使いますので、受信者側がハッシュ値を算出します。同じデータを同じハッシュ関数で復元すれば、まったく同じハッシュ値が算出されます。
つまり、送信者が送ったデータ(ハッシュ値)と、受信者が復元したデータ(ハッシュ値)が同じになります。
復元されたハッシュ値と算出されたハッシュ値を比較
秘密鍵で復元されたハッシュ値と、同じハッシュ関数を使って算出されたハッシュ値を比較します。この2つが一致すれば、受信者が受け取ったデータは、送信者が送ったデータと完全に一致することになり、同一性が証明されます。
デジタル署名が必要・不要な場面
デジタル署名が必要な場面と不必要な場面を紹介します。
必要な場面
デジタル署名が必要な場面は次の通りです。
- 電子契約::契約内容の正確性と参加者の確認のため
- ソフトウェア供給チェーン:コンテナイメージの完全性を担保するためなど
- メールのセキュリティ:メッセージの内容が送信後に改ざんされていないことを保証し、受信者は送信者が誰であるかを確認できる
不要な場面
デジタル署名が不必要な場面をまとめました。
- 非公式の文書:友人や家族間でのカジュアルな電子メールなど
- 一般的なウェブブラウジング:ユーザーがアクティブに情報を送信しないため不要
- インターナルコミュニケーション:特に信頼性やセキュリティが高く、改ざんの可能性が低いとされる内部ネットワークを使用する場合は基本的に不要
デジタル署名を導入するメリット・デメリット
デジタル署名を導入するメリットとデメリットを紹介します。ぜひ参考にしてください。
メリット
デジタル署名のメリットは、公開鍵暗号の仕組みにより、他人が文書を改ざんすることが極めて困難である点です。その結果、文書の信用性が高まり、デジタル上での文書のやりとりを安全に行えます。
また、相手にデータを送信するだけなので、印刷や郵送の手間がかからないうえ、社内でのやり取りの時間を節約でき、業務を円滑に行えるでしょう。さらに、デジタル署名を用いた契約には印紙税が生じません。電子文書による契約は、紙の契約書を作成したことに当たらないためです。
デメリット
秘密鍵と公開鍵の両方を入手するために、認証機関への登録と、手続きが必要な点がデメリットです。
電子署名の導入まである程度の時間を要するうえ、受信者に電子署名の知識がなければ、やり取りがスムーズに進まないケースもあるでしょう。さらに、社内にデジタル署名を使用するための体制を構築する必要が生じます。
デジタル署名についてのまとめ
デジタル署名とは、電子的に生成される特殊なコードで、デジタルデータの送信者の身元とそのデータに確実性を持たせる、セキュリティ性が高い暗号化技術です。
情報の機密性がなければ電子署名を、より強固なセキュリティ対策を行うのであれば、デジタル署名を積極的に活用するとよいでしょう。
【書式のテンプレートをお探しなら】