・SSH
公開鍵と秘密鍵により、認証とデータの暗号化を行う。
①ホストの認証
SSHサーバの正当性をクライアントが確認する手順。
SSHクライアントが、接続するSSHサーバの公開鍵を受け取り、
クライアントに格納されているSSHサーバの公開鍵と比較し、正当性を確かめる。
②ユーザ認証
クライアント側のユーザの正当性を確認する手順。
パスワード認証や公開鍵認証(RSA,DSA)などの方法がある。
□公開鍵を使うユーザ認証
1、クライアントで公開鍵と秘密鍵を生成→公開鍵をサーバに送信。
2、サーバー側でランダムな数値を生成し、クライアントで生成された公開鍵で暗号化し、クライアントに送信。
3、クライアントは公開鍵でランダムな数値を複合化し、サーバーに送信。
4、サーバーは受信したランダムな数値と、サーバー側にあるランダムな数値を比較し→認証
※上記では省いたが、同時にパスフレーズの比較による認証も行っている。
□公開鍵の方式
バージョン1:RSA
バージョン2:RSA、DSA
・チャレンジ&レスポンス認証
クライアントから帰ってきたレスポンスと、
サーバで生成したレスポンスが一致すればOK
レスポンスはサーバが生成したランダムな文字列と、クライアントが入力したパスワードから生成される。
・一次方向ハッシュ関数
代表的なものはMD5、SHA-1、SHA-2など
・WPA、WPA2
違う点は共通暗号化方式で、WPAはTKIP、WPA2はAESを使っている。
双方とも認証にはEnterpriseモードとPersonal(PSK)モードがある。
Enterpriseモードは専用のサーバ必要
PSKモードは専用のサーバが不要でパスフレーズによる認証を行う。
・TKIP
wepにおいて暗号化キーが容易に解読されてしまう為の対策として、
自動的に暗号化キーを更新する機能である。
-128bitの巻号鍵をもつ。
・DNS Rebinding
DNSの返すIPアドレスを巧妙に変化させることにより、JavaScriptやJavaアプレットなどのsame origin
policyを破り、インターネットからローカルネットワーク(通常外部からはアクセスできない)などに対してアクセスする手法をいう。
・フィッシング、ファーミング
フィッシングはメールを使って偽サイトへ誘導する攻撃。
ファーミングはDNSを改ざんするなどして偽サイトへ誘導する攻撃。
・PGP
公開鍵暗号化方式を使った暗号化方式。
現在ではメールを暗号化するのに使われる。
・S/MIME
-電子メールの暗号化と電子署名に関する国際規格。
-メールの盗聴、改ざん、なりすましに対する仕組み。
-①当事者同士で電子証明書を添付したメールをやり取りする。
②電子証明書で公開鍵をやり取りし、暗号化を行う。
・AES、DES、RSA
AES、DESは共通鍵暗号化方式。RSAは公開鍵暗号化方式。
・SPI機能(ステートフルインスペクション)※俺的にログベースフィルタリング
セッションログを監視し、矛盾のあるセッションを拒否する機能。
LAN側からSYNパケットをWANへ送った場合のみ、WAN側からのSYN+ACKパケットを一時的に許可する。
例:HTMLファイルの要求を出していないのにHTMLファイルが送られてきた場合などは拒否する。
・ダイナミックパケットフィルタリング※俺的にポートベースフィルタリングLAN側から送信したパケットのポートに従って、返信パケットが使用するポートの開閉を自動で制御する。
・公開鍵基盤と電子証明書
公開鍵基盤により生成された公開鍵が不正なもので無いか証明する為のもの。CAが作成する。
電子証明書により、デジタル署名が作成される。
現実世界でのたとえとしては、電子署名が判子そのもの、押された印の方がデジタル署名に例えられる。
・電子署名(デジタル署名)
正しい送信者であることと、データが改ざんされていない事を証明するもの。
-正しい送信者であることの証明:
暗号秘密鍵と対になる復号公開鍵でしか複合出来ない事を利用する。
送信者が秘密鍵で暗号化したハッシュ値を、受信者が送信者の復号公開鍵で復号出来れば証明となる。
※データそのものの暗号化(受信者の公開鍵で暗号化)とは異なり、
ハッシュ値の暗号化は送信者の秘密鍵で暗号化する点に注意。
-改ざんの検知:
送信者から受信したデータからハッシュ値を生成し、送信者から受信したハッシュ値と照合することで証明できる。
↓暗号化とデジタル署名を併用した図
・デジタル証明書
公開鍵暗号化方式において、公開鍵が正当なものかを証明する手段。
サーバの公開鍵と所有者情報等が含まれ、CAのデジタル署名がかけられている。
↓説明動画
http://www.youtube.com/watch?v=2TmM0QKAIOU
-ルート証明書
証明書を発行した認証局が正規であるという保証を得るために、用いられるもの。
クライアントにインストールされている。
証明書を発行した認証局を認証している認証局・・・といったように辿っていった頂点にある認証局が自己署名した証明書の事。