はじめに
本記事では、暗号
について記述します。
暗号化
データを一定の規則に従って、
第三者に容易に解読できない
ようにすることす。
暗号化することで、通信経路上でのデータの盗聴を防ぐことができます。
対して、
暗号化したままでは誰もデータの中身を読めないため、
暗号化されたデータを元に戻す
復号も必要になります。
つまり、暗号化した後、復号化が発生します
。
復号には、鍵
というものが必要になります。
この鍵は、データを暗号化した際に一緒に作られます。
作られた鍵を使って、暗号化したデータを復号します。
共有鍵暗号方式(AES)
暗号化鍵と復号鍵が共通の同じ秘密鍵を使う
方式です。
*平文とは、暗号化されていないデータのことです。暗号化されたデータを暗号化と言います。
[送信側]
平文
↓暗号化(暗号化鍵、共通の秘密鍵)
暗号文
↓復号(復号鍵、共通の秘密鍵)
平文
[受信側]
暗号化鍵は盗まれないようにする必要があります。
復号と同一の鍵
を使っていることから、
盗まれてしまうと、暗号化していても、復号されてしまいます。
そのため、鍵を安全に配布するための工夫が必要であることから、
不特定多数の相手
とのデータやりとりには不向き
です。
メリットとして、ファイルやデータの暗号化にかかる処理速度が早い
です。
公開鍵暗号方式
一方の鍵を公開する暗号方式です。
暗号化鍵と復号鍵が異なります
。
[送信側]
平文
↓暗号化(暗号化鍵、 受信者の公開鍵)
暗号文
↓復号(復号鍵、受信者の秘密鍵)
平文
[受信側]
イメージは、南京錠
です。
誰でも閉めることができるけど、鍵は持っている人しか開けられない。
鍵を受信者が公開していることから、
安全に鍵を配布することができ、共通鍵暗号方式とは違い、
不特定多数の相手とデータのやりとりをすることに向いています
。
しかし、暗号化や復号には時間がかかります。
ハイブリッド鍵暗号方式
共通鍵暗号方式
と公開鍵暗号方式
を組み合わせた方式
です。
①送信者が「共通鍵」を作成します。
②送信者が作成した「共通鍵」を、受信者の公開鍵で暗号化して受信者あてに送信します。
③受信者が、送信されてきた「共通鍵」を受信者の秘密鍵で復号します。
→ここで受信者は「共通鍵」が手に入ったので、両者が「共通鍵」を持っていることになります。
④これ以降は、データを「共通鍵」で暗号化したり復号したりしてやりとりを開始します。
以上です。
終わりに
基本的にハイブリッド鍵暗号方式を採用することが良いと思われます。
他に暗号について知識を身につけたらアウトプットする予定です。
以下参考サイトです。
共通鍵暗号方式(AES)と公開鍵暗号方式(RSA)との違いを解説!
明日も頑張ります!