
7.1. Gi s h: X ả ử →Y là hàm hash. V i y b t kỳ ớ ấ ∈Y, cho:
h-1(y) = { x: h(x) = y}
và ký hi uệsy = | h-1(y)|.
Đ nh nghĩaịN =

ch ng 8ươ
phân ph i và tho thu n v khoáố ả ậ ề
8.1 Gi i thi u:ớ ệ
Chúng ta đã th y r ng, h th ng mã khoá công khai có u đi m h n hấ ằ ệ ố ư ể ơ ệ
th ng mã khoá riêng ch không c n có kênh an toàn đ trao đ i khoá m t.ố ở ỗ ầ ể ổ ậ
Tuy nhiên, đáng ti c là h u h t các h th ng mã khoá công khai đ u ch mế ầ ế ệ ố ề ậ
h n h mã khoá riêng, ch ng h n nh DES. Vì th th c t các h mã khoáơ ệ ẳ ạ ư ế ự ế ệ
riêng th ng đ c dùng đ mã các b c đi n dài. Nh ng khi đó chúng ta l i trườ ượ ể ứ ệ ư ạ ở
v v n đ trao đ i khoá m t.ề ấ ề ổ ậ
Trong ch ng này, chúng ta s th o lu n vài bi n pháp thi t l p cácươ ẽ ả ậ ệ ế ậ
khoá m t. Ta phân bi t gi a phân ph i khoá và tho thu n v khoá. Phân ph iậ ệ ữ ố ả ậ ể ố
khoá đ c đ nh nghĩa là c ch m t nhóm ch n khoá m t và sau đó truy n nóượ ị ơ ế ộ ọ ậ ề
đ n các nhóm khác. ếCòn tho thu n khoá là giao th c đ hai nhóm (ho cả ậ ứ ể ặ
nhi u h n) liên k t v i nhau cùng thi t l p m t khoá m t b ng cách liên l cề ơ ế ớ ế ậ ộ ậ ằ ạ
trên kênh công khai. Trong s đ tho thu n khoá, giá tr khoá đ c xác đ nhơ ồ ả ậ ị ượ ị
nh hàm c a các đ u vào do c hai nhóm cung c p.ư ủ ầ ả ấ
Gi s , ta có m t m ng không an toàn g m n ng i s d ng. Trong m tả ử ộ ạ ồ ườ ử ụ ộ
s s đ , ta có ng i u quy n đ c tín nhi m (TA) đ đáp ng nh ng vi cố ơ ồ ườ ỷ ề ượ ệ ể ứ ữ ệ
nh xác minh danh tính c a ng i s d ng, ch n và g i khoá đ n ng i sư ủ ườ ử ụ ọ ử ế ườ ử
d ng ... Do m ng không an toàn nên c n đ c b o v tr c các đ i ph ng.ụ ạ ầ ượ ả ệ ướ ố ươ
Đ i ph ng (Oscar) có th là ng i b đ ng, có nghĩa là hành đ ng c a anh taố ươ ể ườ ị ộ ộ ủ
ch h n ch m c nghe tr m b c đi n truy n trên kênh. Song m t khác, anhỉ ạ ế ở ứ ộ ứ ệ ề ặ
ta có th là ng i ch đ ng. M t đ i ph ng ch đ ng có th làm nhi u hànhể ườ ủ ộ ộ ố ươ ủ ộ ể ề
vi x u ch ng h n:ấ ẳ ạ
1. Thay đ i b c đi n mà anh ta nh n th y là đang đ c truy n trên m ng.ổ ứ ệ ậ ấ ượ ề ạ
2. C t b c đi n đ dùng l i sau này.ấ ứ ệ ể ạ
3. C g ng gi d ng làm nh ng ng i s d ng khác nhau trên m ng.ố ắ ả ạ ữ ườ ử ụ ạ
M c tiêu c a đ i ph ng ch đ ng có th là m t trong nh ng cái nêu sau đây:ụ ủ ố ươ ủ ộ ể ộ ữ
1. L a U và V ch p nh n khoá “không h p lê” nh khoá h p l (khoá khôngừ ấ ậ ợ ư ợ ệ
h p l có th là khoá cũ đã h t h n s d ng, ho c khoá do đ i ph ngợ ệ ể ế ạ ử ụ ặ ố ươ
ch n).ọ
2. Làm U ho c V tin r ng, h có th trao đ i khoá v i ng i kia khi h khôngặ ằ ọ ể ổ ớ ườ ọ
có khoá.
M c tiêu c a phân ph i khoá và giao th c tho thu n khoá là, t i th i đi mụ ủ ố ứ ả ậ ạ ờ ể
k t thúc th t c, hai nhóm đ u có cùng khoá K song không nhóm khác nào bi tế ủ ụ ề ế
đ c (tr kh năng TA). Ch c ch n, vi c thi t k giao th c có ki u an toànượ ừ ả ắ ắ ệ ế ế ứ ể
này khó khăn h n nhi u tr c đ i ph ng ch đ ng.ơ ề ướ ố ươ ủ ộ
Tr c h t ta xem xét ý t ng v s phân ph i khoá tr c trong m c 8.2.ướ ế ưở ề ự ố ướ ụ
V i m i c p ng i s d ng {U,V}, TA ch n m t khoá ng u nhiên Kớ ỗ ặ ườ ử ụ ọ ộ ẫ U,V=KV,U
và truy n “ngoài d i” đ n U và V trên kênh an toàn. (Nghĩa là, vi c truy nề ả ế ệ ề

khoá không x y ra trên m ng do m ng không an toàn ). Bi n pháp này g i làả ạ ạ ệ ọ
an toàn không đi u ki n song nó đòi h i m t kênh an toàn gi a TA và nh ngề ệ ỏ ộ ữ ữ
ng i s d ng trên m ng. Tuy nhiên đi u quan tr ng h n là m i ng i ph iườ ử ụ ạ ề ọ ơ ỗ ườ ả
l u n -1 khoá và TA c n truy n t ng c ng ư ầ ề ổ ộ
( )
n
2
khoá m t cách an toàn (đôi khiộ
bài toán này đ c g i là bài toán nượ ọ 2). Th m chí v i m t s m ng t ng đ iậ ớ ộ ố ạ ươ ố
nh , giá đ gi i quy t v n đ này là khá đ t và nh v y gi i pháp hoàn toànỏ ể ả ế ấ ề ắ ư ậ ả
không th c t .ự ế
Trong ph n 8.2.1, chúng ta th o lu n m t s đ phân ph i tr c khoáầ ả ậ ộ ơ ồ ố ướ
an toàn không đi u ki n khá thú v do Blom đ a ra. S đ cho phép gi mề ệ ị ư ơ ồ ả
l ng thông tin m t mà ng i s d ng c n c t gi trên m ng. M c 8.2.2ượ ậ ườ ử ụ ầ ấ ữ ạ ụ
cũng đ a ra m t s đ phân ph i tr c khoá an toàn v m t tính toán d a trênư ộ ơ ồ ố ướ ề ặ ự
bài toán logarithm r i r c.ờ ạ
M t bi n pháp th c t h n là TA phân ph i khoá tr c ti p. Trong s đòộ ệ ự ế ơ ố ự ế ơ
nh v y, TA làm vi c nh m t ng i ch khoá (key server). TA chia khoáư ậ ệ ư ộ ườ ủ
m t KậU cho m i ng i s d ng U trên m ng. ỗ ườ ử ụ ạ Khi U mu n liên l c v i V, cô taố ạ ớ
yêu c u TA cung c p khoá cho phiên làm vi c (session key). ầ ấ ệ TA t o ra khoáạ
session K và g i nó d i d ng mã hoá cho U và V đ gi i mã. H th ng mãử ướ ạ ể ả ệ ố
Kerboros mô t trong m c 8.3 là d a trên bi n pháp này.ả ụ ự ệ
N u nh c m th y v n đ phân ph i khoá thông qua TA không th c tế ư ả ấ ấ ề ố ự ế
ho c không mong mu n thì bi n pháp chung là dùng giao th c tho thu nặ ố ệ ứ ả ậ
khoá. Trong giao th c tho thu n khoá, U và V k t h p ch n m t khoá b ngứ ả ậ ế ợ ọ ộ ằ
cách liên l c v i nhau trên kênh công khai. ý t ng đáng chú ý này do Martinạ ớ ưở
và Diffie đ a ra đ c l p v i Merkle. đây mô t vài giao th c tho thu nư ộ ậ ớ ở ả ư ả ậ
khoá ph thông h n. Giao th c đ u tiên c a Diffie và Hellman đ c c i ti nổ ơ ứ ầ ủ ượ ả ế
đ ng phó v i các đ i ph ng tích c c đ c nêu trong ph n 8.4.1. Hai giaoể ứ ớ ố ươ ự ượ ầ
th c đáng quan tâm n a cũng đ c xem xét: s đ MTI nên trong 8.4.2 và sứ ữ ượ ơ ồ ơ
đ Girault nêu trong m c 8.4.3ồ ụ
8.2 Phân ph i khoá tr cố ướ
theo ph ng pháp c b n, TA t o ra ươ ơ ả ạ
2
n
khoá và đ a m i khoa cho duyư ỗ
nh t m t c p ng i s d ng trong m ng có n ng i s d ng. Nh đã nêu ấ ộ ặ ườ ử ụ ạ ườ ử ụ ư ở
trên, ta c n m t kênh an toàn gi a TA và m i ng i s d ng đ truy n đi cácầ ộ ữ ỗ ườ ử ụ ể ề
khoá này. Đây là m t c i ti n quan tr ng vì s kênh an toàn c n thi t gi m tộ ả ế ọ ố ầ ế ả ừ
2
n
xu ng còn n. Song n u n l n, gi i pháp này cũng không th c t c vố ế ớ ả ự ế ả ề
l ng thông tin c n truy n đi an toàn l n l ng thông tin mà m i ng i sượ ầ ề ẫ ượ ỗ ườ ử
d ng ph i c t gi an toàn (nghĩa là các khoá m t c a n-1 ng i s d ngụ ả ấ ữ ậ ủ ườ ử ụ
khác).

nh v y, đi u c n quan tâm là c g ng gi m đ c l ng thông tin c nư ậ ề ầ ố ắ ả ượ ượ ầ
truy n đi và c t gi trong khi v n cho phép m i c p ng i s d ng U và V cóề ấ ữ ẫ ỗ ặ ườ ử ụ
kh năng tính toán khoá m t Kả ậ U,V. M t s đ u vi t h n tho mãn yêu c uộ ơ ồ ư ệ ơ ả ầ
này là s đ phân ph i khoá tr c c a Blom.ơ ồ ố ướ ủ
8.2.1 S đ Blomơ ồ .
Nh trên, gi thi t r ng có m t m ng gôm n ng i s d ng. Đ thu nư ả ế ằ ộ ạ ườ ử ụ ể ậ
ti n, gi s r ng các khoá đ c ch n trên tr ng s h u h n Zệ ả ử ằ ượ ọ ườ ố ữ ạ P, p ≥ n là số
nguyên t . Cho k là s nguyên, 1 < k < n -2. Giá tr k đ h n ch kích th cố ố ị ể ạ ế ướ
l n nh t mà s đ v n duy trì đ c m t đ . Trong s đ Blom, TA s truy nớ ấ ơ ồ ẫ ượ ậ ộ ơ ồ ẽ ề
đi k +1 ph n t c a Zầ ử ủ P cho m i ng i s d ng trên kênh an toàn (so v i n -1ỗ ườ ử ụ ớ
trong s đ phân ph i tr c c b n). M i c p ng i s d ng U và V s cóơ ồ ố ướ ơ ả ỗ ặ ườ ử ụ ẽ
kh năng tính khoá KảU,V = KV,U nh tr c đây. Đi u ki n an toàn nh sau: t pư ướ ề ệ ư ậ
b t kì g m nhi u nh t k ng i s d ng không liên k t t {U, V} ph i khôngấ ồ ề ấ ườ ử ụ ế ừ ả
có kh năng xác đ nh b t kì thông tin nào v Kả ị ấ ề U,V. (chú ý r ng, ta đang xét sằ ự
an toàn không đi u ki n).ề ệ
Tr c h t, xét tr ng h p đ c bi t c a s đ Blom khi k =1. đây TAướ ế ườ ợ ặ ệ ủ ơ ồ ở
s truy n đi 2 ph n t c a Zẽ ề ầ ử ủ P cho m i ng i s d ng trên kênh an toàn vàỗ ườ ử ụ
ng i s d ng riêng W s không th xác đ nh đ c b t kì thông tin nào vườ ử ụ ẽ ể ị ượ ấ ề
KU,V n u Wế≠U,V. S đ Blom đ c đ a ra trong hình 8.1. Ta s minh ho sơ ồ ượ ư ẽ ạ ơ
đ Blom v i k = 1 trong ví d sau:ồ ớ ụ
Hình 8.1: S đ phân ph i khoá c a Blom (k =1)ơ ồ ố ủ
1.S nguyên t p công khai, còn v i m i ng i s d ng U, ph n t rố ố ớ ỗ ườ ử ụ ầ ử U ∈ ZP là
công khai. Ph n t rầ ử U ph i khác bi t.ả ệ
2.Ta ch n 3 ph n t ng u nhiên a, b, c ọ ầ ử ẫ ∈ ZP (không c n khác bi t) và thi tầ ệ ế
l p đa th cậ ứ

8.3.Kerboros
trong các ph ng pháp phân ph i tr c khoá xem xét trong các ph nươ ố ướ ầ
tr c đó, m i c p ng i s d ng c n tính m t khoá c đ nh. N u dùng cùngướ ỗ ặ ườ ử ụ ầ ộ ố ị ế
m t khoá trong m t th i gian dài s d b t n th ng, vì th ng i ta th ngộ ộ ờ ẽ ễ ị ổ ươ ế ườ ườ
thích dùng ph ng pháp tr c ti p trong đó khoá c a phiên lamà vi c m i chươ ự ế ủ ệ ớ ỉ
đ c t o ra m i khi hai ng i s d ng mu n liên l c v i nhau (g i là tínhượ ạ ỗ ướ ử ụ ố ạ ớ ọ
t i m i c a khoá).ươ ớ ủ
N u dùng phân ph i khoá tr c ti p thì ng i s d ng m ng không c nế ố ự ế ườ ử ụ ạ ầ
ph i l u các khoá khi mu n liên l c v i nh ng ng i s d ng khác (Tuyả ư ố ạ ớ ữ ườ ử ụ
nhiên m i ng i đ u đ c chia s khoá v i TA). Khoá c a phiên làm vi cỗ ườ ề ượ ẻ ớ ủ ệ
(khóa session) s đ c truy n đi theo yêu c u c a TA. Đó là s đáp ng c aẽ ượ ề ầ ủ ự ứ ủ
TA đ đ m b o khoá t i.ể ả ả ươ
Korobos là h th ng d ch v khóa ph c p d a trên mã khoá riêng.ệ ố ị ụ ổ ậ ự
Trong ph n này s đ a ra m t t ng quan v giao th c phát hành khoá sessionầ ẽ ư ộ ổ ề ứ
trong Korobos. M i ng i s d ng U s chia s khoá DES m t Kỗ ườ ử ụ ẽ ẻ ậ U cho TA.
Trong phiên b n g n đây nh t c a Korobos (version 5), m i thông báo c nả ầ ấ ủ ọ ầ
truy n đ c mã hoá theo ch đ xích kh i (CBC) nh mô t trong 3.4.1ề ượ ế ộ ố ư ả
Nh trong m c 8.2.2, ID(U) ch thông tin đ nh danh công khai cho U. Khiư ụ ỉ ị
có yêu c u khoá session g i đ n TA, TA s t o ra m t khoá session m i ng uầ ử ế ẽ ạ ộ ớ ẫ
nhiên K. Cũng v y, TA s ghi l i th i gian khi có yêu c u T và ch ra th i gianậ ẽ ạ ờ ầ ỉ ờ
(th i gian t n t i) L đ K có hi u l c. Đi u đó có nghĩa là khoá K ch có hi uờ ồ ạ ể ệ ự ề ỉ ệ
l c t T đ n T+L. T t c thông tin này đ u đ c mã hoá và đ c truyênôngự ừ ế ấ ả ề ượ ượ
dân đ n U và V. Tr c khi đi đ n các chi ti t h n n a, ta s đ a ra giao th cế ướ ế ế ơ ữ ẽ ư ứ
trong hình 8.4. thông tin đ c truy n đi trong giao th c đ c minh ho nhượ ề ứ ượ ạ ư
sau:
Hình 8.4: Truy n khoá session trong Korobos.ề
1.
Ta s gi i thích đi u s p s a x y ra trong các b c c a giao th c. M cẽ ả ề ắ ử ả ướ ủ ứ ặ
dù không có ch ng minh hình th c r ng Kerobos là an toàn tr c đ i th tíchứ ứ ằ ướ ố ủ
c c, song ít nh t ta cũng có th đ a ra lí do nào đó v các đ c đi m c a giaoự ấ ể ư ề ặ ể ủ
th c.ứ
Nh nêu trên, TA t o ra K, T và L trong b c 2. Tronư ở ạ ướ g b c 3, thôngướ
tin này cùng v i ID(V) đ c mã hoá b ng khoá Kớ ượ ằ U (đ c U và TA chia s ) đượ ẻ ể
t o l p mạ ậ 1. C hai b c đi n đã mã hoá này đ c g i đ n U.ả ứ ệ ượ ử ế
U có th dùng khoá c a mình gi i mã mể ủ ả 1, nh n đ c K, T và L. Cô sậ ượ ẽ
xác minh xem th i gian hi n t i có n m trong kho ng T đ n T + L hay không.ờ ệ ạ ằ ả ế
Cô cũng ki m tra khoá session K đ c phát ra cho liên l c gi a cô và V b ngể ượ ạ ữ ằ
cách xác minh thông tin ID(V) đã gi i mã t mả ừ 2.

