シーザー暗号化の原理と仕組みについてまとめました。
シーザー暗号の原理
シーザー暗号(Caesar Cipher)とは、世界初の暗号化手法で有名なシーザー(カエサル)が用いたものだそうです。
その方法は極めて単純な方法で、文字を決められた数だけ文字をずらします。
例えば、「SAO」を1文字ずつずらせば「TBP」となります。
復号化(暗号した文章を元に戻す)は、逆向きに1文字ずつずらします。(元のSAOになります)
(シーザー暗号では、ずらす文字数が鍵(パスワード)となります)
アルファベットは26 文字しかないので、シーザー暗号は簡単に解読されてしまいます。
シーザー暗号の例題
今回は平文「SAO」を鍵「KEY」でシーザー暗号化することを考えます。
KはAからアルファベット順に数えて11番目、Eは5番目、Yは25番目になります。
よって、暗号文は次のようにして簡単に求まります。
平文:SAO 鍵:KEY 暗号文:DFN
※Sを11、Aを5、Oを25だけ右にずらすとD、F、Nとなります。
複合する場合は、逆に左にずらすだけです。
シーザー暗号の実装例(プログラミング)
プログラミング言語でシーザー暗号を実装した例を下記に整理しました。
言語 | 記事 |
---|---|
Python | ■【Python】シーザ暗号の実装例 |
コメント