Ch ng 12ươ
ĐI U KHI N KHÓA VÀ GIAO TH C M T MÃ
12.1 Đi u khi n khóa
12.1.1 T ng quan v đi u khi n ka
C ch m t mã đ m b o hi u qu b o m t thông tin v i đi u ki n gi i quy t đ cơ ế ế ượ
i toán v đi u khi n khóa. Cng ta th y, trong h m t mã c n ph i s d ng khóa
m t (ngo i tr hàm băm). Chi u i ka thì ph i đ l n, b n thân ka cũng ph i
đ c ch n l a ng u nhn pn b đ u t không gian khóa. N u đ m b o đ cượ ế ượ
đi u ki n này thì s tránh đ c t n công đ n gi n nh t, nh trên c s d đoán khóa ượ ơ ư ơ
m t hay trên c s véc c n khóa. Khi mà chi u dài khóa không đ l n thì h m t dù có ơ
ph c t p đ n đâu cũng không th đ m b o đ c đ an toàn cao. S d ng thu t toán ế ượ
m t mã an toàn đi u c n thi t, nh ng ch a đ đ đ m b o đ an toàn cao c a h ế ư ư
m t.
Thông th ng thì thám th ng t n công lên h th ng khóa h n t n ng tr cườ ườ ơ
ti p n thu t toán c a h m t. Cho nên đi u khi n h th ng khóa m t thành ph nế
quan tr ng xác đ nh đ c đ an toàn c a h m t s d ng. ượ
Đi u khi n khóa trong h m t g m c ch c năng sau:
T o ra khóa m t mã;
Phân ph i và ch ng th c khóa m t;
Ch ng th c ka công c ng;
S d ng ka;
B o qu n khóa;
Thay th khóa;ế
H y khóa;
a ka;
M t trong c ch c năng (bài toán) trên ph i đ c gi i quy t hi u qu trên t t c ượ ế
c giai đo n c a chu kỳ s ng khóa. Th i gian s ng c a khóa đ c chia ra làm 2 lo i: ượ
i h n ng n h n. Đi u khi n khóac m c đích sau:
Ngăn ch n đ c vi c s d ng khóa m t và khóang khai b t h p pp. ượ
Ch ng l i m i đe d a t n h i đ n khóa m t và t n h i đ n ch ng th c khóa ế ế
ng khai khóa m t.
T o khóa. Vi c t o khóa cho h m t b t đ i x ng đ c th c hi n sao cho đ m b o ượ
đ c c tính ch t c a toán h c đ ng th i ka ph i đ c l a ch n ng u nhiên tượ ượ
t p h p khóa r t l n, t p h p này cũng có nh ng tính ch t toán h c c đ nh (chú ý
r ng trong m t s h m t b t đ i x ng quá trình l a ch n khóa có th ch n ng u nhiên
và phân b đ u trên c s t p h p khóa có th , t c là không có m t s tính toán nào v ơ
tính ch t toán h c, m c d u trong h m t b t đ i x ng s d ng các tham s , c
tham s y c n có nh ng nh ch t toán h c nh t đ nh). Ch t l ng khóa m t trong h ượ
m t đ i x ng lày bít ng u nhiên v i chi u dài khóa cho tr c mà không c n tính toán ướ
b t kỳ m t tính ch t toán h c o. Nguyên t c c b n đ t o khóa là l a ch n đ u trên ơ
toàn b không gian khóa (t p h p có th c a khóa). Vi c t o khóa có ch t l ng có th ượ
s d ng m t trong các ph ng pháp sau: 1) S d ng ch ng trình v i vi c ng d ng ươ ươ
thu t toán bi n đ i ng u nhiên ; 2) S d ng thi t b đi n t v i s h tr b c m bi n ế ế ế
nhi u.
Phân b khóa m t mã d a trên các quy t t đ c bi ts đ . Khi th c hi n bài toán ơ
y s d ng kênh m t, các thu t toán m t b o v thông tin khóa (m t khóa)
c giao th c chuy n ka theo kênh m .
Ch ng th c khóa.khóa m t hay khóa công khai, h m t tr c khi b t đ u ho t ướ
đ ng thì các khóa y ph i đ c ch ng nh n, t c là xác đ nh đ c ai là ch c a khóa. ượ ượ
S d ng khóa- t c là ng d ng ka đ i v i vi c th c hi n h m t c th v i m c
đích b o v và/ho c ch ng nh n thông tin, cũng nh c th c ch ký c a ng i dùng. ư ườ
B o qu n khóa. Vi c b o qu n khóa đ c th c hi n không ng ph ng pháp ượ ươ
m t mã, tuy nhiên có th ng ph ng pp mã hóa nh c ch ph b o v khóa. Khóa ươ ư ơ ế
m t c n l u trong thi t b d i d ng m t đ tránh tr ng h p đ c sao chép. ư ế ướ ườ
Không ch l u khóa d i d ng b n mã mà nh ng thông tin c a khóa cũng nh thông tin ư ướ ư
ng i s d ng ka cũng n l u d i d ng m t mã.ườ ư ướ
Thay th khóa vi c thay th khóa th c hi n sau khi th i h n ho t đ ng c a khóaế ế
k t thúc. Ví d , khóa phiên đ c thay th sau khi k t thúc phiên giao d ch. M i khóa nênế ượ ế ế
m t chu kỳ nh t đ nh, tránh tr ng h p thám đã m ra đ c khóa tình ta ườ ượ
không bi t. Thay th khóa liên quan đ n vi c b o đ m xóa khóa cũ và th c hi n mã v iế ế ế
khóa m i.
H y b khóa – Đây là q trình ng ng ho t đ ng c a khóa, trong tr ng h p khóa b ườ
t n công trong khi khóa v n còn th i h n ho t đ ng. Khi h y b khóa công khai thì c n
ph i tng báo choc thành viên h m t.
a khóa- Vi c xóa khóa c n đ m đ c không th khôi ph c thông tin khóa v i b t ượ
kỳ v t l u nào không th b đánh c p trong quá trình xóa. ư
12.1.2 S đ t o khóa chu n ANSI X9.17ơ
S đ chu n ANSI ng đ t o ra s ng u nhiên, trên c s ng d ng thu t toánơ ơ
m t . S đ đ c miêu t trên hình ơ ượ 12.1, đây E là mà thu t toán mã hóa DES, K là
khóa kh i t o hay còn g i khóa châm ngòi, V 0 là giá tr kh i t o m t, T i là data time,
Ri khóa phiên. Và ràng đây ta th ch n b t k m t thu t toán kh i o
khác v d nh chu n Liên , Blowfish hay AES. Th t khóa phiên đ c hình ư ượ
thành t ng ng v i ph ng tnh sau:ươ ươ
)))(( iiKKi VTEER =
.
Giá tr m i c a Vi+1 đ c xác đ nh nh sau: ượ ư
))((
1iiKKi RTEEV =
+
E
K
T
i
V
i
E
K
E
K
V
i+1
R
i
nh 12.1. S đ t o khóa chu n ANSI X9.17ơ
Có th t o V 0 nh sau. Ch n Vim t giá tr kh i t o nào đó, ví d Vư i=Ti+j, j là s
o đó. Th c hi n quá trình t o khóa nh trên và ta thu đ c V ư ượ i+1, và ta ch n V0=Vi+1. Và
đ nâng cao tính an toàn, chúng ta có th s d ng các khoá tham gia o hàm mã hóa là
khác nhau.
12.1.3 S đ phân ph i khóaơ
Cng ta đã m hi u v hóa đ i x ng b t đ i x ng. Vi c dùng m t mã b t
đ i x ng thì không c n đ n s trao đ i khóa m t, kh c ph c đ c nh c đi m c a mã ế ượ ượ
đ i x ng, th nh ng mã khóa b t đ i x ng l i có nh c đi m là t c đ ch m r t nhi u ế ư ượ
l n so v i mã đ i x ng. Ngoài ra khi s d ng khóa cũng c n ph i ch ng th c khóa y
c a ai đ tránh tr ng h p k gi danh. B i v y n u nh có m t ph ng pháp trao ườ ế ư ươ
đ i khóa m t hi u qu thì s kh c ph c đ c nh c đi m c a mât đ i x ng. Và ượ ượ
ch ngy cng ta m hi u các v n đ y.ươ
Đ trao đ i khóa gi a c bên th trao đ i khóa tr c ti p qua kênh m t, ho c ế
ng giao th c th a thu n khóa ho c s đ phân ph i khóa. ơ
Cng ta phân bi t gi a s đ phân ph i khóa giao th c th a thu n khóa. S đ ơ ơ
phân ph i c u trúc t ch c h th ng đi u khi n khóa, còn giao th c t h p c
thao tác (l nh) gi a hai hay nhi u bên tham gia, nh m đ m b o gi a h nh thành khóa
m t chung. Cng ta th y v i giao th c phân ph i khóa thì khóa đ c trao đ i tr c ti p ượ ế
gi a hai hay nhi u bên tham gia. Cònng s đ thì thông qua trung tâm phân ph i khóa. ơ
Trong phân l n ng i dùng h m t đ i x ng th ng thì h th ng trao đ i b ng s ườ ườ ườ
d ng trung tâm phân ph i khóa tin c y. Còn đa s ng i s d ng h m t b t đ i x ng ườ
h th c hi n pn ph i khóa nh đ n trung tâm ch ng th c ka. ế
12.1.4 Trung tâm phân ph i khóa
i toán phân ph i ka c c k quan tr ng. y gi chúng ta đi tìm hi u m t s
ph ng pháp phân ph i hi u qu .ươ
Gi s trong m t s đ đ n gi n hai bên liên h v i nhau, m i phiên giao d ch ơ ơ
th s d ng m t khóa. N u nh h th ng m t có N thành viên trong m ng thì c n ế ư
ph i phân b khóa gi a các thành viên s d ng ít nh t N(N-1)/2 khóa. Khi s
l ng N thành viên l n thì đây tr nên i toán nan gi i. Đ gi i quy t v n đ nàyượ ế
ng i ta đ a ra ng lo t gi i pháp, mà m t trong các gi i pháp ph c t p nh t t nườ ư
ti n nh t là ng kênh m t.
Trung tam phan phoi khoa
A
1
A
2
A
i
A
j
A
N
K1
K2KiKj
KN
E
Ki
(K
ij
)E
Kj
(K
ij
)
Kenh mat
nh 12.2. S đ phân ph i khóa c a Trungmơ
M t trong c ph ng án đ c đ a ra dùng trung tâm phân ph i khóa, đây m t ươ ượ ư
ph n chung c a m ng. Trung tâm phân ph i cung c p cho t t c c thành viên các khóa
m t khác nhau Ki (i=1,2,…,N), c thành viên s d ng khóa này ch liên l c v i trung
m mà thôi. Khóa m t chung gi a hai bên i và j đ c th c hi n nh sau (nh 12.2). n ượ ư
Ai mu n liên k t v i bên A ế j, thì Ai chuy n đ n trung m khóa liên h c a minh k ế ij,
khóa y đ c a b ng kượ i. Trung m nh n đ c b n mã t A ư i s gi i mã b ng
khóa ki, nh n th y ch th c n liên k t A ế i v i Aj, thì trung tâm th c hi n mã hóa k ij b ng
kj, sau đó chuy n b n này đ n A ế j. Aj gi i b ng khóa k j c a nh nh n đ c ượ
khóa kij. Sau b c liên k t m t y thì m i vi c sau đó có th th c hi n theo kênh côngướ ế
c ng. Trong s đ y chúng ta th y ch c n s d ng N khóa. ơ
Cng ta th y r ng vi c l a ch n khóa m t gi a các n cũng ph i tuân th các
nguyên t c nêu ra trên, nên đùa h i các bên tham gia c n có nh ng kinh nghi m và các
thi t b chuyên nghi p đ t o ra khóa phn. M t trong các gi i pháp đ a ra là hai bên Aế ư i
và Aj mu n liên k t v i nhau thì hai bên yêu c u trung m phân ph i khóa phiên. Trung ế
m t o ra khóa kij chuy n đ n A ế i và Aj d i d ng b n mã b ng khóa kướ i kj t ngươ
ng.
N u nh s l ng thành viên trong m ng quá l n thì trung m có th th c hi n theoế ư ượ
hình th c p, t c là có m t trung tâm cnh c trung tâm v tinh c a nó.
Khi t o ra khóa, trung tâm cũng c n có nh ng thông tin đi kèm, nh ng thông tin đó có
th là:
Th i gian t o ra ka;
Ki u khóa và tên g i;