では、秘密鍵暗号を紹介していきます。

さて、この暗号はコンピューター上で使われている暗号で、暗号化と復号が同じによって行われるものを言います。また、共通鍵暗号とも言われます。
同じ鍵によって行われるため、処理は高速で行うことができますが、鍵を他の人に知られると簡単に暗号を解読されてしまうという欠点があります。

では、鍵を厳重に保管すればいいと思うかもしれませんが、暗号化と復号が同じ鍵によって行われるため、暗号を送るまたは受け取る相手にも鍵を渡さなければなりません。
そのため、安全に鍵を渡す必要があります。

鍵を秘密にしなければならないので、この鍵を秘密鍵といいます。また、公開鍵暗号の秘密鍵と区別するために「共通鍵」と呼ぶことも多いです。





では、秘密鍵暗号の暗号で有名な暗号「DES」を
説明します。

まず、「DES」とはIBM社によって開発され、1977年に米国の連邦情報処理基準に採用された秘密暗号化アルゴリズムである。

この暗号の仕組みは、「桁上がりしない0と1だけの足し算」を用いたものである。
これを用いることにより、平文+秘密鍵=暗号文 暗号文+秘密鍵=平文 が成り立っている。
これは下の図を見てもらえれば分かるだろう。

             

実際には「64bit」(bitは情報量の単位)のブロックごとに(それを半分の32bit)分けて復号が行われる。
ブロックごとに処理を行うので、「ブロック暗号」と呼ばれている。

また、「ブロック暗号」の他に「ストリーム暗号」(逐次暗号)というものがある。

「ストリーム暗号」は平文一桁ずつ順次暗号化していくため、処理がシンプルで速度が早い。
しかし、軍事などに利用していたため、その内容が公開されず、ほとんど進んでない。



                               (「現代暗号」岡本竜明、山本博資著 参考)