公開鍵認証 (コウカイケンニンショウ) とは | 意味や読み方など丁寧でわかりやすい用語解説

作成日: 更新日:

公開鍵認証 (コウカイケンニンショウ) の読み方

日本語表記

公開鍵認証 (コウカイケンニンショウ)

英語表記

Public key authentication (パブリックキーオーセンティケーション)

公開鍵認証 (コウカイケンニンショウ) の意味や用語解説

公開鍵認証とは、暗号技術を利用してユーザーの身元を検証する認証方式の一つである。従来のパスワード認証に比べて、セキュリティ強度が高いのが特徴である。この認証方式では、一組の数学的に関連付けられた鍵である公開鍵と秘密鍵を使用する。利用者は自身の秘密鍵を厳重に管理し、そのペアである公開鍵を接続先のサーバーへ事前に登録する。接続を試みる際に、サーバーは登録された公開鍵を用いて、接続元が対応する秘密鍵を実際に所有していることを確認することで、そのユーザーの正当性を判断する。これにより、ネットワーク上でのパスワード情報の盗聴や、パスワードの推測による不正なログインを防ぐことができるため、SSH(Secure Shell)接続など、高いセキュリティが求められる通信において広く採用されている。 この認証方式の基礎は、非対称暗号方式と呼ばれる暗号技術にある。非対称暗号では、データを暗号化するための公開鍵と、暗号化されたデータを復号するための秘密鍵がペアとして生成される。これらの鍵は数学的に関連しているが、公開鍵から秘密鍵を容易に推測することは不可能である。公開鍵は誰にでも公開しても安全であるが、秘密鍵は所有者のみが絶対に他者に知られないよう厳重に保管しなければならない。公開鍵認証では、この仕組みを応用し、データ暗号化ではなく、ユーザーの身元確認に利用する。 具体的な認証プロセスは以下の通りである。まず、認証を受けたいクライアント(例えばユーザーのPC)が、自身の公開鍵と秘密鍵のペアを生成する。この秘密鍵はクライアントのローカル環境に保存され、パスフレーズで保護される場合もある。次に、クライアントは生成した公開鍵を、アクセスしたいサーバーへ登録する。SSH接続の場合、クライアントの公開鍵は通常、サーバー上の特定のユーザーのホームディレクトリ内にある`.ssh/authorized_keys`ファイルに追記される。 クライアントがサーバーへの接続を試みると、サーバーはランダムに生成されたデータ(これをチャレンジと呼ぶ)をクライアントに送信する。このチャレンジデータはセッションごとに異なる一意な値である。クライアントは受け取ったチャレンジデータを、自身が保有する秘密鍵を用いてデジタル署名する。この署名は、対応する秘密鍵を所有している者だけが生成できる。クライアントはその署名済みのチャレンジデータをサーバーに返信する。 サーバーは、クライアントから送られてきた署名済みのチャレンジデータと、事前に登録されているクライアントの公開鍵を用いて、その署名が正しいかどうかを検証する。公開鍵によって署名が正しく検証できれば、それはクライアントが対応する秘密鍵を正しく保持していることの強力な証明となる。この一連の過程で、秘密鍵そのものがネットワーク上を流れることは一切なく、サーバーも秘密鍵を知る必要がないため、安全性が非常に高い。署名の検証に成功した場合、サーバーはクライアントの認証を許可し、安全な通信が確立される。この方式は、パスワード漏洩のリスクをなくし、ブルートフォース攻撃への耐性も高めるため、現代のITシステムにおいて不可欠なセキュリティ技術として広く利用されている。

公開鍵認証 (コウカイケンニンショウ) とは | 意味や読み方など丁寧でわかりやすい用語解説