←セキュリティ論シラバスへ
←講義のツボメニューへ

 鍵交換方式

【2002.1.8 】【第11回】
9.鍵交換方式
 共通鍵暗号系による通信のためのセッション鍵(講義資料P.50を参照)を共有する方法
 SSHバージョン2、SSL(TLS,RFC2246)で用いられている。
9.1 Diffie-Hellman(DH)方式
準備 ●ある大きな素数pと、そのpを方とするときの原始元(講義資料p.40)gを一つ選び、プロトコル参加者全員に公開する。

鍵共有手順
ユーザAとBが鍵を共有したいとする。
1.Aは整数a,0 ≤ a ≤ p - 1 をランダムに生成し、秘密に保持する。そして、次のaを計算し、Bに送る。
  α=gamod p

2.Bは整数b,0 ≤ b ≤ p - 1 をランダムに生成し、秘密に保持する。そして、次のβを計算し、Aに送る。
  β=gbmod p

3.Aは以下の計算を行い、得られたKを共有鍵とする。
  K = βa mod p
= (gb mod p)a mod p
=gab mod p

4.Bも同様に以下の計算を行い、得られたKを共有鍵とする。
  K = αb mod p
= (ga mod p)b mod p
= gab mod p

9.2DH方式の安全性
 公開されているp,g,盗聴により得られたα、βだけからでは、離散対数(discrete logarithm)問題(講義資料P.36,40)、例えば:
   given p,g,α, find a such that α= ga mod p
を解かない限りKは得られない。
 Man-in-the-middle Attack
 不正者MがA,Bの間に割って入る方式
     A ↔ M ↔ B
1.Aはaをランダムに生成し、α=ga mod p を計算し、Bに送る(送ったつもりになっているが実際はBに届いていない。)
2.Mはaを横取りする。Mはa’をランダムに生成し、Aになりすましてα'=ga' mod p をBに送る。
3.Bはbをランダムに生成し、β=gb mod pを計算し、Aに送る(同上)。
4.Mはβを横取りするMはb’をランダムに生成し、Bになりすましてβ'=gb' mod p をAに送る。
5.MとAの間でKA = gab' mod pが共有され、MとBの間でKB = ga'b mod pが共有される。
6.Aから送られてきた通信はKAで復号した後、KBで暗号化し、Bに送る。Bから送られてきたものはその逆を行う。

10.認証
●認証技術の分類
1.ユーザ認証(個人認証)
2.クライアントの認証
3.リモート認証

10.1 ユーザ認証
〇ユーザ認証の分類
1.記憶によるもの
2.補助装置によるもの
3.身体的特徴によるもの
もちろん、上の3方式を任意に組み合わせることが可能であるし、実際そうなっている例が多い。

1.記憶によるもの
具体的な方式
・暗証番号
・パスワード
例:銀行
〇利点
・導入しやすい
・コストが安い
・抵抗感がない
〇欠点
・セキュリティ的に1番弱い
・パスワードが推測されやすい
・パスワードを忘れる

2.補助装置によるもの
具体的な方式
・磁気カード
・ICカード
例:学生証
内部の記憶装置、あるいは、演算装置(暗号化ハードウェアなど)を覗き見ることができないハードウェアのことを耐タンパー性をもつという。
〇利点
・パスワード方式よりは高いセキュリティ
〇欠点
・パスワード方式よりもコストが高くなる
・本人かどうか判別できない

3.身体的特徴によるもの
身体的特徴のことをバイオメトリクス(biometrics)という。
具体的な方式
・指紋
・網羅
・虹彩
・掌形
・顔
・音声
・筆跡
・DNA
正当なユーザを拒絶してしまう確率を誤排除率(false rejection rate),不正なユーザを受け入れてしまう確率を誤受入率(false acceptance rate )という。
〇利点、欠点


←セキュリティ論シラバスへ