- 更新日 : 2024年9月3日
デジタル署名とは?仕組みとメリットをわかりやすく解説!
デジタル署名とは、書面上の署名と同等のセキュリティ性を担保するために用いられる公開鍵暗号技術の一種を指し、電子契約サービスなどに活用されています。この記事では、デジタル署名の仕組みやメリット、デメリットを解説します。
目次
デジタル署名とは?法的に有効?
デジタル署名という用語自体は法律上の言葉ではありません。一般的には、デジタル署名とは、書面上の手書き署名と同等のセキュリティ性を担保するために用いられる「公開鍵暗号技術の一種」を指します。したがって、公開鍵暗号技術としてデジタル署名が導入されている電子契約サービスを利用して契約することで、法的な効力を得られます。
デジタル署名と電子署名の違い
電子署名は、電子通信上での署名そのものを指しており、書面上での署名捺印と同じ意味合いで使用されます。
これに対して、デジタル署名は公開鍵暗号技術そのものを指しますので、分かりやすく言えば、「電子署名の実装技術」を意味するものと言えます。
デジタル署名の仕組み
公開鍵と秘密鍵を生成し、受信者に公開鍵を送付 | ||
ハッシュ関数を使用してハッシュ値を算出 | ||
秘密鍵を使用してハッシュ値を暗号化 | ||
ハッシュ値を署名として付けて送信 | ||
公開鍵を使用して受信者が暗号化されたハッシュ値を復号 | ||
同じハッシュ関数を使用してハッシュ値を算出 | ||
復号されたハッシュ値と算出されたハッシュ値を比較 |
1.送信者が公開鍵と秘密鍵を生成し、受信者に公開鍵を送付
デジタル署名を利用するには、まずは認証機関に登録して、公開鍵と秘密鍵を生成する必要があります。認証機関は、「電子署名法で定めた要件を満たしている」と国が認めた指定業者のことです。現時点において、株式会社日本電子公証機構等が認証機関として指定されています(※)。
デジタル署名を利用しようとする者(送信者)は、この認証機関に登録申請をして、電子証明書の発行と、公開鍵・秘密鍵の生成を行います。
公開鍵は、電子証明書と共に相手方(受信者)と共有しておくもので、相手方が暗号化されたデータを復号する際に使用されます。
秘密鍵は、送信者のみが保管しておくもので、送信しようとする電子データを暗号化する際に必要です。
送信者は、公開鍵と秘密鍵を生成したら、秘密鍵は自社で保管し、公開鍵を受信者に送付します。
2.送信者がハッシュ関数を使用してハッシュ値を算出
送信者は、相手方(受信者)に送信しようとする文書データについて、ハッシュ関数を用いてハッシュ値を算出します。ハッシュ関数とは、データを一定の手順で計算し、データの量・内容にかかわらず、決まった長さの文字列を出力する関数のことです。このハッシュ関数により算出された値をハッシュ値と言います。ハッシュ関数は何種類もありますが、現在主に用いられているハッシュ関数は4種類程度です。
例えば、送ろうとする文書データ(「Aファイル」とします。)を一つのハッシュ関数(α関数とします)にかけると、Aファイルのハッシュ値が「a1b2c3d4」のように算出されます。
3.秘密鍵を使用してハッシュ値を暗号化
送信者はさらに、文書データについてハッシュ関数を用いてハッシュ値を算出し、このハッシュ値を、上記1で生成した秘密鍵を使用して暗号化します。
先ほどの例では、ハッシュ値「a1b2c3d4」が秘密鍵を用いて「*$%&#??=#」のように暗号化されます。
ハッシュ値のまま相手方に送付してしまうと、ハッシュ関数を用いて誰でも簡単にAファイルに復元できてしまうので、秘密鍵を用いて暗号化する必要があります。
4.ハッシュ値を署名として付けて送信
送信者は、文書データについてハッシュ関数を用いてハッシュ値を算出し、さらに、秘密鍵を用いてハッシュ値を暗号化したうえで、その暗号化された記号を受信者に送付します。
先の例で言うと、「*$%&#??=#」を受信者に送信します。
5.公開鍵を使用して受信者が暗号化されたハッシュ値を復号
受信者は、送信者から受領した暗号化されたハッシュ値を、先に送付されていた公開鍵を用いて復号(復元)します。
先の例で言うと、「*$%&#??=#」を「a1b2c3d4」に戻すことです。この復号ができるのは、秘密鍵と対になる公開鍵を持っている者のみです。これにより、文書データが第三者に漏れることなく、送信者と受信者のみで共有することが可能となります。
6.同じハッシュ関数を使用してハッシュ値を算出
受信者は、送られた文書データを、送信者と同じハッシュ関数を用いてハッシュ値を算出します。同じデータについて、同じハッシュ関数を用いた場合は必ず同じハッシュ値が算出されます。先の例では、Aファイルをα関数というハッシュ関数を用いてハッシュ値を算出すると、必ず「a1b2c3d4」となります。
7.復号されたハッシュ値と算出されたハッシュ値を比較
上記5で秘密鍵を用いて復号したハッシュ値と、上記6で同じハッシュ関数を用いて算出したハッシュ値を比較します。このハッシュ値が合致すれば、間違いなく送信者が送ったデータであり、かつ、その内容も送信者との間で齟齬がないことが確認できます。
デジタル署名のメリット
デジタル署名はセキュリティ性の高い暗号化技術であることから、デジタル署名を活用した電子契約は、第三者のなりすましによる署名(偽造)や、署名後の書面内容の変造・改ざんを防止するといったメリットがあります。
デジタル署名のデメリット
デジタル署名のデメリットとしては、まず、公開鍵・秘密鍵を作成するために認証機関への登録が必要であり、その点で、即時に利用できるものではないという点が挙げられます。また、公開鍵・秘密鍵・ハッシュ関数等の馴染みのない言葉多く、デジタル署名の利用に対する契約相手方の理解が得られにくいという点もデメリットの一つと言えます。
デジタル署名はデータ改ざんの防止に役立つ
デジタル署名は、公開鍵、秘密鍵を用いて暗号化して送受信するため、偽造・変造のおそれがほとんどなく、セキュリティ性が高い暗号化技術です。
したがって、デジタル署名技術が使われている電子契約サービスを使うことで、第三者によるなりすましや、データ内容の改ざんを防止できます。
よくある質問
デジタル署名とは?
デジタル署名とは、書面上の署名と同等のセキュリティ性を担保するために用いられる公開鍵暗号技術の一種を指します。詳しくはこちらをご覧ください。
デジタル署名の仕組みとは?
相手に送付する電子データを、自社のみが保管する秘密鍵を用いて暗号化します。受信者は公開鍵を用いて復号し、対照することで、データの送信者とデータ内容の改ざんがないことを確認します。詳しくはこちらをご覧ください。
※ 掲載している情報は記事更新時点のものです。
契約の知識をさらに深めるなら
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
署名の関連記事
新着記事
収入印紙とは?なんのために必要?種類や金額、貼り方などをわかりやすく解説
収入印紙は、印紙税を納めるために使用する証票です。 使う機会が限られているため、なんのために使用するのかを知らない方もいるかもしれません。 この記事では、収入印紙の金額表や似た証票の種類、収入印紙が不要な場面や、誰が払うのか、どこで買えるか…
詳しくみる同意書とは? 無料テンプレート・雛形をもとに書き方や例文、注意点などを解説
同意書とは、特定の行為や条件に当事者が同意した事実を明文化するための書類です。 契約書との違いや法的効力、2部作成の必要性、英語での表記方法など、作成にあたって疑問を抱く方も少なくありません。本記事では、個人・法人を問わず使える同意書の無料…
詳しくみる民法90条とは?公序良俗違反となる暴利行為や判例をわかりやすく解説
民法90条は、公序良俗に反する法律行為を無効とする民法の条文です。公序良俗とは「公の秩序」と「善良の風俗」をまとめた総称であり、社会的な妥当性を欠く法律行為は民法90条をもとにその効力を否定することができます。 本記事では民法90条に定める…
詳しくみる個人情報保護法をわかりやすく解説!具体例、違反した場合の罰則、改正内容など
個人情報保護法は、個人情報を取り扱う際のルールを定めた法律です。企業は法律に基づいて個人情報を適正に取り扱う必要がありますが、具体的な内容や度重なる法改正についていけない方も多いのではないでしょうか。 本記事では、個人情報保護法の基本ルール…
詳しくみる個人情報保護法に違反した場合の罰則は?企業や従業員個人へのペナルティを解説
個人情報保護法とは、個人情報の取り扱いについて定めた法律です。違反があった際の罰則規定も定められており、近年の改正により罰則内容が強化されました。 本記事では、個人情報保護法違反があった時の罰則規定について解説します。罰則が科されるケースや…
詳しくみる仮名加工情報とは? 匿名加工情報との違いや具体例をわかりやすく解説
仮名加工情報は、一定の措置を講じて個人情報を加工し、他の情報と照合しない限り特定の個人を識別できないようにした情報です。原則、第三者提供が禁止されている点や、他の情報と照合すれば特定個人を識別できる点で匿名加工情報とは異なります。 本稿では…
詳しくみる