An toàn và An ninh thông tin
Nguyn Linh Giang
B môn Truyn thông
và Mng máy tính
Khoa CNTT, HBK HN
Mt s h mt khóa công khai
Ni dung
Trao đi khóa Diffie-Hellman
Ch ký ElGamal
H mt Knapsack
Khái quát h Diffie-Hellman
c đ cp trong mt hi tho do Diffie-
Hellman đa ra vào 1976
Là s kt hp ca hai mô hình xác thc và
mt ca h KCK
Vic sinh ra các cp khoá là hoàn toàn khác
nhau đi vi ngi s dng
S dng c ch trao đi khoá trc tip không
qua trung gian xác thc
Mc đích ra đi
S dng đ áp dng cho các ng dng có đ
mt cao bng phng pháp trao đi khoá
(key exchange)
Vi nguyên tc hai ngi s dng có th trao
đi mt khoá an toàn-đc dùng đ mã hoá
cáctinnhn
Thut toán t gii hnch dùng cho các ng
dng s dng k thut trao đi khoá
C s hình thành thut toán
Da trên nguyên tc toán hc:vimlà mt s
nguyên t thì
“Có th tính toán d dàng y=a
i
mod m nhng
vic tính ngc li là rt khó và vimln thì
dng nh là không th”
Da trên phép tính logarit ri rc
Thut toán logarit ri rc
Mt s nguyên t p
Mt gc nguyên thu acap :là các s mà
lu tha ca nó thuc (1,p-1)
Vibbt kì nguyên s luôn ∃isao chob=a
i
mod p
ây thut toán logarit ri rc.
c coi là c sđhình thành thut toán
này.
Mô hình chung ca thut toán
A B
Avaible infor
K
K
Kpb
Generator
Thut toán sinh khóa
La chn s nguyên t pvàgc nguyên thu a
Khoá ca ngii
– Khóa riêng x
i
:chn sao cho x
i
<p-1
– Khoá công khai y
i
:y
i
=a
xi
mod p
Khoá ca ngij
– Khoá riêng x
j
:chn sao cho x
j
<p-1
– Khoá công khai y
j
:y
j
=a
xj
mod p
Khoá mt chung : K=(y
j
)
xi
mod p=(y
i
)
xj
mod p
Trao đi khóa Diffie-Hellman
Thut toán trao đi khoá
Tính an toàn ca h mt
Thám mã có sn các thông tin :p,a,Y
i
,Y
j
có th gii đc K ,X bt buc thám mã
phi s dng thut toán logarit ri rc:rt khó
nupln
Nu chnpln: vic tính toán ra X, K dng
nh không th trong thi gian thc
H mt và thám mã
Thám mã có th tn công vào các thông tin : p
,a,Y
j
,Y
j
Và s dng thut toán ri rc đ tính ra X, sau
đó tính ra K
Quan trng nht là đ phc tp ca thut toán
logarit ph thuc vào chn s nguyên t p
Lnh vc ng dng
T quá trình thut toán đãhn chng dng
ch s dng cho quá trình trao đi khoá mt là
ch yu
S dng trong ch kí đin t.
Các ng dng đòi hi xác thc ngi s
dng.
ElGamal
To khóa: p, q, α, a, y=α
a
mod p
Toch ký:
– Chnngu nhiên k, 1 ≤ k ≤ p-1, gcd(k, p-1)=1
– Tính r = α
k
mod p
– Tính k
-1
mod (p-1)
– Tính s = k
-1
∗ (h(m) - ar) mod (p-1)
– Ch ký là (r,s)
El Gamal (cont)
Xácminhch ký
– Xácminh1 ≤ r ≤ p-1
– Tính v
1
= y
r
r
s
mod p
– tính h(m) and v
2
= α
h(m)
mod p
– Đng ý nuv
1
=v
2
)(mod r)(
)1(mod )(
)1(mod })({
sr)(
1
p
parmhks
parmhks
aksarmh
α≡α≡α
−−≡
−−≡
+
−
ElGamal (cont)
Chú ý:
– k phi đnnht đivimibntin đcký
(s
1
-s
2
)k=(h(m
1
)-h(m
2
))mod (p-1)
– Tn công gi mocóthđcthitlpnucác
hàm băm không đc dùng
ElGamal (cont)
Hiunăng
– Toch ký
Mt module theo hàm m
Mtthut toán clid
C hai có thđcthchin offline
– Xác minh
Three modular exponentiations
Các ch ký ElGamal đcto ra cho các bài
toán xác thc, chng thc
Thut toán mã hoá công khai
Knapsach
Bài toánSubset Sum
Mô t thut toán Knapsack
Bài toán Subset Sum
Thut toán Knapsach đc xây dng da trên bài toánSubset
Sum
Thut toán Knapsack
KU = {t} là khoá công khai.
KR = {p, a, s} là khoá mt.
Hàm mã hoá
Hàm gii mã
Thut toán Knapsack