共通鍵暗号方式の解説(ITパスポートシラバス用語)

共通鍵暗号方式の解説(ITパスポートシラバス用語)
目次

共通鍵暗号方式とは


共通鍵暗号方式とは、データを第三者に解読できないよう「暗号化」するときと、暗号化されたデータを元に戻す「復号」を行うときに、全く同じ「共通の鍵(秘密のデータ)」を使用する暗号化の手法です。処理速度が非常に高速なため、大容量のデータをやり取りするのに適しています。しかし、データを送りたい相手に事前にどうやって安全に鍵を渡すかという問題(鍵配送問題)や、取引先が増えるほど管理しなければならない鍵の数が膨大になってしまうという課題があります。

具体例

これは、現実世界の「家の玄関の鍵」や「宝箱の南京錠」と同じ仕組みです。宝箱に南京錠をかけて閉めるとき(暗号化)に使う鍵と、その南京錠を回して開けるとき(復号)に使う鍵は同一のものです。太郎さんが花子さんに宝箱を送る場合、あらかじめ花子さんに同じ鍵のスペアを直接手渡しておくか、何らかの安全な方法で送る必要があります。もし鍵を送る途中で盗まれてしまうと、途中で箱を開けられてしまいます。

もう少し詳しく

共通鍵暗号方式(対称鍵暗号方式)は、暗号化と復号の計算アルゴリズムが比較的シンプルなため、ハードウェアやソフトウェアによる処理が非常に高速に行われるというメリットがあります。代表的な暗号化アルゴリズムには、かつて米国標準であった「DES(Data Encryption Standard)」や、現在世界中でデファクトスタンダードとして使われている「AES(Advanced Encryption Standard)」があります。AESは128、192、256ビットの頑強な鍵長をサポートしており、現代のコンピュータでも現実的な時間内では解読が不可能なほど安全性が高いです。しかし、この方式には以下の2つの大きな弱点があります。 1. 鍵配送問題:暗号化したデータを送る前に、相手にどうやって安全に共通鍵を届けるかという問題。鍵をインターネットでそのまま送ってしまっては、それを盗聴されるリスクがあります。 2. 鍵の管理コスト:通信相手ごとに異なる鍵を用意する必要があるため、相手の数を N とすると、必要な鍵の数は N(N-1)/2 という式で爆発的に増加します(例:100人いれば4,950個の鍵が必要になります)。

試験でのポイント

試験では、共通鍵暗号方式と公開鍵暗号方式の特徴(暗号化/復号の鍵が同じか異なるか、処理速度の速さ、鍵管理の難易度)を対比させる問題が頻出します。「共通鍵暗号方式は、暗号化と復号で同じ鍵を使うため、処理速度が高速であるが、鍵配送問題があり、相手の数が増えると必要な鍵の数が激増する」という特徴の組み合わせを暗記しておく必要があります。また、代表的な暗号方式の名称として「AES」が共通鍵暗号方式に分類されること、および鍵配送問題を解決するために、公開鍵暗号方式を用いて共通鍵を配送する「ハイブリッド暗号方式」が実務(SSL/TLSなど)で広く使われているという点についても出題されやすいです。

関連する用語

共通鍵暗号方式に関連する用語としては、現代の標準暗号規格である「AES」、もう一つの主要方式である「公開鍵暗号方式」、そして両者の良いとこ取りをしてインターネット通信を安全に行う「SSL/TLS(ハイブリッド暗号方式)」があります。これらを理解することで暗号通信の基礎が完成します。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ