pulpul 日本の試験

ネットワークスペシャリスト 概念書 · セキュリティ

共通鍵と公開鍵の暗号方式

共通鍵暗号方式は、暗号化と復号に同じ鍵を使う方式であり、処理が高速である一方、通信相手と鍵を安全に共有する必要がある。公開鍵暗号方式は、公開鍵と秘密鍵の対を用いる方式であり、公開鍵を広く知らせながら秘密鍵だけを本人が保持することで、事前の鍵共有を前提としない通信を可能にする。両者は目的に応じて使い分けられ、現実のプロトコルでは組み合わせて用いられる。

共通鍵暗号と公開鍵暗号の仕組み

共通鍵暗号方式の代表例はAESであり、暗号化と復号に同じ秘密鍵を用いるブロック暗号である。 一方、RSAや楕円曲線暗号は公開鍵暗号方式に属し、公開鍵と秘密鍵の組を用いる。 共通鍵暗号方式では、暗号化と復号に同一の鍵を使う。

通信内容を秘匿する場合は、受信者の公開鍵で暗号化し、受信者が対応する秘密鍵で復号する。秘密にすべきなのは復号に使う秘密鍵であり、暗号化に使う公開鍵は公開してよい。 逆に、デジタル署名では送信者が秘密鍵で署名を作成し、受信者は対応する公開鍵で検証する。 秘匿と署名では鍵の使い方が逆になる点を理解しておく必要がある。

ハッシュ関数の原像計算困難性とは、ハッシュ値が与えられたとき、そのハッシュ値を出力するメッセージを計算量的に見つけることが困難であるという一方向性の性質である。 出力がnビットの理想的なハッシュ関数であれば、その原像を総当たりで見つける試行回数の目安は約2^n回である。

鍵の数と判断の基準

公開鍵暗号方式では、各人が公開鍵と秘密鍵の一組を持つ。一組を2個と数えると、n人が相互に暗号通信を行う場合に必要な鍵の数は全部で2n個になる。 一方、n(n−1)/2はn人から異なる2人の組を選ぶ数であり、鍵の総数ではない。 人数の組合せと鍵の数を混同しないことが重要である。

この節の続き

ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。

アプリでこの節を読む