ざっくり暗号化方式まとめ

最近暗号化方式について設定を要求されることが多いのだが、
いまいち理解できていないので、ざっくりとまとめてみる。


共通鍵暗号方式


共通鍵暗号方式とは、暗号化鍵と復号鍵が共通の暗号方式のこと。
共通の秘密鍵を使用して暗号化も復号もする。
鍵の管理に注意が必要で、不特定多数の相手とのやりとりには向かない。

代表例として下記のようなものがある。

暗号化方式説明
DES (Data Encryption Standard)鍵長56bitを使用して暗号化。
3DES (Triple DES)DESでは鍵長が短すぎる為、DESの暗号化/復号を複数の鍵を使って3回繰り返す暗号化。
AES (Advanced Encryption Standard)DESに変わる暗号化方式、128/192/256bitの3種類がある。


確かにこの3つはなんかセットで覚えていた。
キーワードは共通鍵暗号方式ってことだな。


公開鍵暗号方式


公開鍵暗号方式は、暗号化鍵と復号鍵が異なる暗号化方式のこと。
送信者は受信者の公開鍵で暗号化して、受信者は自分の秘密鍵で復号する。
鍵を公開したとしても、対となる秘密鍵でしか復号できない為、
不特定多数とのやりとりに向いており、デジタル署名などに使用される。

代表例として下記のようなものがある。

暗号化方式説明
DSA (Digital Signature Algorithm)離散対数問題を安全性の根拠とする公開鍵暗号を応用した、デジタル署名方式の一つ。
RSA (Rivest Shamir Adleman)桁数が大きい合成数の素因数分解問題が困難であることを安全性の根拠とした公開鍵暗号の一つ。
開発者であるRivest,Shamir,Adlemanの頭文字をとって名付けられた。


あまり詳しく調べたことなかったが、RSAとかは公開鍵暗号方式だったのね。
あと、開発者の名前の頭文字って・・・通常通り何かの略語かと思っていたや。


その他、よく聞くもの


IPSecでVPNなんぞやっているとよく出てくる言葉。
こちらもざっくり列挙だけしておうかと思う。

■鍵交換方式
鍵交換方式説明
DH (Diffie-Hellman鍵共有(or 交換))事前の秘密情報の共有なしに暗号化鍵の共有を安全に行える鍵交換方式。
ディフィーとヘルマンは、この方式を開発者の名前。


出た!開発者の名前!
暗号化関連では多いのかな?こういうの。

IPSecの鍵交換プロセスで使用される鍵の強度をDHグループという形で、
フェーズ1で設定することが多いかなと思う。
フェーズ2でもPFS(Perfect Forward Secrecy)を使用するときはDHグループの設定が必要。
フェーズ1、2のDHグループは特に一致させる必要はない。


■ハッシュアルゴリズム
ハッシュアルゴリズム説明
MD5ハッシュ値は128bit。
SHA-1ハッシュ値は160bit。
SHA-2ハッシュ値は224, 256, 384, 512bit。
それぞれSHA-256、SHA-384などとも表記される。


これらはハッシュアルゴリズムなので、注意が必要。
MD5は「Message Digest Algorithm 5」の略で、
SHAは「Secure Hash Algorithm」の略になる。

ちなみにSHA-1は「シャーワン」、SHA-2は「シャーツー」と読む。
慣れるまでは多少読みづらいが、そういうものだと覚えるしかない。
一応SHA-3もあるのだが、個人的にほぼ使ったことがない為、今回は割愛。

これらのハッシュアルゴリズムはIPSec使用時に
暗号化アルゴリズムとハッシュアルゴリズムと設定することが多い。
デフォルトでSHA-1などになっていて、そのまま使用しているパターンが多いかもだが。

ルータでIPSecだと色々と制約があったりするから、
暗号化アルゴリズム:AES、ハッシュアルゴリズム:SHA-1、DHグループ:2とかかな?
本来であればハッシュアルゴリズムはSHA-256以上にはしたいところだが。


さてさて、関係しそうなところをだらだらと列挙してきたが、
訳が分からなくなったときに振り返る分には、このくらいで十分だろう。
というか細かいところまであまり理解していないので、この位が限界・・・。


以上。



暗号技術入門 第3版


人気記事