暗号方式と暗号技術の基礎
暗号方式とは、平文を第三者が読めない形に変換し、正しい鍵を持つ者だけが元に戻せるようにする仕組みの総称である。大別すると共通鍵暗号方式と公開鍵暗号方式があり、両者は鍵の扱い方が根本的に異なる。その違いが、必要な鍵の数、鍵の配送方法、用途の違いを決めている。
共通鍵暗号方式と公開鍵暗号方式の仕組み
共通鍵暗号方式は、暗号化と復号に同一の鍵を用いる方式である。代表例はAESで、AESは共通鍵ブロック暗号として、暗号化と復号に同じ秘密の鍵を使う 。ブロック長は128ビットで、鍵長は128、192、256ビットから選ぶ 。処理が軽く大量のデータの暗号化に向くが、通信する相手ごとに同じ鍵を安全に共有しなければならないという弱点がある。
公開鍵暗号方式は、公開鍵と秘密鍵が対になっている方式である。RSAは大きな整数の素因数分解の困難さを、ElGamal暗号や楕円曲線暗号は離散対数問題の困難さを安全性の根拠とする 。公開鍵は公開してよいため、事前に秘密の鍵を共有する必要がない。一方、処理は共通鍵暗号方式より重くなる傾向がある。
鍵の数と鍵管理の負担
共通鍵暗号方式で相手ごとに秘密の通信をする場合、通信相手が増えるほど鍵管理の手間が増える 。相手ごとに別の共通鍵を安全に配り、保管しなければならないためである。
公開鍵暗号方式では、各人が公開鍵と秘密鍵の一組を持つ。n人が相互に暗号通信をする場合、必要な鍵の総数は人数に比例し、一組を2個と数えると全部で2n個になる 。人数から二人の組を選ぶ数や、人数の二乗の数と混同しないことが重要である。それらは通信の組の数であり、各人が持つ鍵の数ではない。
秘密にする通信では、受信者の公開鍵で暗号化し、受信者が秘密鍵で復号する 。復号に使う秘密鍵は公開してはならない 。
通信の秘匿と署名で変わる鍵の使い方
公開鍵暗号方式では、通信内容を秘匿する場合とデジタル署名を行う場合で鍵の使い方が逆になる。秘匿では受信者の公開鍵で暗号化し、受信者が自分の秘密鍵で復号する。署名では送信者が秘密鍵で署名を作成し、受信者が公開鍵で検証する 。どちらも同じ鍵の対を使うが、秘密に保つべき鍵と公開してよい鍵の役割が入れ替わる点が要点である。
この節の続き
- ハイブリッド暗号方式と実務での使われ方
- 暗号方式の判断基準と暗号リスト
- 試験で問われやすい区別
ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。
アプリでこの節を読む