公開鍵(暗号)方式

【英】common key cryptosystem 

 

インターネットなどを通してデータを通信する場合、盗聴や改ざんされる可能性があり、大切なデータを保護するためにはデータを暗号化して送信することが必要となる。この時、データを暗号化したり、暗号化されたデータを元のデータに戻す(復号化)ために異なる鍵である「公開鍵」と「秘密鍵」を用いるのを公開鍵方式または公開鍵暗号方式と呼ぶ。

一般には暗合化には「秘密鍵」を用い、復号には「公開鍵」を用いる。「公開鍵」と「秘密鍵」はペアで存在し、以下の特徴がある。

  • 「秘密鍵」と「公開鍵」のペアの鍵は簡単に作ることができる。
  • 「秘密鍵」で暗号化したデータは、「公開鍵」を使わないと復号できない。
  • 「公開鍵」で 暗号化したデータは、「秘密鍵」を使わないと復号できない。
  • 「公開鍵」から「秘密鍵」を作ることは非常に困難である。

「秘密鍵」は送信者が秘密に取り扱うが、公開鍵は誰でも見える状態としておいても問題はない。
「秘密鍵」「公開鍵」は共に、比較的小さい数字と、大きな数字の2つの数字のペアで作られている。この公開鍵の大きな数字を素因数分解できれば 秘密鍵を容易に求めることができる。素因数分解のアルゴリズムの開発とコンピュータの高速化のため、RSA 方式では1024bit(RSA-1024)のものが推奨されてきたが、解読の可能性が高まったとして2010 年からは2048bit(RSA-2048)に変更するように提唱されている。

暗号化と復号化に同じ鍵を用いる方法を共通鍵(暗号)方式という。