今回は高度情報試験(システムアーキテクトを受ける予定)対策にセキュリティの中でも比較的よく出され、かつしっかりと覚える必要がある暗号技術について簡単にまとめました。
なお、こちらの自分のブログの記事と同じ内容です。
共通鍵暗号方式
暗号化と復号に同じ鍵を用いるやつ。n人の利用者が使う場合、各利用者は(n-1)個の鍵を管理し、システム中にはn (n-1) / 2個の鍵が存在する。
代表例
・DES(Data Encryption Standard) 56ビットの共通鍵を用いる。
・AES(Advanced Encryption Standard) Advancedという通り、↑の後継で、ブロック長は128ビット、鍵長は128ビット・192ビット・256ビットの3つが利用できる。
・RC ストリーム暗号(平文をビット単位あるいはバイト単位などで逐次暗号化)で、RC4, RC5, RC6などがある。
公開鍵暗号方式
暗号化と復号化にペアになった異なる鍵を用いる。
情報漏洩対策に使う→受信者の公開鍵で暗号化し、受信者の秘密鍵で復号。
送信者認証に使う→受信者の秘密鍵で暗号化し、送信者の公開鍵で復号。
代表例
・ElGamal 離散対数暗号を用いた公開鍵暗号方式
・RSA とても大きな2つの素数の積の素因数分解が困難なことを用いた暗号。RSAは人の名前(リベスト、シャリア、エーデルマン)の略。
・楕円曲線暗号 楕円曲線状の特殊な演算を用いて暗号化
ディジタル署名、認証局
送信者の秘密鍵で暗号化し、送信者の公開鍵で復号することで送信者本人であることを証明する。
送信者の公開鍵の正当性を証明するのにPKI(Public Key Infrastructure 公開鍵基盤)が用いられるが、認証局(CA : Certificate Authority)によるディタル証明書が含まれている必要がある。
有効期間中に失効したディジタル証明書の一覧をCPL(Certificate Revocation List : 証明書失効リスト)という。
メッセージダイジェスト(送信平文をMD5などで圧縮したもの)を用いて送信者の確認と改ざん有無を同時に行える。
とまあ、こんな感じで駆け足でまとめてみました。この辺りの問題が大体毎回1問くらい出るので、しっかり押さえたいところですね。