This article has been translated from English to Japanese.

非対称暗号化とは何だろうか?

非対称暗号化とは、2つの別個の、しかし数学的に関連付けられた「鍵」を使用してデータの暗号化と復号を行い、不正アクセスや不正使用からデータを保護する暗号化の一種である。

これらのキーは、

  1. 秘密鍵
  2. 公開鍵

これら2つのキーは「公開鍵と秘密鍵のペア」または単に「キーペア」と呼ばれる。

このうちの1つである公開鍵は、誰でも利用できる。もう一方の鍵は秘密鍵と呼ばれる。

公開鍵で暗号化されたデータは、秘密鍵での復号できる。これが非対称暗号化が「公開鍵暗号」とも呼ばれる理由である。

非対称暗号化の仕組み

非対称暗号化について初めて学ぶ際には、以下のような古典的な例が用いられる。

誰かに暗号化されたデータを送信するには、その人の公開鍵でデータを暗号化する必要があり、データを受け取った人は、対応する秘密鍵でそれを復号する

インターネットを通じて送信するデータはすべて平文である。つまり、アクセスできる人なら誰でもそのデータを見ることができる。

もし誰にも自分のデータを見られたくない場合は、メッセージの受信者または送信先の公開鍵 を使用してデータを暗号化することができる。(この人物は事前に自分の公開鍵を送信する。)

いったんデータが暗号文に変換されてしまうと、同じ鍵を使ってそれを解読することはできない。

暗号文は受信者のみが所有する対応する秘密鍵のみで復号できる。

How Asymmetric Encryption Works

上の図は、公開鍵で暗号化されたデータを、秘密鍵の所有者のみ読み取ることができるように、公開鍵を自由に配布する方法を示している。

公開鍵でデータを暗号化しているため、この非対称暗号化方式は「公開鍵暗号」とも呼ばれる。

非対称暗号化の最も一般的な用途は、機密メッセージの送信であることは明らかである。

もし私がインターネット上であなたのお母さんにラブレターを送る際に、あなたに読まれないようにしたい場合、非対称暗号化を使用することができる。

私はあなたの母親の公開鍵でメッセージを暗号化し、彼女にメッセージを送る。

テキストを元の読める形式に解読するには、お母さんだけが所有している秘密鍵が必要になる。だから、メッセージを読むことができるのはお母さんだけだ(君ではない!)。そして、お母さんは僕が彼女に対して抱いている本当の気持ちを知ることになる。

Love Letter to Yo Mama

非対称暗号化の仕組み

非対称暗号化は、メッセージの暗号化と復号化に初めて使用された。しかし、暗号通貨では、この技術を少し異なる方法で使用している。

非対称暗号化の典型的な例として、公開鍵を使ってデータを暗号化しデータを復号するには秘密鍵が必要であることを説明した。

しかし、逆もまた同様に機能するのだ!

秘密鍵を使ってデータを暗号化し、その後公開鍵を使ってデータを復号することもできる。

これが暗号通貨における非対称暗号化の使用方法だ!

How Asummetric Encryption Works in Crypto

暗号通貨では、送信者は自分の秘密鍵を使って特別なメッセージを暗号化し、受信者は送信者の公開鍵を使ってそれを復号する。

これは、先ほどの古典的な例とは逆である。受信者の鍵を使用するのではなく、送信者の鍵が使用されるのだ。

もしこの方法で機密性の高いメッセージを送信したいのであれば、それは悪い考えである。なぜなら、定義上公開されているあなたの公開鍵を入手した者は誰でも、あなたのメッセージを解読して読むことができるからだ。

しかし、ビットコイン(およびその他の暗号通貨)では、すべての取引が公開されるため、データを非公開または機密にする必要はない。

まったく異なる目的で非対称暗号化を使用している。そして、それは非常に巧妙だ。

認証に非対称暗号を使用している。つまり、あなたが誰であるかを証明するのだ。

より具体的には、ビットコインを他の人に送金したい場合、あなたが送金したいビットコイン実際の所有者があなたであることを証明するために使用される。

認証とは、ユーザーの身元など、ある主張を証明する行為である。これとは対照的に、識別とは、ある人物の身元を示す行為である。認証とは、その身元を検証するプロセスである。

秘密鍵で何かを暗号化(「ロック」)すると、公開鍵で誰でもそれを復号化(「ロック解除」)できる。

これは、メッセージの暗号化ができるのはあなただけであるため(対応する秘密鍵を持っているため)、あなたがメッセージの本来の送信者であることの証明となる。

そして、あなたの身元(ビットコインの真の所有者として)が認証されたため、ビットコインを送信することが許可された

本人確認とは、ある人物であると主張することである。認証とは、あなたが主張した通りの人物であることを証明することである。承認とは、以前に認証された本人であることを理由に、何かにアクセスすることである。

非対称暗号とは何か、またその仕組みについて学んだところで、それらをまとめて、デジタル署名でどのように使われているか見てみよう。