技術用語解説

公開鍵暗号方式とは?仕組みやメリットなどをわかりやすく解説

公開鍵暗号方式とは、データをやり取りする際に、ペアになる2つの暗号鍵を使用してデータの暗号化と復号を行う暗号方式のことです。誰でも利用できる公開鍵と、個人が秘密裏に保持する秘密鍵をペアで使用し運用します。今回は、公開鍵暗号方式の仕組みやメリットなどをわかりやすく解説します。また、身近に活用されている事例も紹介します。

目次

  1. 1公開鍵暗号方式とは
  2. 2公開鍵暗号方式の仕組み
  3. 3共通鍵暗号方式との違い
  4. 4公開鍵暗号方式に使われる3つの暗号方式
  5. 5公開鍵暗号方式のメリット
  6. 6公開鍵暗号方式のデメリット
  7. 7公開鍵暗号方式の身近な活用事例
  8. 8まとめ

インターネット上でデータ通信を行う際は、盗み見られるなどの脅威が存在します。データ通信の安全性を確保するためには公開鍵暗号方式の活用が有効です。公開鍵暗号方式とは、公開鍵と秘密鍵の2つの暗号鍵を使用し、データの暗号化と復号を行う暗号通信方法のことです。どちらかの鍵のみでは、暗号化したデータを元に戻せないため、高い安全性を確保できます。

今回は、公開鍵暗号方式の仕組みやメリットなどをわかりやすく解説します。また、共通鍵暗号方式との違いや、身近に活用されている事例も紹介するので、普段のデータの扱い方の参考にしてみてください。

公開鍵暗号方式とは

公開鍵暗号方式とは、ペアの2つの暗号鍵を使用して、データの暗号化と復号を行う暗号通信方法のことです。復号(ふくごう)とは、暗号化されたデータを元の状態に戻すことを指す用語です。公開鍵暗号方式は、誰でも利用できる公開鍵と、個人が秘密裏に保持する秘密鍵をペアで使用し運用します。公開鍵で暗号化したデータは、ペアの秘密鍵でのみ元に戻すことが可能です。

片側の1つの鍵のみでは暗号化と復号の両方を行えないため、外部に情報が漏れるリスクが減少し、安全性が高くなります。近年、データ通信は暗号化するケースが増え、セキュリティを高めるために公開鍵暗号方式の活用が増えています。

公開鍵暗号方式の仕組み

以下の手順の説明をもとに、公開鍵暗号方式の仕組みについて解説します。

  1. 公開鍵と秘密鍵をペアで生成
  2. 公開鍵のみ送信者へ送付
  3. 入手した公開鍵でデータを暗号化し送信
  4. 暗号化されたデータを秘密鍵を使って復号

受信者(データを受け取る側)をAさん、送信者(データを送る側)をBさんに例えて解説していきます。

1.公開鍵と秘密鍵をペアで生成

Aさんが秘密裏に持っている秘密鍵から、暗号化に必要なペアになる公開鍵を生成します。

2.公開鍵のみ送信者へ送付

AさんはBさんに公開鍵のみをメールなどで送ります。公開鍵は誰でも利用可能な鍵のため、それほど厳重な送付方法でなくても問題ありません。

3.入手した公開鍵でデータを暗号化し送信

Bさんは、Aさんから送られてきた公開鍵を使って平文を暗号化し、Aさんに送信します。平文(ひらぶん)とは、暗号化されていないデータを指す用語です。平文はテキストだけでなく、画像やファイルなどを含む暗号化されていない全てのデータを指します。

4.暗号化されたデータを秘密鍵を使って復号

Aさんは、Bさんから受け取ったデータを、自分が持っているペアとなる秘密鍵を使って復号し、平文を確認します。

共通鍵暗号方式との違い

共通鍵暗号方式について、以下の特徴を解説します。

同じ鍵を使って暗号化と復号を行う

共通鍵暗号方式は同一の暗号鍵を使用して、データの暗号化と復号を行う暗号通信方法です。例えば、Aさんが作成したファイルをパスワードを使って圧縮し、Bさんにファイルとパスワードを送付してファイルを解凍してもらうなどです。この場合、ファイルを圧縮する際のパスワードが暗号鍵になります。
共通鍵暗号方式は共通の鍵が漏えいした場合、盗聴される可能性が高くなるため、運用の安全性に課題があるといえるでしょう。

相手ごとに鍵が異なる

共通鍵暗号方式は、送受信者双方が同じ暗号鍵を使用するため、1対1でのやり取り限定の運用になります。他の相手と暗号化したデータ通信を行う場合は、別途その相手専用の鍵が必要です。

公開鍵暗号方式に使われる3つの暗号方式

公開鍵暗号方式に使用される暗号方式は、主に以下の3つが挙げられます。

  • RSA
  • DSA
  • ECDSA

それぞれの特徴について解説します。

RSA

RSAとは、公開鍵暗号方式の代表的な暗号技術で、発明者の3人の名前(R. L. Rivest、A. Shamir、L. Adleman)から名づけられました。素数を組み合わせたアルゴリズムで、2048ビットの長い鍵長が活用されています。2048ビットの鍵長は、現代のスーパーコンピューターでも解読するのに天文学的な時間が必要なため、解読は困難とされています。

鍵長(かぎちょう)とは、暗号鍵のデータの長さのことです。鍵長が長いほど暗号の解読が困難になります。公開鍵暗号方式では1024〜2048ビットの鍵長が用いられ、堅牢な鍵で運用できるのが特徴です。一方、共通鍵暗号方式の鍵長は、40〜128ビットと少ないビット数で活用されています。

DSA

DSA(Digital Signature Algorithm)は、デジタル署名専用の暗号方式です。離散対数問題という数学の問題を利用したアルゴリズムを使用しています。

ECDSA

ECDSA(Elliptic Curve Digital Signature Algorithm)は、楕円曲線暗号と呼ばれ、楕円曲線の数式を利用したアルゴリズムの暗号方式です。ECDSAはDSAより鍵長は短いですが、同等の安全性が確保できるのが特徴で、入退室の際に使うICカードや、ブロックチェーンなどに利用されています。

公開鍵暗号方式のメリット

公開鍵暗号方式を利用するメリットは、2つ挙げられます。機密情報を扱う際の重要なポイントになるでしょう。詳しく説明します。

安全性が高い

公開鍵暗号方式は、片方の鍵のみでは暗号化できても復号ができないため、盗み見られる盗聴対策となり、高い安全性を確保できます。また、データが盗まれた場合でも解読できないため、セキュリティが非常に高いといえるでしょう。

セキュリティが高いことから、公開鍵暗号方式の技術を応用してデジタル署名を行えるようになり、インターネット上で安全に電子契約を結ぶことが可能になりました。現在では、企業間の契約締結を電子契約書で行うケースも増えています。

鍵の管理がしやすい

公開鍵暗号方式は、相手ごとに個別の暗号鍵を用意する必要がなく、鍵の管理がしやすいのも特徴です。共通鍵暗号方式は複数人とデータ通信を行う場合、人数分の鍵が必要でした。相手が増えると鍵の数も増えるため鍵の管理が煩雑になります。
一方、公開鍵暗号方式ならペアの2つの鍵で運用するため、片側の公開鍵を複数人に渡しても問題がなく、1ペアの鍵の管理のみで済みます。

公開鍵暗号方式のデメリット

公開鍵暗号方式のデメリットとして、処理時間が長いことが挙げられます。以下でその理由を解説します。

処理時間が長い

公開鍵暗号方式は鍵長が長いため、暗号化と復号の際に複雑な計算処理が必要になり処理時間が長くなります。共通鍵暗号方式と比較すると、処理時間は100〜数1000倍あるといわれています。根本的な計算処理の負荷が大きいため、大容量のデータのやり取りには不向きです。

共通鍵暗号方式と組み合わせる方法も

共通鍵暗号方式と公開鍵暗号方式の両方を組み合わせることで、大容量のデータのやり取りでも、計算処理の負荷を軽減することが可能になります。以下のように運用すれば、公開鍵暗号方式のデメリットをカバーすることが可能でしょう。

  1. 大きいデータの平文を共通鍵で暗号化する
  2. 共通鍵を公開鍵で暗号化する
  3. 秘密鍵で元の共通鍵に復号する
  4. 取り出した共通鍵で元データを復号して平文に戻す

公開鍵暗号方式の身近な活用事例

公開鍵暗号方式は、機密性が重要なケースで採用されていますが、意外と身近なところで活用されています。代表的な事例を2つ紹介します。

マイナンバーカード

マイナンバーは公開鍵暗号方式の電子署名技術を活用し、インターネット上での個人情報のやり取りを高い安全性の下で運用しています。例えば、マイナンバーカードを使って、e-Taxで確定申告を行うなどです。e-Tax申請時は秘密鍵でデータを暗号化した後、公開鍵と合わせて署名用電子証明書が送られます。データ一式を受け取った税務署は署名用電子証明書があることで本人認証ができ、文書が改ざんされていないかを確認できます。

電子証明書は、送付された公開鍵が本人のものであると証明するものです。電子証明書は第三者の認定局が有効性を判断するため、確実な本人確認を可能にします。

WebサイトのSLL通信

インターネット上でデータ通信をする際の安全性を高める手法で、SLL/TLSプロトコルの暗号化通信を行うケースがあります。SLL通信と略すことも多いです。SLL通信は、公開鍵暗号方式と共通鍵暗号方式の両方を組み合わせて運用しています。
「https」から始まるURLのWebサイトはSLL通信で運用されており、データを暗号化して通信するため、安全性が高いです。一方、「http」のみで始まっているURLのサイトはデータの送信が平文で行われるため、盗聴された場合は簡単に情報を盗まれてしまいます。SLL通信は、クレジットカード情報などの個人情報を入力する通販サイトなどでよく使われています。最近では一般企業のWebサイトなども、SLL通信を採用するケースが多いです。
⇒SSLとは?仕組みや役割、メリット・デメリットを簡単に解説
⇒httpsとは?概要や安全なサイトの見分け方をわかりやすく解説

まとめ

公開鍵暗号方式とは、インターネット上でデータ通信を行う際に、公開鍵と秘密鍵の2つの暗号鍵を使用し、暗号化と復号を行う暗号通信方法です。どちらか1つの鍵のみでは、データの暗号化は行えても元に戻せないため、安全性が高いのが特徴です。利用されている暗号技術は、スーパーコンピューターでも解読が困難で、盗聴されてもデータの機密性を保てるメリットがあります。しかし、複雑な計算処理が必要なため、処理速度が遅い特徴があり、大容量のデータ通信を行う際は注意が必要です。

公開鍵暗号方式は安全性が非常に高く、ブロックチェーンやマイナンバーカードの本人認証などに活用されています。また、共通鍵暗号方式と組み合わせてWebサイトのSLL通信を行うなど、インターネットのデータ通信のセキュリティを高めています。普段使用しているWebサイトもURLの始まりの文字を確認するだけで危険を回避できるため、意識してみると良いでしょう。

しかし、セキュリティ対策をしても全てのサイバー攻撃を防止可能なわけではありません。情報漏洩をいかに早く察知し、適切な対応を取れるかが重要です。情報漏洩監視ツール「ダークウェブアイ」は、会社のドメイン情報を入れるだけで「いつ」「どこから」「どんな情報が」漏れてしまったのか、一瞬で分かります。

自社のアカウント情報が漏洩していないか不安な方は、まず自社の漏洩状況を確認してみてはいかがでしょうか?
⇒メールアドレスを入れるだけ!自社の漏洩状況をチェック!

まずはお気軽にご相談ください
お問い合わせフォーム