今回は、暗号について書き綴っていきます。皆さんは、暗号で遊んだことはございますか?
通信は盗聴されるもの
皆さんは、二人だけの秘密の会話をしたい、内容を他人に知られたくない、ということありますよね?通信だって同じことです。いつ誰がこっそり通信内容を盗み取っているか分かりません。
そこで、内容を暗号化して、当事者にしかわからないようにします。
共通鍵暗号について
図は古典暗号の一つ、「シーザー暗号」を用いています。送信者が暗号化された文章を送信し、受信者が送信者と共有した鍵で復号し、平文として読み取ります。
文字のシフト数は固定であるが、3に限る必要はない。たとえば左に3文字分シフトさせる場合、「D」は「A」に置き換わり、同様に「E」は「B」に置換される。Wikipedia シーザー暗号
図の場合、「Hello World」を「5文字後ろにずらし」て暗号化しており、この「5文字後ろ」という操作が「鍵」です。第三者が盗み取れるメッセージは「Mjqqt Btwqi」であり、これを解読するには鍵を推測して「5文字後ろにずらした」ことを見つけなければなりません。
現代暗号では暗号化や復号に、高速かつより複雑な計算がなされており、主に、AES暗号が用いられています。鍵を知らない限り、コンピュータを用いても解読するのは非常に困難なものとなります。
鍵を共有するには?
共通鍵には欠点もあり、人数が多ければ加速度的に鍵の管理が煩雑になります。(N人がそれぞれ二者間の通信をするにはN(N-1)/2種類の鍵が必要となります。)
さらに、共通鍵だけでは解決できない問題として、鍵をどのように相手に届けるか?という問題があります。通信経路が安全でなければ、鍵を送り届けるのには使えませんし、盗まれないように鍵に別の鍵をかけようとしても、この”鍵の鍵”を送り届けるのに同じ問題が起こり、キリがありません。
これについては、また別の機会にて説明します。
→暗号って何?(公開鍵編)
今回のクイズ
次のシーザー暗号を解読し、設問に答えてください。
解答は日本語でも英語でも構いません。(ヒント:疑問文の最初によく出る頭文字は?)
Hspy hld estd lcetnwp azdepo?
答えは、次回の「暗号」についてのブログで公開しますね❗️