SlideShare a Scribd company logo
1 of 168
Download to read offline
1
§Âči hĂ€c quĂšc gia h” nĂ©i
Khoa c«ng nghÖ
Phan §×nh DiÖu
LĂœ thuyÕt mËt m·
&
an to”n th«ng tin
NXB ÂźÂči hĂ€c quĂšc gia h” nĂ©i - 2002
2
LĂœ thuyÕt mËt m·
&
An to”n th«ng tin
3
LĂœ thuyÕt mËt m·
&
An to”n th«ng tin
Phan §×nh DiÖu
§Âči hĂ€c QuĂšc gia H” NĂ©i
Khoa C«ng nghÖ- §HQG H” nĂ©i
1
NĂ©i dung
LĂȘi mĂ« ¼Çu.................................................................4
Ch−¬ng 1
GiĂ­i thiÖu chung vÒ mËt m·......8
1.1. SÂŹ lĂčoc lÞch sö vÒ khoa mËt m·.......................................... 8
1.2. HÖ thĂšng mËt m·. M· theo khĂši v” m· theo dßng ........ 12
1.3. MËt m· khĂŁa ŸÚi xĂžng v” mËt m· cĂŁ khĂŁa c«ng khai.... 15
1.4. Cžc b”i tožn an to”n th«ng tin ........................................... 16
1.5. Thžm m· v” tÝnh an to”n cña cžc hÖ mËt m·................... 18
Ch−¬ng 2.
CÂŹ sĂ« tožn hĂ€c cña lĂœ thuyÕt mËt m·................20
2.1.SĂš hĂ€c cžc sĂš nguyÂȘn.ThuËt tožn Euclide.......................... 20
2.2. Xžc suÊt v” thuËt tožn xžc suÊt......... ............................... 31
2.3. §é phĂžc tÂčp tÝnh tožn......................................................... 36
2.4.SĂš nguyÂȘn tĂš. Ph©n tÝch th”nh thĂ”a sĂš.L«garit rĂȘi rÂčc.... 42
2
Ch−¬ng 3
Cžc hÖ mËt m· khož ŸÚi xĂžng ...... 55
3.1. Cžc hÖ mËt m· cĂŠ ÂźiÓn........................................................ 55
3.2. Thžm m· ŸÚi vĂ­i cžc hÖ mËt m· cĂŠ ÂźiÓn ......................... 63
3.3. MËt m· theo dßng v” cžc d·y sĂš gi¶ ngÉu nhiÂȘn ...........72
3.4. HÖ mËt m· chuÈn DES ........................................ 80
Ch−¬ng 4
Cžc hÖ mËt m· khož c«ng khai ...........92
4.1. GiĂ­i thiÖu mĂ« ¼Çu.................................................................92
4.1. HÖ mËt m· khož c«ng khai RSA ........................................97
4.2. HÖ mËt m· khož c«ng khai Rabin.................................... 101
4.3. HÖ mËt m· khož c«ng khai ElGamal................................103
4.4. Cžc hÖ mËt m· dĂča trÂȘn cžc b”i tožn NP-¼Çy Ÿñ............107
4.5. Cžc hÖ mËt m· xžc suÊt khož c«ng khai...........................111
Ch−¬ng 5
B”i tožn xžc nhËn v” ChĂ· kĂœ ÂźiÖn tö......115
5.1. B”i tožn xžc nhËn v” sÂŹ ŸÄ chĂ· kĂœ................................ 115
5.2. SÂŹ ŸÄ chĂ· kĂœ ElGamal v” chuÈn chĂ· kĂœ ÂźiÖ tö.......... 118
5.3. H”m bšm v” chĂ· kĂœ......................................................... 122
5.4. MĂ©t sĂš sÂŹ ŸÄ chĂ· kĂœ khžc............................................... 127
5.5.ChĂ· kĂœ kh«ng phñ ¼Þnh ¼−üc&kh«ng chĂši bĂĄ ¼−üc 131
3
Ch−¬ng 6
Cžc sÂŹ ŸÄ x−ng danh v” xžc nhËn danh tÝnh 136
6.1. VÊn ¼Ò x−ng danh..............................................................136
6.2. SÂŹ ŸÄ x−ng danh Schnorr..................................................137
6.3. SÂŹ ŸÄ x−ng danh Okamoto................................................140
6.4. SÂŹ ŸÄ x−ng danh Guillou-Quisquater..............................142
6.5. Giao thĂžc Feige-Fiat-Shamir...............................................145
6.6. PhÐp chÞng minh kh«ng lé tri thÞc..................................147
Ch−¬ng 7
VÊn ¼Ò ph©n phĂši khož v” tho¶ thuËn khož 152
7.1. Qu¶n trÞ khož trong cžc mÂčng truyÒn tin.........................152
7.2. MĂ©t sĂš hÖ ph©n phĂši khož................................................153
7.3. Trao ŸÊi khož v” tho¶ thuËn khož....................................157
ChĂł dÉn vÒ t”i liÖu tham kh¶o..................................................163
4
LĂȘi mĂ« ¼Çu
TĂ” khi con ng−ĂȘi cĂŁ nhu cÇu trao ŸÊi th«ng tin, th− tĂ” cho
nhau th× nhu cÇu giĂ· bÝ mËt v” b¶o vÖ tÝnh riÂȘng t− cña nhĂ·ng th«ng
tin, th− tĂ” ¼−üc trao ŸÊi Ÿã cĂČng nÈy sinh. H×nh thĂžc th«ng tin ¼−üc
trao ŸÊi phĂŠ biÕn v” sĂ­m nhÊt l” d−íi dÂčng cžc všn b¶n, ¼Ó giĂ· bÝ
mËt cña th«ng tin ng−ĂȘi ta Ÿ· sĂ­m nghÜ ¼Õn cžch che dÊu nĂ©i dung
cžc všn b¶n b»ng cžch biÕn dÂčng cžc všn b¶n Ÿã ¼Ó ng−ĂȘi ngo”i
kh«ng ŸÀc hiÓu ¼−üc, ŸÄng thĂȘi cĂŁ cžch kh«i phĂŽc lÂči nguyÂȘn dÂčng
ban ¼Çu ¼Ó ng−ĂȘi trong cuĂ©c vÉn ŸÀc hiÓu ¼−üc; theo cžch gĂ€i ng”y
nay th× dÂčng biÕn ŸÊi cña všn b¶n ¼−üc gĂ€i l” mËt m· cña všn b¶n,
cžch lËp mËt m· cho mĂ©t všn b¶n ¼−üc gĂ€i l” phÐp lËp mËt m·, cßn
cžch kh«i phĂŽc lÂči nguyÂȘn dÂčng ban ¼Çu cña všn b¶n tĂ” b¶n mËt m·
¼−üc gĂ€i l” phÐp gi¶i m·. PhÐp lËp mËt m· v” phÐp gi¶i m· ¼−üc
thĂčc hiÖn nhĂȘ mĂ©t ch×a khož riÂȘng n”o Ÿã m” chØ nhĂ·ng ng−ĂȘi trong
cuĂ©c ¼−üc biÕt, sau Ÿ©y ta sÏ gĂ€i l” khož mËt m·. Ng−ĂȘi ngo”i cuĂ©c
kh«ng ¼−üc biÕt khož mËt m·, nÂȘn dĂŻ cĂŁ "šn cŸp" ¼−üc b¶n mËt m·
trÂȘn ¼−ĂȘng truyÒn tin, vÒ nguyÂȘn tŸc cĂČng kh«ng thÓ gi¶i m· ¼Ó
hiÓu ¼−üc nĂ©i dung cña všn b¶n truyÒn Âźi.
HiÓn nhiÂȘn, tiÂȘu chuÈn cña mĂ©t b¶n mËt m· l” tÂčo ¼−üc tÝnh
bÝ mËt cho všn b¶n; v× vËy khži niÖm bÝ mËt l” khži niÖm cĂšt lĂąi nhÊt
ŸÚi vĂ­i mĂ©t lĂœ thuyÕt vÒ mËt m·. CĂŁ thÓ cĂŁ mĂ©t ¼Þnh nghÜa khoa hĂ€c
cho khži niÖm bÝ mËt hay kh«ng? §· cĂŁ nhiÒu cžch tiÕp cËn ¼Ó t×m
hiÓu nĂ©i dung cña khži niÖm bÝ mËt, nh−ng mĂ©t ¼Þnh nghÜa khoa
hĂ€c, hay hÂŹn nĂ·a, mĂ©t ¼Þnh nghÜa tožn hĂ€c cho khži niÖm Ÿã th×
ch−a cĂŁ. MĂ©t cžch tiÕp cËn khž phĂŠ biÕn l” gŸn khži niÖm bÝ mËt vĂ­i
khži niÖm "ngÉu nhiÂȘn", nÕu mĂ©t všn b¶n rĂą cĂŁ mĂ©t nĂ©i dung xžc
¼Þnh th× ÂźiÒu ta mong muĂšn l” b¶n mËt m· cña nĂŁ ph¶i l” mĂ©t b¶n
gĂ„m cžc kĂœ tĂč ¼−üc sŸp xÕp hçn Ÿén, cĂŁ vÎ nh− ngÉu nhiÂȘn khiÕn
5
ng−ĂȘi ngo”i nh×n v”o kh«ng thÓ xžc ¼Þnh ¼−üc nĂ©i dung cña všn
b¶n gĂšc. Tuy nhiÂȘn, nÕu "bÝ mËt" l” khži niÖm ch−a ¼Þnh nghÜa
¼−üc, th× khži niÖm "ngÉu nhiÂȘn", hay cĂŽ thÓ hÂŹn, khži niÖm "d·y bit
ngÉu nhiÂȘn", cĂČng khĂŁ ¼Þnh nghÜa nh− vËy, ta ch−a qui ¼Þnh ¼−üc
mĂ©t tiÂȘu chuÈn tožn hĂ€c ¼Ó xžc ¼Þnh mĂ©t d·y bit cĂŁ l” "ngÉu nhiÂȘn"
hay kh«ng, m” chØ mĂ­i t×m hiÓu ¼−üc mĂ©t sĂš thuĂ©c tÝnh gÇn vĂ­i
"ngÉu nhiÂȘn", dĂŻng l”m cšn cĂž ¼Ó tÂčm xžc ¼Þnh mĂ©t d·y bit cĂŁ l”
"gi¶ ngÉu nhiÂȘn" theo nghÜa cĂŁ cžc thuĂ©c tÝnh Ÿã hay kh«ng m” th«i.
TĂ” mÊy thËp niÂȘn gÇn Ÿ©y, b−íc v”o kĂ» nguyÂȘn mžy tÝnh,
cĂČng nh− ŸÚi vĂ­i nhiÒu lÜnh vĂčc khžc, lÜnh vĂčc mËt m· cĂČng Ÿ· cĂŁ
nhĂ·ng chuyÓn biÕn to lĂ­n tĂ” giai ÂźoÂčn mËt m· truyÒn thĂšng sang
giai ÂźoÂčn mËt m· mžy tÝnh; mžy tÝnh ÂźiÖn tö ¼−üc sö dĂŽng ng”y
c”ng phĂŠ biÕn trong viÖc lËp mËt m·, gi¶i mËt m·, v” nhĂ·ng chuyÓn
biÕn Ÿã Ÿ· kÝch thÝch viÖc nghiÂȘn cĂžu cžc gi¶i phžp mËt m·, biÕn
viÖc nghiÂȘn cĂžu mËt m· th”nh mĂ©t khoa hĂ€c cĂŁ ŸÚi t−üng ng”y c”ng
rĂ©ng lĂ­n v” ¼−üc sö dĂŽng cĂŁ hiÖu qu¶ trong nhiÒu phÂčm vi hoÂčt
Ÿéng cña cuĂ©c sĂšng. V× cžc nghiÖp vĂŽ chñ yÕu cña mËt m· ¼−üc
thĂčc hiÖn b»ng mžy tÝnh, nÂȘn cžc khži niÖm bÝ mËt, ngÉu nhiÂȘn cĂČng
dÇn ¼−üc "mžy tÝnh hož", v” vĂ­i sĂč ra ÂźĂȘi cña LĂœ thuyÕt vÒ Ÿé phĂžc
tÂčp tÝnh tožn v”o giĂ·a nhĂ·ng nšm 1960, cžc khži niÖm Ÿã t×m ¼−üc
mĂ©t nĂ©i dung chung cĂŁ thÓ ¼−üc nghiÂȘn cĂžu mĂ©t cžch tožn hĂ€c l”
tÝnh phĂžc tÂčp. B©y giĂȘ ta cĂŁ thÓ nĂŁi, mĂ©t b¶n mËt m· ŸÚi vĂ­i anh l”
bÝ mËt, nÕu tĂ” b¶n mËt m· Ÿã ¼Ó t×m ra b¶n rĂą anh ph¶i thĂčc hiÖn
mĂ©t tiÕn tr×nh tÝnh tožn m” Ÿé phĂžc tÂčp cña nĂŁ v−üt quž mĂ€i nšng
lĂčc tÝnh tožn (kÓ c¶ mĂ€i mžy tÝnh) cña anh; mĂ©t d·y bit cĂŁ thÓ xem l”
ngÉu nhiÂȘn , nÕu dĂča v”o mĂ©t ÂźoÂčn bit Ÿ· biÕt ¼Ó t×m mĂ©t bit tiÕp
theo cña d·y anh cĂČng ph¶i thĂčc hiÖn mĂ©t tiÕn tr×nh tÝnh tožn cĂŁ Ÿé
phĂžc tÂčp cĂčc lĂ­n t−¬ng tĂč nh− nĂŁi trÂȘn.
ViÖc chuyÓn sang giai ÂźoÂčn mËt m· mžy tÝnh tr−íc hÕt Ÿ· cĂŁ
tžc dĂŽng phžt triÓn v” hiÖn ÂźÂči hož nhiÒu hÖ thĂšng mËt m· theo kiÓu
truyÒn thĂšng, l”m cho cžc hÖ thĂšng Ÿã cĂŁ cžc cÊu trĂłc tinh tÕ hÂŹn,
¼ßi hĂĄi lËp mËt m· v” gi¶i m· phĂžc tÂčp hÂŹn, do Ÿã hiÖu qu¶ giĂ· bÝ
mËt cña cžc gi¶i phžp mËt m· ¼−üc n©ng cao hÂŹn tr−íc rÊt nhiÒu.
Tuy nhiÂȘn, mĂ©t b−íc chuyÓn cĂŁ tÝnh chÊt cžch mÂčng m” mËt m·
mžy tÝnh mang lÂči l” viÖc phžt minh ra cžc hÖ mËt m· cĂŁ khož c«ng
khai, bŸt ¼Çu tĂ” cuĂši nhĂ·ng nšm 1970, cÂŹ sĂ« lĂœ thuyÕt cña cžc phžt
6
minh Ÿã l” sĂč tĂ„n tÂči cña cžc h”m mĂ©t phÝa (one-way function), tĂžc
l” nhĂ·ng h”m sĂš sĂš hĂ€c y = f (x) m” viÖc tÝnh theo phÝa thuËn tĂ” x
tÝnh y l” t−¬ng ŸÚi dÔ, nh−ng viÖc tÝnh theo phÝa ng−üc tĂ” y t×m lÂči
x (x = f--1
(y)) l” cĂčc kĂș phĂžc tÂčp. Cžc hÖ mËt m· cĂŁ khož c«ng khai Ÿ·
l”m thay ŸÊi vÒ b¶n chÊt viÖc tĂŠ chĂžc cžc hÖ truyÒn th«ng b¶o mËt,
l”m dÔ d”ng cho viÖc b¶o mËt trÂȘn cžc hÖ truyÒn th«ng c«ng cĂ©ng,
v” do tÝnh chÊt ¼Æc biÖt Ÿã chĂłng Ÿ· l” cÂŹ sĂ« cho viÖc phžt triÓn
nhiÒu giao thĂžc an to”n th«ng tin khžc khi sö dĂŽng mÂčng truyÒn
th«ng c«ng cĂ©ng, chÂŒng hÂčn cžc loÂči giao thĂžc vÒ xžc nhËn nguĂ„n tin
v” ¼Þnh danh ng−ĂȘi göi, chĂ· kĂœ ÂźiÖn tö, cžc giao thĂžc xžc nhËn
kh«ng ¼Ó lĂ© th«ng tin g× khžc ngo”i viÖc xžc nhËn, cžc giao thĂžc trao
ŸÊi khož trong tĂŠ chĂžc truyÒn tin b¶o mËt v” trong xžc nhËn, v.v...,
v” gÇn Ÿ©y trong viÖc phžt triÓn nhiÒu giao thĂžc ¼Æc thĂŻ khžc trong
cžc giao dÞch ng©n h”ng v” th−¬ng mÂči ÂźiÖn tö, phžt h”nh v” mua
bžn b»ng tiÒn ÂźiÖn tö,... CĂČng cÇn nĂŁi thÂȘm l” lĂœ thuyÕt mËt m· hiÖn
ÂźÂči, tĂžc l” mËt m· mžy tÝnh trÂȘn cÂŹ sĂ« lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh
tožn tuy cĂŁ nhiÒu Ăžng dĂŽng ¼Æc sŸc v” cĂŁ triÓn vĂ€ng to lĂ­n, nh−ng
cĂČng mĂ­i Âźang trong giai ÂźoÂčn phžt triÓn b−íc ¼Çu, cßn ph¶i khŸc
phĂŽc nhiÒu khĂŁ khšn v” t×m kiÕm thÂȘm nhiÒu cÂŹ sĂ« vĂ·ng chŸc mĂ­i
¼Ó tiÕp tĂŽc ho”n thiÖn v” phžt triÓn. ChÂŒng hÂčn, nh− trÂȘn Ÿ· nĂŁi,
mĂ©t cÂŹ sĂ« quan trĂ€ng cña lĂœ thuyÕt mËt m· hiÖn ÂźÂči l” sĂč tĂ„n tÂči cña
cžc h”m mĂ©t phÝa, nh−ng ngay cĂŁ thËt tĂ„n tÂči cžc h”m mĂ©t phÝa hay
kh«ng cĂČng cßn l” mĂ©t b”i tožn ch−a cĂŁ c©u tr¶ lĂȘi! Ta chØ mĂ­i Âźang
cĂŁ mĂ©t sĂš h”m mĂ©t phÝa theo sĂč hiÓu biÕt cña con ng−ĂȘi hiÖn nay,
nh−ng ch−a chĂžng minh ¼−üc cĂŁ mĂ©t h”m cĂŽ thÓ n”o Ÿã chŸc chŸn
l” h”m mĂ©t phÝa! Tuy nhiÂȘn, nÕu theo quan ÂźiÓm khoa hĂ€c hiÖn ÂźÂči,
ta kh«ng xem mĂŽc ¼Ých khoa hĂ€c l” Âźi t×m nhĂ·ng ch©n lĂœ chŸc chŸn
tuyÖt ŸÚi, m” l” Âźi t×m nhĂ·ng cžch gi¶i quyÕt vÊn ¼Ò (problem
solving) gÆp trong thĂčc tiÔn, th× ta vÉn cĂŁ thÓ tin v”o nhĂ·ng gi¶i
phžp "t−¬ng ŸÚi" rÊt cĂŁ hiÖu qu¶ m” lĂœ thuyÕt hiÖn ÂźÂči vÒ mËt m·
Âźang cĂšng hiÕn cho con ng−ĂȘi hiÖn nay.
TËp gižo tr×nh LĂœ thuyÕt mËt m· v” an to”n th«ng tin n”y
¼−üc soÂčn ¼Ó phĂŽc vĂŽ cho viÖc hĂ€c tËp cña sinh viÂȘn cžc lĂ­p theo
ch−¬ng tr×nh ÂźÂči hĂ€c hoÆc cao hĂ€c thuĂ©c ng”nh C«ng nghÖ th«ng tin
cña §Âči hĂ€c QuĂšc gia H” nĂ©i. Trong kho¶ng m−¬i nšm gÇn Ÿ©y, trÂȘn
thÕ giĂ­i Ÿ· xuÊt hiÖn nhiÒu sžch v” t”i liÖu cĂŁ tÝnh chÊt gižo khoa
7
hoÆc tham kh¶o vÒ lĂœ thuyÕt mËt m· hiÖn ÂźÂči v” Ăžng dĂŽng. Ng−ĂȘi
viÕt tËp gižo tr×nh n”y chØ cĂŁ cĂš gŸng lĂča chĂ€n v” sŸp xÕp mĂ©t sĂš nĂ©i
dung m” m×nh nghÜ l” cÇn thiÕt v” thÝch hĂźp nhÊt ¼Ó trong mĂ©t
phÂčm vi hÂčn chÕ vÒ thĂȘi gian (v” kh«ng gian) tr×nh b”y v” giĂ­i thiÖu
¼−üc cho ng−ĂȘi hĂ€c mĂ©t cžch t−¬ng ŸÚi hÖ thĂšng nhĂ·ng kiÕn thĂžc
cÂŹ b¶n vÒ lĂœ thuyÕt mËt m· hiÖn ÂźÂči, bao gĂ„m c¶ mĂ©t sĂš kiÕn thĂžc
tožn hĂ€c cÇn thiÕt. Gižo tr×nh n”y Ÿ· ¼−üc gi¶ng dÂčy cho sinh viÂȘn
cžc khož cao hĂ€c vÒ C«ng nghÖ th«ng tin thuĂ©c §Âči hĂ€c Bžch khoa
H” nĂ©i v” khoa C«ng nghÖ §Âči hĂ€c QuĂšc gia H” nĂ©i tĂ” nšm 1997
¼Õn 2004. Ng−ĂȘi viÕt ch©n th”nh c¶m ÂŹn cžc bÂčn ŸÄng nghiÖp v”
ng−ĂȘi ŸÀc chØ cho nhĂ·ng chç thiÕu sĂŁt ¼Ó cĂŁ thÓ kÞp thĂȘi söa chĂ·a
cho nhĂ·ng lÇn in sau, nÕu cĂŁ.
Thžng 12 nšm 2002
Phan §×nh DiÖu
8
CHŠ„NG I
GiĂ­i thiÖu chung vÒ mËt m·
1.1. SÂŹ l−üc lÞch sö vÒ mËt m·.
Nh− Ÿ· giĂ­i thiÖu trong LĂȘi mĂ« ¼Çu, nhu cÇu sö dĂŽng mËt
m· Ÿ· xuÊt hiÖn tĂ” rÊt sĂ­m, khi con ng−ĂȘi biÕt trao ŸÊi v” truyÒn
¼−a th«ng tin cho nhau, ¼Æc biÖt khi cžc th«ng tin Ÿã Ÿ· ¼−üc thÓ
hiÖn d−íi h×nh thĂžc ng«n ngĂ·, th− tĂ”. LÞch sö cho ta biÕt, cžc h×nh
thĂžc mËt m· sÂŹ khai Ÿ· ¼−üc t×m thÊy tĂ” kho¶ng bĂšn ngh×n nšm
tr−íc trong nÒn všn mÞnh Ai cËp cĂŠ ÂźÂči. Tr¶i qua h”ng ngh×n nšm
lÞch sö, mËt m· Ÿ· ¼−üc sö dĂŽng rĂ©ng r·i trÂȘn khŸp thÕ giĂ­i tĂ” §«ng
sang T©y ¼Ó giĂ· bÝ mËt cho viÖc giao l−u th«ng tin trong nhiÒu lÜnh
vĂčc hoÂčt Ÿéng giĂ·a con ng−ĂȘi v” cžc quĂšc gia, ¼Æc biÖt trong cžc
lÜnh vĂčc qu©n sĂč, chÝnh trÞ, ngoÂči giao. MËt m· tr−íc hÕt l” mĂ©t loÂči
hoÂčt Ÿéng thĂčc tiÔn, nĂ©i dung chÝnh cña nĂŁ l” ¼Ó giĂ· bÝ mËt th«ng
tin (chÂŒng hÂčn d−íi dÂčng mĂ©t všn b¶n) tĂ” mĂ©t ng−ĂȘi göi A ¼Õn mĂ©t
ng−ĂȘi nhËn B, A ph¶i tÂčo cho všn b¶n Ÿã mĂ©t b¶n m· mËt t−¬ng
Ăžng, v” thay v× göi všn b¶n rĂą th× A chØ göi cho B b¶n m· mËt, B
nhËn ¼−üc b¶n m· mËt v” sÏ cĂŁ cžch tĂ” Ÿã kh«i phĂŽc lÂči všn b¶n rĂą
¼Ó hiÓu ¼−üc th«ng tin m” A muĂšn göi cho m×nh. V× b¶n göi Âźi
th−ĂȘng ¼−üc chuyÓn qua cžc con ¼−ĂȘng c«ng khai nÂȘn ng−ĂȘi ngo”i
cĂŁ thÓ "lÊy trĂ©m" ¼−üc, nh−ng do Ÿã l” b¶n mËt m· nÂȘn kh«ng ŸÀc
hiÓu ¼−üc, cßn A cĂŁ thÓ tÂčo ra b¶n m· mËt v” B cĂŁ thÓ gi¶i b¶n m·
mËt th”nh b¶n rĂą ¼Ó hiÓu ¼−üc l” do giĂ·a hai ng−ĂȘi Ÿ· cĂŁ mĂ©t thĂĄa
thuËn vÒ mĂ©t ch×a khĂŁa chung, chØ vĂ­i ch×a khĂŁa chung n”y th× A
mĂ­i tÂčo ¼−üc b¶n m· mËt tĂ” b¶n rĂą, v” B mĂ­i tĂ” b¶n m· mËt kh«i
phĂŽc lÂči ¼−üc b¶n rĂą. Sau n”y ta sÏ gĂ€i Ÿn gi¶n ch×a khĂŁa chung Ÿã
l” khĂŁa mËt m·. TÊt nhiÂȘn ¼Ó thĂčc hiÖn ¼−üc mĂ©t phÐp mËt m·, ta
9
cßn cÇn cĂŁ mĂ©t thuËt tožn biÕn b¶n rĂą, cĂŻng vĂ­i khĂŁa mËt m·, th”nh
b¶n m· mËt, v” mĂ©t thuËt tožn ng−üc lÂči, biÕn b¶n m· mËt, cĂŻng vĂ­i
khĂŁa mËt m·, th”nh b¶n rĂą. Cžc thuËt tožn Ÿã ¼−üc gĂ€i t−¬ng Ăžng l”
thuËt tožn lËp mËt m· v” thuËt tožn gi¶i mËt m·. Cžc thuËt tožn n”y
th−ĂȘng kh«ng nhÊt thiÕt ph¶i giĂ· bÝ mËt, m” cži cÇn ¼−üc giĂ· tuyÖt
mËt lu«n lu«n l” khĂŁa mËt m·. Trong thĂčc tiÔn, Ÿ· cĂŁ hoÂčt Ÿéng b¶o
mËt th× cĂČng cĂŁ hoÂčt Ÿéng ng−üc lÂči l” khžm phž bÝ mËt tĂ” cžc b¶n
m· mËt "lÊy trĂ©m" ¼−üc, ta th−ĂȘng gĂ€i hoÂčt Ÿéng n”y l” m· thžm,
hoÂčt Ÿéng n”y quan trĂ€ng kh«ng kÐm g× hoÂčt Ÿéng b¶o mËt! V× cžc
thuËt tožn lËp mËt m· v” gi¶i mËt m· kh«ng nhÊt thiÕt l” bÝ mËt, nÂȘn
m· thžm th−ĂȘng ¼−üc tËp trung v”o viÖc t×m khĂŁa mËt m·, do Ÿã
cĂČng cĂŁ ng−ĂȘi gĂ€i c«ng viÖc Ÿã l” phž khĂŁa.
SuĂšt mÊy ngh×n nšm lÞch sö, cžc th«ng bžo, th− tĂ” ¼−üc
truyÒn ¼−a v” trao ŸÊi vĂ­i nhau th−ĂȘng l” cžc všn b¶n, tĂžc l” cĂŁ
dÂčng cžc d·y kĂœ tĂč trong mĂ©t ng«n ngĂ· n”o Ÿã; v× vËy, cžc thuËt
tožn lËp mËt m· th−ĂȘng cĂČng Ÿn gi¶n l” thuËt tožn xžo trĂ©n, thay
ŸÊi cžc kĂœ tĂč ¼−üc xžc ¼Þnh bĂ«i cžc phÐp chuyÓn dÞch, thay thÕ hay
hožn vÞ cžc kĂœ tĂč trong b¶ng kĂœ tĂč cña ng«n ngĂ· t−¬ng Ăžng; khĂŁa
mËt m· l” th«ng tin dĂŻng ¼Ó thĂčc hiÖn phÐp lËp mËt m· v” gi¶i mËt
m· cĂŽ thÓ, thÝ dĂŽ nh− sĂš vÞ trÝ ŸÚi vĂ­i phÐp chuyÓn dÞch, b¶ng xžc
¼Þnh cžc cÆp kĂœ tĂč t−¬ng Ăžng ŸÚi vĂ­i phÐp thay thÕ hay hožn vÞ,...
MËt m· ch−a ph¶i l” mĂ©t khoa hĂ€c, do Ÿã ch−a cĂŁ nhiÒu kiÕn thĂžc
sžch vĂ« ¼Ó lÂči, tuy nhiÂȘn hoÂčt Ÿéng b¶o mËt v” thžm m· trong lÞch
sö cžc cuĂ©c ¼Êu tranh chÝnh trÞ, ngoÂči giao v” qu©n sĂč th× hÕt sĂžc
phong phĂł, v” mËt m· Ÿ· cĂŁ nhiÒu tžc Ÿéng rÊt quan trĂ€ng ¼−a ¼Õn
nhĂ·ng kÕt qu¶ lŸm khi cĂŁ Ăœ nghÜa quyÕt ¼Þnh trong cžc cuĂ©c ¼Êu
tranh Ÿã. Do trong mĂ©t thĂȘi gian d”i, b¶n th©n hoÂčt Ÿéng mËt m·
cĂČng ¼−üc xem l” mĂ©t bÝ mËt, nÂȘn cžc t”i liÖu kĂŒ thuËt vÒ mËt m·
¼−üc phĂŠ biÕn ¼Õn nay th−ĂȘng chØ ghi lÂči cžc kiÕn thĂžc kinh nghiÖm,
thØnh tho¶ng mĂ­i cĂŁ mĂ©t v”i "phžt minh" nh− cžc hÖ mËt m·
VigenÌre v”o thÕ kĂ» 16 hoÆc hÖ mËt m· Hill ra ÂźĂȘi nšm 1929 l” cžc
hÖ m· thĂčc hiÖn phÐp chuyÓn dÞch (ŸÚi vĂ­i m· VigenÌre) hay phÐp
thay thÕ (m· Hill) ŸÄng thĂȘi trÂȘn mĂ©t nhĂŁm kĂœ tĂč chĂž kh«ng ph¶i
trÂȘn tĂ”ng kĂœ tĂč riÂȘng rÏ. VÊn ¼Ò thžm m·, ng−üc lÂči, khi th”nh c«ng
th−ĂȘng ¼−a ¼Õn nhĂ·ng cĂšng hiÕn nĂŠi trĂ©i v” Ên t−üng trong nhĂ·ng
10
t×nh huĂšng gay cÊn cña cžc cuĂ©c ¼Êu tranh, v” cĂČng th−ĂȘng ¼ßi hĂĄi
nhiÒu t”i nšng phžt hiÖn vĂ­i nhĂ·ng kinh nghiÖm v” suy luËn tinh tÕ
hÂŹn, nÂȘn ¼Ó lÂči nhiÒu chuyÖn hÊp dÉn hÂŹn. NhiÒu c©u chuyÖn kĂș thĂł
cña lÞch sö thžm m· Ÿ· ¼−üc thuËt lÂči trong quyÓn sžch nĂŠi tiÕng
cña David Kahn The Codebreakers . The Story of Secret Writing ,
xuÊt b¶n nšm 1967 (sžch Ÿ· ¼−üc dÞch ra nhiÒu thĂž tiÕng, cĂŁ b¶n
dÞch tiÕng ViÖt NhĂ·ng ng−ĂȘi m· thžm, 3 tËp, xuÊt b¶n tÂči H” nĂ©i
nšm 1987).
B−íc sang thÕ kĂ» 20, vĂ­i nhĂ·ng tiÕn bĂ© liÂȘn tĂŽc cña kĂŒ thuËt
tÝnh tožn v” truyÒn th«ng, ng”nh mËt m· cĂČng Ÿ· cĂŁ nhĂ·ng tiÕn bĂ©
to lĂ­n. V”o nhĂ·ng thËp niÂȘn ¼Çu cña thÕ kĂ», sĂč phžt triÓn cña cžc kĂŒ
thuËt biÓu diÔn, truyÒn v” xö lĂœ tÝn hiÖu Ÿ· cĂŁ tžc Ÿéng giĂłp cho cžc
hoÂčt Ÿéng lËp v” gi¶i mËt m· tĂ” thñ c«ng chuyÓn sang cÂŹ giĂ­i hĂŁa
rĂ„i ÂźiÖn tö hĂŁa. Cžc všn b¶n, cžc b¶n mËt m· tr−íc Ÿ©y ¼−üc viÕt
b»ng ng«n ngĂ· th«ng th−ĂȘng nay ¼−üc chuyÓn b»ng kĂŒ thuËt sĂš
th”nh cžc d·y tÝn hiÖu nhÞ ph©n, tĂžc cžc d·y bit, v” cžc phÐp biÕn ŸÊi
trÂȘn cžc d·y kĂœ tĂč ¼−üc chuyÓn th”nh cžc phÐp biÕn ŸÊi trÂȘn cžc d·y
bit, hay cžc d·y sĂš, viÖc thĂčc hiÖn cžc phÐp lËp m·, gi¶i m· trĂ«
th”nh viÖc thĂčc hiÖn cžc h”m sĂš sĂš hĂ€c. Tožn hĂ€c v” kĂŒ thuËt tÝnh
tožn bŸt ¼Çu trĂ« th”nh c«ng cĂŽ cho viÖc phžt triÓn khoa hĂ€c vÒ mËt
m·. Khži niÖm trung t©m cña khoa hĂ€c mËt m· l” khži niÖm bÝ mËt.
§ã l” mĂ©t khži niÖm phĂŠ biÕn trong ÂźĂȘi sĂšng, nh−ng liÖu cĂŁ thÓ cho
nĂŁ mĂ©t nĂ©i dung cĂŁ thÓ ¼Þnh nghÜa ¼−üc mĂ©t cžch tožn hĂ€c kh«ng?
Nh− Ÿ· l−üc qua trong LĂȘi mĂ« ¼Çu, khži niÖm bÝ mËt thoÂčt ¼Çu
¼−üc gŸn vĂ­i khži niÖm ngÉu nhiÂȘn, rĂ„i vÒ sau trong nhĂ·ng thËp
niÂȘn gÇn Ÿ©y, vĂ­i khži niÖm phĂžc tÂčp, cĂŽ thÓ hÂŹn l” khži niÖm Ÿé
phĂžc tÂčp tÝnh tožn. ViÖc sö dĂŽng lĂœ thuyÕt xžc suÊt v” ngÉu nhiÂȘn
l”m cÂŹ sĂ« ¼Ó nghiÂȘn cĂžu mËt m· Ÿ· giĂłp C.Shannon ¼−a ra khži
niÖm bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m· tĂ” nšm 1948, khĂ«i ¼Çu
cho mĂ©t lĂœ thuyÕt xžc suÊt vÒ mËt m·. Trong thĂčc tiÔn l”m mËt m·,
cžcd·y bit ngÉu nhiÂȘn ¼−üc dĂŻng ¼Ó trĂ©n vĂ­i b¶n rĂą (d−íi dÂčng mĂ©t
d·y bit xžc ¼Þnh) th”nh ra b¶n mËt m·. L”m thÕ n”o ¼Ó tÂčo ra cžc
d·y bit ngÉu nhiÂȘn? CĂŁ thÓ tÂčo ra b»ng ph−¬ng phžp vËt lĂœ Ÿn gi¶n
nh− sau: ta tung ŸÄng xu lÂȘn, nÕu ŸÄng xu rÂŹi xuĂšng Ă« mÆt sÊp th× ta
ghi bit 0, Ă« mÆt ngöa th× ta ghi bit 1; tung n lÇn ta sÏ ¼−üc mĂ©t d·y n
11
bit, d·y bit thu ¼−üc nh− vËy cĂŁ thÓ ¼−üc xem l” d·y bit ngÉu nhiÂȘn.
Nh−ng tÂčo ra theo cžch nh− vËy th× khĂŁ cĂŁ thÓ sö dĂŽng mĂ©t cžch
phĂŠ biÕn, v× kh«ng thÓ t×m ra qui luËt ¼Ó theo Ÿã m” sinh ra d·y bit
ngÉu nhiÂȘn ¼−üc. Ă« Ÿ©y ta gÆp mĂ©t khĂŁ khšn cĂŁ tÝnh b¶n chÊt: nÕu
cĂŁ qui luËt th× Ÿ· kh«ng cßn l” ngÉu nhiÂȘn nĂ·a rĂ„i! Nh− vËy, nÕu ta
muĂšn t×m theo qui luËt, th× kh«ng bao giĂȘ cĂŁ thÓ t×m ra cžc d·y bit
ngÉu nhiÂȘn, m” cĂŻng lŸm cĂČng chØ cĂŁ thÓ ¼−üc cžc d·y bit gÇn ngÉu
nhiÂȘn, hay gi¶ ngÉu nhiÂȘn, m” th«i. TĂ” nhiÒu chĂŽc nšm nay, ng−ĂȘi
ta Ÿ· nghiÂȘn cĂžu ¼Ò xuÊt nhiÒu thuËt tožn tožn hĂ€c ¼Ó sinh ra cžc
d·y bit gi¶ ngÉu nhiÂȘn, v” cĂČng Ÿ· ¼−a ra nhiÒu thuĂ©c tÝnh ¼Ó Ÿžnh
giž mĂ©t d·y bit gi¶ ngÉu nhiÂȘn cĂŁ Ÿžng ¼−üc xem l” "gÇn" ngÉu
nhiÂȘn hay kh«ng. MĂ©t v”i thuĂ©c tÝnh chñ yÕu m” ng−ĂȘi ta Ÿ· ¼Ò xuÊt
l”: cho mĂ©t d·y bit X = (x1,x2,.....,xn,...); d·y Ÿã ¼−üc xem l” gi¶ ngÉu
nhiÂȘn "tĂšt" nÕu xžc suÊt xuÊt hiÖn bit 0 hay bit 1 trong to”n d·y Ÿã
cĂČng nh− trong mĂ€i d·y con bÊt kĂș cña nĂŁ ¼Òu b»ng 1/2; hoÆc mĂ©t
tiÂȘu chuÈn khžc: nÕu mĂ€i ch−¬ng tr×nh sinh ra ¼−üc ÂźoÂčn ¼Çu n bit
cña d·y ¼Òu ph¶i cĂŁ Ÿé phĂžc tÂčp (hay Ÿé d”i) cĂŹ n kĂœ tĂč ! VÒ sau
n”y, khi lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn Ÿ· ¼−üc phžt triÓn th×
tiÂȘu chuÈn vÒ ngÉu nhiÂȘn cĂČng ¼−üc qui vÒ tiÂȘu chuÈn phĂžc tÂčp tÝnh
tožn, cĂŽ thÓ mĂ©t d·y bit X ¼−üc xem l” gi¶ ngÉu nhiÂȘn "tĂšt" nÕu mĂ€i
thuËt to¾n t×m ¼−üc bit thþ n (xn) khi biÕt c¾c bit tr−íc ¼ã (x1,,...,xn-1)
vĂ­i xžc suÊt Ÿóng > 1/2 ¼Òu ph¶i cĂŁ Ÿé phĂžc tÂčp tÝnh tožn thuĂ©c lĂ­p
NP-khĂŁ!
LĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn ra ÂźĂȘi tĂ” giĂ·a nhĂ·ng nšm
1960 Ÿ· cho ta mĂ©t cžch thÝch hĂźp ¼Ó qui yÂȘu cÇu bÝ mËt hoÆc ngÉu
nhiÂȘn vÒ mĂ©t yÂȘu cÇu cĂŁ thÓ ¼Þnh nghÜa ¼−üc l” yÂȘu cÇu vÒ Ÿé phĂžc
tÂčp tÝnh tožn. B©y giĂȘ ta cĂŁ thÓ nĂŁi: mĂ©t gi¶i phžp mËt m· l” b¶o
٦m bÝ mËt, nÕu mĂ€i thuËt tožn thžm m·, nÕu cĂŁ, ¼Òu ph¶i ¼−üc
thĂčc hiÖn vĂ­i Ÿé phĂžc tÂčp tÝnh tožn cĂčc lĂ­n! CĂčc lĂ­n l” bao nhiÂȘu?
L” v−üt quž giĂ­i hÂčn kh¶ nšng tÝnh tožn (bao gĂ„m c¶ mžy tÝnh) m”
ng−ĂȘi thžm m· cĂŁ thÓ cĂŁ. VÒ lĂœ thuyÕt, cĂŁ thÓ xem Ÿã l” nhĂ·ng Ÿé
phĂžc tÂčp tÝnh tožn vĂ­i tĂšc Ÿé tšng v−üt quž h”m mĂČ, hoÆc thuĂ©c loÂči
NP-khĂŁ. Tuy nhiÂȘn, lĂœ thuyÕt Ÿé phĂžc tÂčp tÝnh tožn kh«ng chØ cĂšng
hiÕn cho ta mĂ©t khži niÖm ¼Ó giĂłp chÝnh xžc hĂŁa tiÂȘu chuÈn bÝ mËt
cña cžc gi¶i phžp mËt m·, m” cßn mĂ« ra mĂ©t giai ÂźoÂčn mĂ­i cña
ng”nh mËt m·, biÕn ng”nh mËt m· th”nh mĂ©t khoa hĂ€c cĂŁ nĂ©i dung
12
lĂœ luËn phong phĂł v” cĂŁ nhĂ·ng Ăžng dĂŽng thĂčc tiÔn quan trĂ€ng
trong nhiÒu lÜnh vĂčc cña ÂźĂȘi sĂšng hiÖn ÂźÂči. B−íc ngoÆt cĂŁ tÝnh cžch
mÂčng trong lÞch sö khoa hĂ€c mËt m· hiÖn ÂźÂči xÈy ra v”o nšm 1976
khi hai tžc gi¶ Diffie v” Hellman ¼−a ra khži niÖm vÒ mËt m· khĂŁa
c«ng khai v” mĂ©t ph−¬ng phžp trao ŸÊi c«ng khai ¼Ó tÂčo ra mĂ©t
khĂŁa bÝ mËt chung m” tÝnh an to”n ¼−üc b¶o ٦m bĂ«i Ÿé khĂŁ cña
mĂ©t b”i tožn tožn hĂ€c cĂŽ thÓ (l” b”i tožn tÝnh "l«garit rĂȘi rÂčc"). Hai
nšm sau, nšm 1978, Rivest, Shamir v” Adleman t×m ra mĂ©t hÖ mËt
m· khĂŁa c«ng khai v” mĂ©t sÂŹ ŸÄ chĂ· kĂœ ÂźiÖn tö ho”n to”n cĂŁ thÓ
Ăžng dĂŽng trong thĂčc tiÔn, tÝnh b¶o mËt v” an to”n cña chĂłng ¼−üc
b¶o ٦m b»ng Ÿé phĂžc tÂčp cña mĂ©t b”i tožn sĂš hĂ€c nĂŠi tiÕng l” b”i
tožn ph©n tÝch sĂš nguyÂȘn th”nh cžc thĂ”a sĂš nguyÂȘn tĂš. Sau phžt
minh ra hÖ mËt m· Ÿã (m” nay ta th−ĂȘng gĂ€i l” hÖ RSA), viÖc nghiÂȘn
cĂžu ¼Ó phžt minh ra cžc hÖ mËt m· khĂŁa c«ng khai khžc, v” Ăžng
dĂŽng cžc hÖ mËt m· khĂŁa c«ng khai v”o cžc b”i tožn khžc nhau cña
an to”n th«ng tin Ÿ· ¼−üc tiÕn h”nh rĂ©ng r·i, lĂœ thuyÕt mËt m· v” an
to”n th«ng tin trĂ« th”nh mĂ©t lÜnh vĂčc khoa hĂ€c ¼−üc phžt triÓn
nhanh trong v”i ba thËp niÂȘn cuĂši cña thÕ kĂ» 20, l«i cuĂšn theo sĂč
phžt triÓn cña mĂ©t sĂš bĂ© m«n cña tožn hĂ€c v” tin hĂ€c. Trong cžc
ch−¬ng vÒ sau cña tËp gižo tr×nh n”y ta sÏ lÇn l−üt l”m quen vĂ­i mĂ©t
sĂš th”nh qu¶ chñ yÕu cña lĂœ thuyÕt Ÿã.
1.2. Cžc hÖ thĂšng mËt m·.
1.2.1. SÂŹ ŸÄ hÖ thĂšng mËt m·.
MËt m· ¼−üc sö dĂŽng ¼Ó b¶o vÖ tÝnh bÝ mËt cña th«ng tin khi
th«ng tin ¼−üc truyÒn trÂȘn cžc kÂȘnh truyÒn th«ng c«ng cĂ©ng nh− cžc
kÂȘnh b−u chÝnh, ÂźiÖn thoÂči, mÂčng truyÒn th«ng mžy tÝnh, mÂčng
Internet, v.v... Gi¶ thö mĂ©t ng−ĂȘi göi A muĂšn göi ¼Õn mĂ©t ng−ĂȘi
nhËn B mĂ©t všn b¶n (chÂŒng hÂčn, mĂ©t bĂžc th−) p, ¼Ó b¶o mËt A lËp
cho p mĂ©t b¶n mËt m· c, v” thay cho viÖc göi p, A göi cho B b¶n mËt
m· c, B nhËn ¼−üc c v” "gĂÂ¶i m·" c ¼Ó lÂči ¼−üc všn b¶n p nh− A
¼Þnh göi. §Ó A biÕn p th”nh c v” B biÕn ng−üc lÂči c th”nh p , A v” B
ph¶i thĂĄa thuËn tr−íc vĂ­i nhau cžc thuËt tožn lËp m· v” gi¶i m·, v”
¼Æc biÖt mĂ©t khĂŁa mËt m· chung K ¼Ó thĂčc hiÖn cžc thuËt tožn Ÿã.
Ng−ĂȘi ngo”i, kh«ng biÕt cžc th«ng tin Ÿã (¼Æc biÖt, kh«ng biÕt khĂŁa
13
K), cho dĂŻ cĂŁ lÊy trĂ©m ¼−üc c trÂȘn kÂȘnh truyÒn th«ng c«ng cĂ©ng,
cĂČng kh«ng thÓ t×m ¼−üc všn b¶n p m” hai ng−ĂȘi A, B muĂšn göi cho
nhau. Sau Ÿ©y ta sÏ cho mĂ©t ¼Þnh nghÜa h×nh thĂžc vÒ sÂŹ ŸÄ mËt m·
v” cžch thĂžc thĂčc hiÖn ¼Ó lËp mËt m· v” gi¶i mËt m·.
§Þnh nghÜa 1.2.1. MĂ©t sÂŹ ŸÄ hÖ thĂšng mËt m· l” mĂ©t bĂ© nšm
S = (P , C , K , E , D ) (1)
thĂĄa m·n cžc ÂźiÒu kiÖn sau Ÿ©y:
P l” mĂ©t tËp hĂ·u hÂčn cžc kĂœ tĂč b¶n rĂą,
C l” mĂ©t tËp hĂ·u hÂčn cžc kĂœ tĂč b¶n m·,
K l” mĂ©t tËp hĂ·u hÂčn cžc khĂŁa,
E l” mĂ©t žnh xÂč tĂ” KxP v”o C , , ¼−üc gĂ€i l” phÐp lËp mËt m·;
v” D l” mĂ©t žnh xÂč tĂ” KxC v”o P , ¼−üc gĂ€i l” phÐp gi¶i m·. VĂ­i
mçi K∈K , ta ¼Þnh nghÜa eK : P →C , dK :C →P l” hai h”m cho bĂ«i :
⎠x ΔP : eK(x) = E (K,x) ; ⎠yΔ C : dK(y) = D (K,y).
eK v” dK ¼−üc gĂ€i lÇn l−üt l” h”m lËp m· v” h”m gi¶i m· Ăžng vĂ­i
khĂŁa mËt m· K. Cžc h”m Ÿã ph¶i thĂĄa m·n hÖ thĂžc:
⎠x Δ P : dK(eK(x)) = x.
VÒ sau, ¼Ó thuËn tiÖn ta sÏ gĂ€i mĂ©t danh sžch (1) tho¶ m·n cžc
tÝnh chÊt kÓ trÂȘn l” mĂ©t sÂŹ ŸÄ hÖ thĂšng mËt m· , cßn khi Ÿ· chĂ€n cĂš
¼Þnh mĂ©t khož K, th× danh sžch (P , C , eK , dK) l” mĂ©t hÖ mËt m·
thuéc s ŸÄ Ÿã.
Trong ¼Þnh nghÜa n”y, phÐp lËp mËt m· (gi¶i m·) ¼−üc ¼Þnh
nghÜa cho tĂ”ng kĂœ tĂč b¶n rĂą (b¶n m·). Trong thĂčc tÕ, b¶n rĂą cña mĂ©t
th«ng bžo th−ĂȘng l” mĂ©t d·y kĂœ tĂč b¶n rĂą, tĂžc l” phÇn tö cña tËp P *,
v” b¶n mËt m· cĂČng l” mĂ©t d·y cžc kĂœ tĂč b¶n m·, tĂžc l” phÇn tö cña
tËp C *, viÖc mĂ« rĂ©ng cžc h”m eK v” dK lÂȘn cžc miÒn t−¬ng Ăžng P *
v” C * ¼Ó ¼−üc cžc thuËt tožn lËp mËt m· v” gi¶i m· dĂŻng trong thĂčc
tÕ sÏ ¼−üc tr×nh b”y trong tiÕt sau. Cžc tËp kĂœ tĂč b¶n rĂą v” b¶n m·
th−ĂȘng dĂŻng l” cžc tËp kĂœ tĂč cña ng«n ngĂ· th«ng th−ĂȘng nh− tiÕng
ViÖt, tiÕng Anh (ta kĂœ hiÖu tËp kĂœ tĂč tiÕng Anh l” A tĂžc A =
{a,b,c,...,x,y,z } gĂ„m 26 kĂœ tĂč; tËp kĂœ tĂč nhÞ ph©n B chØ gĂ„m hai kĂœ tĂč
0 v” 1; tËp cžc sĂš nguyÂȘn kh«ng ©m bÐ hÂŹn mĂ©t sĂš n n”o Ÿã (ta kĂœ
hiÖu tËp n”y l” Zn tĂžc Zn = {0,1,2,...., n- 1}). ChĂł Ăœ r»ng cĂŁ thÓ xem B
= Z2. §Ó thuËn tiÖn, ta cĂČng th−ĂȘng ŸÄng nhÊt tËp kĂœ tĂč tiÕng Anh A
vĂ­i tËp gĂ„m 26 sĂš nguyÂȘn kh«ng ©m ¼Çu tiÂȘn Z26 = {0,1,2,...., 24,25}
vĂ­i sĂč t−¬ng Ăžng sau Ÿ©y:
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25.
§«i khi ta cĂČng dĂŻng vĂ­i t− cžch tËp kĂœ tĂč b¶n rĂą hay b¶n m· l” cžc
tËp tÝch cña cžc tËp nĂŁi trÂȘn, ¼Æc biÖt l” cžc tËp Am
, Bm
, Zn
m
.
1.2.2. M· theo khĂši v” m· theo dßng.
Nh− nĂŁi Ă« trÂȘn, b¶n rĂą cña th«ng bžo m” ta muĂšn göi Âźi
th−ĂȘng l” mĂ©t d·y kĂœ tĂč, trong khi theo ¼Þnh nghÜa cña sÂŹ ŸÄ mËt
m·, h”m lËp mËt m· v” h”m gi¶i m· ¼−üc ¼Þnh nghÜa cho tĂ”ng kĂœ
tĂč. TĂ” cžc ¼Þnh nghÜa cña h”m lËp mËt m· v” h”m gi¶i m·, ta mĂ«
rĂ©ng th”nh thuËt tožn lËp m· (v” gi¶i m·) xžc ¼Þnh cho mĂ€i b¶n rĂą
(b¶n m·) nh− sau:
Theo cžch m· theo khĂši (block cipher), tr−íc hÕt ta xžc ¼Þnh
mĂ©t Ÿé d”i khĂši (chÂŒng hÂčn l” k), tiÕp Ÿã mĂ« rĂ©ng kh«ng gian khĂŁa
tÔ K th”nh Kk
, v” víi mçi K =K1...Kk Δ Kk
, ta më réng eK v” dK
th”nh cžc thuËt tožn eK : P k
→ C k
v” dK : C k
→P k
nh− sau: vĂ­i mĂ€i
x1...xk ∈P k
v” y1...yk ∈C k
ta cĂŁ
14
e x x e x e x
1
1 1
( .... ) ( ).... ( );
k
K k K K k
= 1
1 1
( .... ) ( ).... ( )
k
K k K K k
d y y d y d y
= .
Gi¶ thö b¶n rĂą m” ta muĂšn lËp mËt m· cho nĂŁ l” d·y kĂœ tĂč X∈ P *
.Ta cŸt X th”nh tĂ”ng khĂši, mçi khĂši cĂŁ Ÿé d”i k, khĂši cuĂši cĂŻng cĂŁ
thÓ cĂŁ Ÿé d”i <k, ta lu«n cĂŁ thÓ gi¶ thiÕt l” cĂŁ thÓ bĂŠ sung v”o phÇn
cuĂši cña khĂši mĂ©t sĂš kĂœ tĂč qui −íc n”o Ÿã ¼Ó nĂŁ cĂČng cĂŁ Ÿé d”i k.
Do Ÿã ta cĂŁ thÓ gi¶ thiÕt X = X1....Xm , trong Ÿã mçi X1,...,Xm l” mĂ©t
khĂši cĂŁ Ÿé d”i k. V” ta ¼Þnh nghÜa b¶n mËt m· cña X l”:
eK(X) = eK(X1....Xm ) = eK(X1)....eK(Xm).
§Æt Y = eK(X1)....eK(Xm), ta cĂŁ thÓ viÕt Y = Y1....Ym vĂ­i Yi =eK(Xi), v” do
Ÿã cã
dK(Y) = dK(Y1)....dK(Ym) = X1....Xm = X.
Cžch m· theo khĂši Ÿn gi¶n v” th«ng dĂŽng nhÊt l” khi ta chĂ€n Ÿé
d”i khÚi k =1. Khi Ÿã víi mÀi b¶n rù X = x1...xm ∈ P * ta cã
eK(X) = eK(x1....xm ) = eK(x1)....eK(xm).
VĂ­i cžch m· theo dßng (stream cipher), tr−íc hÕt ta ph¶i xžc
¼Þnh mĂ©t dßng khĂŁa, tĂžc l” mĂ©t phÇn tö K = K1...Km ∈ K *
, víi dßng
khĂŁa Ÿã ta xžc ¼Þnh vĂ­i mĂ€i b¶n rĂą X = x1...xm ∈ P * b¶n m· t−¬ng
Þng l”
eK(X) = 1
1 1
( ... ) ( )... ( ).
m
K m K K m
e x x e x e x
=
Gi¶i m· Y = eK(X) ta ¼−üc
dK(Y) = .
1 1 1 1
( ( )).... ( ( )) ....
m m
K K K K m m
d e x d e x x x X
= =
§Ó sö dĂŽng cžch lËp mËt m· theo dßng, ngo”i sÂŹ ŸÄ mËt m·
gĂšc ta cßn ph¶i cĂŁ mĂ©t dßng khĂŁa, tĂžc l” mĂ©t d·y cĂŁ Ÿé d”i tĂŻy Ăœ cžc
kĂœ tĂč khĂŁa. §ã th−ĂȘng l” cžc d·y cžc kĂœ tĂč khĂŁa ¼−üc sinh ra bĂ«i
mĂ©t bĂ© "tÂčo d·y ngÉu nhiÂȘn" n”o Ÿã xuÊt phžt tĂ” mĂ©t "mÇm" chĂ€n
tr−íc. Trong cžc Ăžng dĂŽng thĂčc tÕ, ng−ĂȘi ta th−ĂȘng dĂŻng cžch m·
theo dßng cĂŁ sÂŹ ŸÄ mËt m· gĂšc l” sÂŹ ŸÄ Vernam vĂ­i
P = C = K = {0,1}
v” cžc h”m lËp m· v” gi¶i m· ¼−üc xžc ¼Þnh bĂ«i
eK(x) = x + K mod 2, dK(y) = y +K mod 2 (K = 0 hoÆc 1);
dßng khĂŁa l” d·y bit ngÉu nhiÂȘn ¼−üc sinh ra bĂ«i mĂ©t bĂ© tÂčo d·y bit
ngÉu nhiÂȘn n”o Ÿã.
1.3. MËt m· khĂŁa ŸÚi xĂžng v” mËt m· cĂŁ khĂŁa c«ng khai.
Theo ¼Þnh nghÜa 1.2.1 vÒ sÂŹ ŸÄ mËt m·, cĂž mçi lÇn truyÒn tin
b¶o mËt, c¶ ng−ĂȘi göi A v” ng−ĂȘi nhËn B ph¶i cĂŻng thĂĄa thuËn
tr−íc vĂ­i nhau mĂ©t khĂŁa chung K, sau Ÿã ng−ĂȘi göi dĂŻng eK ¼Ó lËp
mËt m· cho th«ng bžo göi Âźi, v” ng−ĂȘi nhËn dĂŻng dK ¼Ó gi¶i m·
b¶n mËt m· nhËn ¼−üc. Ng−ĂȘi göi v” ng−ĂȘi nhËn cĂŻng cĂŁ mĂ©t khĂŁa
15
16
chung K, ¼−üc giĂ· nh− bÝ mËt riÂȘng cña hai ng−ĂȘi, dĂŻng c¶ cho lËp
mËt m· v” gi¶i m·, ta gĂ€i nhĂ·ng hÖ mËt m· vĂ­i cžch sö dĂŽng Ÿã l”
mËt m· khĂŁa ŸÚi xĂžng, Ÿ«i khi cĂČng gĂ€i l” mËt m· truyÒn thĂšng, v×
Ÿã l” cžch Ÿ· ¼−üc sö dĂŽng tĂ” h”ng ng”n nšm nay.
Tuy nhiÂȘn, vÒ nguyÂȘn tŸc hai h”m lËp m· v” gi¶i m· l” khžc
nhau, kh«ng nhÊt thiÕt ph¶i phĂŽ thuĂ©c cĂŻng mĂ©t khĂŁa. NÕu ta xžc
¼Þnh mçi khĂŁa K gĂ„m cĂŁ hai phÇn K = (K' , K'' ), K' d”nh cho viÖc lËp
mËt m· (v” ta cĂŁ h”m lËp m· eK' ), K'' d”nh cho viÖc gi¶i m· (v” cĂŁ
h”m gi¶i m· dK'' ), cžc h”m lËp m· v” gi¶i m· thĂĄa m·n hÖ thĂžc
dK'' (eK' (x)) = x víi mÀi x ∈P ,
th× ta ¼−üc mĂ©t hÖ mËt m· khĂŁa phi ŸÚi xĂžng. Nh− vËy, trong mĂ©t
hÖ mËt m· khĂŁa phi ŸÚi xĂžng, cžc khĂŁa lËp m· v” gi¶i m· (K' v” K''
) l” khžc nhau, nh−ng tÊt nhiÂȘn cĂŁ quan hÖ vĂ­i nhau. Trong hai khĂŁa
Ÿã, khĂŁa cÇn ph¶i giĂ· bÝ mËt l” khĂŁa gi¶i m· K'' , cßn khĂŁa lËp m· K'
cĂŁ thÓ ¼−üc c«ng bĂš c«ng khai; tuy nhiÂȘn ÂźiÒu Ÿã chØ cĂŁ Ăœ nghÜa thĂčc
tiÔn khi viÖc biÕt K' t×m K'' l” cĂčc kĂș khĂŁ khšn ¼Õn mĂžc hÇu nh−
kh«ng thÓ thĂčc hiÖn ¼−üc. MĂ©t hÖ mËt m· khĂŁa phi ŸÚi xĂžng cĂŁ tÝnh
chÊt nĂŁi trÂȘn, trong Ÿã khĂŁa lËp mËt m· K' cña mçi ng−ĂȘi tham gia
¼Òu ¼−üc c«ng bĂš c«ng khai, ¼−üc gĂ€i l” hÖ mËt m· khĂŁa c«ng khai.
Khži niÖm mËt m· khĂŁa c«ng khai mĂ­i ¼−üc ra ÂźĂȘi v”o giĂ·a nhĂ·ng
nšm 1970, v” ngay sau Ÿã Ÿ· trĂ« th”nh mĂ©t khži niÖm trung t©m cña
khoa hĂ€c mËt m· hiÖn ÂźÂči. Ta sÏ d”nh phÇn lĂ­n nĂ©i dung gižo tr×nh
n”y cho cžc hÖ mËt m· Ÿã v” nhĂ·ng Ăžng dĂŽng cña chĂłng v”o cžc
vÊn ¼Ò an to”n th«ng tin.
1.4. Cžc b”i tožn vÒ an to”n th«ng tin.
ChĂłng ta Âźang sĂšng trong mĂ©t thĂȘi ÂźÂči bĂŻng nĂŠ th«ng tin.
Nhu cÇu trao ŸÊi th«ng tin v” cžc ph−¬ng tiÖn truyÒn ¼−a th«ng tin
phžt triÓn mĂ©t cžch nhanh chĂŁng. V” cĂŻng vĂ­i sĂč phžt triÓn Ÿã, ¼ßi
hĂĄi b¶o vÖ tÝnh bÝ mËt v” an to”n cña th«ng tin cĂČng c”ng ng”y c”ng
to lĂ­n v” cĂŁ tÝnh phĂŠ biÕn. CĂŁ nhiÒu b”i tožn khžc nhau vÒ yÂȘu cÇu
an to”n th«ng tin tĂŻy theo nhĂ·ng t×nh huĂšng khžc nhau, nh−ng tĂču
17
trung cĂŁ mĂ©t sĂš b”i tožn chung nhÊt m” ta th−ĂȘng gÆp trong thĂčc
tiÔn l” nhĂ·ng b”i tožn sau Ÿ©y:
- b¶o mËt : giĂ· th«ng tin ¼−üc bÝ mËt ŸÚi vĂ­i tÊt c¶ mĂ€i
ng−ĂȘi, trĂ” mĂ©t Ýt ng−ĂȘi cĂŁ thÈm quyÒn ¼−üc ŸÀc, biÕt th«ng tin Ÿã;
- to”n vÑn th«ng tin : b¶o ٦m th«ng tin kh«ng bÞ thay ŸÊi
hay xuyÂȘn tÂčc bĂ«i nhĂ·ng kÎ kh«ng cĂŁ thÈm quyÒn hoÆc b»ng nhĂ·ng
ph−¬ng tiÖn kh«ng ¼−üc phÐp;
- nhËn thĂčc mĂ©t thĂčc thÓ : xžc nhËn danh tÝnh cña mĂ©t thĂčc
thÓ, chÂŒng hÂčn mĂ©t ng−ĂȘi, mĂ©t mžy tÝnh cuĂši trong mÂčng, mĂ©t thÎ
tÝn dîng,... ;
- nhËn thĂčc mĂ©t th«ng bžo : xžc nhËn nguĂ„n gĂšc cña mĂ©t
th«ng bžo ¼−üc göi ¼Õn ;
- chĂ· kĂœ : mĂ©t cžch ¼Ó gŸn kÕt mĂ©t th«ng tin vĂ­i mĂ©t thĂčc thÓ,
th−ĂȘng dĂŻng trong b”i tožn nhËn thĂčc mĂ©t th«ng bžo cĂČng nh−
trong nhiÒu b”i tožn nhËn thĂčc khžc ;
- ñy quyÒn : chuyÓn cho mĂ©t thĂčc thÓ khžc quyÒn ¼−üc ÂźÂči
diÖn hoÆc ¼−üc l”m mĂ©t viÖc g× Ÿã ;
- cÊp chĂžng chØ : cÊp mĂ©t sĂč xžc nhËn th«ng tin bĂ«i mĂ©t thĂčc
thÓ ¼−üc tÝn nhiÖm ;
- bžo nhËn : xžc nhËn mĂ©t th«ng bžo Ÿ· ¼−üc nhËn hay mĂ©t
dÞch vĂŽ Ÿ· ¼−üc thĂčc hiÖn ;
- l”m chĂžng : kiÓm thö viÖc tĂ„n tÂči mĂ©t th«ng tin Ă« mĂ©t thĂčc
thÓ khžc vĂ­i ng−ĂȘi chñ sĂ« hĂ·u th«ng tin Ÿã ;
- kh«ng chĂši bĂĄ ¼−üc : ngšn ngĂ”a viÖc chĂši bĂĄ tržch nhiÖm
ŸÚi vĂ­i mĂ©t cam kÕt Ÿ· cĂŁ (thÝ dĂŽ Ÿ· kĂœ v”o mĂ©t všn b¶n) ;
- Èn danh : che giÊu danh tÝnh cña mĂ©t thĂčc thÓ tham gia
trong mĂ©t tiÕn tr×nh n”o Ÿã (th−ĂȘng dĂŻng trong giao dÞch tiÒn ÂźiÖn
tö) ;
- thu hĂ„i : rĂłt lÂči mĂ©t giÊy chĂžng chØ hay ñy quyÒn Ÿ· cÊp;
- v©n v©n........
CÂŹ sĂ« cña cžc gi¶i phžp cho cžc b”i tožn kÓ trÂȘn l” cžc ph−¬ng phžp
mËt m·, ¼Æc biÖt l” mËt m· khĂŁa c«ng khai, ta sÏ xem xÐt kĂŒ mĂ©t v”i
b”i tožn Ÿã trong cžc ch−¬ng tiÕp theo.
18
1.5. Thžm m· v” tÝnh an to”n cña cžc hÖ mËt m·.
1.5.1. VÊn ¼Ò thžm m·.
MËt m· ¼−üc sö dĂŽng tr−íc hÕt l” ¼Ó b¶o ٦m tÝnh bÝ mËt cho
cžc th«ng tin ¼−üc trao ŸÊi, v” do Ÿã b”i tožn quan trĂ€ng nhÊt cña
thžm m· cĂČng l” b”i tožn phž bĂĄ tÝnh bÝ mËt Ÿã, tĂžc l” tĂ” b¶n mËt
m· cĂŁ thÓ thu ¼−üc dÔ d”ng (trÂȘn cžc kÂȘnh truyÒn tin c«ng cĂ©ng)
ng−ĂȘi thžm m· ph¶i phžt hiÖn ¼−üc nĂ©i dung th«ng tin bÞ che giÊu
trong b¶n mËt m· Ÿã, m” tĂšt nhÊt l” t×m ra ¼−üc b¶n rĂą gĂšc cña b¶n
mËt m· Ÿã. T×nh huĂšng th−ĂȘng gÆp l” b¶n th©n sÂŹ ŸÄ hÖ thĂšng mËt
m·, kÓ c¶ cžc phÐp lËp m· v” gi¶i m· (tĂžc cžc thuËt tožn E v” D ),
kh«ng nhÊt thiÕt l” bÝ mËt, do Ÿã b”i tožn qui vÒ viÖc t×m ch×a khĂŁa
mËt m· K, hay ch×a khĂŁa gi¶i m· K'', nÕu hÖ mËt m· cĂŁ khĂŁa phi ŸÚi
xĂžng. Nh− vËy, ta cĂŁ thÓ qui −íc xem b”i tožn thžm m· cÂŹ b¶n l” b”i
tožn t×m khĂŁa mËt m· K (hay khĂŁa gi¶i m· K''). §Ó gi¶i b”i tožn Ÿã,
gi¶ thiÕt ng−ĂȘi thžm m· biÕt th«ng tin vÒ sÂŹ ŸÄ hÖ mËt m· ¼−üc
dĂŻng, kÓ c¶ cžc phÐp lËp m· v” gi¶i m· tĂŠng qužt E v” D . Ngo”i
ra, ng−ĂȘi thžm m· cĂŁ thÓ biÕt thÂȘm mĂ©t sĂš th«ng tin khžc, tĂŻy theo
nhĂ·ng th«ng tin ¼−üc biÕt thÂȘm n”y m” ta cĂŁ thÓ ph©n loÂči b”i tožn
thžm m· th”nh cžc b”i tožn cĂŽ thÓ nh− sau:
- b”i tožn thžm m· chØ biÕt b¶n m· : l” b”i tožn phĂŠ biÕn nhÊt,
khi ng−ĂȘi thžm m· chØ biÕt mĂ©t b¶n mËt m· Y;
- b”i tožn thžm m· khi biÕt c¶ b¶n rĂą : ng−ĂȘi thžm m· biÕt
mĂ©t b¶n mËt m· Y cĂŻng vĂ­i b¶n rĂą t−¬ng Ăžng X;
- b”i tožn thžm m· khi cĂŁ b¶n rĂą ¼−üc chĂ€n : ng−ĂȘi thžm m·
cĂŁ thÓ chĂ€n mĂ©t b¶n rĂą X, v” biÕt b¶n mËt m· t−¬ng Ăžng Y . §iÒu
n”y cĂŁ thÓ xÈy ra khi ng−ĂȘi thžm m· chiÕm ¼−üc (tÂčm thĂȘi) mžy lËp
m·;
- b”i tožn thžm m· khi cĂŁ b¶n m· ¼−üc chĂ€n : ng−ĂȘi thžm m·
cĂŁ thÓ chĂ€n mĂ©t b¶n mËt m· Y, v” biÕt b¶n rĂą t−¬ng Ăžng X. §iÒu n”y
cĂŁ thÓ xÈy ra khi ng−ĂȘi thžm m· chiÕm ¼−üc tÂčm thĂȘi mžy gi¶i m·.
1.5.2. TÝnh an to”n cña mĂ©t hÖ mËt m·.
19
TÝnh an to”n cña mĂ©t hÖ thĂšng mËt m· phĂŽ thuĂ©c v”o Ÿé khĂŁ
khšn cña b”i tožn thžm m· khi sö dĂŽng hÖ mËt m· Ÿã. Ng−ĂȘi ta Ÿ·
¼Ò xuÊt mĂ©t sĂš cžch hiÓu cho khži niÖm an to”n cña hÖ thĂšng mËt
m·, ¼Ó trÂȘn cÂŹ sĂ« cžc cžch hiÓu Ÿã nghiÂȘn cĂžu tÝnh an to”n cña nhiÒu
hÖ mËt m· khžc nhau, sau Ÿ©y ta giĂ­i thiÖu v”i cžch hiÓu th«ng
dîng nhÊt:
- An to”n v« ÂźiÒu kiÖn : gi¶ thiÕt ng−ĂȘi thžm m· cĂŁ ¼−üc
th«ng tin vÒ b¶n m·. Theo quan niÖm lĂœ thuyÕt th«ng tin, nÕu nhĂ·ng
hiÓu biÕt vÒ b¶n m· kh«ng thu hÑp ¼−üc Ÿé bÊt ¼Þnh vÒ b¶n rĂą ŸÚi
vĂ­i ng−ĂȘi thžm m·, th× hÖ mËt m· l” an to”n v« ÂźiÒu kiÖn, hay theo
thuËt ngĂ· cña C. Shannon, hÖ l” bÝ mËt ho”n to”n. Nh− vËy, hÖ l” an
to”n v« ÂźiÒu kiÖn, nÕu Ÿé bÊt ¼Þnh vÒ b¶n rĂą sau khi ng−ĂȘi thžm m·
cĂŁ ¼−üc cžc th«ng tin (vÒ b¶n m·) b»ng Ÿé bÊt ¼Þnh vÒ b¶n rĂą tr−íc
Ÿã. TÝnh an to”n v« ÂźiÒu kiÖn Ÿ· ¼−üc nghiÂȘn cĂžu cho mĂ©t sĂš hÖ mËt
m· khĂŁa ŸÚi xĂžng m” ta sÏ tr×nh b”y trong ch−¬ng 3.
- An to”n ¼−üc chĂžng minh : mĂ©t hÖ thĂšng mËt m· ¼−üc xem
l” cĂŁ Ÿé an to”n ¼−üc chĂžng minh nÕu ta cĂŁ thÓ chĂžng minh ¼−üc l”
b”i tožn thžm m· ŸÚi vĂ­i hÖ thĂšng Ÿã khĂŁ t−¬ng ¼−¬ng vĂ­i mĂ©t b”i
tožn khĂŁ Ÿ· biÕt, thÝ dĂŽ b”i tožn ph©n tÝch mĂ©t sĂš nguyÂȘn th”nh tÝch
cžc thĂ”a sĂš nguyÂȘn tĂš, b”i tožn t×m l«garit rĂȘi rÂčc theo mĂ©t m«Ÿuyn
nguyÂȘn tĂš, v.v... (khĂŁ t−¬ng ¼−¬ng cĂŁ nghÜa l” nÕu b”i tožn n”y gi¶i
¼−üc th× b”i tožn kia cĂČng gi¶i ¼−üc vĂ­i cĂŻng mĂ©t Ÿé phĂžc tÂčp nh−
nhau).
- An to”n tÝnh tožn : hÖ mËt m· ¼−üc xem l” an to”n (vÒ mÆt)
tÝnh tožn, nÕu mĂ€i ph−¬ng phžp thžm m· Ÿ· biÕt ¼Òu ¼ßi hĂĄi mĂ©t
nguĂ„n nšng lĂčc tÝnh tožn v−üt mĂ€i kh¶ nšng (kÓ c¶ ph−¬ng tiÖn
thiÕt bÞ) tÝnh tožn cña mĂ©t kÎ thĂŻ gi¶ ¼Þnh. An to”n theo nghÜa n”y,
nĂŁi theo ng«n ngĂ· cña lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn, l” bao
h”m c¶ khži niÖm an to”n theo nghia "¼−üc chĂžng minh" nĂŁi trÂȘn.
TÝnh an to”n theo nghÜa ¼−üc chĂžng minh hay tÝnh tožn ¼−üc
sö dĂŽng nhiÒu trong viÖc nghiÂȘn cĂžu cžc hÖ thĂšng mËt m· hiÖn ÂźÂči,
¼Æc biÖt l” cžc hÖ thĂšng mËt m· khĂŁa c«ng khai, ta sÏ tr×nh b”y riÂȘng
cho tĂ”ng hÖ mËt m· ¼−üc tr×nh b”y trong cžc ch−¬ng vÒ sau. Ă« mĂŽc
20
1,4 ta Ÿ· giĂ­i thiÖu mĂ©t sĂš b”i tožn vÒ an to”n th«ng tin nĂŁi chung.
Cžc b”i tožn Ÿã ¼Òu cĂŁ hÂčt nh©n l” tÝnh an to”n cña mĂ©t hÖ mËt m·
n”o Ÿã, cho nÂȘn viÖc nghiÂȘn cĂžu tÝnh an to”n cña cžc hÖ mËt m·
cĂČng gĂŁp phÇn gi¶i quyÕt cžc vÊn ¼Ò an to”n th«ng tin kÓ trÂȘn.
CHŠ„NG II
CÂŹ sĂ« tožn hĂ€c cña lĂœ
thuyÕt mËt m·
2.1. SĂš hĂ€c cžc sĂš nguyÂȘn. ThuËt tožn Euclide.
Ta kĂœ hiÖu Z l” tËp hĂźp cžc sĂš nguyÂȘn, Z = {.....,-2,-1,0,1,2,....},
v” Z+
l” tËp hĂźp cžc sĂš nguyÂȘn kh«ng ©m, Z+
= {0,1,2,.....}. Trong mĂŽc
n”y ta sÏ nhŸc lÂči mĂ©t sĂš kiÕn thĂžc vÒ sĂš hĂ€c cña cžc sĂš nguyÂȘn cÇn
cho viÖc tr×nh b”y lĂœ thuyÕt mËt m·. V× ¼Ó tËp gižo tr×nh kh«ng quž
d”i dßng, cžc kiÕn thĂžc sÏ ¼−üc nhŸc ¼Õn chñ yÕu l” cžc khži niÖm,
cžc mÖnh ¼Ò sÏ ¼−üc sö dĂŽng, v.v..., cßn cžc phÇn chĂžng minh sÏ
¼−üc l−üc bĂĄ, bÂčn ŸÀc n”o muĂšn t×m hiÓu kĂŒ hÂŹn cĂŁ thÓ tham kh¶o
cžc sžch chuyÂȘn vÒ SĂš hĂ€c.
2.1.1. TÝnh chia hÕt cña cžc sĂš nguyÂȘn.
TËp hĂźp Z l” Ÿãng kÝn ŸÚi vĂ­i cžc phÐp cĂ©ng, trĂ” v” nh©n,
nh−ng kh«ng Ÿãng kÝn ŸÚi vĂ­i phÐp chia: chia mĂ©t sĂš nguyÂȘn cho
mĂ©t sĂš nguyÂȘn kh«ng ph¶i bao giĂȘ cĂČng ¼−üc kÕt qu¶ l” mĂ©t sĂš
nguyÂȘn! V× vËy, tr−ĂȘng hĂźp chia hÕt, tĂžc khi chia sĂš nguyÂȘn a cho sĂš
nguyÂȘn b ¼−üc th−¬ng l” mĂ©t sĂš nguyÂȘn q , a = b.q, cĂŁ mĂ©t Ăœ nghÜa
¼Æc biÖt. Khi Ÿã, ta nĂŁi a chia hÕt cho b, b chia hÕt a, a l” bĂ©i sĂš cña b,
b l” −íc sĂš cña a, v” kĂœ hiÖu l” b⏐a. DÔ thÊy ngay r»ng sĂš 1 l” −íc
sĂš cña mĂ€i sĂš nguyÂȘn bÊt kĂș, sĂš 0 l” bĂ©i sĂš cña mĂ€i sĂš nguyÂȘn bÊt
kĂș, mĂ€i sĂš nguyÂȘn a l” −íc sĂš, ŸÄng thĂȘi l” bĂ©i sĂš, cña chÝnh nĂŁ.
Cho hai sĂš nguyÂȘn bÊt kĂș a v” b , b > 1. ThĂčc hiÖn phÐp chia a cho b
ta sÏ ¼−üc hai sĂš q v” r sao cho
a = b.q + r , 0 < r < b .
SĂš q ¼−üc gĂ€i l” sĂš th−¬ng cña phÐp chia a cho b, kĂœ hiÖu a divb, v”
sĂš r ¼−üc gĂ€i l” sĂš d− cña phÐp chia a cho b, kĂœ hiÖu a modb. ThÝ
dÎ: 25 div 7 = 3 v” 25 mod 7 = 4, -25 div 7 = -4 v” -25 mod 7 = 3.
MĂ©t sĂš nguyÂȘn d ¼−üc gĂ€i l” −íc sĂš chung cña hai sĂš nguyÂȘn a v” b
nÕu d ⏐a v” d ⏐b. SĂš nguyÂȘn d ¼−üc gĂ€i l” −íc sĂš chung lĂ­n nhÊt
cña a v” b nÕu d > 0, d l” −íc sĂš chung cña a v” b, v” mĂ€i −íc sĂš
chung cña a v” b ¼Òu l” −íc sĂš cña d . Ta kĂœ hiÖu −íc sĂš chung lĂ­n
nhÊt cña a v” b l” gcd(a,b). ThÝ dĂŽ gcd(12,18) = 6, gcd(-18, 27) = 3.
DÔ thÊy r»ng vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a ta cĂŁ gcd(a,0) = a , ta cĂČng
sÏ qui −íc xem r»ng gcd(0, 0) = 0.
MĂ©t sĂš nguyÂȘn a > 1 ¼−üc gĂ€i l” sĂš nguyÂȘn tĂš, nÕu a kh«ng cĂŁ −íc
sĂš n”o ngo”i 1 v” chÝnh a ; v” ¼−üc gĂ€i l” hĂźp sĂš , nÕu kh«ng ph¶i l”
nguyÂȘn tĂš. ThÝ dĂŽ cžc sĂš 2 ,3 , 5, 7 l” sĂš nguyÂȘn tĂš; cžc sĂš 4, 6, 8, 10,
12, 14, 15 l” hĂźp sĂš. Hai sĂš a v” b ¼−üc gĂ€i l” nguyÂȘn tĂš vĂ­i nhau,
nÕu chĂłng kh«ng cĂŁ −íc sĂš chung n”o khžc 1, tĂžc l” nÕu gcd(a,b) =
1. MĂ©t sĂš nguyÂȘn n > 1 bÊt kĂș ¼Òu cĂŁ thÓ viÕt d−íi dÂčng:
1 2
1 2
. ... k
k
n p p pα
α α
=
trong Ÿã p1 , p2 ,..., pk l” cžc sĂš nguyÂȘn tĂš khžc nhau, α1 , α2 ,..., αk l”
cžc sĂš mĂČ nguyÂȘn d−¬ng. NÕu kh«ng kÓ thĂž tĂč cžc thĂ”a sĂš nguyÂȘn
tĂš, th× dÂčng biÓu diÔn Ÿã l” duy nhÊt, ta gĂ€i Ÿã l” dÂčng khai triÓn
chÝnh tŸc cña n . ThÝ dĂŽ dÂčng khai triÓn chÝnh tŸc cña 1800 l” 23
32
52
.
Cžc sĂš nguyÂȘn tĂš v” cžc vÊn ¼Ò vÒ sĂš nguyÂȘn tĂš cĂŁ mĂ©t vai trß quan
trĂ€ng trong sĂš hĂ€c v” trong Ăžng dĂŽng v”o lĂœ thuyÕt mËt m·, ta sÏ xÐt
riÂȘng trong mĂ©t mĂŽc sau.
§Þnh lĂœ 2.1.1. NÕu b > 0 v” b ⏐a th× gcd(a ,b) = b.
21
NÕu a = bq + r th× gcd(a,b) = gcd(b,r).
MĂ©t sĂš nguyÂȘn m ¼−üc gĂ€i l” bĂ©i sĂš chung cña a v” b nÕu a ⏐m v”
b⏐m. SĂš m ¼−üc gĂ€i l” bĂ©i sĂš chung bÐ nhÊt cña a v” b , v” ¼−üc kĂœ
hiÖu l” lcm(a ,b), nÕu m > 0, m l” bĂ©i sĂš chung cña a v” b , v” mĂ€i
bĂ©i sĂš chung cña a v” b ¼Òu l” bĂ©i cña m . ThÝ dĂŽ lcm(14,21) = 42.
VĂ­i hai sĂš nguyÂȘn d−¬ng a v” b bÊt kĂș ta cĂŁ quan hÖ
lcm(a,b).gcd(a,b) = a.b.
TĂ” ¼Þnh lĂœ 2.1.1 ta suy ra thuËt tožn sau Ÿ©y thĂčc hiÖn viÖc
t×m −íc sĂš chung lĂ­n nhÊt cña hai sĂš nguyÂȘn bÊt kĂș:
ThuËt to¾n Euclide t×m −íc sù chung lín nhÊt :
INPUT: hai sĂš nguyÂȘn kh«ng ©m a v” b , vĂ­i a ≄b .
OUTPUT: −íc sĂš chung lĂ­n nhÊt cña a v” b.
1. Trong khi cßn b > 0, thĂčc hiÖn:
1.1. ¼Æt r ←a modb , a ←b , b ← r.
2. Cho ra kÕt qu¶ (a).
ThÝ dî: Dïng thuËt to¾n Euclide t×m gcd( 4864, 3458), ta lÇn
l−üt ¼−üc cžc giž trÞ gžn cho cžc biÕn a, b v” r nh− sau:
22
4864 = 1. 3458 + 1406
3458 = 2. 1406 + 646
1406 = 2. 646 + 114
646 = 5. 114 + 76
114 = 1. 76 + 38
76 = 2. 38 + 0
a b r
4864
3458
1406
646
114
76
38
3458
1406
646
114
76
38
0
1406
646
114
76
38
0
23
V” thuËt tožn cho ta kÕt qu¶: gcd(4864, 3458) = 38.
Ta biÕt r»ng nÕu gcd(a,b) = d, th× ph−¬ng tr×nh bÊt ¼Þnh
a.x + b.y = d
cĂŁ nghiÖm nguyÂȘn (x,y), v” mĂ©t nghiÖm nguyÂȘn (x,y) nh− vËy cĂŁ thÓ
t×m ¼−üc bĂ«i thuËt tožn Euclide mĂ« rĂ©ng nh− sau:
ThuËt tožn Euclide mĂ« rĂ©ng :
INPUT: hai sĂš nguyÂȘn kh«ng ©m a v” b vĂ­i a ≄b.
OUTPUT: d = gcd(a,b) v” hai sÚ x,y sao cho a.x + b.y = d.
1. NÕu b = 0 th× ¼Æt d← a , x ←1, y ← 0, v” cho ra (d,x,y).
2. §Æt x2 = 1, x1 = 0 , y2 = 0 , y1 = 1.
3. Trong khi cßn b >0, thĂčc hiÖn:
3.1. q←a divb, r ← a modb , x ← x2 − qx1 , y ← y2 − qy1.
3.2. a ←b, b ←r , x2 ← x1 , x1← x , y2← y1 v” y1←y.
4. §Æt d ← a, x ←x2 , y ← y2 , v” cho ra kÕt qu¶ (d,x,y).
ThÝ dĂŽ: DĂŻng thuËt tožn Euclide mĂ« rĂ©ng cho cžc sĂš a = 4864 v” b =
3458, ta lÇn l−üt ¼−üc cžc giž trÞ sau Ÿ©y cho cžc biÕn a, b, q, r, x, y,
x1 , x2 , y1 , y2 (sau mçi chu tr×nh thĂčc hiÖn hai lÖnh 3.1 v” 3.2) :
a b
q
r x y
x1 x2 y1 y2
4864 3458 0 1 1 0
3458 1406 1 1406 1 -1 1 0 -1 1
1406 646 2 646 -2 3 -2 1 3 -1
646 114 2 114 5 -7 5 -2 -7 3
114 76 5 76 -27 38 -27 5 38 -7
24
76 38 1 38 32 -45 32 -27 -45 38
38 0 2 0 -91 128 -91 32 128 -45
Ta dÔ thö lÂči r»ng sau mçi lÇn thĂčc hiÖn chu tr×nh gĂ„m hai lÖnh 3.1
v” 3.2, cžc giž trÞ x,y,r thu ¼−üc lu«n tho¶ m·n 4864.x + 3458.y = r ,
v” do Ÿã khi kÕt thĂłc cžc vßng lÆp (Ăžng vĂ­i giž trÞ b = 0), thĂčc hiÖn
tiÕp lÖnh 4 ta ¼−üc kÕt qu¶ d = 38, x = 32 v” y = -45, cÆp sĂš (32,-45)
tho¶ m·n: 4864.32 + 3458. (-45) = 38.
2.1.2. §Äng d− v” ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh.
Cho n l” mĂ©t sĂš nguyÂȘn d−¬ng. Ta nĂŁi hai sĂš nguyÂȘn a v” b
l” ŸÄng d− vĂ­i nhau theo m«Ÿuyn n , v” viÕt a ≡ b (modn ), nÕu n ⏐
a−b (tĂžc cĂČng l” nÕu a − b chia hÕt cho n , hay khi chia a v” b cho n
ta ¼−üc cĂŻng mĂ©t sĂš d− nh− nhau).
ThÝ dî: 23 ≡ 8 (mod 5 ), v× 23 − 8 = 5.3, -19 ≡ 9 (mod 7) v× -19 − 9
= -4 . 7.
Quan hÖ ŸÄng d− (theo mĂ©t m«Ÿuyn n ) trÂȘn tËp hĂźp cžc sĂš
nguyÂȘn cĂŁ cžc tÝnh chÊt ph¶n xÂč, ŸÚi xĂžng v” bŸc cÇu,tĂžc l” mĂ©t
quan hÖ t−¬ng ¼−¬ng, do Ÿã nĂŁ tÂčo ra mĂ©t ph©n hoÂčch trÂȘn tËp hĂźp
tÊt c¶ cžc sĂš nguyÂȘn Z th”nh ra cžc lĂ­p t−¬ng ¼−¬ng: hai sĂš nguyÂȘn
thuĂ©c cĂŻng mĂ©t lĂ­p t−¬ng ¼−¬ng khi v” chØ khi chĂłng cho cĂŻng mĂ©t
sĂš d− nÕu chia cho n. Mçi lĂ­p t−¬ng ¼−¬ng nh− vËy ¼−üc ÂźÂči diÖn
bĂ«i mĂ©t sĂš duy nhÊt trong tËp hĂźp Zn = {0, 1, 2, 3,...., n -1}, l” sĂš d−
chung khi chia cžc sĂš trong lĂ­p Ÿã cho n. V× vËy, ta cĂŁ thÓ ŸÄng nhÊt
Zn vĂ­i tËp hĂźp tÊt c¶ cžc lĂ­p t−¬ng ¼−¬ng cžc sĂš nguyÂȘn theo modn ;
trÂȘn tËp Ÿã ta cĂŁ thÓ xžc ¼Þnh cžc phÐp tÝnh cĂ©ng, trĂ” v” nh©n theo
modn.
ThÝ dî: Z25 = {0, 1, 2, ..., 24}. Trong Z25 , 15 + 14 = 4, v× 15 + 14 = 29 =
4 (mod 25). T−¬ng tĂč, 15.14 = 10 trong Z25 .
25
Cho a ∈Zn . MĂ©t sĂš nguyÂȘn x ∈ Zn ¼−üc gĂ€i l” nghÞch ٦o
cña a theo mod n , nÕu a.x ≡ 1 (modn). NÕu cĂŁ sĂš x nh− vËy th× ta
nĂŁi a l” kh¶ nghÞch, v” kĂœ hiÖu x l” a-1
modn. ThÝ dî 22-1
mod25 = 8,
v× 22 .8 = 176 ≡ 1 (mod25). TĂ” ¼Þnh nghÜa ta cĂŁ thÓ suy ra r»ng a l”
kh¶ nghÞch theo modn khi v” chØ khi gcd(a,n ) = 1, tĂžc l” khi a v” n
nguyÂȘn tĂš vĂ­i nhau.
Ta ¼Þnh nghÜa phÐp chia trong Zn nh− sau: a : b (mod n) = a.b-
1
modn. PhÐp chia chØ thĂčc hiÖn ¼−üc khi b l” kh¶ nghÞch theo
modn. ThÝ dî 15 : 22 (mod25) = 15.22-1
mod 25 = 20.
B©y giĂȘ ta xÐt cžc ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh.
Ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh cĂŁ dÂčng
a.x ≡ b (modn ), (1)
trong Ÿã a, b, n l” cžc sĂš nguyÂȘn, n > 0, x l” Èn sĂš. Ph−¬ng tr×nh Ÿã
cĂŁ nghiÖm khi v” chØ khi d = gcd(a,n )⏐b, v” khi Ÿã nĂŁ cĂŁ Ÿóng d
nghiÖm theo modn. ThĂčc vËy, ¼Æt a‘ = a/d , b = b/d , n = n/d ,
ta thÊy ph−¬ng tr×nh ŸÄng d− (1) t−¬ng ¼−¬ng vĂ­i ph−¬ng tr×nh
a .x ≡ b (modn ),
V× gcd(a ,n ) = 1, nÂȘn ph−¬ng tr×nh n”y cĂŁ mĂ©t nghiÖm theo
modn :
x = x0 ≡ b .a -1
(modn ),
v” do Ÿã ph−¬ng tr×nh (1) cĂŁ d nghiÖm theo modn l” :
x = x0 , x0 + n , .... , x0 + (d − 1)n (modn).
TÊt c¶ d nghiÖm Ÿã khžc nhau theo modn , nh−ng cĂŻng ŸÄng d− vĂ­i
nhau theo modn .
B©y giĂȘ ta xÐt hÖ thĂšng cžc ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh.
MĂ©t hÖ nh− vËy cĂŁ thÓ ¼−a vÒ dÂčng
1 1 1
2 2 2
(mod )
(mod )
........................
(mod )
k k k
x a n
x a n
x a n
⎧ ≡
âŽȘ
âŽȘ
âŽȘ
âŽȘ ≡
âŽȘ
âŽȘ
⎚
âŽȘ
âŽȘ
âŽȘ
âŽȘ ≡
âŽȘ
âŽȘ
⎩
(2)
Ta kĂœ hiÖu: n = n1.n2....nk , Ni = n/ni . Ta cĂŁ ¼Þnh lĂœ sau Ÿ©y:
§Þnh lĂœ 2.2.1 (¼Þnh lĂœ sĂš d− Trung quĂšc). Gi¶ sö cžc sĂš
nguyÂȘn n1, n2,....,nk l” tĂ”ng cÆp nguyÂȘn tĂš vĂ­i nhau. Khi Ÿã, hÖ
ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh (2) cĂŁ mĂ©t nghiÖm duy nhÊt theo
modn.
NghiÖm duy nhÊt nĂŁi trong ¼Þnh lĂœ 2.2.1 ¼−üc cho bĂ«i biÓu thĂžc:
x = 1
. . mod ,
k
i i i
i
a N M n
=
∑
trong Ÿã Mi = Ni
-1
modni (cĂŁ Mi v× Ni v” ni nguyÂȘn tĂš vĂ­i nhau).
ThÝ dĂŽ: CÆp ph−¬ng tr×nh x ≡ 3 (mod7) v” x ≡ 7 (mod13) cĂŁ mĂ©t
nghiÖm duy nhÊt x ≡ 59 (mod91).
NÕu (n1 , n2) = 1, th× cÆp ph−¬ng tr×nh x ≡ a (modn1) v” x ≡ a
(modn2) cã nghiÖm duy nhÊt x ≡ a (modn) theo modn víi n = n1n2 .
2.1.3.ThÆng d− thu gĂ€n v” phÇn tö nguyÂȘn thuĂ».
TËp Zn = { 0,1,2,..., n −1} th−ĂȘng ¼−üc gĂ€i l” tËp cžc thÆng d− ¼Çy Ÿñ
theo modn, v× mĂ€i sĂš nguyÂȘn bÊt kĂș ¼Òu cĂŁ thÓ t×m ¼−üc trong Zn
mĂ©t sĂš ŸÄng d− vĂ­i m×nh (theo modn ). TËp Zn l” Ÿãng ŸÚi vĂ­i cžc
phÐp tÝnh cĂ©ng, trĂ” v” nh©n theo modn , nh−ng kh«ng Ÿãng ŸÚi vĂ­i
phÐp chia, v× phÐp chia cho a theo modn chØ cĂŁ thÓ thĂčc hiÖn ¼−üc
khi a v” n nguyÂȘn tĂš vĂ­i nhau, tĂžc khi gcd( a ,n ) =1.
26
B©y giĂȘ ta xÐt tËp Zn
*
= { a ∈ Zn : gcd( a ,n ) = 1} , tÞc Zn
*
l” tËp con
cña Zn bao gĂ„m tÊt c¶ cžc phÇn tö nguyÂȘn tĂš vĂ­i n. Ta gĂ€i tËp Ÿã l”
tËp cžc thÆng d− thu gĂ€n theo modn. MĂ€i sĂš nguyÂȘn nguyÂȘn tĂš vĂ­i
n ¼Òu cã thÓ t×m thÊy trong Zn
*
mĂ©t ÂźÂči diÖn ŸÄng d− vĂ­i m×nh
theo modn . ChĂł Ăœ r»ng nÕu p l” mĂ©t sĂš nguyÂȘn tĂš th× Zp
*
= {1,2,...,p-
1}.
TËp Zn
*
lËp th”nh mĂ©t nhĂŁm con ŸÚi vĂ­i phÐp nh©n cña Zn , v× trong
Zn
*
phÐp chia theo modn bao giĂȘ cĂČng thĂčc hiÖn ¼−üc, ta sÏ gĂ€i Zn
*
l” nhãm nh©n cña Zn .
Theo ÂźÂči sĂš hĂ€c, ta gĂ€i sĂš cžc phÇn tö trong mĂ©t nhĂŁm l” cÊp cña
nhĂŁm Ÿã. Ta kĂœ hiÖu φ(n) l” sĂš cžc sĂš nguyÂȘn d−¬ng bÐ hÂŹn n v”
nguyÂȘn tĂš vĂ­i n. Nh− vËy, nhĂŁm Zn
*
cĂŁ cÊp φ(n) , v” nÕu p l” sĂš
nguyÂȘn tĂš th× nhĂŁm Zp
*
cã cÊp p -1.
Ta nĂŁi mĂ©t phÇn tö g ∈Zn
*
cĂŁ cÊp m , nÕu m l” sĂš nguyÂȘn d−¬ng bÐ
nhÊt sao cho gm
=1 trong Zn
*
. Theo mĂ©t ¼Þnh lĂœ trong §Âči sĂš, ta cĂŁ
m ⏐ φ(n) . V× vËy, vĂ­i mĂ€i b ∈Zn
*
ta lu«n cĂŁ b φ(n )
≡ 1 modn .
NÕu p l” sĂš nguyÂȘn tĂš, th× do φ(p) = p − 1, ta cĂŁ vĂ­i mĂ€i b ∈Zp
*
:
27
p (3)
1
1 (mod )
p
b −
≡
NÕu b cĂŁ cÊp p - 1, tĂžc p - 1 l” sĂš mĂČ bÐ nhÊt tho¶ m·n c«ng thĂžc (3),
th× cžc phÇn tö b, b2
,...., b P-1
¼Òu khžc nhau v” theo modp, chĂłng lËp
th”nh Zp
*
. Theo thuËt ngĂ· ÂźÂči sĂš, khi Ÿã ta nĂŁi Zp
*
l” mét nhãm
cyclic v” b l” mĂ©t phÇn tö sinh, hay phÇn tö nguyÂȘn thuĂ» cña nhĂŁm
Ÿã. Trong lĂœ thuyÕt sĂš, ng−ĂȘi ta Ÿ· chĂžng minh ¼−üc cžc tÝnh chÊt
sau Ÿ©y cña cžc phÇn tö nguyÂȘn thuĂ»:
1. VĂ­i mĂ€i sĂš nguyÂȘn tĂš p, Zp
*
l” nhĂŁm cyclic, v” cĂŁ φ(p-1) phÇn
tö nguyÂȘn thuĂ».
2. NÕu 1 2
1 2
1 . .... s
s
p p p pα
α α
− = l” khai triÓn chÝnh tŸc cña p -1, v”
nÕu
1
1
1
1(mod ),....., 1(mod ),
s
p
p
p
p
a p a p
−
−
≡ ≡
th× a l” phÇn tö nguyÂȘn thuĂ» theo modp (tĂžc cña Zp
*
).
3. NÕu g l” phÇn tö nguyÂȘn thuĂ» theo modp , th× ÎČ = g modp
vĂ­i mĂ€i i m” gcd(i, p -1) = 1, cĂČng l” phÇn tö nguyÂȘn thuĂ» theo
modp .
i
n
Ba tÝnh chÊt Ÿã l” cÂŹ sĂ« giĂłp ta t×m cžc phÇn tö nguyÂȘn thuĂ» theo
modp , vĂ­i p l” sĂš nguyÂȘn tĂš bÊt kĂș. Ngo”i ra, ta cĂČng chĂł Ăœ mĂ©t sĂš
tÝnh chÊt sau Ÿ©y, cĂŁ thÓ ¼−üc sö dĂŽng nhiÒu trong cžc ch−¬ng sau:
a) NÕu p l” sĂš nguyÂȘn tĂš v” gcd(a,p) =1, th× ap -1
≡ 1 (modp) (¼Þnh lĂœ
Fermat ).
b) NÕu a∈Zn
*
, th× . NÕu
th× (¼Þnh lĂœ Euler).
( )
1(mod )
n
aφ
≡ (mod ( ))
r s n
φ
≡
(mod )
r s
a a n
≡
2.1.4. Ph−¬ng tr×nh ŸÄng d− bËc hai v” thÆng d− bËc hai.
Ta xÐt ph−¬ng tr×nh ŸÄng d− bËc hai cĂŁ dÂčng Ÿn gi¶n sau Ÿ©y:
2
(mod )
x a n
≡ ,
trong Ÿã n l” mĂ©t sĂš nguyÂȘn d−¬ng, a l” sĂš nguyÂȘn vĂ­i gcd(a,n) =1,
v” x l” Èn sĂš. Ph−¬ng tr×nh Ÿã kh«ng ph¶i bao giĂȘ cĂČng cĂŁ nghiÖm,
khi nĂŁ cĂŁ nghiÖm th× ta nĂŁi a l” mĂ©t thÆng d− bËc hai modn ; nÕu
kh«ng th× nĂŁi a l” mĂ©t bÊt thÆng d− bËc hai modn. TËp cžc sĂš
nguyÂȘn nguyÂȘn tĂš vĂ­i n ¼−üc ph©n hoÂčch th”nh hai tËp con: tËp Qn
cžc thÆng d− bËc hai modn , v” tËp n
Q c¾c bÊt thÆng d− modn.
Khi n = p l” sĂš nguyÂȘn tĂš, ta cĂŁ tiÂȘu chuÈn Euler sau Ÿ©y: SĂš a l”
thÆng d− bËc hai modp nÕu v” chØ nÕu . TiÂȘu
chuÈn ¼ã ¼−üc chþng minh nh− sau:
( 1)/2
1(mod )
p
a p
−
≡
Gi¶ sö cã x sao cho 2
(mod )
x a
≡ p
p
, khi Ÿã ta cĂČng sÏ cĂŁ
.
( 1)/2 2 ( 1)/2 1
( ) 1(mod )
p p p
a x x
− − −
≡ ≡ ≡
28
Ng−üc lÂči, gi¶ sö . Khi Ÿã . LÊy b l” mĂ©t
phÇn tö nguyÂȘn thuĂ» modp , Ÿt cĂŁ mĂ©t sĂš i n”o Ÿã sao cho
.TÔ Ÿã,
( 1)/2
1(mod )
p
a p
−
≡ *
p
a Z
∈
mod
i
a b p
=
29
p
( 1)/2 ( 1)/ 2
1(mod ).
p i p
a b
− −
≡ ≡
PhÇn tö b cĂŁ cÊp p - 1, do Ÿã (p - 1) chia hÕt i(p - 1)/2, i ph¶i l” sĂš
chÂœn, i = 2j , v” a cĂŁ cšn bËc hai l” ±b j
modp.
Cho p l” mĂ©t sĂš nguyÂȘn tĂš lÎ. VĂ­i mĂ€i a ≄ 0 ta ¼Þnh nghÜa
kĂœ hiÖu Legendre
a
p
⎛ ⎞
⎟
⎜ ⎟
⎜ ⎟
⎜ ⎟
⎜
⎝ ⎠
nh− sau:
0 , 0(mod );
1 , ;
1, .
p
p
khi a p
a
khi a Q
p
khi a Q
⎧
âŽȘ ≡
âŽȘ
⎛ ⎞ âŽȘ
âŽȘ
⎟
⎜
⎜
⎜
⎜
⎟= ∈
⎚
⎟
⎟ âŽȘ
⎝ ⎠ âŽȘ
âŽȘ− ∉
âŽȘ
⎩
i i Ø
TĂ” ¼Þnh nghÜa ta suy ra ngay a l” thÆng d− bËc ha modp kh v” ch
khi
a
p
⎛ ⎞
⎟
⎜ ⎟
⎜ ⎟
⎜ ⎟
⎜
⎝ ⎠
= 1. V” theo tiÂȘu chuÈn Euler nĂŁi trÂȘn, vĂ­i mĂ€i a ≄ 0, ta cĂŁ:
( 1)/2
(mod ).
p
a
a p
p
−
⎛ ⎞
⎟
⎜
⎜
⎜
⎜
⎟≡
⎟
⎟
⎝ ⎠
B©y giĂȘ ta mĂ« rĂ©ng kĂœ hiÖu Legendre ¼Ó ¼−üc kĂœ hiÖu Jacobi ŸÚi vĂ­i
mĂ€i sĂš nguyÂȘn lÎ n ≄1 v” mĂ€i sĂš nguyÂȘn a ≄ 0, cĂČng ¼−üc kĂœ hiÖu
bëi
a
n
⎛ ⎞
⎟
⎜ ⎟
⎜ ⎟
⎜
⎝ ⎠
v” ¼−üc ¼Þnh nghÜa nh− sau: Gi¶ sö a cĂŁ khai triÓn chÝnh tŸc
th”nh thĂ”a sĂš nguyÂȘn tĂš l” th×
1 2
1 2
. .... k
k
n p p pα
α α
=
1 2
1 2
. .... .
k
k
a a a a
n p p p
α
α α
⎛ ⎞
⎛ ⎞ ⎛ ⎞
⎛ ⎞ ⎟
⎟ ⎟ ⎜
⎜ ⎜
⎟
⎜ ⎟
⎟ ⎟
= ⎜
⎜ ⎜
⎟
⎜ ⎟
⎟ ⎟
⎟ ⎜
⎜ ⎜
⎜ ⎟ ⎟ ⎟
⎜ ⎜ ⎜
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Khi n = p l” sĂš nguyÂȘn tĂš th× giž trÞ cña cžc kĂœ hiÖu Legendre v”
Jacobi l” nh− nhau. ViÖc tÝnh kĂœ hiÖu Legendre cĂŁ thÓ phĂžc tÂčp khi p
rÊt lĂ­n, trong khi viÖc tÝnh kĂœ hiÖu Jacobi cĂŁ thÓ thuËn lĂźi hÂŹn do cĂŁ
thÓ sö dĂŽng cžc tÝnh chÊt 1-4 sau Ÿ©y:
1. NÕu , th×
1 2 (mod )
m m n
≡ 1 2
m m
n n
⎛ ⎞ ⎛ ⎞
⎟ ⎟
⎜ ⎜
=
⎟ ⎟
⎜ ⎜
⎟ ⎟
⎜ ⎜
⎝ ⎠ ⎝ ⎠
.
2.
1, 1(mod8),
2
1, 3(mod8).
khi n
khi n
n
⎧ ≡ ±
⎛ ⎞ âŽȘ
âŽȘ
⎟
⎜ =
⎟ ⎹
⎜ ⎟
⎜ âŽȘ
⎝ ⎠ − ≥±
âŽȘ
⎩
3. 1 2 1 2
.
. .
m m m m
n n n
⎛ ⎞ ⎛ ⎞ ⎛
⎟ ⎟
⎜ ⎜ ⎜
=
⎟ ⎟
⎜ ⎜ ⎜
⎟ ⎟
⎜ ⎜ ⎜
⎝ ⎠ ⎝ ⎠ ⎝
⎞
⎟
⎟
⎟
⎠
4. NÕu m v” n ¼Òu l” sĂš lÎ, th×
, 3(mod 4) & 3(mod 4),
, 1(mod 4) 1(mod 4).
n
khi m n
m
m
n n
khi m n
m
⎧ ⎛ ⎞
âŽȘ ⎟
âŽȘ ⎜
− ≡ ≡
⎟
âŽȘ ⎜ ⎟
⎜
âŽȘ ⎝ ⎠
⎛ ⎞ âŽȘ
⎟
⎜ =
⎟ ⎹
⎜ ⎟
⎜ âŽȘ
⎝ ⎠ ⎛ ⎞
âŽȘ ⎟
⎜ ≡ ∹ ≡
âŽȘ ⎟
⎜ ⎟
âŽȘ ⎜
⎝ ⎠
âŽȘ
⎩
ThÝ dî: Dïng c¾c tÝnh chÊt ¼ã, ta tÝnh ¼−üc:
4
3
7411 9283 1872 2 117
.
9283 7411 7411 7411 7411
117 7411 40 2 5
.
7411 117 117 117 117
5 117
117 5
⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞
⎟ ⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
= = = =
⎟ ⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
⎟ ⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞
⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
=− =− =− =
⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
⎟ ⎟ ⎟ ⎟
⎜ ⎜ ⎜ ⎜ ⎜
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ ⎞ ⎛
⎟
⎜ ⎜
=
⎟
⎜ ⎟
⎜
⎝ ⎠ ⎝
⎟
⎟
⎟
2
1.
5
⎞ ⎛ ⎞
⎟ ⎟
⎜
= =−
⎟ ⎟
⎜ ⎜
⎟ ⎟
⎜ ⎜
⎠ ⎝ ⎠
9283 l” mĂ©t sĂš nguyÂȘn tĂš. Do Ÿã, giž trÞ -1 cña kĂœ hiÖu Jacobi
7411
9283
⎛ ⎟
⎜ ⎟
⎜ ⎟
⎜
⎝ ⎠
⎞
cĂČng l” giž trÞ cña cĂŻng kĂœ hiÖu Legendre Ÿã, v” ta kÕt luËn
¼−üc r»ng 7411 l” bÊt thÆng d− bËc hai mod 9283 , hay ph−¬ng tr×nh
2
7411(mod9283)
x ≡
30
l” v« nghiÖm.
B©y giĂȘ ta xÐt viÖc gi¶i ph−¬ng tr×nh ŸÄng d− bËc hai
2
(mod )
x a
≡ n
p
(4)
trong mĂ©t tr−ĂȘng hĂźp ¼Æc biÖt khi n = p l” sĂš nguyÂȘn tĂš cĂŁ dÂčng p
= 4m +3, tĂžc p ŸÄng d− vĂ­i 3 theo mod4, v” a l” mĂ©t sĂš nguyÂȘn
nguyÂȘn tĂš vĂ­i p. Theo tiÂȘu chuÈn Euler ta biÕt ph−¬ng tr×nh (4) cĂŁ
nghiÖm khi v” chØ khi . Khi Ÿã ta cĂŁ:
( 1)/2
1(mod )
p
a −
≡
1
1
2
2( 1)
(mod ),
(mod ),
p
m
a a
a a
−
+
+
≡
≡
p
p
do Ÿã x ≡ ±am +1
(modp) l” hai nghiÖm cña ph−¬ng tr×nh (4).
2.2. Xžc suÊt v” thuËt tožn xžc suÊt.
2.2.1. Kh¾i niÖm x¾c suÊt.
Ta xÐt mĂ©t tËp hĂźp ℩ , ¼−üc gĂ€i l” kh«ng gian cžc sĂč kiÖn sÂŹ cÊp
(hay kh«ng gian mÉu). Cžc phÇn tö cña ℩, tĂžc cžc sĂč kiÖn sÂŹ cÊp hay
cžc mÉu, cĂŁ thÓ ¼−üc xem nh− cžc kÕt qu¶ cĂŁ thÓ cĂŁ (v” loÂči trĂ” lÉn
nhau) cña mĂ©t thĂčc nghiÖm n”o Ÿã. VÒ sau ta chØ xÐt cžc kh«ng gian
rĂȘi rÂčc, tĂžc tËp ℩ l” hĂ·u hÂčn, gi¶ sö .
{ }
1 2
, ,..., n
s s s
℩=
MĂ©t ph©n bĂš xžc suÊt P trÂȘn ℩ ¼−üc ¼Þnh nghÜa l” mĂ©t tËp cžc sĂš
thĂčc kh«ng ©m P = { p1, p2,...,pn} cĂŁ tĂŠng ∑pi = 1. SĂš pi ¼−üc coi l”
xžc suÊt cña sĂč kiÖn sÂŹ cÊp si .
MĂ©t tËp con E ⊆ ℩ ¼−üc gĂ€i l” mĂ©t sĂč kiÖn . Xžc suÊt cña sĂč kiÖn E
¼−üc ¼Þnh nghÜa bĂ«i p (E ) = ( )
s E
p s
∈
∑ .
Gi¶ sö E l” mĂ©t sĂč kiÖn trong kh«ng gian xžc suÊt ℩. Ta ¼Þnh nghÜa
sĂč kiÖn bĂŻ cña E, kĂœ hiÖu E , l” sĂč kiÖn gĂ„m tÊt c¶ cžc sĂč kiÖn sÂŹ cÊp
31
trong ℩ m” kh«ng thuĂ©c E . DĂŻng cžc thuËt ngĂ· cña lĂœ thuyÕt tËp
hĂźp, ta cĂŁ thÓ ¼Þnh nghÜa cžcsĂč kiÖn hĂźp E 1 âˆȘE 2 v” sĂč kiÖn giao E 1
∩E 2 cña hai sĂč kiÖn E 1 v” E 2 bÊt kĂș. V” ta cĂŁ:
1) Gi¶ sö E l” mĂ©t sĂč kiÖn. Khi Ÿã 0 ≀ p (E ) ≀ 1 v” p( E ) = 1 - p (E ).
Ngo”i ra, p (℩) = 1 v” p (∅) = 0.
2) Gi¶ sö E 1 v” E 2 l” hai sĂč kiÖn. NÕu E 1 ⊆E 2 th× p (E 1) ≀ p (E 2) .
V” cĂŁ p (E 1âˆȘE 2) + p (E 1 ∩E 2) =p (E 1) + p (E 2) . Do Ÿã p (E 1âˆȘE 2) =p
(E 1) + p (E 2) khi v” chØ khi E 1 ∩E 2 = ∅, tĂžc l” khi E 1 v” E 2 l” hai sĂč
kiÖn loÂči trĂ” lÉn nhau.
Cho E 1 v” E 2 l” hai sĂč kiÖn, vĂ­i p (E 2) > 0. Ta ¼Þnh nghÜa xžc suÊ cĂŁ
ÂźiÒu kiÖn cña E
t
1 khi cĂŁ E 2 , kĂœ hiÖu ( 1 2
p E E ), l”
1 2
1 2
2
( )
( )
( )
p E E
p E E
p E
.
∩
=
TĂ” ¼Þnh nghÜa ta suy ra c«ng thĂžc Bayes :
( )
( ) ( )
( )
1 2 1
1 2
2
.
.
p E p E E
p E E
p E
= .
Ta nĂŁi hai sĂč kiÖn E1 v” E 2 l” Ÿéc lËp vĂ­i nhau, nÕu p (E 1 ∩E 2) =
p(E1).p(E2). Khi Ÿã ta cã: ( ) ( )
1 2 1
p E E p E
= v” 2 1 2
( ) ( ).
p E E p E
=
Gi¶ sö ℩ l” mĂ©t kh«ng gian mÉu vĂ­i mĂ©t ph©n bĂš xžc suÊt P . Ta gĂ€i
mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn Ο trÂȘn ℩ l” mĂ©t žnh xÂč gžn cho mçi s ∈℩
mĂ©t sĂš thĂčc Ο (s ). HiÓn nhiÂȘn, nÕu Ο v” η l” cžc ÂźÂči l−üng ngÉu
nhiÂȘn trÂȘn ℩, th× Ο+η , Ο.η ¼−üc ¼Þnh nghÜa bĂ«i :
32
∀s ∈℩: (Ο+η ) (s ) = Ο (s) + η (s ) , (Ο.η ) (s) = Ο (s).η (s).
cĂČng l” cžc ÂźÂči l−¬ng ngÉu nhiÂȘn trÂȘn ℩ .
Gi¶ sö Ο l” mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn trÂȘn kh«ng gian mÉu ℩. §iÒu
Ÿã cĂŁ nghÜa l” vĂ­i mĂ€i s ∈℩, Ο lÊy giž trÞ b»ng Ο (s ) vĂ­i xžc suÊt p(s).
Ta ¼Þnh nghÜa giž trÞ kĂș vĂ€ng (hay trung b×nh, hay kĂș vĂ€ng tožn
hĂ€c) cña Ο l”
33
p s .
( ) ( ). ( )
s
E s
Ο Ο
∈℩
=∑
Ph−¬ng sai cña ÂźÂči l−üng ngÉu nhiÂȘn Ο cĂŁ giž trÞ trung b×nh ” ¼−üc
¼Þnh nghÜa l” Var (Ο ) = E ((Ο − ” )2
).
Cšn bËc hai kh«ng ©m cña Var (Ο )¼−üc gĂ€i l” Ÿé lÖch chuÈn cña Ο .
2.2.2. TÝnh bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m·.
Nšm 1949, C. Shannon c«ng bĂš c«ng tr×nh LĂœ thuyÕt truyÒn
th«ng cña cžc hÖ bÝ mËt , ¼−a ra nhiÒu quan niÖm l”m cÂŹ sĂ« cho viÖc
Ÿžnh giž tÝnh bÝ mËt cña cžc hÖ mËt m·, trong Ÿã cĂŁ khži niÖm tÝnh
bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m· ¼−üc ¼Þnh nghÜa nh− sau: Cho
hÖ mËt m· S = (P , C , K , E , D ) . Gi¶ thö trÂȘn cžc tËp P , C v” K ¼−üc
xžc ¼Þnh t−¬ng Ăžng cžc ph©n bĂš xžc suÊt pP(.), pC(.) v” pK(.). Nh−
vËy, vĂ­i mĂ€i x ∈P , y ∈ C v” K ∈K , pP(x), pC(y) v” pK(K) t−¬ng Ăžng
l” cžc xžc suÊt ¼Ó kĂœ tĂč b¶n rĂą l” x, kĂœ tĂč b¶n m· l” y v” khož l” K.
Xžc suÊt cĂŁ ÂźiÒu kiÖn, chÂŒng hÂčn, xžc suÊt cña viÖc b¶n rĂą l” x khi
b¶n m· l” y, ¼−üc kĂœ hiÖu l” pP(x⏐y). MĂ©t hÖ mËt m· ¼−üc gĂ€i l” bÝ
mËt ho”n to”n, nÕu vĂ­i mĂ€i x ∈P , y ∈ C cĂŁ pP(x⏐y) = pP(x). §iÒu Ÿã
cĂŁ nghÜa l” viÖc biÕt xžc suÊt b¶n rĂą l” x l” nh− nhau dĂŻ biÕt hay
kh«ng biÕt b¶n m· l” y ; nĂŁi cžch khžc, cĂŁ th«ng tin vÒ b¶n m·
kh«ng cho ta biÕt g× thÂȘm vÒ b¶n rĂą; b¶n rĂą v” b¶n m·, vĂ­i t− cžch
cžc biÕn ngÉu nhiÂȘn, l” Ÿéc lËp vĂ­i nhau. Ta cĂŁ ¼Þnh lĂœ sau Ÿ©y:
§Þnh lĂœ 2.2.1. Gi¶ sö S = (P , C , K , E , D ) l” mĂ©t hÖ mËt m· vĂ­i
ÂźiÒu kiÖn ⏐P ⏐ = ⏐C ⏐ = ⏐K ⏐ , tĂžc cžc tËp P , C , K cĂŁ sĂš cžc phÇn tö b»ng
nhau. Khi Ÿã, hÖ l” bÝ mËt ho”n to”n nÕu v” chØ nÕu mçi khož K ∈K
¼−üc dĂŻng vĂ­i xžc suÊt b»ng nhau l” 1/⏐K ⏐ , v” vĂ­i mĂ€i x ∈P , y ∈ C
cĂŁ mĂ©t khož duy nhÊt K ∈K sao cho eK (x ) = y.
ChĂžng minh. a) Gi¶ thö hÖ S l” bÝ mËt ho”n to”n. Khi Ÿã, vĂ­i mĂ€i x
∈P v” y ∈ C cĂŁ pP(x⏐y) = pP(x). Ngo”i ra ta cĂŁ thÓ gi¶ thiÕt pC(y) > 0
vĂ­i mĂ€i y ∈ C . TĂ” Ÿã theo c«ng thĂžc Bayes ta cĂŁ pC(y⏐x ) = pC(y) > 0 .
§iÒu Ÿã cĂŁ nghÜa l” cĂŁ Ýt nhÊt mĂ©t khož K sao cho eK (x ) = y . V× vËy,
nÕu cĂš ¼Þnh mĂ©t x ∈P th× ta cĂŁ
⏐C ⏐ = ⏐{ eK(x ): K ∈K }⏐ ≀ ⏐K ⏐ .
Theo gi¶ thiÕt cña ¼Þnh lĂœ, ⏐C ⏐ = ⏐K ⏐ , do Ÿã
⏐{ eK(x ): K ∈K }⏐ = ⏐K ⏐ .
Nh−ng ÂźiÒu n”y lÂči cĂŁ nghÜa l” kh«ng thÓ cĂŁ hai khož K1 ≠ K2 sao
cho VËy ta Ÿ· chĂžng minh ¼−üc vĂ­i mĂ€i x ∈P v” y ∈ C
c㠟óng mét khož K sao cho e
1 2
( ) ( ).
K K
e x e x
=
K (x ) = y .
KĂœ hiÖu n = ⏐K ⏐ v” ¼Æt K = {K1,..., Kn }. CĂš ¼Þnh mĂ©t y ∈ C v” gi¶ thö
vĂ­i P = {x
( )
i
K i
e x y
= 1,....., xn }, 1≀ i ≀ n. DĂŻng c«ng thĂžc Bayes ta lÂči
cĂŁ
( ). ( ) ( ). ( )
( )
( ) ( )
C i P i
.
K i P i
P i
C C
p y x p x p K p x
p x y
p y p y
= =
34
Do gi¶ thiÕt hÖ l” bÝ mËt ho”n to”n, ta cĂŁ pP(xi ⏐y) = pP(xi ). TĂ” Ÿã suy
ra vĂ­i mĂ€i i , 1≀ i ≀ n, pK (Ki ) = pC (y). VËy cžc pK (Ki ) (1≀ i ≀ n )
¼Òu b»ng nhau, v” do Ÿã ¼Òu b»ng 1/⏐K ⏐ .
b) B©y giĂȘ ta chĂžng minh ÂźiÒu ng−üc lÂči. Gi¶ thiÕt pK(K) = 1/⏐K ⏐ vĂ­i
mÀi K ∈K , v” víi mÀi x ∈P , y ∈ C c㠟óng mét khož K∈K sao cho
eK (x ) = y . Ta tÝnh:
1
( ) ( ). ( ( )) ( ( ))
1
( ( )).
C K P K P K
K K
P K
K
p y p K p d y p d y
p d y
∈ ∈
∈
= = =
=
∑ ∑
∑
K K
K
K
K
Khi K chÂčy qua tËp khož K th× dK (y ) chÂčy qua tËp P , do Ÿã
( ( )) ( ) 1
P K P
K x
p d y p x
∈ ∈
,
= =
∑ ∑
K P
v” ta ¼−üc pC (y ) = 1/⏐K ⏐ vĂ­i mĂ€i y ∈ C .
MÆt khžc, gĂ€i K l” khož duy nhÊt m” eK (x ) = y , ta cĂŁ
pC(y ⏐x) = pK(K) = 1/⏐K ⏐ .
DĂŻng c«ng thĂžc Bayes ta lÂči ¼−üc vĂ­i mĂ€i x ∈P , y ∈ C :
( ). ( ) ( ).1/
( ) ( )
( ) 1/
P C P
P P
C
p x p y x p x
p x y p x
p y
= = =
K
K
.
VËy hÖ l” bÝ mËt ho”n to”n. §Þnh lĂœ ¼−üc chĂžng minh.
2.2.3. ThuËt to¾n x¾c suÊt:
35
36
Khži niÖm thuËt tožn m” ta th−ĂȘng hiÓu l” thuËt tožn tÊt ¼Þnh,
Ÿã l” mĂ©t tiÕn tr×nh thĂčc hiÖn cžc phÐp tožn trÂȘn dĂ· liÖu ¼Çu v”o v”
cho kÕt qu¶ Ă« ¼Çu ra. Theo D.E. Knuth, thuËt tožn cĂŁ 5 thuĂ©c tÝnh cÂŹ
b¶n: tÝnh hĂ·u hÂčn, thuËt tožn lu«n kÕt thĂłc sau mĂ©t sĂš hĂ·u hÂčn
b−íc; tÝnh xžc ¼Þnh, mçi b−íc cña thuËt tožn ph¶i ¼−üc xžc ¼Þnh
mĂ©t cžch chÝnh xžc; tËp hĂźp ¼Çu v”o v” ¼Çu ra cña mçi thuËt tožn
cĂČng ¼−üc xžc ¼Þnh rĂą r”ng; v” tÝnh hiÖu qu¶, mĂ€i phÐp tožn trong
thuËt tožn ph¶i l” cÂŹ b¶n, cĂŁ thÓ ¼−üc thĂčc hiÖn chÝnh xžc trong mĂ©t
thĂȘi gian xžc ¼Þnh. ThuËt tožn l” khži niÖm cÂŹ b¶n ŸÚi vĂ­i viÖc lËp
tr×nh trÂȘn mžy tÝnh, v” Ÿ· ¼−üc sö dĂŽng rÊt phĂŠ biÕn. Nh−ng nh− ta
biÕt, ŸÚi vĂ­i nhiÒu b”i tožn trong thĂčc tÕ, kh«ng ph¶i bao giĂȘ ta cĂČng
t×m ¼−üc thuËt tožn gi¶i chĂłng vĂ­i Ÿé phĂžc tÂčp tÝnh tožn chÊp nhËn
¼−üc (ta sÏ xÐt qua vÊn ¼Ò n”y trong mĂ©t tiÕt sau). V× vËy, cĂŻng vĂ­i
cžc thuËt tožn tÊt ¼Þnh, ŸÚi vĂ­i mĂ©t sĂš b”i tožn ta sÏ xÐt thÂȘm cžc
thuËt tožn xžc suÊt, Ÿã l” nhĂ·ng thuËt tožn m” cĂŻng vĂ­i dĂ· liÖu ¼Çu
v”o ta bĂŠ sung thÂȘm giž trÞ cña mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn t−¬ng Ăžng
n”o Ÿã, th−ĂȘng l” cžc sĂš ngÉu nhiÂȘn.
Cžc thuËt tožn xžc suÊt th−ĂȘng ¼−üc x©y dĂčng cho cžc b”i tožn
quyÕt ¼Þnh, tĂžc cžc b”i tožn xžc ¼Þnh trÂȘn mĂ©t tËp hĂźp dĂ· liÖu sao
cho Ăžng vĂ­i mçi dĂ· liÖu b”i tožn cĂŁ mĂ©t tr¶ lĂȘi cĂŁ hoÆc kh«ng .
Ng−ĂȘi ta chia cžc thuËt tožn xžc suÊt th”nh hai loÂči: loÂči thuËt tožn
Monte Carlo v” loÂči thuËt tožn Las Vegas . ThuËt tožn Monte Carlo
lu«n kÕt thĂłc vĂ­i kÕt qu¶ cĂŁ hoÆc kh«ng ŸÚi vĂ­i mĂ€i dĂ· liÖu ¼Çu v”o
bÊt kĂș; cßn thuËt tožn Las Vegas tuy cĂČng kÕt thĂłc vĂ­i mĂ€i dĂ· liÖu,
nh−ng cĂŁ thÓ kÕt thĂłc vĂ­i mĂ©t th«ng bžo kh«ng cĂŁ tr¶ lĂȘi cĂŁ hoÆc
kh«ng. ThuËt tožn Monte Carlo ¼−üc gĂ€i l” thiÂȘn vÒ cĂŁ, nÕu nĂŁ cho
tr¶ lĂȘi cĂŁ th× tr¶ lĂȘi Ÿã chŸc chŸn l” Ÿóng, cßn nÕu nĂŁ cho tr¶ lĂȘi
kh«ng th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. T−¬ng tĂč,
mĂ©t thuËt tožn Monte Carlo ¼−üc gĂ€i l” thiÂȘn vÒ kh«ng, nÕu nĂŁ cho
tr¶ lĂȘi kh«ng th× tr¶ lĂȘi Ÿã chŸc chŸn l” Ÿóng, cßn nÕu nĂŁ cho tr¶ lĂȘi
cĂŁ th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Cßn vĂ­i thuËt
tožn Las Vegas, nÕu nĂŁ kÕt thĂłc vĂ­i tr¶ lĂȘi cĂŁ hoÆc kh«ng , th× tr¶ lĂȘi
Ÿã chŸc chŸn Ÿóng, v” nĂŁ cĂŁ thÓ kÕt thĂłc vĂ­i th«ng bžo kh«ng cĂŁ tr¶
37
lĂȘi vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Trong tiÕt 2.8 sau Ÿ©y ta sÏ cho v”i thÝ
dĂŽ cĂŽ thÓ vÒ mĂ©t sĂš thuËt tožn xžc suÊt thuĂ©c c¶ hai loÂči Ÿã.
2.3. §é phĂžc tÂčp tÝnh tožn.
2.3.1. Khži niÖm vÒ Ÿé phĂžc tÂčp tÝnh tožn.
LĂœ thuyÕt thuËt tožn v” cžc h”m sĂš tÝnh ¼−üc ra ÂźĂȘi tĂ”
nhĂ·ng nšm 30 cña thÕ kĂ» 20 Ÿ· ¼Æt nÒn mĂŁng cho viÖc nghiÂȘn cĂžu
cžc vÊn ¼Ò “tÝnh ¼−üc”, “gi¶i ¼−üc” trong tožn hĂ€c, ¼−a ¼Õn nhiÒu
kÕt qu¶ rÊt quan trĂ€ng v” lĂœ thĂł. Nh−ng tĂ” cži “tÝnh ¼−üc” mĂ©t cžch
trĂ”u t−üng, hiÓu theo nghÜa tiÒm nšng,¼Õn viÖc tÝnh ¼−üc trong thĂčc
tÕ cña khoa hĂ€c tÝnh tožn b»ng mžy tÝnh ÂźiÖn tö, l” c¶ mĂ©t kho¶ng
cžch rÊt lĂ­n. BiÕt bao nhiÂȘu thĂž ¼−üc chĂžng minh l” tÝnh ¼−üc mĂ©t
cžch tiÒm nšng, nh−ng kh«ng tÝnh ¼−üc trong thĂčc tÕ, dĂŻ cĂŁ sĂč hç
trĂź cña nhĂ·ng mžy tÝnh ÂźiÖn tö ! VÊn ¼Ò l” do Ă« chç nhĂ·ng ¼ßi hĂĄi
vÒ kh«ng gian vËt chÊt v” vÒ thĂȘi gian ¼Ó thĂčc hiÖn cžc tiÕn tr×nh
tÝnh tožn nhiÒu khi v−üt quž xa nhĂ·ng kh¶ nšng thĂčc tÕ. TĂ” Ÿã, v”o
kho¶ng giĂ·a nhĂ·ng nšm 60 (cña thÕ kĂ» tr−íc), mĂ©t lĂœ thuyÕt vÒ Ÿé
phĂžc tÂčp tÝnh tožn bŸt ¼Çu ¼−üc h×nh th”nh v” phžt triÓn nhanh
chĂŁng, cung cÊp cho chĂłng ta nhiÒu hiÓu biÕt s©u sŸc vÒ b¶n chÊt
phĂžc tÂčp cña cžc thuËt tožn v” cžc b”i tožn, c¶ nhĂ·ng b”i tožn thuÇn
tuĂœ lĂœ thuyÕt ¼Õn nhĂ·ng b”i tožn th−ĂȘng gÆp trong thĂčc tÕ. Sau Ÿ©y
ta giĂ­i thiÖu sÂŹ l−üc mĂ©t sĂš khži niÖm cÂŹ b¶n v” v”i kÕt qu¶ sÏ ¼−üc
dĂŻng ¼Õn cña lĂœ thuyÕt Ÿã.
Tr−íc hÕt, ta hiÓu Ÿé phĂžc tÂčp tÝnh tožn (vÒ kh«ng gian hay vÒ thĂȘi
gian) cña mĂ©t tiÕn tr×nh tÝnh tožn l” sĂš « nhĂ­ ¼−üc dĂŻng hay sĂš cžc
phÐp tožn sÂŹ cÊp ¼−üc thĂčc hiÖn trong tiÕn tr×nh tÝnh tožn Ÿã.
DĂ· liÖu ¼Çu v”o ŸÚi vĂ­i mĂ©t thuËt tožn th−ĂȘng ¼−üc biÓu diÔn qua
cžc tĂ” trong mĂ©t b¶ng kĂœ tĂč n”o Ÿã. §é d”i cña mĂ©t tĂ” l” sĂš kĂœ tĂč
trong tÔ Ÿã.
38
Cho mĂ©t thuËt tožn A trÂȘn b¶ng kĂœ tĂč ÎŁ (tĂžc cĂŁ ¼Çu v”o l” cžc tĂ”
trong ÎŁ ) . §é phĂžc tÂčp tÝnh tožn cña thuËt tožn A ¼−üc hiÓu l” mĂ©t
h”m sÚ fA(n ) sao cho víi mçi sÚ n , fA(n ) l” sÚ « nhí, hay sÚ phÐp
tožn sÂŹ cÊp tĂši Âźa m” A cÇn ¼Ó thĂčc hiÖn tiÕn tr×nh tÝnh tožn cña
m×nh trÂȘn cžc dĂ· liÖu v”o cĂŁ Ÿé d”i ≀ n . Ta nĂŁi thuËt tožn A cĂŁ Ÿé
phĂžc tÂčp thĂȘi gian Âźa thĂžc , nÕu cĂŁ mĂ©t Âźa thĂžc P (n ) sao cho vĂ­i
mĂ€i n Ÿñ lĂ­n ta cĂŁ fA(n) ≀ P(n ), trong Ÿã fA(n ) l” Ÿé phĂžc tÂčp tÝnh
tožn theo thĂȘi gian cña A.
VÒ sau khi nĂŁi ¼Õn cžc b”i tožn, ta hiÓu Ÿã l” cžc b”i tožn quyÕt ¼Þnh
, mçi b”i tožn P nh− vËy ¼−üc xžc ¼Þnh bĂ«i:
- mĂ©t tËp cžc dĂ· liÖu v”o I (trong mĂ©t b¶ng kĂœ tĂč ÎŁ n”o Ÿã),
- mĂ©t c©u hĂĄi Q trÂȘn cžc dĂ· liÖu v”o, sao cho vĂ­i mçi dĂ· liÖu
v”o x ∈ I , c©u hĂĄi Q cĂŁ mĂ©t tr¶ lĂȘi Ÿóng hoÆc sai.
Ta nĂŁi b”i tožn quyÕt ¼Þnh P l” gi¶i ¼−üc , nÕu cĂŁ thuËt tožn
¼Ó gi¶i nĂŁ, tĂžc l” thuËt tožn l”m viÖc cĂŁ kÕt thĂłc trÂȘn mĂ€i dĂ· liÖu v”o
cña b”i tožn, v” cho kÕt qu¶ Ÿóng hoÆc sai tuĂș theo c©u hĂĄi Q trÂȘn
dĂ· liÖu Ÿã cĂŁ tr¶ lĂȘi Ÿóng hoÆc sai. B”i tožn P l” gi¶i ¼−üc trong thĂȘi
gian Âźa thĂžc , nÕu cĂŁ thuËt tožn gi¶i nĂŁ vĂ­i Ÿé phĂžc tÂčp thĂȘi gian Âźa
thĂžc. Sau Ÿ©y l” v”i thÝ dĂŽ vÒ cžc b”i tožn quyÕt ¼Þnh:
B”i tožn SATISFIABILITY (viÕt tŸt l” SAT ):
- mçi dĂ· liÖu v”o l” mĂ©t c«ng thĂžc F cña l«gich mÖnh ¼Ò,
¼−üc viÕt d−íi dÂčng hĂ©i chuÈn tŸc, tĂžc dÂčng hĂ©i cña mĂ©t sĂš cžc
“clause”.
- C©u hĂĄi l”: c«ng thĂžc F cĂŁ tho¶ ¼−üc hay kh«ng ?
B”i tožn CLIQUE :
- mçi dĂ· liÖu v”o l” mĂ©t graph G v” mĂ©t sĂš nguyÂȘn k .
- C©u hĂĄi l”: Graph G cĂŁ mĂ©t clique vĂ­i ≄ k ŸØnh hay kh«ng ?
(mĂ©t clique cña G l” mĂ©t graph con ¼Çy Ÿñ cña G ).
B”i tožn KNAPSACK :
- mçi dĂ· liÖu l” mĂ©t bĂ© n +1 sĂš nguyÂȘn d−¬ng I = (s1,...,sn ; T ).
- C©u håi l”: cã hay kh«ng mét vect Boole (x1,...,xn) sao cho
1
. ?
n
i i
i
x s T
=
=
∑
(vectÂŹ boole l” vectÂŹ cĂŁ cžc th”nh phÇn l” 0 hoÆc 1).
B”i tožn thÆng d− bËc hai :
- mçi dĂ· liÖu gĂ„m hai sĂš nguyÂȘn d−¬ng (a , n ).
- C©u hĂĄi l”: a cĂŁ l” thÆng d− bËc hai theo modn hay kh«ng ?
B”i tožn hßp sÚ :
- mçi dĂ· liÖu l” mĂ©t sĂš nguyÂȘn d−¬ng N.
- C©u håi: N l” hßp sÚ hay kh«ng ? TÞc cã hay kh«ng hai sÚ
m, n >1 sao cho N =m . n ?
T−¬ng tĂč, nÕu ¼Æt c©u hĂĄi l” “N l” sĂš nguyÂȘn tĂš hay kh«ng?” th× ta
¼−üc b”i tožn sĂš nguyÂȘn tĂš .
§Úi vĂ­i tÊt c¶ cžc b”i tožn kÓ trÂȘn, trĂ” b”i tožn hĂźp sĂš v” sĂš
nguyÂȘn tĂš, cho ¼Õn nay ng−ĂȘi ta ¼Òu ch−a t×m ¼−üc thuËt tožn gi¶i
chĂłng trong thĂȘi gian Âźa thĂžc.
2.3.2. LĂ­p phĂžc tÂčp.
Ta xÐt mĂ©t v”i lĂ­p cžc b”i tožn ¼−üc xžc ¼Þnh theo Ÿé phĂžc
tÂčp tÝnh tožn cña chĂłng. Tr−íc hÕt, ta ¼Þnh nghÜa P l” lĂ­p tÊt c¶ cžc
b”i tožn cĂŁ thÓ gi¶i ¼−üc bĂ«i thuËt tožn trong thĂȘi gian Âźa thĂžc.
Gi¶ sö cho hai b”i tožn P1 v” P2 vĂ­i cžc tËp dĂ· liÖu trong hai b¶ng kĂœ
tĂč t−¬ng Ăžng l” ÎŁ1 v” ÎŁ2 . MĂ©t thuËt tožn ¼−üc gĂ€i l”
mĂ©t phÐp qui dÉn b”i tožn P
*
1
:
f Σ → Σ*
2
1 vÒ b”i tožn P2 , nÕu nĂŁ biÕn mçi dĂ·
liÖu x cña b”i tožn P1 th”nh mĂ©t dĂ· liÖu f (x ) cña b”i tožn P2 , v” sao
cho c©u hĂĄi cña P1 trÂȘn x cĂŁ tr¶ lĂȘi Ÿóng khi v” chØ khi c©u hĂĄi cña P2
trÂȘn f (x ) cĂČng cĂŁ tr¶ lĂȘi Ÿóng. Ta nĂŁi b”i tožn P1 qui dÉn ¼−üc vÒ
b”i tožn P2 trong thĂȘi gian Âźa thĂžc , v” kĂœ hiÖu P1 ∝ P2 , nÕu cĂŁ thuËt
tožn f vĂ­i Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc qui dÉn b”i tožn P1 vÒ b”i
tožn P2 .Ta dÔ thÊy r»ng, nÕu P1 ∝ P2 v” P2 ∈ P , th× cĂČng cĂŁ P1 ∈ P .
MĂ©t lĂ­p quan trĂ€ng cžc b”i tožn Ÿ· ¼−üc nghiÂȘn cĂžu nhiÒu l”
lĂ­p cžc b”i tožn khž th−ĂȘng gÆp trong thĂčc tÕ nh−ng cho ¼Õn nay
39
40
ch−a cĂŁ kh¶ nšng n”o chĂžng tĂĄ l” chĂłng cĂŁ thÓ gi¶i ¼−üc trong thĂȘi
gian Âźa thĂžc. §ã l” lĂ­p cžc b”i tožn NP-dÇy Ÿñ m” ta sÏ ¼Þnh nghÜa
sau Ÿ©y:
CĂŻng vĂ­i khži niÖm thuËt tožn tÊt ¼Þnh th«ng th−ĂȘng (cĂŁ thÓ
m« t¶ chÝnh xžc chÂŒng hÂčn bĂ«i mžy Turing tÊt ¼Þnh), ta xÐt khži
niÖm thuËt tožn kh«ng Ÿn ¼Þnh vĂ­i mĂ©t Ýt thay ŸÊi nh− sau: nÕu
ŸÚi vĂ­i mžy Turing tÊt ¼Þnh, khi mžy Âźang Ă« mĂ©t trÂčng thži q v”
Âźang ŸÀc mĂ©t kĂœ tĂč a th× cÆp (q,a ) xžc ¼Þnh duy nhÊt mĂ©t h”nh
Ÿéng kÕ tiÕp cña mžy, cßn ŸÚi vĂ­i mžy Turing kh«ng Ÿn ¼Þnh, ta
qui −íc r»ng (q,a) xžc ¼Þnh kh«ng ph¶i duy nhÊt m” l” mĂ©t tËp hĂ·u
hÂčn cžc h”nh Ÿéng kÕ tiÕp; mžy cĂŁ thÓ thĂčc hiÖn trong b−íc kÕ tiÕp
mĂ©t trong cžc h”nh Ÿéng Ÿã. Nh− vËy, ŸÚi vĂ­i mĂ©t dĂ· liÖu v”o x ,
mĂ©t thuËt tožn kh«ng Ÿn ¼Þnh (¼−üc xžc ¼Þnh chÂŒng hÂčn bĂ«i mĂ©t
mžy Turing kh«ng Ÿn ¼Þnh) kh«ng ph¶i chØ cĂŁ mĂ©t tiÕn tr×nh tÝnh
tožn duy nhÊt, m” cĂŁ thÓ cĂŁ mĂ©t sĂš hĂ·u hÂčn nhĂ·ng tiÕn tr×nh tÝnh
tožn khžc nhau. Ta nĂŁi thuËt tožn kh«ng Ÿn ¼Þnh A chÊp nhËn dĂ·
liÖu x , nÕu vĂ­i dĂ· liÖu v”o x thuËt tožn A cĂŁ Ýt nhÊt mĂ©t tiÕn tr×nh
tÝnh tožn kÕt thĂłc Ă« trÂčng thži chÊp nhËn (tĂžc vĂ­i kÕt qu¶ Ÿóng).
MĂ©t b”i tožn P ¼−üc gĂ€i l” gi¶i ¼−üc bĂ«i thuËt tožn kh«ng Ÿn ¼Þnh
trong thĂȘi gian Âźa thĂžc nÕu cĂŁ mĂ©t thuËt tožn kh«ng Ÿn ¼Þnh A
v” mĂ©t Âźa thĂžc p(n ) sao cho vĂ­i mĂ€i dĂ· liÖu v”o x cĂŁ Ÿé d”i n , x ∈P
(tĂžc c©u hĂĄi cña P cĂŁ tr¶ lĂȘi Ÿóng trÂȘn x ) khi v” chØ khi thuËt tožn A
chÊp nhËn x bĂ«i mĂ©t tiÕn tr×nh tÝnh tožn cĂŁ Ÿé phĂžc tÂčp thĂȘi gian ≀
p(n ). Ta kĂœ hiÖu lĂ­p tÊt c¶ cžc b”i tožn gi¶i ¼−üc bĂ«i thuËt tožn
kh«ng Ÿn ¼Þnh trong thĂȘi gian Âźa thĂžc l” NP.
Ng−ĂȘi ta Ÿ· chĂžng tĂĄ ¼−üc r»ng tÊt c¶ nhĂ·ng b”i tožn trong
cžc thÝ dĂŽ kÓ trÂȘn v” rÊt nhiÒu cžc b”i tožn tĂŠ hĂźp th−ĂȘng gÆp khžc
¼Òu thuĂ©c lĂ­p NP, dĂŻ r»ng hÇu hÕt chĂłng ¼Òu ch−a ¼−üc chĂžng tĂĄ
l” thuĂ©c P. MĂ©t b”i tožn P ¼−üc gĂ€i l” NP.-¼Çy Ÿñ, nÕu P ∈NP v”
vĂ­i mĂ€i Q ∈NP ¼Òu cĂŁ Q ∝ P .
LĂ­p NP cĂŁ mĂ©t sĂš tÝnh chÊt sau Ÿ©y:
41
1) P ⊆ NP,
2) NÕu P1 ∝ P2 v” P2 ∈NP , th× P1 ∈ NP .
3) NÕu P1 ,P2 ∈NP , P1 ∝ P2 , v” P1 l” NP-¼Çy Ÿñ, th× P2 cĂČng
l” NP -¼Çy Ÿñ.
4) NÕu cĂŁ P sao cho P l” NP-¼Çy Ÿñ v” P ∈ P , th× P = NP.
TĂ” cžc tÝnh chÊt Ÿã ta cĂŁ thÓ xem r»ng trong lĂ­p NP , P l” lĂ­p
con cžc b”i tožn “ dÔ ” nhÊt, cßn cžc b”i tožn NP-¼Çy Ÿñ l” cžc b”i
tožn “ khĂŁ ” nhÊt; nÕu cĂŁ Ýt nhÊt mĂ©t b”i tožn NP-¼Çy Ÿñ ¼−üc
chĂžng minh l” thuĂ©c P , th× lËp tĂžc suy ra P = NP , dĂŻ r»ng cho ¼Õn
nay tuy Ÿ· cĂŁ rÊt nhiÒu cĂš gŸng nh−ng tožn hĂ€c vÉn ch−a t×m ¼−üc
con ¼−ĂȘng n”o hy vĂ€ng Âźi ¼Õn gi¶i quyÕt vÊn ¼Ò [P = NP ?], thËm
chÝ vÊn ¼Ò Ÿã cßn ¼−üc xem l” mĂ©t trong 7 vÊn ¼Ò khĂŁ nhÊt cña tožn
hĂ€c trong thiÂȘn niÂȘn kĂ» mĂ­i!
2.3.3. H”m mĂ©t phÝa v” cöa sËp mĂ©t phÝa.
Khži niÖm Ÿé phĂžc tÂčp tÝnh tožn cung cÊp cho ta mĂ©t cžch
tiÕp cËn mĂ­i ŸÚi vĂ­i vÊn ¼Ò bÝ mËt trong cžc vÊn ¼Ò b¶o mËt v” an
to”n th«ng tin. DĂŻ ng”y nay ta Ÿ· cĂŁ nhĂ·ng mžy tÝnh ÂźiÖn tö cĂŁ tĂšc
Ÿé tÝnh tožn cĂŹ h”ng tĂ» phÐp tÝnh mĂ©t gi©y ŸÄng hĂ„, nh−ng vĂ­i
nhĂ·ng thuËt tožn cĂŁ Ÿé phĂžc tÂčp tÝnh tožn cĂŹ f (n ) = 2n
, th× ngay víi
nhĂ·ng dĂ· liÖu cĂŁ Ÿé d”i kho¶ng n = 1000, viÖc thĂčc hiÖn cžc thuËt
tožn Ÿã Ÿ· kh«ng thÓ xem l” kh¶ thi, v× nĂŁ ¼ßi hĂĄi thĂčc hiÖn kho¶ng
10300
phÐp tÝnh! Nh− vËy, mĂ©t gi¶i phžp mËt m· chÂŒng hÂčn cĂŁ thÓ
xem l” cĂŁ Ÿé b¶o mËt cao, nÕu ¼Ó gi¶i m· cÇn ph¶i thĂčc hiÖn mĂ©t
tiÕn tr×nh tÝnh tožn cĂŁ Ÿé phĂžc tÂčp rÊt lĂ­n. Do Ÿã, viÖc phžt hiÖn v”
sö dĂŽng cžc h”m sĂš cĂŁ Ÿé phĂžc tÂčp tÝnh tožn rÊt lĂ­n l” cĂŁ Ăœ nghÜa hÕt
sĂžc quan trĂ€ng ŸÚi vĂ­i viÖc x©y dĂčng cžc gi¶i phžp vÒ mËt m· v” an
to”n th«ng tin.
H”m sĂš sĂš hĂ€c y = f (x ) ¼−üc gĂ€i l” h”m mĂ©t phÝa (one-way
function), nÕu viÖc tÝnh thuËn tĂ” x ra y l” “dÔ”, nh−ng viÖc tÝnh
ng−üc tĂ” y t×m lÂči x l” rÊt “khã”, Ă« Ÿ©y cžc tÝnh tĂ” “dÔ” v” “khã”
kh«ng cĂŁ cžc ¼Þnh nghÜa chÝnh xžc m” ¼−üc hiÓu mĂ©t cžch thĂčc
h”nh, ta cĂŁ thÓ hiÓu chÂŒng hÂčn dÔ l” tÝnh ¼−üc trong thĂȘi gian Âźa
thĂžc (vĂ­i Âźa thĂžc bËc thÊp), cßn khĂŁ l” kh«ng tÝnh ¼−üc trong thĂȘi
gian Âźa thĂžc! ThĂčc tÕ th× cho ¼Õn hiÖn nay, viÖc t×m v” chĂžng minh
mĂ©t h”m sĂš n”o Ÿã l” kh«ng tÝnh ¼−üc trong thĂȘi gian Âźa thĂžc cßn l”
viÖc rÊt khĂŁ khšn, cho nÂȘn “khã” th−ĂȘng khi chØ ¼−üc hiÓu mĂ©t cžch
Ÿn gi¶n l” ch−a t×m ¼−üc thuËt tožn tÝnh nĂŁ trong thĂȘi gian Âźa
thĂžc! VĂ­i cžch hiÓu t−¬ng ŸÚi nh− vËy vÒ “dÔ” v” “khã”, ng−ĂȘi ta Ÿ·
¼−a ra mĂ©t sĂš thÝ dĂŽ sau Ÿ©y vÒ cžc h”m mĂ©t phÝa:
ThÝ dĂŽ 1. Cho p l” mĂ©t sĂš nguyÂȘn tĂš, v” α l” mĂ©t phÇn tö nguyÂȘn
thuû modp. H”m sÚ y = αx
modp (tĂ” *
p
Z v”o *
p
Z ) l” mét h”m mét
phÝa, v× h”m ng−üc cña nĂŁ, tÝnh tĂ” y t×m x m” ta kĂœ hiÖu
log ( )
x y
α
= , l” mĂ©t h”m cĂŁ Ÿé phĂžc tÂčp tÝnh tožn rÊt lĂ­n.
ThÝ dĂŽ 2. Cho n =p.q l” tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n. H”m sĂš y = x2
modn (tĂ” Zn v”o Zn ) cĂČng ¼−üc xem l” mĂ©t h”m mĂ©t phÝa.
ThÝ dĂŽ 3. Cho n =p.q l” tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n, v” a l” mĂ©t sĂš
nguyÂȘn sao cho gcd(a , φ(n)) =1. H”m sĂš y = x a
modn (tÔ Zn v”o Zn
) cĂČng l” mĂ©t h”m mĂ©t phÝa, nÕu gi¶ thiÕt l” biÕt n nh−ng kh«ng biÕt
p,q .
H”m y = f (x ) ¼−üc gĂ€i l” h”m cöa sËp mĂ©t phÝa (trapdoor
one-way function), nÕu viÖc tÝnh thuËn tĂ” x ra y l” “dÔ”, viÖc tÝnh
ng−üc tĂ” y t×m lÂči x l” rÊt “khã”, nh−ng cĂŁ mĂ©t cöa sËp z ¼Ó vĂ­i sĂč
trĂź giĂłp cña cöa sËp z th× viÖc tÝnh x tĂ” y v” z lÂči trĂ« th”nh dÔ.
ThÝ dĂŽ 4 (tiÕp tĂŽc thÝ dĂŽ 3). H”m sĂš y = x a
modn khi biÕt p v” q l”
h”m cöa sËp mĂ©t phÝa. TĂ” x tÝnh y l” dÔ, tĂ” y t×m x (nÕu chØ biÕt n , a
) l” rÊt khĂŁ, nh−ng v× biÕt p v” q nÂȘn biÕt φ(n) = (p -1)(q -1), v” dĂŻng
thuËt tožn Euclide mĂ« rĂ©ng t×m ¼−üc b sao cho a.b ≡ 1 (modφ(n)) ,
tĂ” Ÿã dÔ tÝnh ¼−üc x = yb
modn . Ă« Ÿ©y, cĂŁ thÓ xem b l” cöa sËp.
42
2.4. SĂš nguyÂȘn tĂš. Ph©n tÝch th”nh thĂ”a sĂš. Logarit rĂȘi
rÂčc.
Trong tiÕt n”y ta sÏ xÐt ba b”i tožn cĂŁ vai trß quan trĂ€ng trong
lĂœ thuyÕt mËt m·, Ÿã l” ba b”i tožn: thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš
nguyÂȘn, ph©n tÝch mĂ©t sĂš nguyÂȘn th”nh tÝch cña cžc thĂ”a sĂš nguyÂȘn
tĂš, v” tÝnh logarit rĂȘi rÂčc cña mĂ©t sĂš theo mĂ©t m«Ÿuyn nguyÂȘn tĂš.
2.4.1. Thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš.
B”i tožn ¼Æt ra rÊt Ÿn gi¶n: Cho mĂ©t sĂš nguyÂȘn d−¬ng n bÊt
kĂș. H·y thö xem n cĂŁ l” sĂš nguyÂȘn tĂš hay kh«ng? B”i tožn ¼−üc ¼Æt
ra tĂ” nhĂ·ng buĂŠi ¼Çu cña sĂš hĂ€c, v” tr¶i qua hÂŹn 2000 nšm ¼Õn nay
vÉn l” mĂ©t b”i tožn ch−a cĂŁ ¼−üc nhĂ·ng cžch gi¶i dÔ d”ng. B»ng
nhĂ·ng ph−¬ng phžp Ÿn gi¶n nh− ph−¬ng phžp s”ng EuratosthÌne,
tĂ” rÊt sĂ­m ng−ĂȘi ta Ÿ· x©y dĂčng ¼−üc cžc b¶ng sĂš nguyÂȘn tĂš ¼Çu
tiÂȘn, rĂ„i tiÕp tĂŽc b»ng nhiÒu ph−¬ng phžp khžc t×m thÂȘm ¼−üc nhiÒu
sĂš nguyÂȘn tĂš lĂ­n. Tuy nhiÂȘn, chØ ¼Õn giai ÂźoÂčn hiÖn nay cña lĂœ
thuyÕt mËt m· hiÖn ÂźÂči, nhu cÇu sö dĂŽng cžc sĂš nguyÂȘn tĂš v” thö
tÝnh nguyÂȘn tĂš cña cžc sĂš mĂ­i trĂ« th”nh mĂ©t nhu cÇu to lĂ­n v” phĂŠ
biÕn, ¼ßi hĂĄi nhiÒu ph−¬ng phžp mĂ­i cĂŁ hiÖu qu¶ hÂŹn. Trong mĂŽc
n”y ta sÏ l−üc qua v”i tÝnh chÊt cña sĂš nguyÂȘn tĂš, sau Ÿã giĂ­i thiÖu
m«t v”i ph−¬ng phžp thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš nguyÂȘn bÊt kĂș.
Ta Ÿ· biÕt mĂ©t sĂš tÝnh chÊt sau Ÿ©y cña cžc sĂš nguyÂȘn tĂš v” hĂźp sĂš
(trong cžc phžt biÓu d−íi Ÿ©y, kĂœ hiÖu A chØ cho sĂš phÇn tö cña tËp
hĂźp A ):
1. TiÂȘu chuÈn Euler-Solovay-Strassen:
a) NÕu n l” sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1:
( 1)/ 2
mod
n
a
a n
n
−
⎛ ⎞
⎟
⎜ ≡
⎟
⎜ ⎟
⎜
⎝ ⎠
.
b) NÕu n l” hĂźp sĂš , th×
43
( 1)/ 2 1
:1 1, mod .
2
n
a n
a a n a n
n
−
⎧ ⎫
⎛ ⎞ −
âŽȘ âŽȘ
âŽȘ âŽȘ
⎟
⎜
≀ ≀ − ≡ ≀
⎟
⎹ ⎬
⎜ ⎟
⎜
âŽȘ âŽȘ
⎝ ⎠
âŽȘ âŽȘ
⎩ ⎭
2. TiÂȘu chuÈn Solovay-Strassen-Lehmann :
a) NÕu n l” sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1:
( 1)/ 2
1(mod ).
n
a n
−
≥±
b) NÕu n l” hĂźp sĂš, th×
{ }
( 1)/ 2 1
:1 1, 1mod .
2
n n
a a n a n
− −
≀ ≀ − ≡ ± ≀
3. TiÂȘu chuÈn Miller-Rabin :
a) Cho n l” sĂš nguyÂȘn lÎ, ta viÕt n - 1 = 2e
.u, vĂ­i u l” sĂš lÎ. NÕu n l”
sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1:
2 .
( 1mod ) ( 1mod
k
u u
a n k e a
≡ ∹∃ < ≡− ).
n
b) NÕu n l” hĂźp sĂš, th×
{ }
2 . 1
:1 1,( 1mod ) ( 1mod )
4
k
u u n
a a n a n k e a n
−
≀ ≀ − ≡ √∃ < ≡− ≀ .
Cžc tiÂȘu chuÈn kÓ trÂȘn l” cÂŹ sĂ« ¼Ó ta x©y dĂčng cžc thuËt tožn xžc
suÊt kiÓu Monte-Carlo thö tÝnh nguyÂȘn tĂš (hay hĂźp sĂš) cña cžc sĂš
nguyÂȘn. ChÂŒng hÂčn, tĂ” tiÂȘu chuÈn thĂž nhÊt ta cĂŁ thuËt tožn Euler-
Solovay-Strassen sau Ÿ©y:
DĂ· liÖu v”o: sĂš nguyÂȘn d−¬ng n v” t sĂš ngÉu nhiÂȘn a1,...,at
(1[ai[n -1),
1. for i = 1 to t do
2. if ( 1)/2
mod
n
i
i
a
a n
n
−
⎛ ⎞
⎟
⎜ ≡
⎟
⎜ ⎟
⎜
⎝ ⎠
, then
3. answer “n l” sĂš nguyÂȘn tĂš ”
4. else
5. answer “n l” hĂźp sĂš ” and quit
44
ThuËt tožn n”y nÕu cho tr¶ lĂȘi “n l” hĂźp sĂš ” th× Ÿóng n l” hĂźp sĂš,
nh−ng nÕu nĂŁ cho tr¶ lĂȘi “n l” sĂš nguyÂȘn tĂš ” th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai
vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Nh− vËy, thuËt tožn Ÿã l” mĂ©t thuËt tožn
xžc suÊt Monte-Carlo thiÂȘn vÒ cĂŁ nÕu xem nĂŁ l” thuËt tožn thö tÝnh
l” hĂźp sĂš ; cßn nĂŁ l” mĂ©t thuËt tožn xžc suÊt thiÂȘn vÒ kh«ng nÕu
xem nĂŁ l” thuËt tožn thö tÝnh nguyÂȘn tĂš cña cžc sĂš nguyÂȘn.
T−¬ng tĂč nh− vËy, dĂča v”o cžc tiÂȘu chuÈn 2 v” 3 ta cĂČng cĂŁ
thÓ x©y dĂčng cžc thuËt tožn xžc suÊt Solovay-Strassen-Lehmann v”
Miller-Rabin kiÓu Monte-Carlo ¼Ó thö tÝnh nguyÂȘn tĂš (hay l” hĂźp sĂš)
cña cžc sĂš nguyÂȘn. Hai thuËt tožn Ÿã chØ khžc thuËt tožn Euler-
Solovay-Strassen kÓ trÂȘn Ă« chç c«ng thĂžc trong h”ng lÖnh thĂž 2 cÇn
¼−üc thay t−¬ng Ăžng bĂ«i
( 1)/2
1mod
n
a n
−
≥±
hay
45
n
trong Ÿã u v” e ¼−üc xžc ¼Þnh bĂ«i: n - 1 = 2
2 .
( 1mod ) ( 1mod )
k
u u
a n k e a
≡ ∹∃ < ≡−
e
.u , u l” sĂš lÎ.
Xžc suÊt sai lÇm Δ khi nhËn ¼−üc kÕt qu¶ “n l” sĂš nguyÂȘn tĂš ”
trong cžc thuËt tožn Ÿã ¼−üc tÝnh nh− sau: Gi¶ sö n l” mĂ©t sĂš lÎ
trong kho¶ng N v” 2N , tĂžc N <n < 2N . GĂ€i A l” sĂč kiÖn “n l” hĂźp
sĂš ”, v” B l” sĂč kiÖn “thuËt tožn cho kÕt qu¶ tr¶ lĂȘi n l” sĂš nguyÂȘn tĂš
”. Ta ph¶i tÝnh xžc suÊt Δ =p (A⏐ B). Theo tÝnh chÊt b) cña tiÂȘu chuÈn
Euler-Solovay-Strassen, nÕu n l” hĂźp sĂš, th× sĂč kiÖn
( 1)/ 2
mod
n
a
a n
n
−
⎛ ⎞
⎟
⎜ ≡
⎟
⎜ ⎟
⎜
⎝ ⎠
ŸÚi vĂ­i mçi a ngÉu nhiÂȘn (1[a [n - 1) cĂŁ xžc suÊt [ 1/2, v× vËy ta cĂŁ
( )
1
.
2t
p B A ≀
Theo c«ng thÞc Bayes ta cã
( )
( ) ( )
( ) ( )
. ( ) . ( )
.
( ) . ( ) . ( )
p B A p A p B A p A
p A B
p B p B A p A p B A p A
= =
+
Theo ¼Þnh lĂœ vÒ sĂš nguyÂȘn tĂš, sĂš cžc sĂš nguyÂȘn tĂš giĂ·a N v” 2N
xÊp xØ ,
ln ln
N n
N n
≈ sĂš cžc sĂš lÎ l” ,
2 2
N n
≈ do ¼ã
2
( ) ,
ln
p A
n
≈ v”
2
( ) 1 .
ln
p A
n
≈ − DÜ nhiÂȘn ta cĂŁ ( ) 1.
p B A = Thay cžc giž trÞ Ÿã v”o
c«ng thĂžc trÂȘn, ta ¼−üc
( ) 1
2
2 (1 )
ln 2
ln
2 2 ln 2 2
2 (1 )
ln ln
t
t
t
n
n
p A B
n
n n
−
+
−
−
−
≀ =
− +
− +
. (5)
§žnh giž Ÿã cĂČng Ÿóng ŸÚi vĂ­i thuËt tožn Solovay-Strassen-
Lehmann, cßn ŸÚi vĂ­i thuËt tožn Miler-Rabin th× ta ¼−üc mĂ©t Ÿžnh
giž tĂšt hÂŹn, cĂŽ thÓ l”
( ) 2 1
ln 2
.
ln 2 2 t
n
p A B
n +
−
=
− +
(6)
ChĂł Ăœ r»ng khi t =50 th× ÂźÂči l−üng Ă« vÕ ph¶i cña (5) , v”
vÕ ph¶i cña (6) ; do Ÿã nÕu chĂ€n cho dĂ· liÖu v”o thÂȘm
kho¶ng 50 sĂš ngÉu nhiÂȘn a
13
10−
≈
28
10−
≈
i th× c¾c thuËt to¾n Euler-Solovay-
Strassen v” Solovay-Strassen-Lehmann sÏ thö cho ta mĂ©t sĂš l”
nguyÂȘn tĂš vĂ­i xžc suÊt sai lÇm [ 10-13
v” thuËt tožn Miller-Rabin vĂ­i
x¾c suÊt sai lÇm [ 10-28
!
Ta cĂŁ thÓ tÝnh ¼−üc r»ng Ÿé phĂžc tÂčp tÝnh tožn vÒ thĂȘi gian
cña cžc thuËt tožn xžc suÊt kÓ trÂȘn l” v”o cĂŹ Âźa thĂžc cña logn , tĂžc l”
Âźa thĂžc cña Ÿé Ÿ”i biÓu diÔn cña dĂ· liÖu v”o (l” sĂš n ), tuy nhiÂȘn cžc
thuËt tožn Ÿã chØ cho ta thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš vĂ­i mĂ©t xžc
suÊt sai lÇm Δ n”o Ÿã, dĂŻ Δ l” rÊt bÐ. Trong nhiÒu Ăžng dĂŽng, ta muĂšn
cĂŁ ¼−üc nhĂ·ng sĂš nguyÂȘn tĂš vĂ­i Ÿé chŸc chŸn 100% l” sĂš nguyÂȘn tĂš.
Do Ÿã, dĂŻ Ÿ· cĂŁ cžc thuËt tožn xžc suÊt nh− trÂȘn, ng−ĂȘi ta vÉn
kh«ng ngĂ”ng t×m kiÕm nhĂ·ng thuËt tožn tÊt ¼Þnh ¼Ó thö tÝnh
nguyÂȘn tĂš vĂ­i Ÿé chÝnh xžc tuyÖt ŸÚi. Trong mÊy chĂŽc nšm gÇn Ÿ©y,
46
mĂ©t sĂš thuËt tožn Ÿ· ¼−üc ¼Ò xuÊt, trong Ÿã cĂŁ nhĂ·ng thuËt tožn
¼Æc sŸc nh− thuËt tožn thö tĂŠng Jacobi, ¼−üc phžt hiÖn bĂ«i Adleman,
Pomerance v” Rumely, sau Ÿã ¼−üc Ÿn gi¶n hož bĂ«i Cohen v”
Lenstra; thuËt tožn thö b»ng ¼−ĂȘng cong elliptic, ¼−üc ¼Ò xuÊt bĂ«i
Goldwasser, Kilian, Adleman v” Huang, ¼−üc tiÕp tĂŽc ho”n thiÖn
bĂ«i Atkin v” Morain, cžc thuËt tožn n”y Ÿ· ¼−üc dĂŻng ¼Ó t×m nhiÒu
sĂš nguyÂȘn tĂš rÊt lĂ­n, thÝ dĂŽ dĂŻng thuËt tožn Atkin-Morain Ÿ· chĂžng
tá ¼−üc sù (23539
+ 1)/3 cĂŁ 1065 chĂ· sĂš thËp ph©n l” sĂš nguyÂȘn tĂš. GÇn
Ÿ©y, v”o thžng 8/2002, cžc nh” tožn hÀc ¹n Ÿé Agrawal, Kayal v”
Saxena Ÿ· ¼−a ra mĂ©t thuËt tožn tÊt ¼Þnh mĂ­i thö tÝnh nguyÂȘn tĂš cĂŁ
Ÿé phĂžc tÂčp tÝnh tožn thĂȘi gian Âźa thĂžc khž Ÿn gi¶n, thuËt tožn Ÿã
¼−üc m« t¶ nh− sau:
ThuËt to¾n Agrawal-Kayal-Saxena:
Input: integer n > 1
1. if (n is of the form ab
, b > 1 ) ouput COMPOSITE;
2. r =2;
3. while (r < n ) {
4. if (gcd(n , r )≠ 1) ouput COMPOSITE;
5. if (r is prime )
6. let q be the largest prime factor of r - 1;
7. if ( 4 log )
q r n
≄ and
1
r−
( 1(mod ))
q
n r
≠
8. break;
9. r ← r + 1;
10. }
11. for a = 1 to 2 log
r n
12. if (( ) ( )(mod 1, ))
n n r
x a x a x n
− ≠ − − ouput
COMPOSITE;
13. output PRIME;
47
48
ThuËt tožn n”y Ÿ· ¼−üc mĂ©t sĂš nh” tožn hĂ€c kiÓm nghiÖm ,
Ÿžnh giž cao v” xem l” mĂ©t thuËt tožn ¼Ñp, cĂŁ thÓ dĂŻng cho viÖc
kiÓm thö tÝnh nguyÂȘn tĂš cña cžc sĂš nguyÂȘn.
Trong thĂčc tiÔn x©y dĂčng cžc gi¶i phžp mËt m·, th−ĂȘng cĂŁ
nhu cÇu cĂŁ cžc sĂš nguyÂȘn tĂš rÊt lĂ­n. §Ó t×m ¼−üc cžc sĂš nh− vËy,
ng−ĂȘi ta th−ĂȘng chĂ€n ngÉu nhiÂȘn mĂ©t sĂš rÊt lĂ­n, rĂ„i dĂŻng tr−íc cho
nĂŁ mĂ©t thuËt tožn xžc suÊt chÂŒng hÂčn nh− thuËt tožn Miller-Rabin;
nÕu thuËt tožn cho ta kÕt qu¶ “l” sĂš nguyÂȘn tù” vĂ­i mĂ©t xžc suÊt sai Δ
n”o Ÿã, th× sau Ÿã ta dĂŻng tiÕp mĂ©t thuËt tožn tÊt ¼Þnh (chÂŒng hÂčn
nh− thuËt tožn trÂȘn Ÿ©y) ¼Ó b¶o ٦m chŸc chŸn 100% r»ng sĂš Ÿã l”
sĂš nguyÂȘn tĂš. ThuËt tožn Agrawal-Kayal-Saxena trÂȘn Ÿ©y ¼−üc
chĂžng tĂĄ l” cĂŁ Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc cĂŹ O((logn)12
) khi thö
trÂȘn sĂš n ; v” nÕu sĂš nguyÂȘn tĂš ¼−üc thö cĂŁ dÂčng Sophie Germain,
tĂžc dÂčng 2p +1, th× Ÿé phĂžc tÂčp thĂȘi gian sÏ chØ l” cĂŹ O((logn)6
).
2.4.2. Ph©n tÝch th”nh thĂ”a sĂš nguyÂȘn tĂš.
B”i tožn ph©n tÝch mĂ©t sĂš nguyÂȘn > 1 th”nh thĂ”a sĂš nguyÂȘn tĂš
cĂČng ¼−üc xem l” mĂ©t b”i tožn khĂŁ th−ĂȘng ¼−üc sö dĂŽng trong lĂœ
thuyÕt mËt m·. BiÕt mĂ©t sĂš n l” hĂźp sĂš th× viÖc ph©n tÝch n th”nh
thĂ”a sĂš mĂ­i l” cĂŁ nghÜa; do Ÿã th−ĂȘng khi ¼Ó gi¶i b”i tožn ph©n tÝch
n th”nh thĂ”a sĂš, ta thö tr−íc n cĂŁ l” hĂźp sĂš hay kh«ng (chÂŒng hÂčn
b»ng mĂ©t trong cžc thuËt tožn Ă« mĂŽc tr−íc); v” b”i tožn ph©n tÝch n
th”nh thĂ”a sĂš cĂŁ thÓ dÉn vÒ b”i tožn t×m mĂ©t −íc sĂš cña n, v× khi
biÕt mĂ©t −íc sĂš d cña n th× tiÕn tr×nh ph©n tÝch n ¼−üc tiÕp tĂŽc thĂčc
hiÖn b»ng cžch ph©n tÝch d v” n/d.
B”i tožn ph©n tÝch th”nh thĂ”a sĂš, hay b”i tožn t×m −íc sĂš cña mĂ©t
sĂš nguyÂȘn cho tr−íc, Ÿ· ¼−üc nghiÂȘn cĂžu nhiÒu, nh−ng cĂČng ch−a
cĂŁ mĂ©t thuËt tožn hiÖu qu¶ n”o ¼Ó gi¶i nĂŁ trong tr−ĂȘng hĂźp tĂŠng
qužt; do Ÿã ng−ĂȘi ta cĂŁ khuynh h−íng t×m thuËt tožn gi¶i nĂŁ trong
nhĂ·ng tr−ĂȘng hĂźp ¼Æc biÖt, chÂŒng hÂčn khi n cĂŁ mĂ©t −íc sĂš nguyÂȘn
tĂš p vĂ­i
p -1 l” B-mÞn vĂ­i mĂ©t cËn B >0 n”o Ÿã, hoÆc khi n l” sĂš Blum, tĂžc l”
sĂš cĂŁ dÂčng tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n n”o Ÿã (n =p.q ).
Ta xÐt tr−ĂȘng hĂźp thĂž nhÊt vĂ­i (p -1)-thuËt tĂŁan Pollard nh− sau:
MĂ©t sĂš nguyÂȘn n ¼−üc gĂ€i l” B-mÞn, nÕu tÊt c¶ cžc −íc sĂš nguyÂȘn tĂš
cña nĂŁ ¼Òu ≀B. Ăœ chÝnh chĂža trong (p-1)- thuËt tožn Pollard l” nh−
sau: Gi¶ sö n l” B-mÞn. KĂœ hiÖu Q l” bĂ©i chung bÐ nhÊt cña tÊt c¶ cžc
luĂŒ thĂ”a cña cžc sĂš nguyÂȘn tĂš ≀B m” b¶n th©n chĂłng ≀n. NÕu q l
≀n th× l lnq ≀ lnn , tĂžc
ln
ln
n
l
q
⎱ ⎄
⎱ ⎄
≀
⎱ ⎄
⎣ ⎩
( x
⎱ ⎄
⎣ ⎊ l” sĂš nguyÂȘn bÐ nhÊt lĂ­n hÂŹn x ).
Ta cĂŁ
ln /ln
,
n q
q B
Q q
⎱ ⎄
⎣ ⎩
≀
= ∏
trong Ÿã tÝch lÊy theo tÊt c¶ cžc sĂš nguyÂȘn tĂš khžc nhau q ≀B . NÕu
p l” mĂ©t thĂ”a sĂš nguyÂȘn tĂš cña n sao cho p -1 l” B-mÞn, th× p -1⏐Q, v”
do Ÿã vĂ­i mĂ€i a bÊt kĂș thĂĄa m·n gcd(a,p) = 1, theo ¼Þnh lĂœ Fermat
ta cĂŁ
a Q
≡ 1 (modp ). V× vËy, nÕu lÊy d =gcd(aQ
- 1, n ) th× p ⏐d. NÕu d = n
th× coi nh− thuËt tožn kh«ng cho ta ÂźiÒu mong muĂšn, tuy nhiÂȘn ÂźiÒu
Ÿã chŸc kh«ng xÈy ra nÕu n cĂŁ Ýt nhÊt hai thĂ”a sĂš nguyÂȘn tĂš khžc
nhau. TĂ” nhĂ·ng lËp luËn Ÿã ta cĂŁ:
(p - 1)-thuËt tožn Pollard ph©n tÝch th”nh thĂ”a sĂš :
INPUT: mĂ©t hĂźp sĂš n kh«ng ph¶i l” luĂŒ thĂ”a cña mĂ©t sĂš nguyÂȘn tĂš.
OUTPUT: mĂ©t thĂ”a sĂš kh«ng tÇm th−ĂȘng cña n .
1. ChĂ€n mĂ©t cËn cho Ÿé mÞn B.
2. ChĂ€n ngÉu nhiÂȘn mĂ©t sĂš nguyÂȘn a , 2≀ a ≀ n - 1, v” tÝnh d
= gcd(a,n ). NÕu d ≄ 2 th× cho ra kÕt qu¶ (d ).
3. VĂ­i mçi sĂš nguyÂȘn tĂš q ≀ B thĂčc hiÖn:
3.1 TÝnh
ln
.
ln
n
l
q
⎱ ⎄
⎱ ⎄
=
⎱ ⎄
⎣ ⎩
3.2 TÝnh mod .
l
q
a a n
←
49
50
4. TÝnh d = gcd(a -1, n).
5. NÕu 1< d < n th× cho ra kÕt qu¶ (d ). NÕu ng−üc lÂči th×
thuËt tožn coi nh− kh«ng cĂŁ kÕt qu¶.
ThÝ dĂŽ: DĂŻng thuËt tožn cho sĂš n = 19048567. Ta chĂ€n B =19,
v” a =3, v” tÝnh ¼−üc gcd(3,n ) =1. ChuyÓn sang thĂčc hiÖn b−íc 3 ta
¼−üc b¶ng sau Ÿ©y (mçi h”ng Ăžng vĂ­i mĂ©t giž trÞ cña q ) :
q l a
2
3
5
7
11
13
17
19
24
15
10
8
6
6
5
5
2293244
13555889
16937223
15214586
9685355
13271154
11406961
554506
Sau Ÿã ta tÝnh d =gcd(554506-1,19048567) = 5281. VËy ta ¼−üc mĂ©t
thÔa sÚ p = 5281, v” do Ÿã mét thÔa sÚ n÷a l” q = n/p = 3607. C¶ hai
thĂ”a sĂš Ÿã ¼Òu l” nguyÂȘn tĂš.
ChĂł Ăœ r»ng Ă« Ÿ©y p -1 = 5280 = 25
.3.5.11 , cĂŁ tÊt c¶ cžc −íc sĂš nguyÂȘn
tĂš ¼Òu ≀ 19, do Ÿã chŸc chŸn thuËt tožn sÏ kÕt thĂłc cĂŁ kÕt qu¶. ThuËt
tožn sÏ kÕt thĂłc kh«ng cĂŁ kÕt qu¶ khi Ÿé mÞn B ¼−üc chĂ€n quž bÐ ¼Ó
kh«ng mĂ©t thĂ”a sĂš nguyÂȘn tĂš p n”o cña n m” p -1 chØ chĂža cžc −íc
sĂš nguyÂȘn tĂš ≀ B. Nh− vËy, cĂŁ thÓ xem (p -1)-thuËt tožn Pollard
ph©n tÝch n th”nh thĂ”a sĂš nguyÂȘn tĂš l” cĂŁ hiÖu qu¶ ŸÚi vĂ­i nhĂ·ng sĂš
nguyÂȘn n l” B-mÞn, ng−ĂȘi ta tÝnh ¼−üc thĂȘi gian cÇn ¼Ó thĂčc hiÖn
thuËt tožn Ÿã l” cĂŹ O(B lnn /lnB ) phÐp nh©n theo m«Ÿuyn.
B©y giĂȘ ta xÐt tr−ĂȘng hĂźp cžc sĂš nguyÂȘn Blum, tĂžc l” cžc sĂš cĂŁ
dÂčng n = p.q , tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n. Tr−íc hÕt ta chĂł Ăœ r»ng
nÕu ta biÕt hai sĂš nguyÂȘn khžc nhau x v” y sao cho 2 2
(mod )
x y n
≡
th× ta dÔ t×m ¼−üc mĂ©t thĂ”a sĂš cña n . ThĂčc vËy, tĂ” 2 2
(mod )
x y n
≡ ta
cĂŁ 2 2
( )( )
x y x y x y
− = + − chia hÕt cho n , do n kh«ng l” −íc sĂš cña x
+ y hoÆc x - y, nÂȘn gcd(x - y, n) ph¶i l” mĂ©t −íc sĂš cña n, tĂžc b»ng p
hoÆc q .
Ta biÕt nÕu n = p.q l” sĂš Blum, th× ph−¬ng tr×nh ŸÄng d−
2 2
(mod )
x a n
≡
cĂŁ 4 nghiÖm, hai nghiÖm tÇm th−ĂȘng l” x = a v” x = -a . Hai nghiÖm
kh«ng tÇm th−ĂȘng khžc l” ±b , chĂłng l” nghiÖm cña hai hÖ ph−¬ng
tr×nh ŸÄng d− bËc nhÊt sau Ÿ©y:
( )
(mod )
(mod )
mod
(mod )
x a p
x a p
x a q
x a q
⎧
⎧ ≡−
âŽȘ
≡
âŽȘ
âŽȘ âŽȘ
⎚ ⎚
âŽȘ âŽȘ ≡
≡−
âŽȘ
⎩ âŽȘ
⎩
B»ng lËp luËn nh− trÂȘn, ta thÊy r»ng nÕu n l” sĂš Blum, a l” mĂ©t sĂš
nguyÂȘn tĂš vĂ­i n, v” ta biÕt mĂ©t nghiÖm kh«ng tÇm th−ĂȘng cña
ph−¬ng tr×nh 2 2
(mod )
x a
≡ n , tĂžc biÕt mĂ©t x ≠ ±a sao cho
2 2
(mod )
x a
≡ n th× gcd(x - a , n ) sÏ l” mĂ©t −íc sĂš cña n . NhĂ·ng ÂźiÒu
trÂȘn Ÿ©y l” cšn cĂž cho mĂ©t sĂš ph−¬ng phžp t×m −íc sĂš nguyÂȘn tĂš
cña mĂ©t sĂš nguyÂȘn dÂčng Blum; Ăœ chung cña cžc ph−¬ng phžp Ÿã l”
dÉn vÒ viÖc t×m mĂ©t nghiÖm kh«ng tÇm th−ĂȘng cña mĂ©t ph−¬ng
tr×nh dÂčng 2 2
(mod )
x a
≡ n , chÂŒng hÂčn nh− ph−¬ng tr×nh
2
1(mod )
x n
≡ .
MĂ©t tr−ĂȘng hĂźp khž lĂœ thĂł trong lĂœ thuyÕt mËt m· l” khi ta biÕt hai
sĂš a ,b l” nghÞch ٦o cña nhau theo modφ (n ) (nh−ng kh«ng biÕt φ
(n ) ), v” t×m mĂ©t ph©n tÝch th”nh thĂ”a sĂš cña n. B”i tožn ¼−üc ¼Æt ra
cĂŽ thÓ l”: BiÕt n cĂŁ dÂčng Blum, biÕt a v” b sao cho ab ≡ 1(modφ (n )).
H·y t×m mĂ©t −íc sĂš nguyÂȘn tĂš cña n , hay t×m mĂ©t nghiÖm kh«ng
tÇm th−ĂȘng cña ph−¬ng tr×nh 2
1(mod )
x n
≡ . Ta gi¶ thiÕt ab - 1 = 2s
. r
vĂ­i r l” sĂš lÎ. Ta phžt triÓn mĂ©t thuËt tožn xžc suÊt kiÓu Las Vegas
nh− sau: Ta chĂ€n mĂ©t sĂš ngÉu nhiÂȘn v (1≀ v ≀ n - 1). NÕu may mŸn
v l” bĂ©i sĂš cña p hay q, th× ta ¼−üc ngay mĂ©t −íc sĂš cña n l” gcd(v,n
). NÕu v nguyÂȘn tĂš vĂ­i n , th× ta tÝnh cžc b×nh ph−¬ng liÂȘn tiÕp kÓ tĂ”
v r
, ¼−üc cho ¼Õn khi ¼−üc vĂ­i mĂ©t t n”o
2 4
, , ,...
r r r
v v v (
2 .
1 mod
t
r
v n
≡ )
51
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin
An toanbaomatthongtin

More Related Content

What's hot

Giao trinhcambiencongnghiep
Giao trinhcambiencongnghiepGiao trinhcambiencongnghiep
Giao trinhcambiencongnghiepHuy BK
 
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±NhĂąn Nguyễn Sá»č
 
Khai cao dang 07
Khai cao dang 07Khai cao dang 07
Khai cao dang 07Diep Vumanh
 
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...Viáșżt thuĂȘ trọn gĂłi ZALO 0934573149
 
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)Tien Nguyen
 
He Thong Tien Te Quoc Te
He Thong Tien Te Quoc TeHe Thong Tien Te Quoc Te
He Thong Tien Te Quoc Tehsplastic
 
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)TÔI Tîi
 
Phoi Thai
Phoi ThaiPhoi Thai
Phoi Thaisangbsdk
 
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...nataliej4
 
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXH
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXHTÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXH
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXHKien Thuc
 
2. thiet ke san betong ung luc truoc phan quang minh
2. thiet ke san betong ung luc truoc   phan quang minh2. thiet ke san betong ung luc truoc   phan quang minh
2. thiet ke san betong ung luc truoc phan quang minhPham Nguyen Phap
 
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non nataliej4
 
Máș­t thÆ° - DoiSongTrai.NET
Máș­t thÆ° - DoiSongTrai.NETMáș­t thÆ° - DoiSongTrai.NET
Máș­t thÆ° - DoiSongTrai.NETTibi Nguyễn
 
Cong tac xa hoi voi tre em
Cong tac xa hoi voi tre emCong tac xa hoi voi tre em
Cong tac xa hoi voi tre emforeman
 
Tac Dm Ngoai Bien Ok
Tac Dm Ngoai Bien OkTac Dm Ngoai Bien Ok
Tac Dm Ngoai Bien OkKhoa DÆ°ÆĄng
 
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt nataliej4
 

What's hot (19)

Giao trinhcambiencongnghiep
Giao trinhcambiencongnghiepGiao trinhcambiencongnghiep
Giao trinhcambiencongnghiep
 
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±
Ebook Đào TáșĄo VĂ  PhĂĄt Triển NhĂąn Sá»±
 
Khai cao dang 07
Khai cao dang 07Khai cao dang 07
Khai cao dang 07
 
Skkn013
Skkn013Skkn013
Skkn013
 
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...
Luáș­n ĂĄn: NghiĂȘn cứu giáșŁi phĂĄp thiáșżt káșż bộ nguồn cháș„t lÆ°á»Łng cao dĂčng trong thi...
 
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)
Ká»· Yáșżu Ká»· Niệm 50 Năm ThĂ nh Láș­p GiĂĄo Xứ (1971-2021)
 
He Thong Tien Te Quoc Te
He Thong Tien Te Quoc TeHe Thong Tien Te Quoc Te
He Thong Tien Te Quoc Te
 
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)
Mri bao cao ton thong khop goi(bacsihoasung.wordpress.com)
 
Phoi Thai
Phoi ThaiPhoi Thai
Phoi Thai
 
Đề tĂ i: Thiáșżt káșż trỄ sở liĂȘn cÆĄ quan số 2 tỉnh QuáșŁng Ninh, HAY
Đề tĂ i: Thiáșżt káșż trỄ sở liĂȘn cÆĄ quan số 2 tỉnh QuáșŁng Ninh, HAYĐề tĂ i: Thiáșżt káșż trỄ sở liĂȘn cÆĄ quan số 2 tỉnh QuáșŁng Ninh, HAY
Đề tĂ i: Thiáșżt káșż trỄ sở liĂȘn cÆĄ quan số 2 tỉnh QuáșŁng Ninh, HAY
 
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...
Một số giáșŁi phĂĄp nháș±m nĂąng cao hiệu quáșŁ cĂŽng tĂĄc quy hoáșĄch sá»­ dỄng đáș„t trĂȘn đ...
 
Gtquyhoachsddat
GtquyhoachsddatGtquyhoachsddat
Gtquyhoachsddat
 
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXH
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXHTÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXH
TÆ° tưởng Hồ ChĂ­ Minh về độc láș­p dĂąn tộc gáșŻn liền với CNXH
 
2. thiet ke san betong ung luc truoc phan quang minh
2. thiet ke san betong ung luc truoc   phan quang minh2. thiet ke san betong ung luc truoc   phan quang minh
2. thiet ke san betong ung luc truoc phan quang minh
 
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non
GiĂĄo TrĂŹnh PhĂČng Bệnh Cho Tráș» Máș§m Non
 
Máș­t thÆ° - DoiSongTrai.NET
Máș­t thÆ° - DoiSongTrai.NETMáș­t thÆ° - DoiSongTrai.NET
Máș­t thÆ° - DoiSongTrai.NET
 
Cong tac xa hoi voi tre em
Cong tac xa hoi voi tre emCong tac xa hoi voi tre em
Cong tac xa hoi voi tre em
 
Tac Dm Ngoai Bien Ok
Tac Dm Ngoai Bien OkTac Dm Ngoai Bien Ok
Tac Dm Ngoai Bien Ok
 
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt
TÀI LIỆU ĐÀO Táș O THá»°C HÀNH LÂM SÀNG CHO ĐIỀU DÆŻá» NG VIÊN MỚI LĂœ thuyáșżt
 

Similar to An toanbaomatthongtin

Luan van ve hop dong chuyen nhuong quyen su dung dat
Luan van ve hop dong chuyen nhuong quyen su dung datLuan van ve hop dong chuyen nhuong quyen su dung dat
Luan van ve hop dong chuyen nhuong quyen su dung datHung Nguyen
 
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁ
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁMuc dich-cao-ca-phan-1, mỄc đích cao cáșŁ
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁViệt Long Plaza
 
T001.doc
T001.docT001.doc
T001.docNgaNga71
 
C2 tochuc
C2 tochucC2 tochuc
C2 tochucdaiacma296
 
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nay
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nayMột số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nay
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện naynataliej4
 
Bai giang chuyen doi
Bai giang chuyen doiBai giang chuyen doi
Bai giang chuyen doibookbooming1
 
Tailieu.vncty.com phan tich bien dong dan so, lao dong va viec lam ở huyen ...
Tailieu.vncty.com   phan tich bien dong dan so, lao dong va viec lam ở huyen ...Tailieu.vncty.com   phan tich bien dong dan so, lao dong va viec lam ở huyen ...
Tailieu.vncty.com phan tich bien dong dan so, lao dong va viec lam ở huyen ...Tráș§n Đức Anh
 
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...jackjohn45
 
Tieu chuan thiet ke thep
Tieu chuan thiet ke thepTieu chuan thiet ke thep
Tieu chuan thiet ke thepEngin Zeroo
 
giaotrinh nguyen tac phuong phap (phan 1)
giaotrinh nguyen tac phuong phap (phan 1)giaotrinh nguyen tac phuong phap (phan 1)
giaotrinh nguyen tac phuong phap (phan 1)akita_1610
 
bctntlvn (65).pdf
bctntlvn (65).pdfbctntlvn (65).pdf
bctntlvn (65).pdfLuanvan84
 
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di động
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di độngChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di động
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di độngKien Thuc
 
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏi
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏiCau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏi
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏithaonguyenhn88
 
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn học
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn họcDáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn học
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn họcjackjohn45
 
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet nam
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet namMot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet nam
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet namanh hieu
 
5.tran duc ngon
5.tran duc ngon5.tran duc ngon
5.tran duc ngonanthao1
 
giaotrinh nguyen tac phuong phap (phan 2)
giaotrinh nguyen tac phuong phap (phan 2)giaotrinh nguyen tac phuong phap (phan 2)
giaotrinh nguyen tac phuong phap (phan 2)akita_1610
 

Similar to An toanbaomatthongtin (20)

Luan van ve hop dong chuyen nhuong quyen su dung dat
Luan van ve hop dong chuyen nhuong quyen su dung datLuan van ve hop dong chuyen nhuong quyen su dung dat
Luan van ve hop dong chuyen nhuong quyen su dung dat
 
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁ
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁMuc dich-cao-ca-phan-1, mỄc đích cao cáșŁ
Muc dich-cao-ca-phan-1, mỄc đích cao cáșŁ
 
T001.doc
T001.docT001.doc
T001.doc
 
C2 tochuc
C2 tochucC2 tochuc
C2 tochuc
 
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nay
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nayMột số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nay
Một số giáșŁi phĂĄp trong quáșŁn lĂœ vĂ  sá»­ dỄng đáș„t đî thị ở hĂ  nội hiện nay
 
Skkn nui lu
Skkn nui luSkkn nui lu
Skkn nui lu
 
Bai giang chuyen doi
Bai giang chuyen doiBai giang chuyen doi
Bai giang chuyen doi
 
Tailieu.vncty.com phan tich bien dong dan so, lao dong va viec lam ở huyen ...
Tailieu.vncty.com   phan tich bien dong dan so, lao dong va viec lam ở huyen ...Tailieu.vncty.com   phan tich bien dong dan so, lao dong va viec lam ở huyen ...
Tailieu.vncty.com phan tich bien dong dan so, lao dong va viec lam ở huyen ...
 
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...
Quy luáș­t giĂĄ trị đối với nền kinh táșż thị trường. thá»±c tráșĄng nền kinh táșż nước ...
 
Tieu chuan thiet ke thep
Tieu chuan thiet ke thepTieu chuan thiet ke thep
Tieu chuan thiet ke thep
 
giaotrinh nguyen tac phuong phap (phan 1)
giaotrinh nguyen tac phuong phap (phan 1)giaotrinh nguyen tac phuong phap (phan 1)
giaotrinh nguyen tac phuong phap (phan 1)
 
Giới thiệu
Giới thiệuGiới thiệu
Giới thiệu
 
bctntlvn (65).pdf
bctntlvn (65).pdfbctntlvn (65).pdf
bctntlvn (65).pdf
 
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di động
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di độngChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di động
ChÆ°ÆĄng 3 - CĂĄc Ká»č thuáș­t cÆĄ báșŁn trong thĂŽng tin vĂŽ tuyáșżn di động
 
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏi
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏiCau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏi
Cau hoi ly-thuyet thi CỄm trưởng dĂąn cÆ° giỏi
 
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn học
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn họcDáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn học
DáșĄy tĂ­ch hợp giĂĄo dỄc mĂŽi trường trong cĂĄc mĂŽn học
 
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet nam
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet namMot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet nam
Mot so giai phap nham nang cao hieu qua quan ly rung cong dong o viet nam
 
5.tran duc ngon
5.tran duc ngon5.tran duc ngon
5.tran duc ngon
 
Bh04
Bh04Bh04
Bh04
 
giaotrinh nguyen tac phuong phap (phan 2)
giaotrinh nguyen tac phuong phap (phan 2)giaotrinh nguyen tac phuong phap (phan 2)
giaotrinh nguyen tac phuong phap (phan 2)
 

Recently uploaded

30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...Nguyen Thanh Tu Collection
 
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptx
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptxpowerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptx
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptxAnAn97022
 
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................TrnHoa46
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdf
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdfCampbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdf
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdfTrnHoa46
 
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘIĐiện LáșĄnh BĂĄch Khoa HĂ  Nội
 
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...Nguyen Thanh Tu Collection
 
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...Nguyen Thanh Tu Collection
 
sĂĄch sinh học đáșĄi cÆ°ÆĄng - Textbook.pdf
sĂĄch sinh học đáșĄi cÆ°ÆĄng   -   Textbook.pdfsĂĄch sinh học đáșĄi cÆ°ÆĄng   -   Textbook.pdf
sĂĄch sinh học đáșĄi cÆ°ÆĄng - Textbook.pdfTrnHoa46
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘIĐiện LáșĄnh BĂĄch Khoa HĂ  Nội
 
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANG
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANGPHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANG
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANGhoinnhgtctat
 
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdf
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdfchuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdf
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdfVyTng986513
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...Nguyen Thanh Tu Collection
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docxTHAO316680
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfhoangtuansinh1
 
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...Nguyen Thanh Tu Collection
 
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
 
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptx
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptxpowerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptx
powerpoint lịch sá»­ đáșŁng cộng sáșŁn việt nam.pptx
 
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...
TỔNG HỹP ĐỀ THI CHÍNH THỚC Ká»Č THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGở VĂN NĂM ...
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
 
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................
Đề cÆ°ÆĄng mĂŽn giáșŁi pháș«u......................
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
 
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdf
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdfCampbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdf
Campbell _2011_ - Sinh học - Táșż bĂ o - Ref.pdf
 
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
3-BáșąNG MÃ LỖI CỊA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
 
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...
SÁNG KIáșŸN ÁP DỀNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH Dáș Y - H...
 
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN Dáș Y THÊM (KáșŸ HOáș CH BÀI Dáș Y BUỔI 2) - TIáșŸNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
sĂĄch sinh học đáșĄi cÆ°ÆĄng - Textbook.pdf
sĂĄch sinh học đáșĄi cÆ°ÆĄng   -   Textbook.pdfsĂĄch sinh học đáșĄi cÆ°ÆĄng   -   Textbook.pdf
sĂĄch sinh học đáșĄi cÆ°ÆĄng - Textbook.pdf
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOáș I - ĐIỆN Láș NH BÁCH KHOA HÀ NỘI
 
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANG
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANGPHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANG
PHÁT TRIỂN DU LỊCH BỀN VởNG Ở TUYÊN QUANG
 
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdf
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdfchuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdf
chuong-7-van-de-gia-dinh-trong-thoi-ky-qua-do-len-cnxh.pdf
 
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
 
1 - Mà LỖI SỏA CHởA BOARD Máș CH BáșŸP Tá»Ș.pdf
1 - Mà LỖI SỏA CHởA BOARD Máș CH BáșŸP Tá»Ș.pdf1 - Mà LỖI SỏA CHởA BOARD Máș CH BáșŸP Tá»Ș.pdf
1 - Mà LỖI SỏA CHởA BOARD Máș CH BáșŸP Tá»Ș.pdf
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
 
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO Cáș€U TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 Ká»Č THI TỐT NGHI...
 
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...
TÀI LIỆU BỒI DÆŻá» NG HỌC SINH GIỎI LÝ LUáșŹN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGở ...
 

An toanbaomatthongtin

  • 1. 1 §Âči hĂ€c quĂšc gia h” nĂ©i Khoa c«ng nghÖ Phan §×nh DiÖu LĂœ thuyÕt mËt m· & an to”n th«ng tin NXB ÂźÂči hĂ€c quĂšc gia h” nĂ©i - 2002
  • 2. 2 LĂœ thuyÕt mËt m· & An to”n th«ng tin
  • 3. 3 LĂœ thuyÕt mËt m· & An to”n th«ng tin Phan §×nh DiÖu §Âči hĂ€c QuĂšc gia H” NĂ©i Khoa C«ng nghÖ- §HQG H” nĂ©i
  • 4. 1 NĂ©i dung LĂȘi mĂ« ¼Çu.................................................................4 Ch−¬ng 1 GiĂ­i thiÖu chung vÒ mËt m·......8 1.1. SÂŹ lĂčoc lÞch sö vÒ khoa mËt m·.......................................... 8 1.2. HÖ thĂšng mËt m·. M· theo khĂši v” m· theo dßng ........ 12 1.3. MËt m· khĂŁa ŸÚi xĂžng v” mËt m· cĂŁ khĂŁa c«ng khai.... 15 1.4. Cžc b”i tožn an to”n th«ng tin ........................................... 16 1.5. Thžm m· v” tÝnh an to”n cña cžc hÖ mËt m·................... 18 Ch−¬ng 2. CÂŹ sĂ« tožn hĂ€c cña lĂœ thuyÕt mËt m·................20 2.1.SĂš hĂ€c cžc sĂš nguyÂȘn.ThuËt tožn Euclide.......................... 20 2.2. Xžc suÊt v” thuËt tožn xžc suÊt......... ............................... 31 2.3. §é phĂžc tÂčp tÝnh tožn......................................................... 36 2.4.SĂš nguyÂȘn tĂš. Ph©n tÝch th”nh thĂ”a sĂš.L«garit rĂȘi rÂčc.... 42
  • 5. 2 Ch−¬ng 3 Cžc hÖ mËt m· khož ŸÚi xĂžng ...... 55 3.1. Cžc hÖ mËt m· cĂŠ ÂźiÓn........................................................ 55 3.2. Thžm m· ŸÚi vĂ­i cžc hÖ mËt m· cĂŠ ÂźiÓn ......................... 63 3.3. MËt m· theo dßng v” cžc d·y sĂš gi¶ ngÉu nhiÂȘn ...........72 3.4. HÖ mËt m· chuÈn DES ........................................ 80 Ch−¬ng 4 Cžc hÖ mËt m· khož c«ng khai ...........92 4.1. GiĂ­i thiÖu mĂ« ¼Çu.................................................................92 4.1. HÖ mËt m· khož c«ng khai RSA ........................................97 4.2. HÖ mËt m· khož c«ng khai Rabin.................................... 101 4.3. HÖ mËt m· khož c«ng khai ElGamal................................103 4.4. Cžc hÖ mËt m· dĂča trÂȘn cžc b”i tožn NP-¼Çy Ÿñ............107 4.5. Cžc hÖ mËt m· xžc suÊt khož c«ng khai...........................111 Ch−¬ng 5 B”i tožn xžc nhËn v” ChĂ· kĂœ ÂźiÖn tö......115 5.1. B”i tožn xžc nhËn v” sÂŹ ŸÄ chĂ· kĂœ................................ 115 5.2. SÂŹ ŸÄ chĂ· kĂœ ElGamal v” chuÈn chĂ· kĂœ ÂźiÖ tö.......... 118 5.3. H”m bšm v” chĂ· kĂœ......................................................... 122 5.4. MĂ©t sĂš sÂŹ ŸÄ chĂ· kĂœ khžc............................................... 127 5.5.ChĂ· kĂœ kh«ng phñ ¼Þnh ¼−üc&kh«ng chĂši bĂĄ ¼−üc 131
  • 6. 3 Ch−¬ng 6 Cžc sÂŹ ŸÄ x−ng danh v” xžc nhËn danh tÝnh 136 6.1. VÊn ¼Ò x−ng danh..............................................................136 6.2. SÂŹ ŸÄ x−ng danh Schnorr..................................................137 6.3. SÂŹ ŸÄ x−ng danh Okamoto................................................140 6.4. SÂŹ ŸÄ x−ng danh Guillou-Quisquater..............................142 6.5. Giao thĂžc Feige-Fiat-Shamir...............................................145 6.6. PhÐp chĂžng minh kh«ng lĂ© tri thĂžc..................................147 Ch−¬ng 7 VÊn ¼Ò ph©n phĂši khož v” tho¶ thuËn khož 152 7.1. Qu¶n trÞ khož trong cžc mÂčng truyÒn tin.........................152 7.2. MĂ©t sĂš hÖ ph©n phĂši khož................................................153 7.3. Trao ŸÊi khož v” tho¶ thuËn khož....................................157 ChĂł dÉn vÒ t”i liÖu tham kh¶o..................................................163
  • 7. 4 LĂȘi mĂ« ¼Çu TĂ” khi con ng−ĂȘi cĂŁ nhu cÇu trao ŸÊi th«ng tin, th− tĂ” cho nhau th× nhu cÇu giĂ· bÝ mËt v” b¶o vÖ tÝnh riÂȘng t− cña nhĂ·ng th«ng tin, th− tĂ” ¼−üc trao ŸÊi Ÿã cĂČng nÈy sinh. H×nh thĂžc th«ng tin ¼−üc trao ŸÊi phĂŠ biÕn v” sĂ­m nhÊt l” d−íi dÂčng cžc všn b¶n, ¼Ó giĂ· bÝ mËt cña th«ng tin ng−ĂȘi ta Ÿ· sĂ­m nghÜ ¼Õn cžch che dÊu nĂ©i dung cžc všn b¶n b»ng cžch biÕn dÂčng cžc všn b¶n Ÿã ¼Ó ng−ĂȘi ngo”i kh«ng ŸÀc hiÓu ¼−üc, ŸÄng thĂȘi cĂŁ cžch kh«i phĂŽc lÂči nguyÂȘn dÂčng ban ¼Çu ¼Ó ng−ĂȘi trong cuĂ©c vÉn ŸÀc hiÓu ¼−üc; theo cžch gĂ€i ng”y nay th× dÂčng biÕn ŸÊi cña všn b¶n ¼−üc gĂ€i l” mËt m· cña všn b¶n, cžch lËp mËt m· cho mĂ©t všn b¶n ¼−üc gĂ€i l” phÐp lËp mËt m·, cßn cžch kh«i phĂŽc lÂči nguyÂȘn dÂčng ban ¼Çu cña všn b¶n tĂ” b¶n mËt m· ¼−üc gĂ€i l” phÐp gi¶i m·. PhÐp lËp mËt m· v” phÐp gi¶i m· ¼−üc thĂčc hiÖn nhĂȘ mĂ©t ch×a khož riÂȘng n”o Ÿã m” chØ nhĂ·ng ng−ĂȘi trong cuĂ©c ¼−üc biÕt, sau Ÿ©y ta sÏ gĂ€i l” khož mËt m·. Ng−ĂȘi ngo”i cuĂ©c kh«ng ¼−üc biÕt khož mËt m·, nÂȘn dĂŻ cĂŁ "šn cŸp" ¼−üc b¶n mËt m· trÂȘn ¼−ĂȘng truyÒn tin, vÒ nguyÂȘn tŸc cĂČng kh«ng thÓ gi¶i m· ¼Ó hiÓu ¼−üc nĂ©i dung cña všn b¶n truyÒn Âźi. HiÓn nhiÂȘn, tiÂȘu chuÈn cña mĂ©t b¶n mËt m· l” tÂčo ¼−üc tÝnh bÝ mËt cho všn b¶n; v× vËy khži niÖm bÝ mËt l” khži niÖm cĂšt lĂąi nhÊt ŸÚi vĂ­i mĂ©t lĂœ thuyÕt vÒ mËt m·. CĂŁ thÓ cĂŁ mĂ©t ¼Þnh nghÜa khoa hĂ€c cho khži niÖm bÝ mËt hay kh«ng? §· cĂŁ nhiÒu cžch tiÕp cËn ¼Ó t×m hiÓu nĂ©i dung cña khži niÖm bÝ mËt, nh−ng mĂ©t ¼Þnh nghÜa khoa hĂ€c, hay hÂŹn nĂ·a, mĂ©t ¼Þnh nghÜa tožn hĂ€c cho khži niÖm Ÿã th× ch−a cĂŁ. MĂ©t cžch tiÕp cËn khž phĂŠ biÕn l” gŸn khži niÖm bÝ mËt vĂ­i khži niÖm "ngÉu nhiÂȘn", nÕu mĂ©t všn b¶n rĂą cĂŁ mĂ©t nĂ©i dung xžc ¼Þnh th× ÂźiÒu ta mong muĂšn l” b¶n mËt m· cña nĂŁ ph¶i l” mĂ©t b¶n gĂ„m cžc kĂœ tĂč ¼−üc sŸp xÕp hçn Ÿén, cĂŁ vÎ nh− ngÉu nhiÂȘn khiÕn
  • 8. 5 ng−ĂȘi ngo”i nh×n v”o kh«ng thÓ xžc ¼Þnh ¼−üc nĂ©i dung cña všn b¶n gĂšc. Tuy nhiÂȘn, nÕu "bÝ mËt" l” khži niÖm ch−a ¼Þnh nghÜa ¼−üc, th× khži niÖm "ngÉu nhiÂȘn", hay cĂŽ thÓ hÂŹn, khži niÖm "d·y bit ngÉu nhiÂȘn", cĂČng khĂŁ ¼Þnh nghÜa nh− vËy, ta ch−a qui ¼Þnh ¼−üc mĂ©t tiÂȘu chuÈn tožn hĂ€c ¼Ó xžc ¼Þnh mĂ©t d·y bit cĂŁ l” "ngÉu nhiÂȘn" hay kh«ng, m” chØ mĂ­i t×m hiÓu ¼−üc mĂ©t sĂš thuĂ©c tÝnh gÇn vĂ­i "ngÉu nhiÂȘn", dĂŻng l”m cšn cĂž ¼Ó tÂčm xžc ¼Þnh mĂ©t d·y bit cĂŁ l” "gi¶ ngÉu nhiÂȘn" theo nghÜa cĂŁ cžc thuĂ©c tÝnh Ÿã hay kh«ng m” th«i. TĂ” mÊy thËp niÂȘn gÇn Ÿ©y, b−íc v”o kĂ» nguyÂȘn mžy tÝnh, cĂČng nh− ŸÚi vĂ­i nhiÒu lÜnh vĂčc khžc, lÜnh vĂčc mËt m· cĂČng Ÿ· cĂŁ nhĂ·ng chuyÓn biÕn to lĂ­n tĂ” giai ÂźoÂčn mËt m· truyÒn thĂšng sang giai ÂźoÂčn mËt m· mžy tÝnh; mžy tÝnh ÂźiÖn tö ¼−üc sö dĂŽng ng”y c”ng phĂŠ biÕn trong viÖc lËp mËt m·, gi¶i mËt m·, v” nhĂ·ng chuyÓn biÕn Ÿã Ÿ· kÝch thÝch viÖc nghiÂȘn cĂžu cžc gi¶i phžp mËt m·, biÕn viÖc nghiÂȘn cĂžu mËt m· th”nh mĂ©t khoa hĂ€c cĂŁ ŸÚi t−üng ng”y c”ng rĂ©ng lĂ­n v” ¼−üc sö dĂŽng cĂŁ hiÖu qu¶ trong nhiÒu phÂčm vi hoÂčt Ÿéng cña cuĂ©c sĂšng. V× cžc nghiÖp vĂŽ chñ yÕu cña mËt m· ¼−üc thĂčc hiÖn b»ng mžy tÝnh, nÂȘn cžc khži niÖm bÝ mËt, ngÉu nhiÂȘn cĂČng dÇn ¼−üc "mžy tÝnh hož", v” vĂ­i sĂč ra ÂźĂȘi cña LĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn v”o giĂ·a nhĂ·ng nšm 1960, cžc khži niÖm Ÿã t×m ¼−üc mĂ©t nĂ©i dung chung cĂŁ thÓ ¼−üc nghiÂȘn cĂžu mĂ©t cžch tožn hĂ€c l” tÝnh phĂžc tÂčp. B©y giĂȘ ta cĂŁ thÓ nĂŁi, mĂ©t b¶n mËt m· ŸÚi vĂ­i anh l” bÝ mËt, nÕu tĂ” b¶n mËt m· Ÿã ¼Ó t×m ra b¶n rĂą anh ph¶i thĂčc hiÖn mĂ©t tiÕn tr×nh tÝnh tožn m” Ÿé phĂžc tÂčp cña nĂŁ v−üt quž mĂ€i nšng lĂčc tÝnh tožn (kÓ c¶ mĂ€i mžy tÝnh) cña anh; mĂ©t d·y bit cĂŁ thÓ xem l” ngÉu nhiÂȘn , nÕu dĂča v”o mĂ©t ÂźoÂčn bit Ÿ· biÕt ¼Ó t×m mĂ©t bit tiÕp theo cña d·y anh cĂČng ph¶i thĂčc hiÖn mĂ©t tiÕn tr×nh tÝnh tožn cĂŁ Ÿé phĂžc tÂčp cĂčc lĂ­n t−¬ng tĂč nh− nĂŁi trÂȘn. ViÖc chuyÓn sang giai ÂźoÂčn mËt m· mžy tÝnh tr−íc hÕt Ÿ· cĂŁ tžc dĂŽng phžt triÓn v” hiÖn ÂźÂči hož nhiÒu hÖ thĂšng mËt m· theo kiÓu truyÒn thĂšng, l”m cho cžc hÖ thĂšng Ÿã cĂŁ cžc cÊu trĂłc tinh tÕ hÂŹn, ¼ßi hĂĄi lËp mËt m· v” gi¶i m· phĂžc tÂčp hÂŹn, do Ÿã hiÖu qu¶ giĂ· bÝ mËt cña cžc gi¶i phžp mËt m· ¼−üc n©ng cao hÂŹn tr−íc rÊt nhiÒu. Tuy nhiÂȘn, mĂ©t b−íc chuyÓn cĂŁ tÝnh chÊt cžch mÂčng m” mËt m· mžy tÝnh mang lÂči l” viÖc phžt minh ra cžc hÖ mËt m· cĂŁ khož c«ng khai, bŸt ¼Çu tĂ” cuĂši nhĂ·ng nšm 1970, cÂŹ sĂ« lĂœ thuyÕt cña cžc phžt
  • 9. 6 minh Ÿã l” sĂč tĂ„n tÂči cña cžc h”m mĂ©t phÝa (one-way function), tĂžc l” nhĂ·ng h”m sĂš sĂš hĂ€c y = f (x) m” viÖc tÝnh theo phÝa thuËn tĂ” x tÝnh y l” t−¬ng ŸÚi dÔ, nh−ng viÖc tÝnh theo phÝa ng−üc tĂ” y t×m lÂči x (x = f--1 (y)) l” cĂčc kĂș phĂžc tÂčp. Cžc hÖ mËt m· cĂŁ khož c«ng khai Ÿ· l”m thay ŸÊi vÒ b¶n chÊt viÖc tĂŠ chĂžc cžc hÖ truyÒn th«ng b¶o mËt, l”m dÔ d”ng cho viÖc b¶o mËt trÂȘn cžc hÖ truyÒn th«ng c«ng cĂ©ng, v” do tÝnh chÊt ¼Æc biÖt Ÿã chĂłng Ÿ· l” cÂŹ sĂ« cho viÖc phžt triÓn nhiÒu giao thĂžc an to”n th«ng tin khžc khi sö dĂŽng mÂčng truyÒn th«ng c«ng cĂ©ng, chÂŒng hÂčn cžc loÂči giao thĂžc vÒ xžc nhËn nguĂ„n tin v” ¼Þnh danh ng−ĂȘi göi, chĂ· kĂœ ÂźiÖn tö, cžc giao thĂžc xžc nhËn kh«ng ¼Ó lĂ© th«ng tin g× khžc ngo”i viÖc xžc nhËn, cžc giao thĂžc trao ŸÊi khož trong tĂŠ chĂžc truyÒn tin b¶o mËt v” trong xžc nhËn, v.v..., v” gÇn Ÿ©y trong viÖc phžt triÓn nhiÒu giao thĂžc ¼Æc thĂŻ khžc trong cžc giao dÞch ng©n h”ng v” th−¬ng mÂči ÂźiÖn tö, phžt h”nh v” mua bžn b»ng tiÒn ÂźiÖn tö,... CĂČng cÇn nĂŁi thÂȘm l” lĂœ thuyÕt mËt m· hiÖn ÂźÂči, tĂžc l” mËt m· mžy tÝnh trÂȘn cÂŹ sĂ« lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn tuy cĂŁ nhiÒu Ăžng dĂŽng ¼Æc sŸc v” cĂŁ triÓn vĂ€ng to lĂ­n, nh−ng cĂČng mĂ­i Âźang trong giai ÂźoÂčn phžt triÓn b−íc ¼Çu, cßn ph¶i khŸc phĂŽc nhiÒu khĂŁ khšn v” t×m kiÕm thÂȘm nhiÒu cÂŹ sĂ« vĂ·ng chŸc mĂ­i ¼Ó tiÕp tĂŽc ho”n thiÖn v” phžt triÓn. ChÂŒng hÂčn, nh− trÂȘn Ÿ· nĂŁi, mĂ©t cÂŹ sĂ« quan trĂ€ng cña lĂœ thuyÕt mËt m· hiÖn ÂźÂči l” sĂč tĂ„n tÂči cña cžc h”m mĂ©t phÝa, nh−ng ngay cĂŁ thËt tĂ„n tÂči cžc h”m mĂ©t phÝa hay kh«ng cĂČng cßn l” mĂ©t b”i tožn ch−a cĂŁ c©u tr¶ lĂȘi! Ta chØ mĂ­i Âźang cĂŁ mĂ©t sĂš h”m mĂ©t phÝa theo sĂč hiÓu biÕt cña con ng−ĂȘi hiÖn nay, nh−ng ch−a chĂžng minh ¼−üc cĂŁ mĂ©t h”m cĂŽ thÓ n”o Ÿã chŸc chŸn l” h”m mĂ©t phÝa! Tuy nhiÂȘn, nÕu theo quan ÂźiÓm khoa hĂ€c hiÖn ÂźÂči, ta kh«ng xem mĂŽc ¼Ých khoa hĂ€c l” Âźi t×m nhĂ·ng ch©n lĂœ chŸc chŸn tuyÖt ŸÚi, m” l” Âźi t×m nhĂ·ng cžch gi¶i quyÕt vÊn ¼Ò (problem solving) gÆp trong thĂčc tiÔn, th× ta vÉn cĂŁ thÓ tin v”o nhĂ·ng gi¶i phžp "t−¬ng ŸÚi" rÊt cĂŁ hiÖu qu¶ m” lĂœ thuyÕt hiÖn ÂźÂči vÒ mËt m· Âźang cĂšng hiÕn cho con ng−ĂȘi hiÖn nay. TËp gižo tr×nh LĂœ thuyÕt mËt m· v” an to”n th«ng tin n”y ¼−üc soÂčn ¼Ó phĂŽc vĂŽ cho viÖc hĂ€c tËp cña sinh viÂȘn cžc lĂ­p theo ch−¬ng tr×nh ÂźÂči hĂ€c hoÆc cao hĂ€c thuĂ©c ng”nh C«ng nghÖ th«ng tin cña §Âči hĂ€c QuĂšc gia H” nĂ©i. Trong kho¶ng m−¬i nšm gÇn Ÿ©y, trÂȘn thÕ giĂ­i Ÿ· xuÊt hiÖn nhiÒu sžch v” t”i liÖu cĂŁ tÝnh chÊt gižo khoa
  • 10. 7 hoÆc tham kh¶o vÒ lĂœ thuyÕt mËt m· hiÖn ÂźÂči v” Ăžng dĂŽng. Ng−ĂȘi viÕt tËp gižo tr×nh n”y chØ cĂŁ cĂš gŸng lĂča chĂ€n v” sŸp xÕp mĂ©t sĂš nĂ©i dung m” m×nh nghÜ l” cÇn thiÕt v” thÝch hĂźp nhÊt ¼Ó trong mĂ©t phÂčm vi hÂčn chÕ vÒ thĂȘi gian (v” kh«ng gian) tr×nh b”y v” giĂ­i thiÖu ¼−üc cho ng−ĂȘi hĂ€c mĂ©t cžch t−¬ng ŸÚi hÖ thĂšng nhĂ·ng kiÕn thĂžc cÂŹ b¶n vÒ lĂœ thuyÕt mËt m· hiÖn ÂźÂči, bao gĂ„m c¶ mĂ©t sĂš kiÕn thĂžc tožn hĂ€c cÇn thiÕt. Gižo tr×nh n”y Ÿ· ¼−üc gi¶ng dÂčy cho sinh viÂȘn cžc khož cao hĂ€c vÒ C«ng nghÖ th«ng tin thuĂ©c §Âči hĂ€c Bžch khoa H” nĂ©i v” khoa C«ng nghÖ §Âči hĂ€c QuĂšc gia H” nĂ©i tĂ” nšm 1997 ¼Õn 2004. Ng−ĂȘi viÕt ch©n th”nh c¶m ÂŹn cžc bÂčn ŸÄng nghiÖp v” ng−ĂȘi ŸÀc chØ cho nhĂ·ng chç thiÕu sĂŁt ¼Ó cĂŁ thÓ kÞp thĂȘi söa chĂ·a cho nhĂ·ng lÇn in sau, nÕu cĂŁ. Thžng 12 nšm 2002 Phan §×nh DiÖu
  • 11. 8 CHŠ„NG I GiĂ­i thiÖu chung vÒ mËt m· 1.1. SÂŹ l−üc lÞch sö vÒ mËt m·. Nh− Ÿ· giĂ­i thiÖu trong LĂȘi mĂ« ¼Çu, nhu cÇu sö dĂŽng mËt m· Ÿ· xuÊt hiÖn tĂ” rÊt sĂ­m, khi con ng−ĂȘi biÕt trao ŸÊi v” truyÒn ¼−a th«ng tin cho nhau, ¼Æc biÖt khi cžc th«ng tin Ÿã Ÿ· ¼−üc thÓ hiÖn d−íi h×nh thĂžc ng«n ngĂ·, th− tĂ”. LÞch sö cho ta biÕt, cžc h×nh thĂžc mËt m· sÂŹ khai Ÿ· ¼−üc t×m thÊy tĂ” kho¶ng bĂšn ngh×n nšm tr−íc trong nÒn všn mÞnh Ai cËp cĂŠ ÂźÂči. Tr¶i qua h”ng ngh×n nšm lÞch sö, mËt m· Ÿ· ¼−üc sö dĂŽng rĂ©ng r·i trÂȘn khŸp thÕ giĂ­i tĂ” §«ng sang T©y ¼Ó giĂ· bÝ mËt cho viÖc giao l−u th«ng tin trong nhiÒu lÜnh vĂčc hoÂčt Ÿéng giĂ·a con ng−ĂȘi v” cžc quĂšc gia, ¼Æc biÖt trong cžc lÜnh vĂčc qu©n sĂč, chÝnh trÞ, ngoÂči giao. MËt m· tr−íc hÕt l” mĂ©t loÂči hoÂčt Ÿéng thĂčc tiÔn, nĂ©i dung chÝnh cña nĂŁ l” ¼Ó giĂ· bÝ mËt th«ng tin (chÂŒng hÂčn d−íi dÂčng mĂ©t všn b¶n) tĂ” mĂ©t ng−ĂȘi göi A ¼Õn mĂ©t ng−ĂȘi nhËn B, A ph¶i tÂčo cho všn b¶n Ÿã mĂ©t b¶n m· mËt t−¬ng Ăžng, v” thay v× göi všn b¶n rĂą th× A chØ göi cho B b¶n m· mËt, B nhËn ¼−üc b¶n m· mËt v” sÏ cĂŁ cžch tĂ” Ÿã kh«i phĂŽc lÂči všn b¶n rĂą ¼Ó hiÓu ¼−üc th«ng tin m” A muĂšn göi cho m×nh. V× b¶n göi Âźi th−ĂȘng ¼−üc chuyÓn qua cžc con ¼−ĂȘng c«ng khai nÂȘn ng−ĂȘi ngo”i cĂŁ thÓ "lÊy trĂ©m" ¼−üc, nh−ng do Ÿã l” b¶n mËt m· nÂȘn kh«ng ŸÀc hiÓu ¼−üc, cßn A cĂŁ thÓ tÂčo ra b¶n m· mËt v” B cĂŁ thÓ gi¶i b¶n m· mËt th”nh b¶n rĂą ¼Ó hiÓu ¼−üc l” do giĂ·a hai ng−ĂȘi Ÿ· cĂŁ mĂ©t thĂĄa thuËn vÒ mĂ©t ch×a khĂŁa chung, chØ vĂ­i ch×a khĂŁa chung n”y th× A mĂ­i tÂčo ¼−üc b¶n m· mËt tĂ” b¶n rĂą, v” B mĂ­i tĂ” b¶n m· mËt kh«i phĂŽc lÂči ¼−üc b¶n rĂą. Sau n”y ta sÏ gĂ€i Ÿn gi¶n ch×a khĂŁa chung Ÿã l” khĂŁa mËt m·. TÊt nhiÂȘn ¼Ó thĂčc hiÖn ¼−üc mĂ©t phÐp mËt m·, ta
  • 12. 9 cßn cÇn cĂŁ mĂ©t thuËt tožn biÕn b¶n rĂą, cĂŻng vĂ­i khĂŁa mËt m·, th”nh b¶n m· mËt, v” mĂ©t thuËt tožn ng−üc lÂči, biÕn b¶n m· mËt, cĂŻng vĂ­i khĂŁa mËt m·, th”nh b¶n rĂą. Cžc thuËt tožn Ÿã ¼−üc gĂ€i t−¬ng Ăžng l” thuËt tožn lËp mËt m· v” thuËt tožn gi¶i mËt m·. Cžc thuËt tožn n”y th−ĂȘng kh«ng nhÊt thiÕt ph¶i giĂ· bÝ mËt, m” cži cÇn ¼−üc giĂ· tuyÖt mËt lu«n lu«n l” khĂŁa mËt m·. Trong thĂčc tiÔn, Ÿ· cĂŁ hoÂčt Ÿéng b¶o mËt th× cĂČng cĂŁ hoÂčt Ÿéng ng−üc lÂči l” khžm phž bÝ mËt tĂ” cžc b¶n m· mËt "lÊy trĂ©m" ¼−üc, ta th−ĂȘng gĂ€i hoÂčt Ÿéng n”y l” m· thžm, hoÂčt Ÿéng n”y quan trĂ€ng kh«ng kÐm g× hoÂčt Ÿéng b¶o mËt! V× cžc thuËt tožn lËp mËt m· v” gi¶i mËt m· kh«ng nhÊt thiÕt l” bÝ mËt, nÂȘn m· thžm th−ĂȘng ¼−üc tËp trung v”o viÖc t×m khĂŁa mËt m·, do Ÿã cĂČng cĂŁ ng−ĂȘi gĂ€i c«ng viÖc Ÿã l” phž khĂŁa. SuĂšt mÊy ngh×n nšm lÞch sö, cžc th«ng bžo, th− tĂ” ¼−üc truyÒn ¼−a v” trao ŸÊi vĂ­i nhau th−ĂȘng l” cžc všn b¶n, tĂžc l” cĂŁ dÂčng cžc d·y kĂœ tĂč trong mĂ©t ng«n ngĂ· n”o Ÿã; v× vËy, cžc thuËt tožn lËp mËt m· th−ĂȘng cĂČng Ÿn gi¶n l” thuËt tožn xžo trĂ©n, thay ŸÊi cžc kĂœ tĂč ¼−üc xžc ¼Þnh bĂ«i cžc phÐp chuyÓn dÞch, thay thÕ hay hožn vÞ cžc kĂœ tĂč trong b¶ng kĂœ tĂč cña ng«n ngĂ· t−¬ng Ăžng; khĂŁa mËt m· l” th«ng tin dĂŻng ¼Ó thĂčc hiÖn phÐp lËp mËt m· v” gi¶i mËt m· cĂŽ thÓ, thÝ dĂŽ nh− sĂš vÞ trÝ ŸÚi vĂ­i phÐp chuyÓn dÞch, b¶ng xžc ¼Þnh cžc cÆp kĂœ tĂč t−¬ng Ăžng ŸÚi vĂ­i phÐp thay thÕ hay hožn vÞ,... MËt m· ch−a ph¶i l” mĂ©t khoa hĂ€c, do Ÿã ch−a cĂŁ nhiÒu kiÕn thĂžc sžch vĂ« ¼Ó lÂči, tuy nhiÂȘn hoÂčt Ÿéng b¶o mËt v” thžm m· trong lÞch sö cžc cuĂ©c ¼Êu tranh chÝnh trÞ, ngoÂči giao v” qu©n sĂč th× hÕt sĂžc phong phĂł, v” mËt m· Ÿ· cĂŁ nhiÒu tžc Ÿéng rÊt quan trĂ€ng ¼−a ¼Õn nhĂ·ng kÕt qu¶ lŸm khi cĂŁ Ăœ nghÜa quyÕt ¼Þnh trong cžc cuĂ©c ¼Êu tranh Ÿã. Do trong mĂ©t thĂȘi gian d”i, b¶n th©n hoÂčt Ÿéng mËt m· cĂČng ¼−üc xem l” mĂ©t bÝ mËt, nÂȘn cžc t”i liÖu kĂŒ thuËt vÒ mËt m· ¼−üc phĂŠ biÕn ¼Õn nay th−ĂȘng chØ ghi lÂči cžc kiÕn thĂžc kinh nghiÖm, thØnh tho¶ng mĂ­i cĂŁ mĂ©t v”i "phžt minh" nh− cžc hÖ mËt m· VigenÌre v”o thÕ kĂ» 16 hoÆc hÖ mËt m· Hill ra ÂźĂȘi nšm 1929 l” cžc hÖ m· thĂčc hiÖn phÐp chuyÓn dÞch (ŸÚi vĂ­i m· VigenÌre) hay phÐp thay thÕ (m· Hill) ŸÄng thĂȘi trÂȘn mĂ©t nhĂŁm kĂœ tĂč chĂž kh«ng ph¶i trÂȘn tĂ”ng kĂœ tĂč riÂȘng rÏ. VÊn ¼Ò thžm m·, ng−üc lÂči, khi th”nh c«ng th−ĂȘng ¼−a ¼Õn nhĂ·ng cĂšng hiÕn nĂŠi trĂ©i v” Ên t−üng trong nhĂ·ng
  • 13. 10 t×nh huĂšng gay cÊn cña cžc cuĂ©c ¼Êu tranh, v” cĂČng th−ĂȘng ¼ßi hĂĄi nhiÒu t”i nšng phžt hiÖn vĂ­i nhĂ·ng kinh nghiÖm v” suy luËn tinh tÕ hÂŹn, nÂȘn ¼Ó lÂči nhiÒu chuyÖn hÊp dÉn hÂŹn. NhiÒu c©u chuyÖn kĂș thĂł cña lÞch sö thžm m· Ÿ· ¼−üc thuËt lÂči trong quyÓn sžch nĂŠi tiÕng cña David Kahn The Codebreakers . The Story of Secret Writing , xuÊt b¶n nšm 1967 (sžch Ÿ· ¼−üc dÞch ra nhiÒu thĂž tiÕng, cĂŁ b¶n dÞch tiÕng ViÖt NhĂ·ng ng−ĂȘi m· thžm, 3 tËp, xuÊt b¶n tÂči H” nĂ©i nšm 1987). B−íc sang thÕ kĂ» 20, vĂ­i nhĂ·ng tiÕn bĂ© liÂȘn tĂŽc cña kĂŒ thuËt tÝnh tožn v” truyÒn th«ng, ng”nh mËt m· cĂČng Ÿ· cĂŁ nhĂ·ng tiÕn bĂ© to lĂ­n. V”o nhĂ·ng thËp niÂȘn ¼Çu cña thÕ kĂ», sĂč phžt triÓn cña cžc kĂŒ thuËt biÓu diÔn, truyÒn v” xö lĂœ tÝn hiÖu Ÿ· cĂŁ tžc Ÿéng giĂłp cho cžc hoÂčt Ÿéng lËp v” gi¶i mËt m· tĂ” thñ c«ng chuyÓn sang cÂŹ giĂ­i hĂŁa rĂ„i ÂźiÖn tö hĂŁa. Cžc všn b¶n, cžc b¶n mËt m· tr−íc Ÿ©y ¼−üc viÕt b»ng ng«n ngĂ· th«ng th−ĂȘng nay ¼−üc chuyÓn b»ng kĂŒ thuËt sĂš th”nh cžc d·y tÝn hiÖu nhÞ ph©n, tĂžc cžc d·y bit, v” cžc phÐp biÕn ŸÊi trÂȘn cžc d·y kĂœ tĂč ¼−üc chuyÓn th”nh cžc phÐp biÕn ŸÊi trÂȘn cžc d·y bit, hay cžc d·y sĂš, viÖc thĂčc hiÖn cžc phÐp lËp m·, gi¶i m· trĂ« th”nh viÖc thĂčc hiÖn cžc h”m sĂš sĂš hĂ€c. Tožn hĂ€c v” kĂŒ thuËt tÝnh tožn bŸt ¼Çu trĂ« th”nh c«ng cĂŽ cho viÖc phžt triÓn khoa hĂ€c vÒ mËt m·. Khži niÖm trung t©m cña khoa hĂ€c mËt m· l” khži niÖm bÝ mËt. §ã l” mĂ©t khži niÖm phĂŠ biÕn trong ÂźĂȘi sĂšng, nh−ng liÖu cĂŁ thÓ cho nĂŁ mĂ©t nĂ©i dung cĂŁ thÓ ¼Þnh nghÜa ¼−üc mĂ©t cžch tožn hĂ€c kh«ng? Nh− Ÿ· l−üc qua trong LĂȘi mĂ« ¼Çu, khži niÖm bÝ mËt thoÂčt ¼Çu ¼−üc gŸn vĂ­i khži niÖm ngÉu nhiÂȘn, rĂ„i vÒ sau trong nhĂ·ng thËp niÂȘn gÇn Ÿ©y, vĂ­i khži niÖm phĂžc tÂčp, cĂŽ thÓ hÂŹn l” khži niÖm Ÿé phĂžc tÂčp tÝnh tožn. ViÖc sö dĂŽng lĂœ thuyÕt xžc suÊt v” ngÉu nhiÂȘn l”m cÂŹ sĂ« ¼Ó nghiÂȘn cĂžu mËt m· Ÿ· giĂłp C.Shannon ¼−a ra khži niÖm bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m· tĂ” nšm 1948, khĂ«i ¼Çu cho mĂ©t lĂœ thuyÕt xžc suÊt vÒ mËt m·. Trong thĂčc tiÔn l”m mËt m·, cžcd·y bit ngÉu nhiÂȘn ¼−üc dĂŻng ¼Ó trĂ©n vĂ­i b¶n rĂą (d−íi dÂčng mĂ©t d·y bit xžc ¼Þnh) th”nh ra b¶n mËt m·. L”m thÕ n”o ¼Ó tÂčo ra cžc d·y bit ngÉu nhiÂȘn? CĂŁ thÓ tÂčo ra b»ng ph−¬ng phžp vËt lĂœ Ÿn gi¶n nh− sau: ta tung ŸÄng xu lÂȘn, nÕu ŸÄng xu rÂŹi xuĂšng Ă« mÆt sÊp th× ta ghi bit 0, Ă« mÆt ngöa th× ta ghi bit 1; tung n lÇn ta sÏ ¼−üc mĂ©t d·y n
  • 14. 11 bit, d·y bit thu ¼−üc nh− vËy cĂŁ thÓ ¼−üc xem l” d·y bit ngÉu nhiÂȘn. Nh−ng tÂčo ra theo cžch nh− vËy th× khĂŁ cĂŁ thÓ sö dĂŽng mĂ©t cžch phĂŠ biÕn, v× kh«ng thÓ t×m ra qui luËt ¼Ó theo Ÿã m” sinh ra d·y bit ngÉu nhiÂȘn ¼−üc. Ă« Ÿ©y ta gÆp mĂ©t khĂŁ khšn cĂŁ tÝnh b¶n chÊt: nÕu cĂŁ qui luËt th× Ÿ· kh«ng cßn l” ngÉu nhiÂȘn nĂ·a rĂ„i! Nh− vËy, nÕu ta muĂšn t×m theo qui luËt, th× kh«ng bao giĂȘ cĂŁ thÓ t×m ra cžc d·y bit ngÉu nhiÂȘn, m” cĂŻng lŸm cĂČng chØ cĂŁ thÓ ¼−üc cžc d·y bit gÇn ngÉu nhiÂȘn, hay gi¶ ngÉu nhiÂȘn, m” th«i. TĂ” nhiÒu chĂŽc nšm nay, ng−ĂȘi ta Ÿ· nghiÂȘn cĂžu ¼Ò xuÊt nhiÒu thuËt tožn tožn hĂ€c ¼Ó sinh ra cžc d·y bit gi¶ ngÉu nhiÂȘn, v” cĂČng Ÿ· ¼−a ra nhiÒu thuĂ©c tÝnh ¼Ó Ÿžnh giž mĂ©t d·y bit gi¶ ngÉu nhiÂȘn cĂŁ Ÿžng ¼−üc xem l” "gÇn" ngÉu nhiÂȘn hay kh«ng. MĂ©t v”i thuĂ©c tÝnh chñ yÕu m” ng−ĂȘi ta Ÿ· ¼Ò xuÊt l”: cho mĂ©t d·y bit X = (x1,x2,.....,xn,...); d·y Ÿã ¼−üc xem l” gi¶ ngÉu nhiÂȘn "tĂšt" nÕu xžc suÊt xuÊt hiÖn bit 0 hay bit 1 trong to”n d·y Ÿã cĂČng nh− trong mĂ€i d·y con bÊt kĂș cña nĂŁ ¼Òu b»ng 1/2; hoÆc mĂ©t tiÂȘu chuÈn khžc: nÕu mĂ€i ch−¬ng tr×nh sinh ra ¼−üc ÂźoÂčn ¼Çu n bit cña d·y ¼Òu ph¶i cĂŁ Ÿé phĂžc tÂčp (hay Ÿé d”i) cĂŹ n kĂœ tĂč ! VÒ sau n”y, khi lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn Ÿ· ¼−üc phžt triÓn th× tiÂȘu chuÈn vÒ ngÉu nhiÂȘn cĂČng ¼−üc qui vÒ tiÂȘu chuÈn phĂžc tÂčp tÝnh tožn, cĂŽ thÓ mĂ©t d·y bit X ¼−üc xem l” gi¶ ngÉu nhiÂȘn "tĂšt" nÕu mĂ€i thuËt tožn t×m ¼−üc bit thĂž n (xn) khi biÕt cžc bit tr−íc Ÿã (x1,,...,xn-1) vĂ­i xžc suÊt Ÿóng > 1/2 ¼Òu ph¶i cĂŁ Ÿé phĂžc tÂčp tÝnh tožn thuĂ©c lĂ­p NP-khĂŁ! LĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn ra ÂźĂȘi tĂ” giĂ·a nhĂ·ng nšm 1960 Ÿ· cho ta mĂ©t cžch thÝch hĂźp ¼Ó qui yÂȘu cÇu bÝ mËt hoÆc ngÉu nhiÂȘn vÒ mĂ©t yÂȘu cÇu cĂŁ thÓ ¼Þnh nghÜa ¼−üc l” yÂȘu cÇu vÒ Ÿé phĂžc tÂčp tÝnh tožn. B©y giĂȘ ta cĂŁ thÓ nĂŁi: mĂ©t gi¶i phžp mËt m· l” b¶o ٦m bÝ mËt, nÕu mĂ€i thuËt tožn thžm m·, nÕu cĂŁ, ¼Òu ph¶i ¼−üc thĂčc hiÖn vĂ­i Ÿé phĂžc tÂčp tÝnh tožn cĂčc lĂ­n! CĂčc lĂ­n l” bao nhiÂȘu? L” v−üt quž giĂ­i hÂčn kh¶ nšng tÝnh tožn (bao gĂ„m c¶ mžy tÝnh) m” ng−ĂȘi thžm m· cĂŁ thÓ cĂŁ. VÒ lĂœ thuyÕt, cĂŁ thÓ xem Ÿã l” nhĂ·ng Ÿé phĂžc tÂčp tÝnh tožn vĂ­i tĂšc Ÿé tšng v−üt quž h”m mĂČ, hoÆc thuĂ©c loÂči NP-khĂŁ. Tuy nhiÂȘn, lĂœ thuyÕt Ÿé phĂžc tÂčp tÝnh tožn kh«ng chØ cĂšng hiÕn cho ta mĂ©t khži niÖm ¼Ó giĂłp chÝnh xžc hĂŁa tiÂȘu chuÈn bÝ mËt cña cžc gi¶i phžp mËt m·, m” cßn mĂ« ra mĂ©t giai ÂźoÂčn mĂ­i cña ng”nh mËt m·, biÕn ng”nh mËt m· th”nh mĂ©t khoa hĂ€c cĂŁ nĂ©i dung
  • 15. 12 lĂœ luËn phong phĂł v” cĂŁ nhĂ·ng Ăžng dĂŽng thĂčc tiÔn quan trĂ€ng trong nhiÒu lÜnh vĂčc cña ÂźĂȘi sĂšng hiÖn ÂźÂči. B−íc ngoÆt cĂŁ tÝnh cžch mÂčng trong lÞch sö khoa hĂ€c mËt m· hiÖn ÂźÂči xÈy ra v”o nšm 1976 khi hai tžc gi¶ Diffie v” Hellman ¼−a ra khži niÖm vÒ mËt m· khĂŁa c«ng khai v” mĂ©t ph−¬ng phžp trao ŸÊi c«ng khai ¼Ó tÂčo ra mĂ©t khĂŁa bÝ mËt chung m” tÝnh an to”n ¼−üc b¶o ٦m bĂ«i Ÿé khĂŁ cña mĂ©t b”i tožn tožn hĂ€c cĂŽ thÓ (l” b”i tožn tÝnh "l«garit rĂȘi rÂčc"). Hai nšm sau, nšm 1978, Rivest, Shamir v” Adleman t×m ra mĂ©t hÖ mËt m· khĂŁa c«ng khai v” mĂ©t sÂŹ ŸÄ chĂ· kĂœ ÂźiÖn tö ho”n to”n cĂŁ thÓ Ăžng dĂŽng trong thĂčc tiÔn, tÝnh b¶o mËt v” an to”n cña chĂłng ¼−üc b¶o ٦m b»ng Ÿé phĂžc tÂčp cña mĂ©t b”i tožn sĂš hĂ€c nĂŠi tiÕng l” b”i tožn ph©n tÝch sĂš nguyÂȘn th”nh cžc thĂ”a sĂš nguyÂȘn tĂš. Sau phžt minh ra hÖ mËt m· Ÿã (m” nay ta th−ĂȘng gĂ€i l” hÖ RSA), viÖc nghiÂȘn cĂžu ¼Ó phžt minh ra cžc hÖ mËt m· khĂŁa c«ng khai khžc, v” Ăžng dĂŽng cžc hÖ mËt m· khĂŁa c«ng khai v”o cžc b”i tožn khžc nhau cña an to”n th«ng tin Ÿ· ¼−üc tiÕn h”nh rĂ©ng r·i, lĂœ thuyÕt mËt m· v” an to”n th«ng tin trĂ« th”nh mĂ©t lÜnh vĂčc khoa hĂ€c ¼−üc phžt triÓn nhanh trong v”i ba thËp niÂȘn cuĂši cña thÕ kĂ» 20, l«i cuĂšn theo sĂč phžt triÓn cña mĂ©t sĂš bĂ© m«n cña tožn hĂ€c v” tin hĂ€c. Trong cžc ch−¬ng vÒ sau cña tËp gižo tr×nh n”y ta sÏ lÇn l−üt l”m quen vĂ­i mĂ©t sĂš th”nh qu¶ chñ yÕu cña lĂœ thuyÕt Ÿã. 1.2. Cžc hÖ thĂšng mËt m·. 1.2.1. SÂŹ ŸÄ hÖ thĂšng mËt m·. MËt m· ¼−üc sö dĂŽng ¼Ó b¶o vÖ tÝnh bÝ mËt cña th«ng tin khi th«ng tin ¼−üc truyÒn trÂȘn cžc kÂȘnh truyÒn th«ng c«ng cĂ©ng nh− cžc kÂȘnh b−u chÝnh, ÂźiÖn thoÂči, mÂčng truyÒn th«ng mžy tÝnh, mÂčng Internet, v.v... Gi¶ thö mĂ©t ng−ĂȘi göi A muĂšn göi ¼Õn mĂ©t ng−ĂȘi nhËn B mĂ©t všn b¶n (chÂŒng hÂčn, mĂ©t bĂžc th−) p, ¼Ó b¶o mËt A lËp cho p mĂ©t b¶n mËt m· c, v” thay cho viÖc göi p, A göi cho B b¶n mËt m· c, B nhËn ¼−üc c v” "gĂÂ¶i m·" c ¼Ó lÂči ¼−üc všn b¶n p nh− A ¼Þnh göi. §Ó A biÕn p th”nh c v” B biÕn ng−üc lÂči c th”nh p , A v” B ph¶i thĂĄa thuËn tr−íc vĂ­i nhau cžc thuËt tožn lËp m· v” gi¶i m·, v” ¼Æc biÖt mĂ©t khĂŁa mËt m· chung K ¼Ó thĂčc hiÖn cžc thuËt tožn Ÿã. Ng−ĂȘi ngo”i, kh«ng biÕt cžc th«ng tin Ÿã (¼Æc biÖt, kh«ng biÕt khĂŁa
  • 16. 13 K), cho dĂŻ cĂŁ lÊy trĂ©m ¼−üc c trÂȘn kÂȘnh truyÒn th«ng c«ng cĂ©ng, cĂČng kh«ng thÓ t×m ¼−üc všn b¶n p m” hai ng−ĂȘi A, B muĂšn göi cho nhau. Sau Ÿ©y ta sÏ cho mĂ©t ¼Þnh nghÜa h×nh thĂžc vÒ sÂŹ ŸÄ mËt m· v” cžch thĂžc thĂčc hiÖn ¼Ó lËp mËt m· v” gi¶i mËt m·. §Þnh nghÜa 1.2.1. MĂ©t sÂŹ ŸÄ hÖ thĂšng mËt m· l” mĂ©t bĂ© nšm S = (P , C , K , E , D ) (1) thĂĄa m·n cžc ÂźiÒu kiÖn sau Ÿ©y: P l” mĂ©t tËp hĂ·u hÂčn cžc kĂœ tĂč b¶n rĂą, C l” mĂ©t tËp hĂ·u hÂčn cžc kĂœ tĂč b¶n m·, K l” mĂ©t tËp hĂ·u hÂčn cžc khĂŁa, E l” mĂ©t žnh xÂč tĂ” KxP v”o C , , ¼−üc gĂ€i l” phÐp lËp mËt m·; v” D l” mĂ©t žnh xÂč tĂ” KxC v”o P , ¼−üc gĂ€i l” phÐp gi¶i m·. VĂ­i mçi K∈K , ta ¼Þnh nghÜa eK : P →C , dK :C →P l” hai h”m cho bĂ«i : ⎠x ΔP : eK(x) = E (K,x) ; ⎠yΔ C : dK(y) = D (K,y). eK v” dK ¼−üc gĂ€i lÇn l−üt l” h”m lËp m· v” h”m gi¶i m· Ăžng vĂ­i khĂŁa mËt m· K. Cžc h”m Ÿã ph¶i thĂĄa m·n hÖ thĂžc: ⎠x Δ P : dK(eK(x)) = x. VÒ sau, ¼Ó thuËn tiÖn ta sÏ gĂ€i mĂ©t danh sžch (1) tho¶ m·n cžc tÝnh chÊt kÓ trÂȘn l” mĂ©t sÂŹ ŸÄ hÖ thĂšng mËt m· , cßn khi Ÿ· chĂ€n cĂš ¼Þnh mĂ©t khož K, th× danh sžch (P , C , eK , dK) l” mĂ©t hÖ mËt m· thuĂ©c sÂŹ ŸÄ Ÿã. Trong ¼Þnh nghÜa n”y, phÐp lËp mËt m· (gi¶i m·) ¼−üc ¼Þnh nghÜa cho tĂ”ng kĂœ tĂč b¶n rĂą (b¶n m·). Trong thĂčc tÕ, b¶n rĂą cña mĂ©t th«ng bžo th−ĂȘng l” mĂ©t d·y kĂœ tĂč b¶n rĂą, tĂžc l” phÇn tö cña tËp P *, v” b¶n mËt m· cĂČng l” mĂ©t d·y cžc kĂœ tĂč b¶n m·, tĂžc l” phÇn tö cña tËp C *, viÖc mĂ« rĂ©ng cžc h”m eK v” dK lÂȘn cžc miÒn t−¬ng Ăžng P * v” C * ¼Ó ¼−üc cžc thuËt tožn lËp mËt m· v” gi¶i m· dĂŻng trong thĂčc tÕ sÏ ¼−üc tr×nh b”y trong tiÕt sau. Cžc tËp kĂœ tĂč b¶n rĂą v” b¶n m· th−ĂȘng dĂŻng l” cžc tËp kĂœ tĂč cña ng«n ngĂ· th«ng th−ĂȘng nh− tiÕng ViÖt, tiÕng Anh (ta kĂœ hiÖu tËp kĂœ tĂč tiÕng Anh l” A tĂžc A = {a,b,c,...,x,y,z } gĂ„m 26 kĂœ tĂč; tËp kĂœ tĂč nhÞ ph©n B chØ gĂ„m hai kĂœ tĂč
  • 17. 0 v” 1; tËp cžc sĂš nguyÂȘn kh«ng ©m bÐ hÂŹn mĂ©t sĂš n n”o Ÿã (ta kĂœ hiÖu tËp n”y l” Zn tĂžc Zn = {0,1,2,...., n- 1}). ChĂł Ăœ r»ng cĂŁ thÓ xem B = Z2. §Ó thuËn tiÖn, ta cĂČng th−ĂȘng ŸÄng nhÊt tËp kĂœ tĂč tiÕng Anh A vĂ­i tËp gĂ„m 26 sĂš nguyÂȘn kh«ng ©m ¼Çu tiÂȘn Z26 = {0,1,2,...., 24,25} vĂ­i sĂč t−¬ng Ăžng sau Ÿ©y: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25. §«i khi ta cĂČng dĂŻng vĂ­i t− cžch tËp kĂœ tĂč b¶n rĂą hay b¶n m· l” cžc tËp tÝch cña cžc tËp nĂŁi trÂȘn, ¼Æc biÖt l” cžc tËp Am , Bm , Zn m . 1.2.2. M· theo khĂši v” m· theo dßng. Nh− nĂŁi Ă« trÂȘn, b¶n rĂą cña th«ng bžo m” ta muĂšn göi Âźi th−ĂȘng l” mĂ©t d·y kĂœ tĂč, trong khi theo ¼Þnh nghÜa cña sÂŹ ŸÄ mËt m·, h”m lËp mËt m· v” h”m gi¶i m· ¼−üc ¼Þnh nghÜa cho tĂ”ng kĂœ tĂč. TĂ” cžc ¼Þnh nghÜa cña h”m lËp mËt m· v” h”m gi¶i m·, ta mĂ« rĂ©ng th”nh thuËt tožn lËp m· (v” gi¶i m·) xžc ¼Þnh cho mĂ€i b¶n rĂą (b¶n m·) nh− sau: Theo cžch m· theo khĂši (block cipher), tr−íc hÕt ta xžc ¼Þnh mĂ©t Ÿé d”i khĂši (chÂŒng hÂčn l” k), tiÕp Ÿã mĂ« rĂ©ng kh«ng gian khĂŁa tĂ” K th”nh Kk , v” vĂ­i mçi K =K1...Kk Δ Kk , ta mĂ« rĂ©ng eK v” dK th”nh cžc thuËt tožn eK : P k → C k v” dK : C k →P k nh− sau: vĂ­i mĂ€i x1...xk ∈P k v” y1...yk ∈C k ta cĂŁ 14 e x x e x e x 1 1 1 ( .... ) ( ).... ( ); k K k K K k = 1 1 1 ( .... ) ( ).... ( ) k K k K K k d y y d y d y = . Gi¶ thö b¶n rĂą m” ta muĂšn lËp mËt m· cho nĂŁ l” d·y kĂœ tĂč X∈ P * .Ta cŸt X th”nh tĂ”ng khĂši, mçi khĂši cĂŁ Ÿé d”i k, khĂši cuĂši cĂŻng cĂŁ thÓ cĂŁ Ÿé d”i <k, ta lu«n cĂŁ thÓ gi¶ thiÕt l” cĂŁ thÓ bĂŠ sung v”o phÇn cuĂši cña khĂši mĂ©t sĂš kĂœ tĂč qui −íc n”o Ÿã ¼Ó nĂŁ cĂČng cĂŁ Ÿé d”i k. Do Ÿã ta cĂŁ thÓ gi¶ thiÕt X = X1....Xm , trong Ÿã mçi X1,...,Xm l” mĂ©t khĂši cĂŁ Ÿé d”i k. V” ta ¼Þnh nghÜa b¶n mËt m· cña X l”: eK(X) = eK(X1....Xm ) = eK(X1)....eK(Xm). §Æt Y = eK(X1)....eK(Xm), ta cĂŁ thÓ viÕt Y = Y1....Ym vĂ­i Yi =eK(Xi), v” do Ÿã cĂŁ
  • 18. dK(Y) = dK(Y1)....dK(Ym) = X1....Xm = X. Cžch m· theo khĂši Ÿn gi¶n v” th«ng dĂŽng nhÊt l” khi ta chĂ€n Ÿé d”i khĂši k =1. Khi Ÿã vĂ­i mĂ€i b¶n rĂą X = x1...xm ∈ P * ta cĂŁ eK(X) = eK(x1....xm ) = eK(x1)....eK(xm). VĂ­i cžch m· theo dßng (stream cipher), tr−íc hÕt ta ph¶i xžc ¼Þnh mĂ©t dßng khĂŁa, tĂžc l” mĂ©t phÇn tö K = K1...Km ∈ K * , vĂ­i dßng khĂŁa Ÿã ta xžc ¼Þnh vĂ­i mĂ€i b¶n rĂą X = x1...xm ∈ P * b¶n m· t−¬ng Ăžng l” eK(X) = 1 1 1 ( ... ) ( )... ( ). m K m K K m e x x e x e x = Gi¶i m· Y = eK(X) ta ¼−üc dK(Y) = . 1 1 1 1 ( ( )).... ( ( )) .... m m K K K K m m d e x d e x x x X = = §Ó sö dĂŽng cžch lËp mËt m· theo dßng, ngo”i sÂŹ ŸÄ mËt m· gĂšc ta cßn ph¶i cĂŁ mĂ©t dßng khĂŁa, tĂžc l” mĂ©t d·y cĂŁ Ÿé d”i tĂŻy Ăœ cžc kĂœ tĂč khĂŁa. §ã th−ĂȘng l” cžc d·y cžc kĂœ tĂč khĂŁa ¼−üc sinh ra bĂ«i mĂ©t bĂ© "tÂčo d·y ngÉu nhiÂȘn" n”o Ÿã xuÊt phžt tĂ” mĂ©t "mÇm" chĂ€n tr−íc. Trong cžc Ăžng dĂŽng thĂčc tÕ, ng−ĂȘi ta th−ĂȘng dĂŻng cžch m· theo dßng cĂŁ sÂŹ ŸÄ mËt m· gĂšc l” sÂŹ ŸÄ Vernam vĂ­i P = C = K = {0,1} v” cžc h”m lËp m· v” gi¶i m· ¼−üc xžc ¼Þnh bĂ«i eK(x) = x + K mod 2, dK(y) = y +K mod 2 (K = 0 hoÆc 1); dßng khĂŁa l” d·y bit ngÉu nhiÂȘn ¼−üc sinh ra bĂ«i mĂ©t bĂ© tÂčo d·y bit ngÉu nhiÂȘn n”o Ÿã. 1.3. MËt m· khĂŁa ŸÚi xĂžng v” mËt m· cĂŁ khĂŁa c«ng khai. Theo ¼Þnh nghÜa 1.2.1 vÒ sÂŹ ŸÄ mËt m·, cĂž mçi lÇn truyÒn tin b¶o mËt, c¶ ng−ĂȘi göi A v” ng−ĂȘi nhËn B ph¶i cĂŻng thĂĄa thuËn tr−íc vĂ­i nhau mĂ©t khĂŁa chung K, sau Ÿã ng−ĂȘi göi dĂŻng eK ¼Ó lËp mËt m· cho th«ng bžo göi Âźi, v” ng−ĂȘi nhËn dĂŻng dK ¼Ó gi¶i m· b¶n mËt m· nhËn ¼−üc. Ng−ĂȘi göi v” ng−ĂȘi nhËn cĂŻng cĂŁ mĂ©t khĂŁa 15
  • 19. 16 chung K, ¼−üc giĂ· nh− bÝ mËt riÂȘng cña hai ng−ĂȘi, dĂŻng c¶ cho lËp mËt m· v” gi¶i m·, ta gĂ€i nhĂ·ng hÖ mËt m· vĂ­i cžch sö dĂŽng Ÿã l” mËt m· khĂŁa ŸÚi xĂžng, Ÿ«i khi cĂČng gĂ€i l” mËt m· truyÒn thĂšng, v× Ÿã l” cžch Ÿ· ¼−üc sö dĂŽng tĂ” h”ng ng”n nšm nay. Tuy nhiÂȘn, vÒ nguyÂȘn tŸc hai h”m lËp m· v” gi¶i m· l” khžc nhau, kh«ng nhÊt thiÕt ph¶i phĂŽ thuĂ©c cĂŻng mĂ©t khĂŁa. NÕu ta xžc ¼Þnh mçi khĂŁa K gĂ„m cĂŁ hai phÇn K = (K' , K'' ), K' d”nh cho viÖc lËp mËt m· (v” ta cĂŁ h”m lËp m· eK' ), K'' d”nh cho viÖc gi¶i m· (v” cĂŁ h”m gi¶i m· dK'' ), cžc h”m lËp m· v” gi¶i m· thĂĄa m·n hÖ thĂžc dK'' (eK' (x)) = x vĂ­i mĂ€i x ∈P , th× ta ¼−üc mĂ©t hÖ mËt m· khĂŁa phi ŸÚi xĂžng. Nh− vËy, trong mĂ©t hÖ mËt m· khĂŁa phi ŸÚi xĂžng, cžc khĂŁa lËp m· v” gi¶i m· (K' v” K'' ) l” khžc nhau, nh−ng tÊt nhiÂȘn cĂŁ quan hÖ vĂ­i nhau. Trong hai khĂŁa Ÿã, khĂŁa cÇn ph¶i giĂ· bÝ mËt l” khĂŁa gi¶i m· K'' , cßn khĂŁa lËp m· K' cĂŁ thÓ ¼−üc c«ng bĂš c«ng khai; tuy nhiÂȘn ÂźiÒu Ÿã chØ cĂŁ Ăœ nghÜa thĂčc tiÔn khi viÖc biÕt K' t×m K'' l” cĂčc kĂș khĂŁ khšn ¼Õn mĂžc hÇu nh− kh«ng thÓ thĂčc hiÖn ¼−üc. MĂ©t hÖ mËt m· khĂŁa phi ŸÚi xĂžng cĂŁ tÝnh chÊt nĂŁi trÂȘn, trong Ÿã khĂŁa lËp mËt m· K' cña mçi ng−ĂȘi tham gia ¼Òu ¼−üc c«ng bĂš c«ng khai, ¼−üc gĂ€i l” hÖ mËt m· khĂŁa c«ng khai. Khži niÖm mËt m· khĂŁa c«ng khai mĂ­i ¼−üc ra ÂźĂȘi v”o giĂ·a nhĂ·ng nšm 1970, v” ngay sau Ÿã Ÿ· trĂ« th”nh mĂ©t khži niÖm trung t©m cña khoa hĂ€c mËt m· hiÖn ÂźÂči. Ta sÏ d”nh phÇn lĂ­n nĂ©i dung gižo tr×nh n”y cho cžc hÖ mËt m· Ÿã v” nhĂ·ng Ăžng dĂŽng cña chĂłng v”o cžc vÊn ¼Ò an to”n th«ng tin. 1.4. Cžc b”i tožn vÒ an to”n th«ng tin. ChĂłng ta Âźang sĂšng trong mĂ©t thĂȘi ÂźÂči bĂŻng nĂŠ th«ng tin. Nhu cÇu trao ŸÊi th«ng tin v” cžc ph−¬ng tiÖn truyÒn ¼−a th«ng tin phžt triÓn mĂ©t cžch nhanh chĂŁng. V” cĂŻng vĂ­i sĂč phžt triÓn Ÿã, ¼ßi hĂĄi b¶o vÖ tÝnh bÝ mËt v” an to”n cña th«ng tin cĂČng c”ng ng”y c”ng to lĂ­n v” cĂŁ tÝnh phĂŠ biÕn. CĂŁ nhiÒu b”i tožn khžc nhau vÒ yÂȘu cÇu an to”n th«ng tin tĂŻy theo nhĂ·ng t×nh huĂšng khžc nhau, nh−ng tĂču
  • 20. 17 trung cĂŁ mĂ©t sĂš b”i tožn chung nhÊt m” ta th−ĂȘng gÆp trong thĂčc tiÔn l” nhĂ·ng b”i tožn sau Ÿ©y: - b¶o mËt : giĂ· th«ng tin ¼−üc bÝ mËt ŸÚi vĂ­i tÊt c¶ mĂ€i ng−ĂȘi, trĂ” mĂ©t Ýt ng−ĂȘi cĂŁ thÈm quyÒn ¼−üc ŸÀc, biÕt th«ng tin Ÿã; - to”n vÑn th«ng tin : b¶o ٦m th«ng tin kh«ng bÞ thay ŸÊi hay xuyÂȘn tÂčc bĂ«i nhĂ·ng kÎ kh«ng cĂŁ thÈm quyÒn hoÆc b»ng nhĂ·ng ph−¬ng tiÖn kh«ng ¼−üc phÐp; - nhËn thĂčc mĂ©t thĂčc thÓ : xžc nhËn danh tÝnh cña mĂ©t thĂčc thÓ, chÂŒng hÂčn mĂ©t ng−ĂȘi, mĂ©t mžy tÝnh cuĂši trong mÂčng, mĂ©t thÎ tÝn dĂŽng,... ; - nhËn thĂčc mĂ©t th«ng bžo : xžc nhËn nguĂ„n gĂšc cña mĂ©t th«ng bžo ¼−üc göi ¼Õn ; - chĂ· kĂœ : mĂ©t cžch ¼Ó gŸn kÕt mĂ©t th«ng tin vĂ­i mĂ©t thĂčc thÓ, th−ĂȘng dĂŻng trong b”i tožn nhËn thĂčc mĂ©t th«ng bžo cĂČng nh− trong nhiÒu b”i tožn nhËn thĂčc khžc ; - ñy quyÒn : chuyÓn cho mĂ©t thĂčc thÓ khžc quyÒn ¼−üc ÂźÂči diÖn hoÆc ¼−üc l”m mĂ©t viÖc g× Ÿã ; - cÊp chĂžng chØ : cÊp mĂ©t sĂč xžc nhËn th«ng tin bĂ«i mĂ©t thĂčc thÓ ¼−üc tÝn nhiÖm ; - bžo nhËn : xžc nhËn mĂ©t th«ng bžo Ÿ· ¼−üc nhËn hay mĂ©t dÞch vĂŽ Ÿ· ¼−üc thĂčc hiÖn ; - l”m chĂžng : kiÓm thö viÖc tĂ„n tÂči mĂ©t th«ng tin Ă« mĂ©t thĂčc thÓ khžc vĂ­i ng−ĂȘi chñ sĂ« hĂ·u th«ng tin Ÿã ; - kh«ng chĂši bĂĄ ¼−üc : ngšn ngĂ”a viÖc chĂši bĂĄ tržch nhiÖm ŸÚi vĂ­i mĂ©t cam kÕt Ÿ· cĂŁ (thÝ dĂŽ Ÿ· kĂœ v”o mĂ©t všn b¶n) ; - Èn danh : che giÊu danh tÝnh cña mĂ©t thĂčc thÓ tham gia trong mĂ©t tiÕn tr×nh n”o Ÿã (th−ĂȘng dĂŻng trong giao dÞch tiÒn ÂźiÖn tö) ; - thu hĂ„i : rĂłt lÂči mĂ©t giÊy chĂžng chØ hay ñy quyÒn Ÿ· cÊp; - v©n v©n........ CÂŹ sĂ« cña cžc gi¶i phžp cho cžc b”i tožn kÓ trÂȘn l” cžc ph−¬ng phžp mËt m·, ¼Æc biÖt l” mËt m· khĂŁa c«ng khai, ta sÏ xem xÐt kĂŒ mĂ©t v”i b”i tožn Ÿã trong cžc ch−¬ng tiÕp theo.
  • 21. 18 1.5. Thžm m· v” tÝnh an to”n cña cžc hÖ mËt m·. 1.5.1. VÊn ¼Ò thžm m·. MËt m· ¼−üc sö dĂŽng tr−íc hÕt l” ¼Ó b¶o ٦m tÝnh bÝ mËt cho cžc th«ng tin ¼−üc trao ŸÊi, v” do Ÿã b”i tožn quan trĂ€ng nhÊt cña thžm m· cĂČng l” b”i tožn phž bĂĄ tÝnh bÝ mËt Ÿã, tĂžc l” tĂ” b¶n mËt m· cĂŁ thÓ thu ¼−üc dÔ d”ng (trÂȘn cžc kÂȘnh truyÒn tin c«ng cĂ©ng) ng−ĂȘi thžm m· ph¶i phžt hiÖn ¼−üc nĂ©i dung th«ng tin bÞ che giÊu trong b¶n mËt m· Ÿã, m” tĂšt nhÊt l” t×m ra ¼−üc b¶n rĂą gĂšc cña b¶n mËt m· Ÿã. T×nh huĂšng th−ĂȘng gÆp l” b¶n th©n sÂŹ ŸÄ hÖ thĂšng mËt m·, kÓ c¶ cžc phÐp lËp m· v” gi¶i m· (tĂžc cžc thuËt tožn E v” D ), kh«ng nhÊt thiÕt l” bÝ mËt, do Ÿã b”i tožn qui vÒ viÖc t×m ch×a khĂŁa mËt m· K, hay ch×a khĂŁa gi¶i m· K'', nÕu hÖ mËt m· cĂŁ khĂŁa phi ŸÚi xĂžng. Nh− vËy, ta cĂŁ thÓ qui −íc xem b”i tožn thžm m· cÂŹ b¶n l” b”i tožn t×m khĂŁa mËt m· K (hay khĂŁa gi¶i m· K''). §Ó gi¶i b”i tožn Ÿã, gi¶ thiÕt ng−ĂȘi thžm m· biÕt th«ng tin vÒ sÂŹ ŸÄ hÖ mËt m· ¼−üc dĂŻng, kÓ c¶ cžc phÐp lËp m· v” gi¶i m· tĂŠng qužt E v” D . Ngo”i ra, ng−ĂȘi thžm m· cĂŁ thÓ biÕt thÂȘm mĂ©t sĂš th«ng tin khžc, tĂŻy theo nhĂ·ng th«ng tin ¼−üc biÕt thÂȘm n”y m” ta cĂŁ thÓ ph©n loÂči b”i tožn thžm m· th”nh cžc b”i tožn cĂŽ thÓ nh− sau: - b”i tožn thžm m· chØ biÕt b¶n m· : l” b”i tožn phĂŠ biÕn nhÊt, khi ng−ĂȘi thžm m· chØ biÕt mĂ©t b¶n mËt m· Y; - b”i tožn thžm m· khi biÕt c¶ b¶n rĂą : ng−ĂȘi thžm m· biÕt mĂ©t b¶n mËt m· Y cĂŻng vĂ­i b¶n rĂą t−¬ng Ăžng X; - b”i tožn thžm m· khi cĂŁ b¶n rĂą ¼−üc chĂ€n : ng−ĂȘi thžm m· cĂŁ thÓ chĂ€n mĂ©t b¶n rĂą X, v” biÕt b¶n mËt m· t−¬ng Ăžng Y . §iÒu n”y cĂŁ thÓ xÈy ra khi ng−ĂȘi thžm m· chiÕm ¼−üc (tÂčm thĂȘi) mžy lËp m·; - b”i tožn thžm m· khi cĂŁ b¶n m· ¼−üc chĂ€n : ng−ĂȘi thžm m· cĂŁ thÓ chĂ€n mĂ©t b¶n mËt m· Y, v” biÕt b¶n rĂą t−¬ng Ăžng X. §iÒu n”y cĂŁ thÓ xÈy ra khi ng−ĂȘi thžm m· chiÕm ¼−üc tÂčm thĂȘi mžy gi¶i m·. 1.5.2. TÝnh an to”n cña mĂ©t hÖ mËt m·.
  • 22. 19 TÝnh an to”n cña mĂ©t hÖ thĂšng mËt m· phĂŽ thuĂ©c v”o Ÿé khĂŁ khšn cña b”i tožn thžm m· khi sö dĂŽng hÖ mËt m· Ÿã. Ng−ĂȘi ta Ÿ· ¼Ò xuÊt mĂ©t sĂš cžch hiÓu cho khži niÖm an to”n cña hÖ thĂšng mËt m·, ¼Ó trÂȘn cÂŹ sĂ« cžc cžch hiÓu Ÿã nghiÂȘn cĂžu tÝnh an to”n cña nhiÒu hÖ mËt m· khžc nhau, sau Ÿ©y ta giĂ­i thiÖu v”i cžch hiÓu th«ng dĂŽng nhÊt: - An to”n v« ÂźiÒu kiÖn : gi¶ thiÕt ng−ĂȘi thžm m· cĂŁ ¼−üc th«ng tin vÒ b¶n m·. Theo quan niÖm lĂœ thuyÕt th«ng tin, nÕu nhĂ·ng hiÓu biÕt vÒ b¶n m· kh«ng thu hÑp ¼−üc Ÿé bÊt ¼Þnh vÒ b¶n rĂą ŸÚi vĂ­i ng−ĂȘi thžm m·, th× hÖ mËt m· l” an to”n v« ÂźiÒu kiÖn, hay theo thuËt ngĂ· cña C. Shannon, hÖ l” bÝ mËt ho”n to”n. Nh− vËy, hÖ l” an to”n v« ÂźiÒu kiÖn, nÕu Ÿé bÊt ¼Þnh vÒ b¶n rĂą sau khi ng−ĂȘi thžm m· cĂŁ ¼−üc cžc th«ng tin (vÒ b¶n m·) b»ng Ÿé bÊt ¼Þnh vÒ b¶n rĂą tr−íc Ÿã. TÝnh an to”n v« ÂźiÒu kiÖn Ÿ· ¼−üc nghiÂȘn cĂžu cho mĂ©t sĂš hÖ mËt m· khĂŁa ŸÚi xĂžng m” ta sÏ tr×nh b”y trong ch−¬ng 3. - An to”n ¼−üc chĂžng minh : mĂ©t hÖ thĂšng mËt m· ¼−üc xem l” cĂŁ Ÿé an to”n ¼−üc chĂžng minh nÕu ta cĂŁ thÓ chĂžng minh ¼−üc l” b”i tožn thžm m· ŸÚi vĂ­i hÖ thĂšng Ÿã khĂŁ t−¬ng ¼−¬ng vĂ­i mĂ©t b”i tožn khĂŁ Ÿ· biÕt, thÝ dĂŽ b”i tožn ph©n tÝch mĂ©t sĂš nguyÂȘn th”nh tÝch cžc thĂ”a sĂš nguyÂȘn tĂš, b”i tožn t×m l«garit rĂȘi rÂčc theo mĂ©t m«Ÿuyn nguyÂȘn tĂš, v.v... (khĂŁ t−¬ng ¼−¬ng cĂŁ nghÜa l” nÕu b”i tožn n”y gi¶i ¼−üc th× b”i tožn kia cĂČng gi¶i ¼−üc vĂ­i cĂŻng mĂ©t Ÿé phĂžc tÂčp nh− nhau). - An to”n tÝnh tožn : hÖ mËt m· ¼−üc xem l” an to”n (vÒ mÆt) tÝnh tožn, nÕu mĂ€i ph−¬ng phžp thžm m· Ÿ· biÕt ¼Òu ¼ßi hĂĄi mĂ©t nguĂ„n nšng lĂčc tÝnh tožn v−üt mĂ€i kh¶ nšng (kÓ c¶ ph−¬ng tiÖn thiÕt bÞ) tÝnh tožn cña mĂ©t kÎ thĂŻ gi¶ ¼Þnh. An to”n theo nghÜa n”y, nĂŁi theo ng«n ngĂ· cña lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn, l” bao h”m c¶ khži niÖm an to”n theo nghia "¼−üc chĂžng minh" nĂŁi trÂȘn. TÝnh an to”n theo nghÜa ¼−üc chĂžng minh hay tÝnh tožn ¼−üc sö dĂŽng nhiÒu trong viÖc nghiÂȘn cĂžu cžc hÖ thĂšng mËt m· hiÖn ÂźÂči, ¼Æc biÖt l” cžc hÖ thĂšng mËt m· khĂŁa c«ng khai, ta sÏ tr×nh b”y riÂȘng cho tĂ”ng hÖ mËt m· ¼−üc tr×nh b”y trong cžc ch−¬ng vÒ sau. Ă« mĂŽc
  • 23. 20 1,4 ta Ÿ· giĂ­i thiÖu mĂ©t sĂš b”i tožn vÒ an to”n th«ng tin nĂŁi chung. Cžc b”i tožn Ÿã ¼Òu cĂŁ hÂčt nh©n l” tÝnh an to”n cña mĂ©t hÖ mËt m· n”o Ÿã, cho nÂȘn viÖc nghiÂȘn cĂžu tÝnh an to”n cña cžc hÖ mËt m· cĂČng gĂŁp phÇn gi¶i quyÕt cžc vÊn ¼Ò an to”n th«ng tin kÓ trÂȘn. CHŠ„NG II CÂŹ sĂ« tožn hĂ€c cña lĂœ thuyÕt mËt m· 2.1. SĂš hĂ€c cžc sĂš nguyÂȘn. ThuËt tožn Euclide. Ta kĂœ hiÖu Z l” tËp hĂźp cžc sĂš nguyÂȘn, Z = {.....,-2,-1,0,1,2,....}, v” Z+ l” tËp hĂźp cžc sĂš nguyÂȘn kh«ng ©m, Z+ = {0,1,2,.....}. Trong mĂŽc n”y ta sÏ nhŸc lÂči mĂ©t sĂš kiÕn thĂžc vÒ sĂš hĂ€c cña cžc sĂš nguyÂȘn cÇn cho viÖc tr×nh b”y lĂœ thuyÕt mËt m·. V× ¼Ó tËp gižo tr×nh kh«ng quž d”i dßng, cžc kiÕn thĂžc sÏ ¼−üc nhŸc ¼Õn chñ yÕu l” cžc khži niÖm, cžc mÖnh ¼Ò sÏ ¼−üc sö dĂŽng, v.v..., cßn cžc phÇn chĂžng minh sÏ ¼−üc l−üc bĂĄ, bÂčn ŸÀc n”o muĂšn t×m hiÓu kĂŒ hÂŹn cĂŁ thÓ tham kh¶o cžc sžch chuyÂȘn vÒ SĂš hĂ€c. 2.1.1. TÝnh chia hÕt cña cžc sĂš nguyÂȘn. TËp hĂźp Z l” Ÿãng kÝn ŸÚi vĂ­i cžc phÐp cĂ©ng, trĂ” v” nh©n, nh−ng kh«ng Ÿãng kÝn ŸÚi vĂ­i phÐp chia: chia mĂ©t sĂš nguyÂȘn cho mĂ©t sĂš nguyÂȘn kh«ng ph¶i bao giĂȘ cĂČng ¼−üc kÕt qu¶ l” mĂ©t sĂš nguyÂȘn! V× vËy, tr−ĂȘng hĂźp chia hÕt, tĂžc khi chia sĂš nguyÂȘn a cho sĂš nguyÂȘn b ¼−üc th−¬ng l” mĂ©t sĂš nguyÂȘn q , a = b.q, cĂŁ mĂ©t Ăœ nghÜa ¼Æc biÖt. Khi Ÿã, ta nĂŁi a chia hÕt cho b, b chia hÕt a, a l” bĂ©i sĂš cña b, b l” −íc sĂš cña a, v” kĂœ hiÖu l” b⏐a. DÔ thÊy ngay r»ng sĂš 1 l” −íc
  • 24. sĂš cña mĂ€i sĂš nguyÂȘn bÊt kĂș, sĂš 0 l” bĂ©i sĂš cña mĂ€i sĂš nguyÂȘn bÊt kĂș, mĂ€i sĂš nguyÂȘn a l” −íc sĂš, ŸÄng thĂȘi l” bĂ©i sĂš, cña chÝnh nĂŁ. Cho hai sĂš nguyÂȘn bÊt kĂș a v” b , b > 1. ThĂčc hiÖn phÐp chia a cho b ta sÏ ¼−üc hai sĂš q v” r sao cho a = b.q + r , 0 < r < b . SĂš q ¼−üc gĂ€i l” sĂš th−¬ng cña phÐp chia a cho b, kĂœ hiÖu a divb, v” sĂš r ¼−üc gĂ€i l” sĂš d− cña phÐp chia a cho b, kĂœ hiÖu a modb. ThÝ dĂŽ: 25 div 7 = 3 v” 25 mod 7 = 4, -25 div 7 = -4 v” -25 mod 7 = 3. MĂ©t sĂš nguyÂȘn d ¼−üc gĂ€i l” −íc sĂš chung cña hai sĂš nguyÂȘn a v” b nÕu d ⏐a v” d ⏐b. SĂš nguyÂȘn d ¼−üc gĂ€i l” −íc sĂš chung lĂ­n nhÊt cña a v” b nÕu d > 0, d l” −íc sĂš chung cña a v” b, v” mĂ€i −íc sĂš chung cña a v” b ¼Òu l” −íc sĂš cña d . Ta kĂœ hiÖu −íc sĂš chung lĂ­n nhÊt cña a v” b l” gcd(a,b). ThÝ dĂŽ gcd(12,18) = 6, gcd(-18, 27) = 3. DÔ thÊy r»ng vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a ta cĂŁ gcd(a,0) = a , ta cĂČng sÏ qui −íc xem r»ng gcd(0, 0) = 0. MĂ©t sĂš nguyÂȘn a > 1 ¼−üc gĂ€i l” sĂš nguyÂȘn tĂš, nÕu a kh«ng cĂŁ −íc sĂš n”o ngo”i 1 v” chÝnh a ; v” ¼−üc gĂ€i l” hĂźp sĂš , nÕu kh«ng ph¶i l” nguyÂȘn tĂš. ThÝ dĂŽ cžc sĂš 2 ,3 , 5, 7 l” sĂš nguyÂȘn tĂš; cžc sĂš 4, 6, 8, 10, 12, 14, 15 l” hĂźp sĂš. Hai sĂš a v” b ¼−üc gĂ€i l” nguyÂȘn tĂš vĂ­i nhau, nÕu chĂłng kh«ng cĂŁ −íc sĂš chung n”o khžc 1, tĂžc l” nÕu gcd(a,b) = 1. MĂ©t sĂš nguyÂȘn n > 1 bÊt kĂș ¼Òu cĂŁ thÓ viÕt d−íi dÂčng: 1 2 1 2 . ... k k n p p pα α α = trong Ÿã p1 , p2 ,..., pk l” cžc sĂš nguyÂȘn tĂš khžc nhau, α1 , α2 ,..., αk l” cžc sĂš mĂČ nguyÂȘn d−¬ng. NÕu kh«ng kÓ thĂž tĂč cžc thĂ”a sĂš nguyÂȘn tĂš, th× dÂčng biÓu diÔn Ÿã l” duy nhÊt, ta gĂ€i Ÿã l” dÂčng khai triÓn chÝnh tŸc cña n . ThÝ dĂŽ dÂčng khai triÓn chÝnh tŸc cña 1800 l” 23 32 52 . Cžc sĂš nguyÂȘn tĂš v” cžc vÊn ¼Ò vÒ sĂš nguyÂȘn tĂš cĂŁ mĂ©t vai trß quan trĂ€ng trong sĂš hĂ€c v” trong Ăžng dĂŽng v”o lĂœ thuyÕt mËt m·, ta sÏ xÐt riÂȘng trong mĂ©t mĂŽc sau. §Þnh lĂœ 2.1.1. NÕu b > 0 v” b ⏐a th× gcd(a ,b) = b. 21
  • 25. NÕu a = bq + r th× gcd(a,b) = gcd(b,r). MĂ©t sĂš nguyÂȘn m ¼−üc gĂ€i l” bĂ©i sĂš chung cña a v” b nÕu a ⏐m v” b⏐m. SĂš m ¼−üc gĂ€i l” bĂ©i sĂš chung bÐ nhÊt cña a v” b , v” ¼−üc kĂœ hiÖu l” lcm(a ,b), nÕu m > 0, m l” bĂ©i sĂš chung cña a v” b , v” mĂ€i bĂ©i sĂš chung cña a v” b ¼Òu l” bĂ©i cña m . ThÝ dĂŽ lcm(14,21) = 42. VĂ­i hai sĂš nguyÂȘn d−¬ng a v” b bÊt kĂș ta cĂŁ quan hÖ lcm(a,b).gcd(a,b) = a.b. TĂ” ¼Þnh lĂœ 2.1.1 ta suy ra thuËt tožn sau Ÿ©y thĂčc hiÖn viÖc t×m −íc sĂš chung lĂ­n nhÊt cña hai sĂš nguyÂȘn bÊt kĂș: ThuËt tožn Euclide t×m −íc sĂš chung lĂ­n nhÊt : INPUT: hai sĂš nguyÂȘn kh«ng ©m a v” b , vĂ­i a ≄b . OUTPUT: −íc sĂš chung lĂ­n nhÊt cña a v” b. 1. Trong khi cßn b > 0, thĂčc hiÖn: 1.1. ¼Æt r ←a modb , a ←b , b ← r. 2. Cho ra kÕt qu¶ (a). ThÝ dĂŽ: DĂŻng thuËt tožn Euclide t×m gcd( 4864, 3458), ta lÇn l−üt ¼−üc cžc giž trÞ gžn cho cžc biÕn a, b v” r nh− sau: 22 4864 = 1. 3458 + 1406 3458 = 2. 1406 + 646 1406 = 2. 646 + 114 646 = 5. 114 + 76 114 = 1. 76 + 38 76 = 2. 38 + 0 a b r 4864 3458 1406 646 114 76 38 3458 1406 646 114 76 38 0 1406 646 114 76 38 0
  • 26. 23 V” thuËt tožn cho ta kÕt qu¶: gcd(4864, 3458) = 38. Ta biÕt r»ng nÕu gcd(a,b) = d, th× ph−¬ng tr×nh bÊt ¼Þnh a.x + b.y = d cĂŁ nghiÖm nguyÂȘn (x,y), v” mĂ©t nghiÖm nguyÂȘn (x,y) nh− vËy cĂŁ thÓ t×m ¼−üc bĂ«i thuËt tožn Euclide mĂ« rĂ©ng nh− sau: ThuËt tožn Euclide mĂ« rĂ©ng : INPUT: hai sĂš nguyÂȘn kh«ng ©m a v” b vĂ­i a ≄b. OUTPUT: d = gcd(a,b) v” hai sĂš x,y sao cho a.x + b.y = d. 1. NÕu b = 0 th× ¼Æt d← a , x ←1, y ← 0, v” cho ra (d,x,y). 2. §Æt x2 = 1, x1 = 0 , y2 = 0 , y1 = 1. 3. Trong khi cßn b >0, thĂčc hiÖn: 3.1. q←a divb, r ← a modb , x ← x2 − qx1 , y ← y2 − qy1. 3.2. a ←b, b ←r , x2 ← x1 , x1← x , y2← y1 v” y1←y. 4. §Æt d ← a, x ←x2 , y ← y2 , v” cho ra kÕt qu¶ (d,x,y). ThÝ dĂŽ: DĂŻng thuËt tožn Euclide mĂ« rĂ©ng cho cžc sĂš a = 4864 v” b = 3458, ta lÇn l−üt ¼−üc cžc giž trÞ sau Ÿ©y cho cžc biÕn a, b, q, r, x, y, x1 , x2 , y1 , y2 (sau mçi chu tr×nh thĂčc hiÖn hai lÖnh 3.1 v” 3.2) : a b q r x y x1 x2 y1 y2 4864 3458 0 1 1 0 3458 1406 1 1406 1 -1 1 0 -1 1 1406 646 2 646 -2 3 -2 1 3 -1 646 114 2 114 5 -7 5 -2 -7 3 114 76 5 76 -27 38 -27 5 38 -7
  • 27. 24 76 38 1 38 32 -45 32 -27 -45 38 38 0 2 0 -91 128 -91 32 128 -45 Ta dÔ thö lÂči r»ng sau mçi lÇn thĂčc hiÖn chu tr×nh gĂ„m hai lÖnh 3.1 v” 3.2, cžc giž trÞ x,y,r thu ¼−üc lu«n tho¶ m·n 4864.x + 3458.y = r , v” do Ÿã khi kÕt thĂłc cžc vßng lÆp (Ăžng vĂ­i giž trÞ b = 0), thĂčc hiÖn tiÕp lÖnh 4 ta ¼−üc kÕt qu¶ d = 38, x = 32 v” y = -45, cÆp sĂš (32,-45) tho¶ m·n: 4864.32 + 3458. (-45) = 38. 2.1.2. §Äng d− v” ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh. Cho n l” mĂ©t sĂš nguyÂȘn d−¬ng. Ta nĂŁi hai sĂš nguyÂȘn a v” b l” ŸÄng d− vĂ­i nhau theo m«Ÿuyn n , v” viÕt a ≡ b (modn ), nÕu n ⏐ a−b (tĂžc cĂČng l” nÕu a − b chia hÕt cho n , hay khi chia a v” b cho n ta ¼−üc cĂŻng mĂ©t sĂš d− nh− nhau). ThÝ dĂŽ: 23 ≡ 8 (mod 5 ), v× 23 − 8 = 5.3, -19 ≡ 9 (mod 7) v× -19 − 9 = -4 . 7. Quan hÖ ŸÄng d− (theo mĂ©t m«Ÿuyn n ) trÂȘn tËp hĂźp cžc sĂš nguyÂȘn cĂŁ cžc tÝnh chÊt ph¶n xÂč, ŸÚi xĂžng v” bŸc cÇu,tĂžc l” mĂ©t quan hÖ t−¬ng ¼−¬ng, do Ÿã nĂŁ tÂčo ra mĂ©t ph©n hoÂčch trÂȘn tËp hĂźp tÊt c¶ cžc sĂš nguyÂȘn Z th”nh ra cžc lĂ­p t−¬ng ¼−¬ng: hai sĂš nguyÂȘn thuĂ©c cĂŻng mĂ©t lĂ­p t−¬ng ¼−¬ng khi v” chØ khi chĂłng cho cĂŻng mĂ©t sĂš d− nÕu chia cho n. Mçi lĂ­p t−¬ng ¼−¬ng nh− vËy ¼−üc ÂźÂči diÖn bĂ«i mĂ©t sĂš duy nhÊt trong tËp hĂźp Zn = {0, 1, 2, 3,...., n -1}, l” sĂš d− chung khi chia cžc sĂš trong lĂ­p Ÿã cho n. V× vËy, ta cĂŁ thÓ ŸÄng nhÊt Zn vĂ­i tËp hĂźp tÊt c¶ cžc lĂ­p t−¬ng ¼−¬ng cžc sĂš nguyÂȘn theo modn ; trÂȘn tËp Ÿã ta cĂŁ thÓ xžc ¼Þnh cžc phÐp tÝnh cĂ©ng, trĂ” v” nh©n theo modn. ThÝ dĂŽ: Z25 = {0, 1, 2, ..., 24}. Trong Z25 , 15 + 14 = 4, v× 15 + 14 = 29 = 4 (mod 25). T−¬ng tĂč, 15.14 = 10 trong Z25 .
  • 28. 25 Cho a ∈Zn . MĂ©t sĂš nguyÂȘn x ∈ Zn ¼−üc gĂ€i l” nghÞch ٦o cña a theo mod n , nÕu a.x ≡ 1 (modn). NÕu cĂŁ sĂš x nh− vËy th× ta nĂŁi a l” kh¶ nghÞch, v” kĂœ hiÖu x l” a-1 modn. ThÝ dĂŽ 22-1 mod25 = 8, v× 22 .8 = 176 ≡ 1 (mod25). TĂ” ¼Þnh nghÜa ta cĂŁ thÓ suy ra r»ng a l” kh¶ nghÞch theo modn khi v” chØ khi gcd(a,n ) = 1, tĂžc l” khi a v” n nguyÂȘn tĂš vĂ­i nhau. Ta ¼Þnh nghÜa phÐp chia trong Zn nh− sau: a : b (mod n) = a.b- 1 modn. PhÐp chia chØ thĂčc hiÖn ¼−üc khi b l” kh¶ nghÞch theo modn. ThÝ dĂŽ 15 : 22 (mod25) = 15.22-1 mod 25 = 20. B©y giĂȘ ta xÐt cžc ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh. Ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh cĂŁ dÂčng a.x ≡ b (modn ), (1) trong Ÿã a, b, n l” cžc sĂš nguyÂȘn, n > 0, x l” Èn sĂš. Ph−¬ng tr×nh Ÿã cĂŁ nghiÖm khi v” chØ khi d = gcd(a,n )⏐b, v” khi Ÿã nĂŁ cĂŁ Ÿóng d nghiÖm theo modn. ThĂčc vËy, ¼Æt a‘ = a/d , b = b/d , n = n/d , ta thÊy ph−¬ng tr×nh ŸÄng d− (1) t−¬ng ¼−¬ng vĂ­i ph−¬ng tr×nh a .x ≡ b (modn ), V× gcd(a ,n ) = 1, nÂȘn ph−¬ng tr×nh n”y cĂŁ mĂ©t nghiÖm theo modn : x = x0 ≡ b .a -1 (modn ), v” do Ÿã ph−¬ng tr×nh (1) cĂŁ d nghiÖm theo modn l” : x = x0 , x0 + n , .... , x0 + (d − 1)n (modn). TÊt c¶ d nghiÖm Ÿã khžc nhau theo modn , nh−ng cĂŻng ŸÄng d− vĂ­i nhau theo modn .
  • 29. B©y giĂȘ ta xÐt hÖ thĂšng cžc ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh. MĂ©t hÖ nh− vËy cĂŁ thÓ ¼−a vÒ dÂčng 1 1 1 2 2 2 (mod ) (mod ) ........................ (mod ) k k k x a n x a n x a n ⎧ ≡ âŽȘ âŽȘ âŽȘ âŽȘ ≡ âŽȘ âŽȘ ⎚ âŽȘ âŽȘ âŽȘ âŽȘ ≡ âŽȘ âŽȘ ⎩ (2) Ta kĂœ hiÖu: n = n1.n2....nk , Ni = n/ni . Ta cĂŁ ¼Þnh lĂœ sau Ÿ©y: §Þnh lĂœ 2.2.1 (¼Þnh lĂœ sĂš d− Trung quĂšc). Gi¶ sö cžc sĂš nguyÂȘn n1, n2,....,nk l” tĂ”ng cÆp nguyÂȘn tĂš vĂ­i nhau. Khi Ÿã, hÖ ph−¬ng tr×nh ŸÄng d− tuyÕn tÝnh (2) cĂŁ mĂ©t nghiÖm duy nhÊt theo modn. NghiÖm duy nhÊt nĂŁi trong ¼Þnh lĂœ 2.2.1 ¼−üc cho bĂ«i biÓu thĂžc: x = 1 . . mod , k i i i i a N M n = ∑ trong Ÿã Mi = Ni -1 modni (cĂŁ Mi v× Ni v” ni nguyÂȘn tĂš vĂ­i nhau). ThÝ dĂŽ: CÆp ph−¬ng tr×nh x ≡ 3 (mod7) v” x ≡ 7 (mod13) cĂŁ mĂ©t nghiÖm duy nhÊt x ≡ 59 (mod91). NÕu (n1 , n2) = 1, th× cÆp ph−¬ng tr×nh x ≡ a (modn1) v” x ≡ a (modn2) cĂŁ nghiÖm duy nhÊt x ≡ a (modn) theo modn vĂ­i n = n1n2 . 2.1.3.ThÆng d− thu gĂ€n v” phÇn tö nguyÂȘn thuĂ». TËp Zn = { 0,1,2,..., n −1} th−ĂȘng ¼−üc gĂ€i l” tËp cžc thÆng d− ¼Çy Ÿñ theo modn, v× mĂ€i sĂš nguyÂȘn bÊt kĂș ¼Òu cĂŁ thÓ t×m ¼−üc trong Zn mĂ©t sĂš ŸÄng d− vĂ­i m×nh (theo modn ). TËp Zn l” Ÿãng ŸÚi vĂ­i cžc phÐp tÝnh cĂ©ng, trĂ” v” nh©n theo modn , nh−ng kh«ng Ÿãng ŸÚi vĂ­i phÐp chia, v× phÐp chia cho a theo modn chØ cĂŁ thÓ thĂčc hiÖn ¼−üc khi a v” n nguyÂȘn tĂš vĂ­i nhau, tĂžc khi gcd( a ,n ) =1. 26
  • 30. B©y giĂȘ ta xÐt tËp Zn * = { a ∈ Zn : gcd( a ,n ) = 1} , tĂžc Zn * l” tËp con cña Zn bao gĂ„m tÊt c¶ cžc phÇn tö nguyÂȘn tĂš vĂ­i n. Ta gĂ€i tËp Ÿã l” tËp cžc thÆng d− thu gĂ€n theo modn. MĂ€i sĂš nguyÂȘn nguyÂȘn tĂš vĂ­i n ¼Òu cĂŁ thÓ t×m thÊy trong Zn * mĂ©t ÂźÂči diÖn ŸÄng d− vĂ­i m×nh theo modn . ChĂł Ăœ r»ng nÕu p l” mĂ©t sĂš nguyÂȘn tĂš th× Zp * = {1,2,...,p- 1}. TËp Zn * lËp th”nh mĂ©t nhĂŁm con ŸÚi vĂ­i phÐp nh©n cña Zn , v× trong Zn * phÐp chia theo modn bao giĂȘ cĂČng thĂčc hiÖn ¼−üc, ta sÏ gĂ€i Zn * l” nhĂŁm nh©n cña Zn . Theo ÂźÂči sĂš hĂ€c, ta gĂ€i sĂš cžc phÇn tö trong mĂ©t nhĂŁm l” cÊp cña nhĂŁm Ÿã. Ta kĂœ hiÖu φ(n) l” sĂš cžc sĂš nguyÂȘn d−¬ng bÐ hÂŹn n v” nguyÂȘn tĂš vĂ­i n. Nh− vËy, nhĂŁm Zn * cĂŁ cÊp φ(n) , v” nÕu p l” sĂš nguyÂȘn tĂš th× nhĂŁm Zp * cĂŁ cÊp p -1. Ta nĂŁi mĂ©t phÇn tö g ∈Zn * cĂŁ cÊp m , nÕu m l” sĂš nguyÂȘn d−¬ng bÐ nhÊt sao cho gm =1 trong Zn * . Theo mĂ©t ¼Þnh lĂœ trong §Âči sĂš, ta cĂŁ m ⏐ φ(n) . V× vËy, vĂ­i mĂ€i b ∈Zn * ta lu«n cĂŁ b φ(n ) ≡ 1 modn . NÕu p l” sĂš nguyÂȘn tĂš, th× do φ(p) = p − 1, ta cĂŁ vĂ­i mĂ€i b ∈Zp * : 27 p (3) 1 1 (mod ) p b − ≡ NÕu b cĂŁ cÊp p - 1, tĂžc p - 1 l” sĂš mĂČ bÐ nhÊt tho¶ m·n c«ng thĂžc (3), th× cžc phÇn tö b, b2 ,...., b P-1 ¼Òu khžc nhau v” theo modp, chĂłng lËp th”nh Zp * . Theo thuËt ngĂ· ÂźÂči sĂš, khi Ÿã ta nĂŁi Zp * l” mĂ©t nhĂŁm cyclic v” b l” mĂ©t phÇn tö sinh, hay phÇn tö nguyÂȘn thuĂ» cña nhĂŁm Ÿã. Trong lĂœ thuyÕt sĂš, ng−ĂȘi ta Ÿ· chĂžng minh ¼−üc cžc tÝnh chÊt sau Ÿ©y cña cžc phÇn tö nguyÂȘn thuĂ»: 1. VĂ­i mĂ€i sĂš nguyÂȘn tĂš p, Zp * l” nhĂŁm cyclic, v” cĂŁ φ(p-1) phÇn tö nguyÂȘn thuĂ». 2. NÕu 1 2 1 2 1 . .... s s p p p pα α α − = l” khai triÓn chÝnh tŸc cña p -1, v” nÕu
  • 31. 1 1 1 1(mod ),....., 1(mod ), s p p p p a p a p − − ≡ ≡ th× a l” phÇn tö nguyÂȘn thuĂ» theo modp (tĂžc cña Zp * ). 3. NÕu g l” phÇn tö nguyÂȘn thuĂ» theo modp , th× ÎČ = g modp vĂ­i mĂ€i i m” gcd(i, p -1) = 1, cĂČng l” phÇn tö nguyÂȘn thuĂ» theo modp . i n Ba tÝnh chÊt Ÿã l” cÂŹ sĂ« giĂłp ta t×m cžc phÇn tö nguyÂȘn thuĂ» theo modp , vĂ­i p l” sĂš nguyÂȘn tĂš bÊt kĂș. Ngo”i ra, ta cĂČng chĂł Ăœ mĂ©t sĂš tÝnh chÊt sau Ÿ©y, cĂŁ thÓ ¼−üc sö dĂŽng nhiÒu trong cžc ch−¬ng sau: a) NÕu p l” sĂš nguyÂȘn tĂš v” gcd(a,p) =1, th× ap -1 ≡ 1 (modp) (¼Þnh lĂœ Fermat ). b) NÕu a∈Zn * , th× . NÕu th× (¼Þnh lĂœ Euler). ( ) 1(mod ) n aφ ≡ (mod ( )) r s n φ ≡ (mod ) r s a a n ≡ 2.1.4. Ph−¬ng tr×nh ŸÄng d− bËc hai v” thÆng d− bËc hai. Ta xÐt ph−¬ng tr×nh ŸÄng d− bËc hai cĂŁ dÂčng Ÿn gi¶n sau Ÿ©y: 2 (mod ) x a n ≡ , trong Ÿã n l” mĂ©t sĂš nguyÂȘn d−¬ng, a l” sĂš nguyÂȘn vĂ­i gcd(a,n) =1, v” x l” Èn sĂš. Ph−¬ng tr×nh Ÿã kh«ng ph¶i bao giĂȘ cĂČng cĂŁ nghiÖm, khi nĂŁ cĂŁ nghiÖm th× ta nĂŁi a l” mĂ©t thÆng d− bËc hai modn ; nÕu kh«ng th× nĂŁi a l” mĂ©t bÊt thÆng d− bËc hai modn. TËp cžc sĂš nguyÂȘn nguyÂȘn tĂš vĂ­i n ¼−üc ph©n hoÂčch th”nh hai tËp con: tËp Qn cžc thÆng d− bËc hai modn , v” tËp n Q cžc bÊt thÆng d− modn. Khi n = p l” sĂš nguyÂȘn tĂš, ta cĂŁ tiÂȘu chuÈn Euler sau Ÿ©y: SĂš a l” thÆng d− bËc hai modp nÕu v” chØ nÕu . TiÂȘu chuÈn Ÿã ¼−üc chĂžng minh nh− sau: ( 1)/2 1(mod ) p a p − ≡ Gi¶ sö cĂŁ x sao cho 2 (mod ) x a ≡ p p , khi Ÿã ta cĂČng sÏ cĂŁ . ( 1)/2 2 ( 1)/2 1 ( ) 1(mod ) p p p a x x − − − ≡ ≡ ≡ 28
  • 32. Ng−üc lÂči, gi¶ sö . Khi Ÿã . LÊy b l” mĂ©t phÇn tö nguyÂȘn thuĂ» modp , Ÿt cĂŁ mĂ©t sĂš i n”o Ÿã sao cho .TĂ” Ÿã, ( 1)/2 1(mod ) p a p − ≡ * p a Z ∈ mod i a b p = 29 p ( 1)/2 ( 1)/ 2 1(mod ). p i p a b − − ≡ ≡ PhÇn tö b cĂŁ cÊp p - 1, do Ÿã (p - 1) chia hÕt i(p - 1)/2, i ph¶i l” sĂš chÂœn, i = 2j , v” a cĂŁ cšn bËc hai l” ±b j modp. Cho p l” mĂ©t sĂš nguyÂȘn tĂš lÎ. VĂ­i mĂ€i a ≄ 0 ta ¼Þnh nghÜa kĂœ hiÖu Legendre a p ⎛ ⎞ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ nh− sau: 0 , 0(mod ); 1 , ; 1, . p p khi a p a khi a Q p khi a Q ⎧ âŽȘ ≡ âŽȘ ⎛ ⎞ âŽȘ âŽȘ ⎟ ⎜ ⎜ ⎜ ⎜ ⎟= ∈ ⎚ ⎟ ⎟ âŽȘ ⎝ ⎠ âŽȘ âŽȘ− ∉ âŽȘ ⎩ i i Ø TĂ” ¼Þnh nghÜa ta suy ra ngay a l” thÆng d− bËc ha modp kh v” ch khi a p ⎛ ⎞ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ = 1. V” theo tiÂȘu chuÈn Euler nĂŁi trÂȘn, vĂ­i mĂ€i a ≄ 0, ta cĂŁ: ( 1)/2 (mod ). p a a p p − ⎛ ⎞ ⎟ ⎜ ⎜ ⎜ ⎜ ⎟≡ ⎟ ⎟ ⎝ ⎠ B©y giĂȘ ta mĂ« rĂ©ng kĂœ hiÖu Legendre ¼Ó ¼−üc kĂœ hiÖu Jacobi ŸÚi vĂ­i mĂ€i sĂš nguyÂȘn lÎ n ≄1 v” mĂ€i sĂš nguyÂȘn a ≄ 0, cĂČng ¼−üc kĂœ hiÖu bĂ«i a n ⎛ ⎞ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ v” ¼−üc ¼Þnh nghÜa nh− sau: Gi¶ sö a cĂŁ khai triÓn chÝnh tŸc th”nh thĂ”a sĂš nguyÂȘn tĂš l” th× 1 2 1 2 . .... k k n p p pα α α = 1 2 1 2 . .... . k k a a a a n p p p α α α ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎟ = ⎜ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
  • 33. Khi n = p l” sĂš nguyÂȘn tĂš th× giž trÞ cña cžc kĂœ hiÖu Legendre v” Jacobi l” nh− nhau. ViÖc tÝnh kĂœ hiÖu Legendre cĂŁ thÓ phĂžc tÂčp khi p rÊt lĂ­n, trong khi viÖc tÝnh kĂœ hiÖu Jacobi cĂŁ thÓ thuËn lĂźi hÂŹn do cĂŁ thÓ sö dĂŽng cžc tÝnh chÊt 1-4 sau Ÿ©y: 1. NÕu , th× 1 2 (mod ) m m n ≡ 1 2 m m n n ⎛ ⎞ ⎛ ⎞ ⎟ ⎟ ⎜ ⎜ = ⎟ ⎟ ⎜ ⎜ ⎟ ⎟ ⎜ ⎜ ⎝ ⎠ ⎝ ⎠ . 2. 1, 1(mod8), 2 1, 3(mod8). khi n khi n n ⎧ ≡ ± ⎛ ⎞ âŽȘ âŽȘ ⎟ ⎜ = ⎟ ⎚ ⎜ ⎟ ⎜ âŽȘ ⎝ ⎠ − ≥± âŽȘ ⎩ 3. 1 2 1 2 . . . m m m m n n n ⎛ ⎞ ⎛ ⎞ ⎛ ⎟ ⎟ ⎜ ⎜ ⎜ = ⎟ ⎟ ⎜ ⎜ ⎜ ⎟ ⎟ ⎜ ⎜ ⎜ ⎝ ⎠ ⎝ ⎠ ⎝ ⎞ ⎟ ⎟ ⎟ ⎠ 4. NÕu m v” n ¼Òu l” sĂš lÎ, th× , 3(mod 4) & 3(mod 4), , 1(mod 4) 1(mod 4). n khi m n m m n n khi m n m ⎧ ⎛ ⎞ âŽȘ ⎟ âŽȘ ⎜ − ≡ ≡ ⎟ âŽȘ ⎜ ⎟ ⎜ âŽȘ ⎝ ⎠ ⎛ ⎞ âŽȘ ⎟ ⎜ = ⎟ ⎚ ⎜ ⎟ ⎜ âŽȘ ⎝ ⎠ ⎛ ⎞ âŽȘ ⎟ ⎜ ≡ √ ≡ âŽȘ ⎟ ⎜ ⎟ âŽȘ ⎜ ⎝ ⎠ âŽȘ ⎩ ThÝ dĂŽ: DĂŻng cžc tÝnh chÊt Ÿã, ta tÝnh ¼−üc: 4 3 7411 9283 1872 2 117 . 9283 7411 7411 7411 7411 117 7411 40 2 5 . 7411 117 117 117 117 5 117 117 5 ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ = = = = ⎟ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ ⎟ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ =− =− =− = ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ ⎟ ⎟ ⎟ ⎟ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎛ ⎞ ⎛ ⎟ ⎜ ⎜ = ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ ⎝ ⎟ ⎟ ⎟ 2 1. 5 ⎞ ⎛ ⎞ ⎟ ⎟ ⎜ = =− ⎟ ⎟ ⎜ ⎜ ⎟ ⎟ ⎜ ⎜ ⎠ ⎝ ⎠ 9283 l” mĂ©t sĂš nguyÂȘn tĂš. Do Ÿã, giž trÞ -1 cña kĂœ hiÖu Jacobi 7411 9283 ⎛ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ ⎞ cĂČng l” giž trÞ cña cĂŻng kĂœ hiÖu Legendre Ÿã, v” ta kÕt luËn ¼−üc r»ng 7411 l” bÊt thÆng d− bËc hai mod 9283 , hay ph−¬ng tr×nh 2 7411(mod9283) x ≡ 30
  • 34. l” v« nghiÖm. B©y giĂȘ ta xÐt viÖc gi¶i ph−¬ng tr×nh ŸÄng d− bËc hai 2 (mod ) x a ≡ n p (4) trong mĂ©t tr−ĂȘng hĂźp ¼Æc biÖt khi n = p l” sĂš nguyÂȘn tĂš cĂŁ dÂčng p = 4m +3, tĂžc p ŸÄng d− vĂ­i 3 theo mod4, v” a l” mĂ©t sĂš nguyÂȘn nguyÂȘn tĂš vĂ­i p. Theo tiÂȘu chuÈn Euler ta biÕt ph−¬ng tr×nh (4) cĂŁ nghiÖm khi v” chØ khi . Khi Ÿã ta cĂŁ: ( 1)/2 1(mod ) p a − ≡ 1 1 2 2( 1) (mod ), (mod ), p m a a a a − + + ≡ ≡ p p do Ÿã x ≡ ±am +1 (modp) l” hai nghiÖm cña ph−¬ng tr×nh (4). 2.2. Xžc suÊt v” thuËt tožn xžc suÊt. 2.2.1. Khži niÖm xžc suÊt. Ta xÐt mĂ©t tËp hĂźp ℩ , ¼−üc gĂ€i l” kh«ng gian cžc sĂč kiÖn sÂŹ cÊp (hay kh«ng gian mÉu). Cžc phÇn tö cña ℩, tĂžc cžc sĂč kiÖn sÂŹ cÊp hay cžc mÉu, cĂŁ thÓ ¼−üc xem nh− cžc kÕt qu¶ cĂŁ thÓ cĂŁ (v” loÂči trĂ” lÉn nhau) cña mĂ©t thĂčc nghiÖm n”o Ÿã. VÒ sau ta chØ xÐt cžc kh«ng gian rĂȘi rÂčc, tĂžc tËp ℩ l” hĂ·u hÂčn, gi¶ sö . { } 1 2 , ,..., n s s s ℩= MĂ©t ph©n bĂš xžc suÊt P trÂȘn ℩ ¼−üc ¼Þnh nghÜa l” mĂ©t tËp cžc sĂš thĂčc kh«ng ©m P = { p1, p2,...,pn} cĂŁ tĂŠng ∑pi = 1. SĂš pi ¼−üc coi l” xžc suÊt cña sĂč kiÖn sÂŹ cÊp si . MĂ©t tËp con E ⊆ ℩ ¼−üc gĂ€i l” mĂ©t sĂč kiÖn . Xžc suÊt cña sĂč kiÖn E ¼−üc ¼Þnh nghÜa bĂ«i p (E ) = ( ) s E p s ∈ ∑ . Gi¶ sö E l” mĂ©t sĂč kiÖn trong kh«ng gian xžc suÊt ℩. Ta ¼Þnh nghÜa sĂč kiÖn bĂŻ cña E, kĂœ hiÖu E , l” sĂč kiÖn gĂ„m tÊt c¶ cžc sĂč kiÖn sÂŹ cÊp 31
  • 35. trong ℩ m” kh«ng thuĂ©c E . DĂŻng cžc thuËt ngĂ· cña lĂœ thuyÕt tËp hĂźp, ta cĂŁ thÓ ¼Þnh nghÜa cžcsĂč kiÖn hĂźp E 1 âˆȘE 2 v” sĂč kiÖn giao E 1 ∩E 2 cña hai sĂč kiÖn E 1 v” E 2 bÊt kĂș. V” ta cĂŁ: 1) Gi¶ sö E l” mĂ©t sĂč kiÖn. Khi Ÿã 0 ≀ p (E ) ≀ 1 v” p( E ) = 1 - p (E ). Ngo”i ra, p (℩) = 1 v” p (∅) = 0. 2) Gi¶ sö E 1 v” E 2 l” hai sĂč kiÖn. NÕu E 1 ⊆E 2 th× p (E 1) ≀ p (E 2) . V” cĂŁ p (E 1âˆȘE 2) + p (E 1 ∩E 2) =p (E 1) + p (E 2) . Do Ÿã p (E 1âˆȘE 2) =p (E 1) + p (E 2) khi v” chØ khi E 1 ∩E 2 = ∅, tĂžc l” khi E 1 v” E 2 l” hai sĂč kiÖn loÂči trĂ” lÉn nhau. Cho E 1 v” E 2 l” hai sĂč kiÖn, vĂ­i p (E 2) > 0. Ta ¼Þnh nghÜa xžc suÊ cĂŁ ÂźiÒu kiÖn cña E t 1 khi cĂŁ E 2 , kĂœ hiÖu ( 1 2 p E E ), l” 1 2 1 2 2 ( ) ( ) ( ) p E E p E E p E . ∩ = TĂ” ¼Þnh nghÜa ta suy ra c«ng thĂžc Bayes : ( ) ( ) ( ) ( ) 1 2 1 1 2 2 . . p E p E E p E E p E = . Ta nĂŁi hai sĂč kiÖn E1 v” E 2 l” Ÿéc lËp vĂ­i nhau, nÕu p (E 1 ∩E 2) = p(E1).p(E2). Khi Ÿã ta cĂŁ: ( ) ( ) 1 2 1 p E E p E = v” 2 1 2 ( ) ( ). p E E p E = Gi¶ sö ℩ l” mĂ©t kh«ng gian mÉu vĂ­i mĂ©t ph©n bĂš xžc suÊt P . Ta gĂ€i mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn Ο trÂȘn ℩ l” mĂ©t žnh xÂč gžn cho mçi s ∈℩ mĂ©t sĂš thĂčc Ο (s ). HiÓn nhiÂȘn, nÕu Ο v” η l” cžc ÂźÂči l−üng ngÉu nhiÂȘn trÂȘn ℩, th× Ο+η , Ο.η ¼−üc ¼Þnh nghÜa bĂ«i : 32
  • 36. ∀s ∈℩: (Ο+η ) (s ) = Ο (s) + η (s ) , (Ο.η ) (s) = Ο (s).η (s). cĂČng l” cžc ÂźÂči l−¬ng ngÉu nhiÂȘn trÂȘn ℩ . Gi¶ sö Ο l” mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn trÂȘn kh«ng gian mÉu ℩. §iÒu Ÿã cĂŁ nghÜa l” vĂ­i mĂ€i s ∈℩, Ο lÊy giž trÞ b»ng Ο (s ) vĂ­i xžc suÊt p(s). Ta ¼Þnh nghÜa giž trÞ kĂș vĂ€ng (hay trung b×nh, hay kĂș vĂ€ng tožn hĂ€c) cña Ο l” 33 p s . ( ) ( ). ( ) s E s Ο Ο ∈℩ =∑ Ph−¬ng sai cña ÂźÂči l−üng ngÉu nhiÂȘn Ο cĂŁ giž trÞ trung b×nh ” ¼−üc ¼Þnh nghÜa l” Var (Ο ) = E ((Ο − ” )2 ). Cšn bËc hai kh«ng ©m cña Var (Ο )¼−üc gĂ€i l” Ÿé lÖch chuÈn cña Ο . 2.2.2. TÝnh bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m·. Nšm 1949, C. Shannon c«ng bĂš c«ng tr×nh LĂœ thuyÕt truyÒn th«ng cña cžc hÖ bÝ mËt , ¼−a ra nhiÒu quan niÖm l”m cÂŹ sĂ« cho viÖc Ÿžnh giž tÝnh bÝ mËt cña cžc hÖ mËt m·, trong Ÿã cĂŁ khži niÖm tÝnh bÝ mËt ho”n to”n cña mĂ©t hÖ mËt m· ¼−üc ¼Þnh nghÜa nh− sau: Cho hÖ mËt m· S = (P , C , K , E , D ) . Gi¶ thö trÂȘn cžc tËp P , C v” K ¼−üc xžc ¼Þnh t−¬ng Ăžng cžc ph©n bĂš xžc suÊt pP(.), pC(.) v” pK(.). Nh− vËy, vĂ­i mĂ€i x ∈P , y ∈ C v” K ∈K , pP(x), pC(y) v” pK(K) t−¬ng Ăžng l” cžc xžc suÊt ¼Ó kĂœ tĂč b¶n rĂą l” x, kĂœ tĂč b¶n m· l” y v” khož l” K. Xžc suÊt cĂŁ ÂźiÒu kiÖn, chÂŒng hÂčn, xžc suÊt cña viÖc b¶n rĂą l” x khi b¶n m· l” y, ¼−üc kĂœ hiÖu l” pP(x⏐y). MĂ©t hÖ mËt m· ¼−üc gĂ€i l” bÝ mËt ho”n to”n, nÕu vĂ­i mĂ€i x ∈P , y ∈ C cĂŁ pP(x⏐y) = pP(x). §iÒu Ÿã cĂŁ nghÜa l” viÖc biÕt xžc suÊt b¶n rĂą l” x l” nh− nhau dĂŻ biÕt hay kh«ng biÕt b¶n m· l” y ; nĂŁi cžch khžc, cĂŁ th«ng tin vÒ b¶n m·
  • 37. kh«ng cho ta biÕt g× thÂȘm vÒ b¶n rĂą; b¶n rĂą v” b¶n m·, vĂ­i t− cžch cžc biÕn ngÉu nhiÂȘn, l” Ÿéc lËp vĂ­i nhau. Ta cĂŁ ¼Þnh lĂœ sau Ÿ©y: §Þnh lĂœ 2.2.1. Gi¶ sö S = (P , C , K , E , D ) l” mĂ©t hÖ mËt m· vĂ­i ÂźiÒu kiÖn ⏐P ⏐ = ⏐C ⏐ = ⏐K ⏐ , tĂžc cžc tËp P , C , K cĂŁ sĂš cžc phÇn tö b»ng nhau. Khi Ÿã, hÖ l” bÝ mËt ho”n to”n nÕu v” chØ nÕu mçi khož K ∈K ¼−üc dĂŻng vĂ­i xžc suÊt b»ng nhau l” 1/⏐K ⏐ , v” vĂ­i mĂ€i x ∈P , y ∈ C cĂŁ mĂ©t khož duy nhÊt K ∈K sao cho eK (x ) = y. ChĂžng minh. a) Gi¶ thö hÖ S l” bÝ mËt ho”n to”n. Khi Ÿã, vĂ­i mĂ€i x ∈P v” y ∈ C cĂŁ pP(x⏐y) = pP(x). Ngo”i ra ta cĂŁ thÓ gi¶ thiÕt pC(y) > 0 vĂ­i mĂ€i y ∈ C . TĂ” Ÿã theo c«ng thĂžc Bayes ta cĂŁ pC(y⏐x ) = pC(y) > 0 . §iÒu Ÿã cĂŁ nghÜa l” cĂŁ Ýt nhÊt mĂ©t khož K sao cho eK (x ) = y . V× vËy, nÕu cĂš ¼Þnh mĂ©t x ∈P th× ta cĂŁ ⏐C ⏐ = ⏐{ eK(x ): K ∈K }⏐ ≀ ⏐K ⏐ . Theo gi¶ thiÕt cña ¼Þnh lĂœ, ⏐C ⏐ = ⏐K ⏐ , do Ÿã ⏐{ eK(x ): K ∈K }⏐ = ⏐K ⏐ . Nh−ng ÂźiÒu n”y lÂči cĂŁ nghÜa l” kh«ng thÓ cĂŁ hai khož K1 ≠ K2 sao cho VËy ta Ÿ· chĂžng minh ¼−üc vĂ­i mĂ€i x ∈P v” y ∈ C cĂŁ Ÿóng mĂ©t khož K sao cho e 1 2 ( ) ( ). K K e x e x = K (x ) = y . KĂœ hiÖu n = ⏐K ⏐ v” ¼Æt K = {K1,..., Kn }. CĂš ¼Þnh mĂ©t y ∈ C v” gi¶ thö vĂ­i P = {x ( ) i K i e x y = 1,....., xn }, 1≀ i ≀ n. DĂŻng c«ng thĂžc Bayes ta lÂči cĂŁ ( ). ( ) ( ). ( ) ( ) ( ) ( ) C i P i . K i P i P i C C p y x p x p K p x p x y p y p y = = 34
  • 38. Do gi¶ thiÕt hÖ l” bÝ mËt ho”n to”n, ta cĂŁ pP(xi ⏐y) = pP(xi ). TĂ” Ÿã suy ra vĂ­i mĂ€i i , 1≀ i ≀ n, pK (Ki ) = pC (y). VËy cžc pK (Ki ) (1≀ i ≀ n ) ¼Òu b»ng nhau, v” do Ÿã ¼Òu b»ng 1/⏐K ⏐ . b) B©y giĂȘ ta chĂžng minh ÂźiÒu ng−üc lÂči. Gi¶ thiÕt pK(K) = 1/⏐K ⏐ vĂ­i mĂ€i K ∈K , v” vĂ­i mĂ€i x ∈P , y ∈ C cĂŁ Ÿóng mĂ©t khož K∈K sao cho eK (x ) = y . Ta tÝnh: 1 ( ) ( ). ( ( )) ( ( )) 1 ( ( )). C K P K P K K K P K K p y p K p d y p d y p d y ∈ ∈ ∈ = = = = ∑ ∑ ∑ K K K K K Khi K chÂčy qua tËp khož K th× dK (y ) chÂčy qua tËp P , do Ÿã ( ( )) ( ) 1 P K P K x p d y p x ∈ ∈ , = = ∑ ∑ K P v” ta ¼−üc pC (y ) = 1/⏐K ⏐ vĂ­i mĂ€i y ∈ C . MÆt khžc, gĂ€i K l” khož duy nhÊt m” eK (x ) = y , ta cĂŁ pC(y ⏐x) = pK(K) = 1/⏐K ⏐ . DĂŻng c«ng thĂžc Bayes ta lÂči ¼−üc vĂ­i mĂ€i x ∈P , y ∈ C : ( ). ( ) ( ).1/ ( ) ( ) ( ) 1/ P C P P P C p x p y x p x p x y p x p y = = = K K . VËy hÖ l” bÝ mËt ho”n to”n. §Þnh lĂœ ¼−üc chĂžng minh. 2.2.3. ThuËt tožn xžc suÊt: 35
  • 39. 36 Khži niÖm thuËt tožn m” ta th−ĂȘng hiÓu l” thuËt tožn tÊt ¼Þnh, Ÿã l” mĂ©t tiÕn tr×nh thĂčc hiÖn cžc phÐp tožn trÂȘn dĂ· liÖu ¼Çu v”o v” cho kÕt qu¶ Ă« ¼Çu ra. Theo D.E. Knuth, thuËt tožn cĂŁ 5 thuĂ©c tÝnh cÂŹ b¶n: tÝnh hĂ·u hÂčn, thuËt tožn lu«n kÕt thĂłc sau mĂ©t sĂš hĂ·u hÂčn b−íc; tÝnh xžc ¼Þnh, mçi b−íc cña thuËt tožn ph¶i ¼−üc xžc ¼Þnh mĂ©t cžch chÝnh xžc; tËp hĂźp ¼Çu v”o v” ¼Çu ra cña mçi thuËt tožn cĂČng ¼−üc xžc ¼Þnh rĂą r”ng; v” tÝnh hiÖu qu¶, mĂ€i phÐp tožn trong thuËt tožn ph¶i l” cÂŹ b¶n, cĂŁ thÓ ¼−üc thĂčc hiÖn chÝnh xžc trong mĂ©t thĂȘi gian xžc ¼Þnh. ThuËt tožn l” khži niÖm cÂŹ b¶n ŸÚi vĂ­i viÖc lËp tr×nh trÂȘn mžy tÝnh, v” Ÿ· ¼−üc sö dĂŽng rÊt phĂŠ biÕn. Nh−ng nh− ta biÕt, ŸÚi vĂ­i nhiÒu b”i tožn trong thĂčc tÕ, kh«ng ph¶i bao giĂȘ ta cĂČng t×m ¼−üc thuËt tožn gi¶i chĂłng vĂ­i Ÿé phĂžc tÂčp tÝnh tožn chÊp nhËn ¼−üc (ta sÏ xÐt qua vÊn ¼Ò n”y trong mĂ©t tiÕt sau). V× vËy, cĂŻng vĂ­i cžc thuËt tožn tÊt ¼Þnh, ŸÚi vĂ­i mĂ©t sĂš b”i tožn ta sÏ xÐt thÂȘm cžc thuËt tožn xžc suÊt, Ÿã l” nhĂ·ng thuËt tožn m” cĂŻng vĂ­i dĂ· liÖu ¼Çu v”o ta bĂŠ sung thÂȘm giž trÞ cña mĂ©t ÂźÂči l−üng ngÉu nhiÂȘn t−¬ng Ăžng n”o Ÿã, th−ĂȘng l” cžc sĂš ngÉu nhiÂȘn. Cžc thuËt tožn xžc suÊt th−ĂȘng ¼−üc x©y dĂčng cho cžc b”i tožn quyÕt ¼Þnh, tĂžc cžc b”i tožn xžc ¼Þnh trÂȘn mĂ©t tËp hĂźp dĂ· liÖu sao cho Ăžng vĂ­i mçi dĂ· liÖu b”i tožn cĂŁ mĂ©t tr¶ lĂȘi cĂŁ hoÆc kh«ng . Ng−ĂȘi ta chia cžc thuËt tožn xžc suÊt th”nh hai loÂči: loÂči thuËt tožn Monte Carlo v” loÂči thuËt tožn Las Vegas . ThuËt tožn Monte Carlo lu«n kÕt thĂłc vĂ­i kÕt qu¶ cĂŁ hoÆc kh«ng ŸÚi vĂ­i mĂ€i dĂ· liÖu ¼Çu v”o bÊt kĂș; cßn thuËt tožn Las Vegas tuy cĂČng kÕt thĂłc vĂ­i mĂ€i dĂ· liÖu, nh−ng cĂŁ thÓ kÕt thĂłc vĂ­i mĂ©t th«ng bžo kh«ng cĂŁ tr¶ lĂȘi cĂŁ hoÆc kh«ng. ThuËt tožn Monte Carlo ¼−üc gĂ€i l” thiÂȘn vÒ cĂŁ, nÕu nĂŁ cho tr¶ lĂȘi cĂŁ th× tr¶ lĂȘi Ÿã chŸc chŸn l” Ÿóng, cßn nÕu nĂŁ cho tr¶ lĂȘi kh«ng th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. T−¬ng tĂč, mĂ©t thuËt tožn Monte Carlo ¼−üc gĂ€i l” thiÂȘn vÒ kh«ng, nÕu nĂŁ cho tr¶ lĂȘi kh«ng th× tr¶ lĂȘi Ÿã chŸc chŸn l” Ÿóng, cßn nÕu nĂŁ cho tr¶ lĂȘi cĂŁ th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Cßn vĂ­i thuËt tožn Las Vegas, nÕu nĂŁ kÕt thĂłc vĂ­i tr¶ lĂȘi cĂŁ hoÆc kh«ng , th× tr¶ lĂȘi Ÿã chŸc chŸn Ÿóng, v” nĂŁ cĂŁ thÓ kÕt thĂłc vĂ­i th«ng bžo kh«ng cĂŁ tr¶
  • 40. 37 lĂȘi vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Trong tiÕt 2.8 sau Ÿ©y ta sÏ cho v”i thÝ dĂŽ cĂŽ thÓ vÒ mĂ©t sĂš thuËt tožn xžc suÊt thuĂ©c c¶ hai loÂči Ÿã. 2.3. §é phĂžc tÂčp tÝnh tožn. 2.3.1. Khži niÖm vÒ Ÿé phĂžc tÂčp tÝnh tožn. LĂœ thuyÕt thuËt tožn v” cžc h”m sĂš tÝnh ¼−üc ra ÂźĂȘi tĂ” nhĂ·ng nšm 30 cña thÕ kĂ» 20 Ÿ· ¼Æt nÒn mĂŁng cho viÖc nghiÂȘn cĂžu cžc vÊn ¼Ò “tÝnh ¼−üc”, “gi¶i ¼−üc” trong tožn hĂ€c, ¼−a ¼Õn nhiÒu kÕt qu¶ rÊt quan trĂ€ng v” lĂœ thĂł. Nh−ng tĂ” cži “tÝnh ¼−üc” mĂ©t cžch trĂ”u t−üng, hiÓu theo nghÜa tiÒm nšng,¼Õn viÖc tÝnh ¼−üc trong thĂčc tÕ cña khoa hĂ€c tÝnh tožn b»ng mžy tÝnh ÂźiÖn tö, l” c¶ mĂ©t kho¶ng cžch rÊt lĂ­n. BiÕt bao nhiÂȘu thĂž ¼−üc chĂžng minh l” tÝnh ¼−üc mĂ©t cžch tiÒm nšng, nh−ng kh«ng tÝnh ¼−üc trong thĂčc tÕ, dĂŻ cĂŁ sĂč hç trĂź cña nhĂ·ng mžy tÝnh ÂźiÖn tö ! VÊn ¼Ò l” do Ă« chç nhĂ·ng ¼ßi hĂĄi vÒ kh«ng gian vËt chÊt v” vÒ thĂȘi gian ¼Ó thĂčc hiÖn cžc tiÕn tr×nh tÝnh tožn nhiÒu khi v−üt quž xa nhĂ·ng kh¶ nšng thĂčc tÕ. TĂ” Ÿã, v”o kho¶ng giĂ·a nhĂ·ng nšm 60 (cña thÕ kĂ» tr−íc), mĂ©t lĂœ thuyÕt vÒ Ÿé phĂžc tÂčp tÝnh tožn bŸt ¼Çu ¼−üc h×nh th”nh v” phžt triÓn nhanh chĂŁng, cung cÊp cho chĂłng ta nhiÒu hiÓu biÕt s©u sŸc vÒ b¶n chÊt phĂžc tÂčp cña cžc thuËt tožn v” cžc b”i tožn, c¶ nhĂ·ng b”i tožn thuÇn tuĂœ lĂœ thuyÕt ¼Õn nhĂ·ng b”i tožn th−ĂȘng gÆp trong thĂčc tÕ. Sau Ÿ©y ta giĂ­i thiÖu sÂŹ l−üc mĂ©t sĂš khži niÖm cÂŹ b¶n v” v”i kÕt qu¶ sÏ ¼−üc dĂŻng ¼Õn cña lĂœ thuyÕt Ÿã. Tr−íc hÕt, ta hiÓu Ÿé phĂžc tÂčp tÝnh tožn (vÒ kh«ng gian hay vÒ thĂȘi gian) cña mĂ©t tiÕn tr×nh tÝnh tožn l” sĂš « nhĂ­ ¼−üc dĂŻng hay sĂš cžc phÐp tožn sÂŹ cÊp ¼−üc thĂčc hiÖn trong tiÕn tr×nh tÝnh tožn Ÿã. DĂ· liÖu ¼Çu v”o ŸÚi vĂ­i mĂ©t thuËt tožn th−ĂȘng ¼−üc biÓu diÔn qua cžc tĂ” trong mĂ©t b¶ng kĂœ tĂč n”o Ÿã. §é d”i cña mĂ©t tĂ” l” sĂš kĂœ tĂč trong tĂ” Ÿã.
  • 41. 38 Cho mĂ©t thuËt tožn A trÂȘn b¶ng kĂœ tĂč ÎŁ (tĂžc cĂŁ ¼Çu v”o l” cžc tĂ” trong ÎŁ ) . §é phĂžc tÂčp tÝnh tožn cña thuËt tožn A ¼−üc hiÓu l” mĂ©t h”m sĂš fA(n ) sao cho vĂ­i mçi sĂš n , fA(n ) l” sĂš « nhĂ­, hay sĂš phÐp tožn sÂŹ cÊp tĂši Âźa m” A cÇn ¼Ó thĂčc hiÖn tiÕn tr×nh tÝnh tožn cña m×nh trÂȘn cžc dĂ· liÖu v”o cĂŁ Ÿé d”i ≀ n . Ta nĂŁi thuËt tožn A cĂŁ Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc , nÕu cĂŁ mĂ©t Âźa thĂžc P (n ) sao cho vĂ­i mĂ€i n Ÿñ lĂ­n ta cĂŁ fA(n) ≀ P(n ), trong Ÿã fA(n ) l” Ÿé phĂžc tÂčp tÝnh tožn theo thĂȘi gian cña A. VÒ sau khi nĂŁi ¼Õn cžc b”i tožn, ta hiÓu Ÿã l” cžc b”i tožn quyÕt ¼Þnh , mçi b”i tožn P nh− vËy ¼−üc xžc ¼Þnh bĂ«i: - mĂ©t tËp cžc dĂ· liÖu v”o I (trong mĂ©t b¶ng kĂœ tĂč ÎŁ n”o Ÿã), - mĂ©t c©u hĂĄi Q trÂȘn cžc dĂ· liÖu v”o, sao cho vĂ­i mçi dĂ· liÖu v”o x ∈ I , c©u hĂĄi Q cĂŁ mĂ©t tr¶ lĂȘi Ÿóng hoÆc sai. Ta nĂŁi b”i tožn quyÕt ¼Þnh P l” gi¶i ¼−üc , nÕu cĂŁ thuËt tožn ¼Ó gi¶i nĂŁ, tĂžc l” thuËt tožn l”m viÖc cĂŁ kÕt thĂłc trÂȘn mĂ€i dĂ· liÖu v”o cña b”i tožn, v” cho kÕt qu¶ Ÿóng hoÆc sai tuĂș theo c©u hĂĄi Q trÂȘn dĂ· liÖu Ÿã cĂŁ tr¶ lĂȘi Ÿóng hoÆc sai. B”i tožn P l” gi¶i ¼−üc trong thĂȘi gian Âźa thĂžc , nÕu cĂŁ thuËt tožn gi¶i nĂŁ vĂ­i Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc. Sau Ÿ©y l” v”i thÝ dĂŽ vÒ cžc b”i tožn quyÕt ¼Þnh: B”i tožn SATISFIABILITY (viÕt tŸt l” SAT ): - mçi dĂ· liÖu v”o l” mĂ©t c«ng thĂžc F cña l«gich mÖnh ¼Ò, ¼−üc viÕt d−íi dÂčng hĂ©i chuÈn tŸc, tĂžc dÂčng hĂ©i cña mĂ©t sĂš cžc “clause”. - C©u hĂĄi l”: c«ng thĂžc F cĂŁ tho¶ ¼−üc hay kh«ng ? B”i tožn CLIQUE : - mçi dĂ· liÖu v”o l” mĂ©t graph G v” mĂ©t sĂš nguyÂȘn k . - C©u hĂĄi l”: Graph G cĂŁ mĂ©t clique vĂ­i ≄ k ŸØnh hay kh«ng ? (mĂ©t clique cña G l” mĂ©t graph con ¼Çy Ÿñ cña G ). B”i tožn KNAPSACK :
  • 42. - mçi dĂ· liÖu l” mĂ©t bĂ© n +1 sĂš nguyÂȘn d−¬ng I = (s1,...,sn ; T ). - C©u hĂĄi l”: cĂŁ hay kh«ng mĂ©t vectÂŹ Boole (x1,...,xn) sao cho 1 . ? n i i i x s T = = ∑ (vectÂŹ boole l” vectÂŹ cĂŁ cžc th”nh phÇn l” 0 hoÆc 1). B”i tožn thÆng d− bËc hai : - mçi dĂ· liÖu gĂ„m hai sĂš nguyÂȘn d−¬ng (a , n ). - C©u hĂĄi l”: a cĂŁ l” thÆng d− bËc hai theo modn hay kh«ng ? B”i tožn hĂźp sĂš : - mçi dĂ· liÖu l” mĂ©t sĂš nguyÂȘn d−¬ng N. - C©u hĂĄi: N l” hĂźp sĂš hay kh«ng ? TĂžc cĂŁ hay kh«ng hai sĂš m, n >1 sao cho N =m . n ? T−¬ng tĂč, nÕu ¼Æt c©u hĂĄi l” “N l” sĂš nguyÂȘn tĂš hay kh«ng?” th× ta ¼−üc b”i tožn sĂš nguyÂȘn tĂš . §Úi vĂ­i tÊt c¶ cžc b”i tožn kÓ trÂȘn, trĂ” b”i tožn hĂźp sĂš v” sĂš nguyÂȘn tĂš, cho ¼Õn nay ng−ĂȘi ta ¼Òu ch−a t×m ¼−üc thuËt tožn gi¶i chĂłng trong thĂȘi gian Âźa thĂžc. 2.3.2. LĂ­p phĂžc tÂčp. Ta xÐt mĂ©t v”i lĂ­p cžc b”i tožn ¼−üc xžc ¼Þnh theo Ÿé phĂžc tÂčp tÝnh tožn cña chĂłng. Tr−íc hÕt, ta ¼Þnh nghÜa P l” lĂ­p tÊt c¶ cžc b”i tožn cĂŁ thÓ gi¶i ¼−üc bĂ«i thuËt tožn trong thĂȘi gian Âźa thĂžc. Gi¶ sö cho hai b”i tožn P1 v” P2 vĂ­i cžc tËp dĂ· liÖu trong hai b¶ng kĂœ tĂč t−¬ng Ăžng l” ÎŁ1 v” ÎŁ2 . MĂ©t thuËt tožn ¼−üc gĂ€i l” mĂ©t phÐp qui dÉn b”i tožn P * 1 : f ÎŁ → ÎŁ* 2 1 vÒ b”i tožn P2 , nÕu nĂŁ biÕn mçi dĂ· liÖu x cña b”i tožn P1 th”nh mĂ©t dĂ· liÖu f (x ) cña b”i tožn P2 , v” sao cho c©u hĂĄi cña P1 trÂȘn x cĂŁ tr¶ lĂȘi Ÿóng khi v” chØ khi c©u hĂĄi cña P2 trÂȘn f (x ) cĂČng cĂŁ tr¶ lĂȘi Ÿóng. Ta nĂŁi b”i tožn P1 qui dÉn ¼−üc vÒ b”i tožn P2 trong thĂȘi gian Âźa thĂžc , v” kĂœ hiÖu P1 ∝ P2 , nÕu cĂŁ thuËt tožn f vĂ­i Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc qui dÉn b”i tožn P1 vÒ b”i tožn P2 .Ta dÔ thÊy r»ng, nÕu P1 ∝ P2 v” P2 ∈ P , th× cĂČng cĂŁ P1 ∈ P . MĂ©t lĂ­p quan trĂ€ng cžc b”i tožn Ÿ· ¼−üc nghiÂȘn cĂžu nhiÒu l” lĂ­p cžc b”i tožn khž th−ĂȘng gÆp trong thĂčc tÕ nh−ng cho ¼Õn nay 39
  • 43. 40 ch−a cĂŁ kh¶ nšng n”o chĂžng tĂĄ l” chĂłng cĂŁ thÓ gi¶i ¼−üc trong thĂȘi gian Âźa thĂžc. §ã l” lĂ­p cžc b”i tožn NP-dÇy Ÿñ m” ta sÏ ¼Þnh nghÜa sau Ÿ©y: CĂŻng vĂ­i khži niÖm thuËt tožn tÊt ¼Þnh th«ng th−ĂȘng (cĂŁ thÓ m« t¶ chÝnh xžc chÂŒng hÂčn bĂ«i mžy Turing tÊt ¼Þnh), ta xÐt khži niÖm thuËt tožn kh«ng Ÿn ¼Þnh vĂ­i mĂ©t Ýt thay ŸÊi nh− sau: nÕu ŸÚi vĂ­i mžy Turing tÊt ¼Þnh, khi mžy Âźang Ă« mĂ©t trÂčng thži q v” Âźang ŸÀc mĂ©t kĂœ tĂč a th× cÆp (q,a ) xžc ¼Þnh duy nhÊt mĂ©t h”nh Ÿéng kÕ tiÕp cña mžy, cßn ŸÚi vĂ­i mžy Turing kh«ng Ÿn ¼Þnh, ta qui −íc r»ng (q,a) xžc ¼Þnh kh«ng ph¶i duy nhÊt m” l” mĂ©t tËp hĂ·u hÂčn cžc h”nh Ÿéng kÕ tiÕp; mžy cĂŁ thÓ thĂčc hiÖn trong b−íc kÕ tiÕp mĂ©t trong cžc h”nh Ÿéng Ÿã. Nh− vËy, ŸÚi vĂ­i mĂ©t dĂ· liÖu v”o x , mĂ©t thuËt tožn kh«ng Ÿn ¼Þnh (¼−üc xžc ¼Þnh chÂŒng hÂčn bĂ«i mĂ©t mžy Turing kh«ng Ÿn ¼Þnh) kh«ng ph¶i chØ cĂŁ mĂ©t tiÕn tr×nh tÝnh tožn duy nhÊt, m” cĂŁ thÓ cĂŁ mĂ©t sĂš hĂ·u hÂčn nhĂ·ng tiÕn tr×nh tÝnh tožn khžc nhau. Ta nĂŁi thuËt tožn kh«ng Ÿn ¼Þnh A chÊp nhËn dĂ· liÖu x , nÕu vĂ­i dĂ· liÖu v”o x thuËt tožn A cĂŁ Ýt nhÊt mĂ©t tiÕn tr×nh tÝnh tožn kÕt thĂłc Ă« trÂčng thži chÊp nhËn (tĂžc vĂ­i kÕt qu¶ Ÿóng). MĂ©t b”i tožn P ¼−üc gĂ€i l” gi¶i ¼−üc bĂ«i thuËt tožn kh«ng Ÿn ¼Þnh trong thĂȘi gian Âźa thĂžc nÕu cĂŁ mĂ©t thuËt tožn kh«ng Ÿn ¼Þnh A v” mĂ©t Âźa thĂžc p(n ) sao cho vĂ­i mĂ€i dĂ· liÖu v”o x cĂŁ Ÿé d”i n , x ∈P (tĂžc c©u hĂĄi cña P cĂŁ tr¶ lĂȘi Ÿóng trÂȘn x ) khi v” chØ khi thuËt tožn A chÊp nhËn x bĂ«i mĂ©t tiÕn tr×nh tÝnh tožn cĂŁ Ÿé phĂžc tÂčp thĂȘi gian ≀ p(n ). Ta kĂœ hiÖu lĂ­p tÊt c¶ cžc b”i tožn gi¶i ¼−üc bĂ«i thuËt tožn kh«ng Ÿn ¼Þnh trong thĂȘi gian Âźa thĂžc l” NP. Ng−ĂȘi ta Ÿ· chĂžng tĂĄ ¼−üc r»ng tÊt c¶ nhĂ·ng b”i tožn trong cžc thÝ dĂŽ kÓ trÂȘn v” rÊt nhiÒu cžc b”i tožn tĂŠ hĂźp th−ĂȘng gÆp khžc ¼Òu thuĂ©c lĂ­p NP, dĂŻ r»ng hÇu hÕt chĂłng ¼Òu ch−a ¼−üc chĂžng tĂĄ l” thuĂ©c P. MĂ©t b”i tožn P ¼−üc gĂ€i l” NP.-¼Çy Ÿñ, nÕu P ∈NP v” vĂ­i mĂ€i Q ∈NP ¼Òu cĂŁ Q ∝ P . LĂ­p NP cĂŁ mĂ©t sĂš tÝnh chÊt sau Ÿ©y:
  • 44. 41 1) P ⊆ NP, 2) NÕu P1 ∝ P2 v” P2 ∈NP , th× P1 ∈ NP . 3) NÕu P1 ,P2 ∈NP , P1 ∝ P2 , v” P1 l” NP-¼Çy Ÿñ, th× P2 cĂČng l” NP -¼Çy Ÿñ. 4) NÕu cĂŁ P sao cho P l” NP-¼Çy Ÿñ v” P ∈ P , th× P = NP. TĂ” cžc tÝnh chÊt Ÿã ta cĂŁ thÓ xem r»ng trong lĂ­p NP , P l” lĂ­p con cžc b”i tožn “ dÔ ” nhÊt, cßn cžc b”i tožn NP-¼Çy Ÿñ l” cžc b”i tožn “ khĂŁ ” nhÊt; nÕu cĂŁ Ýt nhÊt mĂ©t b”i tožn NP-¼Çy Ÿñ ¼−üc chĂžng minh l” thuĂ©c P , th× lËp tĂžc suy ra P = NP , dĂŻ r»ng cho ¼Õn nay tuy Ÿ· cĂŁ rÊt nhiÒu cĂš gŸng nh−ng tožn hĂ€c vÉn ch−a t×m ¼−üc con ¼−ĂȘng n”o hy vĂ€ng Âźi ¼Õn gi¶i quyÕt vÊn ¼Ò [P = NP ?], thËm chÝ vÊn ¼Ò Ÿã cßn ¼−üc xem l” mĂ©t trong 7 vÊn ¼Ò khĂŁ nhÊt cña tožn hĂ€c trong thiÂȘn niÂȘn kĂ» mĂ­i! 2.3.3. H”m mĂ©t phÝa v” cöa sËp mĂ©t phÝa. Khži niÖm Ÿé phĂžc tÂčp tÝnh tožn cung cÊp cho ta mĂ©t cžch tiÕp cËn mĂ­i ŸÚi vĂ­i vÊn ¼Ò bÝ mËt trong cžc vÊn ¼Ò b¶o mËt v” an to”n th«ng tin. DĂŻ ng”y nay ta Ÿ· cĂŁ nhĂ·ng mžy tÝnh ÂźiÖn tö cĂŁ tĂšc Ÿé tÝnh tožn cĂŹ h”ng tĂ» phÐp tÝnh mĂ©t gi©y ŸÄng hĂ„, nh−ng vĂ­i nhĂ·ng thuËt tožn cĂŁ Ÿé phĂžc tÂčp tÝnh tožn cĂŹ f (n ) = 2n , th× ngay vĂ­i nhĂ·ng dĂ· liÖu cĂŁ Ÿé d”i kho¶ng n = 1000, viÖc thĂčc hiÖn cžc thuËt tožn Ÿã Ÿ· kh«ng thÓ xem l” kh¶ thi, v× nĂŁ ¼ßi hĂĄi thĂčc hiÖn kho¶ng 10300 phÐp tÝnh! Nh− vËy, mĂ©t gi¶i phžp mËt m· chÂŒng hÂčn cĂŁ thÓ xem l” cĂŁ Ÿé b¶o mËt cao, nÕu ¼Ó gi¶i m· cÇn ph¶i thĂčc hiÖn mĂ©t tiÕn tr×nh tÝnh tožn cĂŁ Ÿé phĂžc tÂčp rÊt lĂ­n. Do Ÿã, viÖc phžt hiÖn v” sö dĂŽng cžc h”m sĂš cĂŁ Ÿé phĂžc tÂčp tÝnh tožn rÊt lĂ­n l” cĂŁ Ăœ nghÜa hÕt sĂžc quan trĂ€ng ŸÚi vĂ­i viÖc x©y dĂčng cžc gi¶i phžp vÒ mËt m· v” an to”n th«ng tin. H”m sĂš sĂš hĂ€c y = f (x ) ¼−üc gĂ€i l” h”m mĂ©t phÝa (one-way function), nÕu viÖc tÝnh thuËn tĂ” x ra y l” “dÔ”, nh−ng viÖc tÝnh
  • 45. ng−üc tĂ” y t×m lÂči x l” rÊt “khã”, Ă« Ÿ©y cžc tÝnh tĂ” “dÔ” v” “khã” kh«ng cĂŁ cžc ¼Þnh nghÜa chÝnh xžc m” ¼−üc hiÓu mĂ©t cžch thĂčc h”nh, ta cĂŁ thÓ hiÓu chÂŒng hÂčn dÔ l” tÝnh ¼−üc trong thĂȘi gian Âźa thĂžc (vĂ­i Âźa thĂžc bËc thÊp), cßn khĂŁ l” kh«ng tÝnh ¼−üc trong thĂȘi gian Âźa thĂžc! ThĂčc tÕ th× cho ¼Õn hiÖn nay, viÖc t×m v” chĂžng minh mĂ©t h”m sĂš n”o Ÿã l” kh«ng tÝnh ¼−üc trong thĂȘi gian Âźa thĂžc cßn l” viÖc rÊt khĂŁ khšn, cho nÂȘn “khã” th−ĂȘng khi chØ ¼−üc hiÓu mĂ©t cžch Ÿn gi¶n l” ch−a t×m ¼−üc thuËt tožn tÝnh nĂŁ trong thĂȘi gian Âźa thĂžc! VĂ­i cžch hiÓu t−¬ng ŸÚi nh− vËy vÒ “dÔ” v” “khã”, ng−ĂȘi ta Ÿ· ¼−a ra mĂ©t sĂš thÝ dĂŽ sau Ÿ©y vÒ cžc h”m mĂ©t phÝa: ThÝ dĂŽ 1. Cho p l” mĂ©t sĂš nguyÂȘn tĂš, v” α l” mĂ©t phÇn tö nguyÂȘn thuĂ» modp. H”m sĂš y = αx modp (tĂ” * p Z v”o * p Z ) l” mĂ©t h”m mĂ©t phÝa, v× h”m ng−üc cña nĂŁ, tÝnh tĂ” y t×m x m” ta kĂœ hiÖu log ( ) x y α = , l” mĂ©t h”m cĂŁ Ÿé phĂžc tÂčp tÝnh tožn rÊt lĂ­n. ThÝ dĂŽ 2. Cho n =p.q l” tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n. H”m sĂš y = x2 modn (tĂ” Zn v”o Zn ) cĂČng ¼−üc xem l” mĂ©t h”m mĂ©t phÝa. ThÝ dĂŽ 3. Cho n =p.q l” tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n, v” a l” mĂ©t sĂš nguyÂȘn sao cho gcd(a , φ(n)) =1. H”m sĂš y = x a modn (tĂ” Zn v”o Zn ) cĂČng l” mĂ©t h”m mĂ©t phÝa, nÕu gi¶ thiÕt l” biÕt n nh−ng kh«ng biÕt p,q . H”m y = f (x ) ¼−üc gĂ€i l” h”m cöa sËp mĂ©t phÝa (trapdoor one-way function), nÕu viÖc tÝnh thuËn tĂ” x ra y l” “dÔ”, viÖc tÝnh ng−üc tĂ” y t×m lÂči x l” rÊt “khã”, nh−ng cĂŁ mĂ©t cöa sËp z ¼Ó vĂ­i sĂč trĂź giĂłp cña cöa sËp z th× viÖc tÝnh x tĂ” y v” z lÂči trĂ« th”nh dÔ. ThÝ dĂŽ 4 (tiÕp tĂŽc thÝ dĂŽ 3). H”m sĂš y = x a modn khi biÕt p v” q l” h”m cöa sËp mĂ©t phÝa. TĂ” x tÝnh y l” dÔ, tĂ” y t×m x (nÕu chØ biÕt n , a ) l” rÊt khĂŁ, nh−ng v× biÕt p v” q nÂȘn biÕt φ(n) = (p -1)(q -1), v” dĂŻng thuËt tožn Euclide mĂ« rĂ©ng t×m ¼−üc b sao cho a.b ≡ 1 (modφ(n)) , tĂ” Ÿã dÔ tÝnh ¼−üc x = yb modn . Ă« Ÿ©y, cĂŁ thÓ xem b l” cöa sËp. 42
  • 46. 2.4. SĂš nguyÂȘn tĂš. Ph©n tÝch th”nh thĂ”a sĂš. Logarit rĂȘi rÂčc. Trong tiÕt n”y ta sÏ xÐt ba b”i tožn cĂŁ vai trß quan trĂ€ng trong lĂœ thuyÕt mËt m·, Ÿã l” ba b”i tožn: thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš nguyÂȘn, ph©n tÝch mĂ©t sĂš nguyÂȘn th”nh tÝch cña cžc thĂ”a sĂš nguyÂȘn tĂš, v” tÝnh logarit rĂȘi rÂčc cña mĂ©t sĂš theo mĂ©t m«Ÿuyn nguyÂȘn tĂš. 2.4.1. Thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš. B”i tožn ¼Æt ra rÊt Ÿn gi¶n: Cho mĂ©t sĂš nguyÂȘn d−¬ng n bÊt kĂș. H·y thö xem n cĂŁ l” sĂš nguyÂȘn tĂš hay kh«ng? B”i tožn ¼−üc ¼Æt ra tĂ” nhĂ·ng buĂŠi ¼Çu cña sĂš hĂ€c, v” tr¶i qua hÂŹn 2000 nšm ¼Õn nay vÉn l” mĂ©t b”i tožn ch−a cĂŁ ¼−üc nhĂ·ng cžch gi¶i dÔ d”ng. B»ng nhĂ·ng ph−¬ng phžp Ÿn gi¶n nh− ph−¬ng phžp s”ng EuratosthÌne, tĂ” rÊt sĂ­m ng−ĂȘi ta Ÿ· x©y dĂčng ¼−üc cžc b¶ng sĂš nguyÂȘn tĂš ¼Çu tiÂȘn, rĂ„i tiÕp tĂŽc b»ng nhiÒu ph−¬ng phžp khžc t×m thÂȘm ¼−üc nhiÒu sĂš nguyÂȘn tĂš lĂ­n. Tuy nhiÂȘn, chØ ¼Õn giai ÂźoÂčn hiÖn nay cña lĂœ thuyÕt mËt m· hiÖn ÂźÂči, nhu cÇu sö dĂŽng cžc sĂš nguyÂȘn tĂš v” thö tÝnh nguyÂȘn tĂš cña cžc sĂš mĂ­i trĂ« th”nh mĂ©t nhu cÇu to lĂ­n v” phĂŠ biÕn, ¼ßi hĂĄi nhiÒu ph−¬ng phžp mĂ­i cĂŁ hiÖu qu¶ hÂŹn. Trong mĂŽc n”y ta sÏ l−üc qua v”i tÝnh chÊt cña sĂš nguyÂȘn tĂš, sau Ÿã giĂ­i thiÖu m«t v”i ph−¬ng phžp thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš nguyÂȘn bÊt kĂș. Ta Ÿ· biÕt mĂ©t sĂš tÝnh chÊt sau Ÿ©y cña cžc sĂš nguyÂȘn tĂš v” hĂźp sĂš (trong cžc phžt biÓu d−íi Ÿ©y, kĂœ hiÖu A chØ cho sĂš phÇn tö cña tËp hĂźp A ): 1. TiÂȘu chuÈn Euler-Solovay-Strassen: a) NÕu n l” sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1: ( 1)/ 2 mod n a a n n − ⎛ ⎞ ⎟ ⎜ ≡ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ . b) NÕu n l” hĂźp sĂš , th× 43
  • 47. ( 1)/ 2 1 :1 1, mod . 2 n a n a a n a n n − ⎧ ⎫ ⎛ ⎞ − âŽȘ âŽȘ âŽȘ âŽȘ ⎟ ⎜ ≀ ≀ − ≡ ≀ ⎟ ⎚ ⎬ ⎜ ⎟ ⎜ âŽȘ âŽȘ ⎝ ⎠ âŽȘ âŽȘ ⎩ ⎭ 2. TiÂȘu chuÈn Solovay-Strassen-Lehmann : a) NÕu n l” sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1: ( 1)/ 2 1(mod ). n a n − ≥± b) NÕu n l” hĂźp sĂš, th× { } ( 1)/ 2 1 :1 1, 1mod . 2 n n a a n a n − − ≀ ≀ − ≡ ± ≀ 3. TiÂȘu chuÈn Miller-Rabin : a) Cho n l” sĂš nguyÂȘn lÎ, ta viÕt n - 1 = 2e .u, vĂ­i u l” sĂš lÎ. NÕu n l” sĂš nguyÂȘn tĂš, th× vĂ­i mĂ€i sĂš nguyÂȘn d−¬ng a [ n -1: 2 . ( 1mod ) ( 1mod k u u a n k e a ≡ √∃ < ≡− ). n b) NÕu n l” hĂźp sĂš, th× { } 2 . 1 :1 1,( 1mod ) ( 1mod ) 4 k u u n a a n a n k e a n − ≀ ≀ − ≡ √∃ < ≡− ≀ . Cžc tiÂȘu chuÈn kÓ trÂȘn l” cÂŹ sĂ« ¼Ó ta x©y dĂčng cžc thuËt tožn xžc suÊt kiÓu Monte-Carlo thö tÝnh nguyÂȘn tĂš (hay hĂźp sĂš) cña cžc sĂš nguyÂȘn. ChÂŒng hÂčn, tĂ” tiÂȘu chuÈn thĂž nhÊt ta cĂŁ thuËt tožn Euler- Solovay-Strassen sau Ÿ©y: DĂ· liÖu v”o: sĂš nguyÂȘn d−¬ng n v” t sĂš ngÉu nhiÂȘn a1,...,at (1[ai[n -1), 1. for i = 1 to t do 2. if ( 1)/2 mod n i i a a n n − ⎛ ⎞ ⎟ ⎜ ≡ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ , then 3. answer “n l” sĂš nguyÂȘn tĂš ” 4. else 5. answer “n l” hĂźp sĂš ” and quit 44
  • 48. ThuËt tožn n”y nÕu cho tr¶ lĂȘi “n l” hĂźp sĂš ” th× Ÿóng n l” hĂźp sĂš, nh−ng nÕu nĂŁ cho tr¶ lĂȘi “n l” sĂš nguyÂȘn tĂš ” th× tr¶ lĂȘi Ÿã cĂŁ thÓ sai vĂ­i mĂ©t xžc suÊt Δ n”o Ÿã. Nh− vËy, thuËt tožn Ÿã l” mĂ©t thuËt tožn xžc suÊt Monte-Carlo thiÂȘn vÒ cĂŁ nÕu xem nĂŁ l” thuËt tožn thö tÝnh l” hĂźp sĂš ; cßn nĂŁ l” mĂ©t thuËt tožn xžc suÊt thiÂȘn vÒ kh«ng nÕu xem nĂŁ l” thuËt tožn thö tÝnh nguyÂȘn tĂš cña cžc sĂš nguyÂȘn. T−¬ng tĂč nh− vËy, dĂča v”o cžc tiÂȘu chuÈn 2 v” 3 ta cĂČng cĂŁ thÓ x©y dĂčng cžc thuËt tožn xžc suÊt Solovay-Strassen-Lehmann v” Miller-Rabin kiÓu Monte-Carlo ¼Ó thö tÝnh nguyÂȘn tĂš (hay l” hĂźp sĂš) cña cžc sĂš nguyÂȘn. Hai thuËt tožn Ÿã chØ khžc thuËt tožn Euler- Solovay-Strassen kÓ trÂȘn Ă« chç c«ng thĂžc trong h”ng lÖnh thĂž 2 cÇn ¼−üc thay t−¬ng Ăžng bĂ«i ( 1)/2 1mod n a n − ≥± hay 45 n trong Ÿã u v” e ¼−üc xžc ¼Þnh bĂ«i: n - 1 = 2 2 . ( 1mod ) ( 1mod ) k u u a n k e a ≡ √∃ < ≡− e .u , u l” sĂš lÎ. Xžc suÊt sai lÇm Δ khi nhËn ¼−üc kÕt qu¶ “n l” sĂš nguyÂȘn tĂš ” trong cžc thuËt tožn Ÿã ¼−üc tÝnh nh− sau: Gi¶ sö n l” mĂ©t sĂš lÎ trong kho¶ng N v” 2N , tĂžc N <n < 2N . GĂ€i A l” sĂč kiÖn “n l” hĂźp sĂš ”, v” B l” sĂč kiÖn “thuËt tožn cho kÕt qu¶ tr¶ lĂȘi n l” sĂš nguyÂȘn tĂš ”. Ta ph¶i tÝnh xžc suÊt Δ =p (A⏐ B). Theo tÝnh chÊt b) cña tiÂȘu chuÈn Euler-Solovay-Strassen, nÕu n l” hĂźp sĂš, th× sĂč kiÖn ( 1)/ 2 mod n a a n n − ⎛ ⎞ ⎟ ⎜ ≡ ⎟ ⎜ ⎟ ⎜ ⎝ ⎠ ŸÚi vĂ­i mçi a ngÉu nhiÂȘn (1[a [n - 1) cĂŁ xžc suÊt [ 1/2, v× vËy ta cĂŁ ( ) 1 . 2t p B A ≀ Theo c«ng thĂžc Bayes ta cĂŁ
  • 49. ( ) ( ) ( ) ( ) ( ) . ( ) . ( ) . ( ) . ( ) . ( ) p B A p A p B A p A p A B p B p B A p A p B A p A = = + Theo ¼Þnh lĂœ vÒ sĂš nguyÂȘn tĂš, sĂš cžc sĂš nguyÂȘn tĂš giĂ·a N v” 2N xÊp xØ , ln ln N n N n ≈ sĂš cžc sĂš lÎ l” , 2 2 N n ≈ do Ÿã 2 ( ) , ln p A n ≈ v” 2 ( ) 1 . ln p A n ≈ − DÜ nhiÂȘn ta cĂŁ ( ) 1. p B A = Thay cžc giž trÞ Ÿã v”o c«ng thĂžc trÂȘn, ta ¼−üc ( ) 1 2 2 (1 ) ln 2 ln 2 2 ln 2 2 2 (1 ) ln ln t t t n n p A B n n n − + − − − ≀ = − + − + . (5) §žnh giž Ÿã cĂČng Ÿóng ŸÚi vĂ­i thuËt tožn Solovay-Strassen- Lehmann, cßn ŸÚi vĂ­i thuËt tožn Miler-Rabin th× ta ¼−üc mĂ©t Ÿžnh giž tĂšt hÂŹn, cĂŽ thÓ l” ( ) 2 1 ln 2 . ln 2 2 t n p A B n + − = − + (6) ChĂł Ăœ r»ng khi t =50 th× ÂźÂči l−üng Ă« vÕ ph¶i cña (5) , v” vÕ ph¶i cña (6) ; do Ÿã nÕu chĂ€n cho dĂ· liÖu v”o thÂȘm kho¶ng 50 sĂš ngÉu nhiÂȘn a 13 10− ≈ 28 10− ≈ i th× cžc thuËt tožn Euler-Solovay- Strassen v” Solovay-Strassen-Lehmann sÏ thö cho ta mĂ©t sĂš l” nguyÂȘn tĂš vĂ­i xžc suÊt sai lÇm [ 10-13 v” thuËt tožn Miller-Rabin vĂ­i xžc suÊt sai lÇm [ 10-28 ! Ta cĂŁ thÓ tÝnh ¼−üc r»ng Ÿé phĂžc tÂčp tÝnh tožn vÒ thĂȘi gian cña cžc thuËt tožn xžc suÊt kÓ trÂȘn l” v”o cĂŹ Âźa thĂžc cña logn , tĂžc l” Âźa thĂžc cña Ÿé Ÿ”i biÓu diÔn cña dĂ· liÖu v”o (l” sĂš n ), tuy nhiÂȘn cžc thuËt tožn Ÿã chØ cho ta thö tÝnh nguyÂȘn tĂš cña mĂ©t sĂš vĂ­i mĂ©t xžc suÊt sai lÇm Δ n”o Ÿã, dĂŻ Δ l” rÊt bÐ. Trong nhiÒu Ăžng dĂŽng, ta muĂšn cĂŁ ¼−üc nhĂ·ng sĂš nguyÂȘn tĂš vĂ­i Ÿé chŸc chŸn 100% l” sĂš nguyÂȘn tĂš. Do Ÿã, dĂŻ Ÿ· cĂŁ cžc thuËt tožn xžc suÊt nh− trÂȘn, ng−ĂȘi ta vÉn kh«ng ngĂ”ng t×m kiÕm nhĂ·ng thuËt tožn tÊt ¼Þnh ¼Ó thö tÝnh nguyÂȘn tĂš vĂ­i Ÿé chÝnh xžc tuyÖt ŸÚi. Trong mÊy chĂŽc nšm gÇn Ÿ©y, 46
  • 50. mĂ©t sĂš thuËt tožn Ÿ· ¼−üc ¼Ò xuÊt, trong Ÿã cĂŁ nhĂ·ng thuËt tožn ¼Æc sŸc nh− thuËt tožn thö tĂŠng Jacobi, ¼−üc phžt hiÖn bĂ«i Adleman, Pomerance v” Rumely, sau Ÿã ¼−üc Ÿn gi¶n hož bĂ«i Cohen v” Lenstra; thuËt tožn thö b»ng ¼−ĂȘng cong elliptic, ¼−üc ¼Ò xuÊt bĂ«i Goldwasser, Kilian, Adleman v” Huang, ¼−üc tiÕp tĂŽc ho”n thiÖn bĂ«i Atkin v” Morain, cžc thuËt tožn n”y Ÿ· ¼−üc dĂŻng ¼Ó t×m nhiÒu sĂš nguyÂȘn tĂš rÊt lĂ­n, thÝ dĂŽ dĂŻng thuËt tožn Atkin-Morain Ÿ· chĂžng tĂĄ ¼−üc sĂš (23539 + 1)/3 cĂŁ 1065 chĂ· sĂš thËp ph©n l” sĂš nguyÂȘn tĂš. GÇn Ÿ©y, v”o thžng 8/2002, cžc nh” tožn hĂ€c Âąn Ÿé Agrawal, Kayal v” Saxena Ÿ· ¼−a ra mĂ©t thuËt tožn tÊt ¼Þnh mĂ­i thö tÝnh nguyÂȘn tĂš cĂŁ Ÿé phĂžc tÂčp tÝnh tožn thĂȘi gian Âźa thĂžc khž Ÿn gi¶n, thuËt tožn Ÿã ¼−üc m« t¶ nh− sau: ThuËt tožn Agrawal-Kayal-Saxena: Input: integer n > 1 1. if (n is of the form ab , b > 1 ) ouput COMPOSITE; 2. r =2; 3. while (r < n ) { 4. if (gcd(n , r )≠ 1) ouput COMPOSITE; 5. if (r is prime ) 6. let q be the largest prime factor of r - 1; 7. if ( 4 log ) q r n ≄ and 1 r− ( 1(mod )) q n r ≠ 8. break; 9. r ← r + 1; 10. } 11. for a = 1 to 2 log r n 12. if (( ) ( )(mod 1, )) n n r x a x a x n − ≠ − − ouput COMPOSITE; 13. output PRIME; 47
  • 51. 48 ThuËt tožn n”y Ÿ· ¼−üc mĂ©t sĂš nh” tožn hĂ€c kiÓm nghiÖm , Ÿžnh giž cao v” xem l” mĂ©t thuËt tožn ¼Ñp, cĂŁ thÓ dĂŻng cho viÖc kiÓm thö tÝnh nguyÂȘn tĂš cña cžc sĂš nguyÂȘn. Trong thĂčc tiÔn x©y dĂčng cžc gi¶i phžp mËt m·, th−ĂȘng cĂŁ nhu cÇu cĂŁ cžc sĂš nguyÂȘn tĂš rÊt lĂ­n. §Ó t×m ¼−üc cžc sĂš nh− vËy, ng−ĂȘi ta th−ĂȘng chĂ€n ngÉu nhiÂȘn mĂ©t sĂš rÊt lĂ­n, rĂ„i dĂŻng tr−íc cho nĂŁ mĂ©t thuËt tožn xžc suÊt chÂŒng hÂčn nh− thuËt tožn Miller-Rabin; nÕu thuËt tožn cho ta kÕt qu¶ “l” sĂš nguyÂȘn tù” vĂ­i mĂ©t xžc suÊt sai Δ n”o Ÿã, th× sau Ÿã ta dĂŻng tiÕp mĂ©t thuËt tožn tÊt ¼Þnh (chÂŒng hÂčn nh− thuËt tožn trÂȘn Ÿ©y) ¼Ó b¶o ٦m chŸc chŸn 100% r»ng sĂš Ÿã l” sĂš nguyÂȘn tĂš. ThuËt tožn Agrawal-Kayal-Saxena trÂȘn Ÿ©y ¼−üc chĂžng tĂĄ l” cĂŁ Ÿé phĂžc tÂčp thĂȘi gian Âźa thĂžc cĂŹ O((logn)12 ) khi thö trÂȘn sĂš n ; v” nÕu sĂš nguyÂȘn tĂš ¼−üc thö cĂŁ dÂčng Sophie Germain, tĂžc dÂčng 2p +1, th× Ÿé phĂžc tÂčp thĂȘi gian sÏ chØ l” cĂŹ O((logn)6 ). 2.4.2. Ph©n tÝch th”nh thĂ”a sĂš nguyÂȘn tĂš. B”i tožn ph©n tÝch mĂ©t sĂš nguyÂȘn > 1 th”nh thĂ”a sĂš nguyÂȘn tĂš cĂČng ¼−üc xem l” mĂ©t b”i tožn khĂŁ th−ĂȘng ¼−üc sö dĂŽng trong lĂœ thuyÕt mËt m·. BiÕt mĂ©t sĂš n l” hĂźp sĂš th× viÖc ph©n tÝch n th”nh thĂ”a sĂš mĂ­i l” cĂŁ nghÜa; do Ÿã th−ĂȘng khi ¼Ó gi¶i b”i tožn ph©n tÝch n th”nh thĂ”a sĂš, ta thö tr−íc n cĂŁ l” hĂźp sĂš hay kh«ng (chÂŒng hÂčn b»ng mĂ©t trong cžc thuËt tožn Ă« mĂŽc tr−íc); v” b”i tožn ph©n tÝch n th”nh thĂ”a sĂš cĂŁ thÓ dÉn vÒ b”i tožn t×m mĂ©t −íc sĂš cña n, v× khi biÕt mĂ©t −íc sĂš d cña n th× tiÕn tr×nh ph©n tÝch n ¼−üc tiÕp tĂŽc thĂčc hiÖn b»ng cžch ph©n tÝch d v” n/d. B”i tožn ph©n tÝch th”nh thĂ”a sĂš, hay b”i tožn t×m −íc sĂš cña mĂ©t sĂš nguyÂȘn cho tr−íc, Ÿ· ¼−üc nghiÂȘn cĂžu nhiÒu, nh−ng cĂČng ch−a cĂŁ mĂ©t thuËt tožn hiÖu qu¶ n”o ¼Ó gi¶i nĂŁ trong tr−ĂȘng hĂźp tĂŠng qužt; do Ÿã ng−ĂȘi ta cĂŁ khuynh h−íng t×m thuËt tožn gi¶i nĂŁ trong nhĂ·ng tr−ĂȘng hĂźp ¼Æc biÖt, chÂŒng hÂčn khi n cĂŁ mĂ©t −íc sĂš nguyÂȘn tĂš p vĂ­i p -1 l” B-mÞn vĂ­i mĂ©t cËn B >0 n”o Ÿã, hoÆc khi n l” sĂš Blum, tĂžc l” sĂš cĂŁ dÂčng tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n n”o Ÿã (n =p.q ).
  • 52. Ta xÐt tr−ĂȘng hĂźp thĂž nhÊt vĂ­i (p -1)-thuËt tĂŁan Pollard nh− sau: MĂ©t sĂš nguyÂȘn n ¼−üc gĂ€i l” B-mÞn, nÕu tÊt c¶ cžc −íc sĂš nguyÂȘn tĂš cña nĂŁ ¼Òu ≀B. Ăœ chÝnh chĂža trong (p-1)- thuËt tožn Pollard l” nh− sau: Gi¶ sö n l” B-mÞn. KĂœ hiÖu Q l” bĂ©i chung bÐ nhÊt cña tÊt c¶ cžc luĂŒ thĂ”a cña cžc sĂš nguyÂȘn tĂš ≀B m” b¶n th©n chĂłng ≀n. NÕu q l ≀n th× l lnq ≀ lnn , tĂžc ln ln n l q ⎱ ⎄ ⎱ ⎄ ≀ ⎱ ⎄ ⎣ ⎊ ( x ⎱ ⎄ ⎣ ⎊ l” sĂš nguyÂȘn bÐ nhÊt lĂ­n hÂŹn x ). Ta cĂŁ ln /ln , n q q B Q q ⎱ ⎄ ⎣ ⎊ ≀ = ∏ trong Ÿã tÝch lÊy theo tÊt c¶ cžc sĂš nguyÂȘn tĂš khžc nhau q ≀B . NÕu p l” mĂ©t thĂ”a sĂš nguyÂȘn tĂš cña n sao cho p -1 l” B-mÞn, th× p -1⏐Q, v” do Ÿã vĂ­i mĂ€i a bÊt kĂș thĂĄa m·n gcd(a,p) = 1, theo ¼Þnh lĂœ Fermat ta cĂŁ a Q ≡ 1 (modp ). V× vËy, nÕu lÊy d =gcd(aQ - 1, n ) th× p ⏐d. NÕu d = n th× coi nh− thuËt tožn kh«ng cho ta ÂźiÒu mong muĂšn, tuy nhiÂȘn ÂźiÒu Ÿã chŸc kh«ng xÈy ra nÕu n cĂŁ Ýt nhÊt hai thĂ”a sĂš nguyÂȘn tĂš khžc nhau. TĂ” nhĂ·ng lËp luËn Ÿã ta cĂŁ: (p - 1)-thuËt tožn Pollard ph©n tÝch th”nh thĂ”a sĂš : INPUT: mĂ©t hĂźp sĂš n kh«ng ph¶i l” luĂŒ thĂ”a cña mĂ©t sĂš nguyÂȘn tĂš. OUTPUT: mĂ©t thĂ”a sĂš kh«ng tÇm th−ĂȘng cña n . 1. ChĂ€n mĂ©t cËn cho Ÿé mÞn B. 2. ChĂ€n ngÉu nhiÂȘn mĂ©t sĂš nguyÂȘn a , 2≀ a ≀ n - 1, v” tÝnh d = gcd(a,n ). NÕu d ≄ 2 th× cho ra kÕt qu¶ (d ). 3. VĂ­i mçi sĂš nguyÂȘn tĂš q ≀ B thĂčc hiÖn: 3.1 TÝnh ln . ln n l q ⎱ ⎄ ⎱ ⎄ = ⎱ ⎄ ⎣ ⎊ 3.2 TÝnh mod . l q a a n ← 49
  • 53. 50 4. TÝnh d = gcd(a -1, n). 5. NÕu 1< d < n th× cho ra kÕt qu¶ (d ). NÕu ng−üc lÂči th× thuËt tožn coi nh− kh«ng cĂŁ kÕt qu¶. ThÝ dĂŽ: DĂŻng thuËt tožn cho sĂš n = 19048567. Ta chĂ€n B =19, v” a =3, v” tÝnh ¼−üc gcd(3,n ) =1. ChuyÓn sang thĂčc hiÖn b−íc 3 ta ¼−üc b¶ng sau Ÿ©y (mçi h”ng Ăžng vĂ­i mĂ©t giž trÞ cña q ) : q l a 2 3 5 7 11 13 17 19 24 15 10 8 6 6 5 5 2293244 13555889 16937223 15214586 9685355 13271154 11406961 554506 Sau Ÿã ta tÝnh d =gcd(554506-1,19048567) = 5281. VËy ta ¼−üc mĂ©t thĂ”a sĂš p = 5281, v” do Ÿã mĂ©t thĂ”a sĂš nĂ·a l” q = n/p = 3607. C¶ hai thĂ”a sĂš Ÿã ¼Òu l” nguyÂȘn tĂš. ChĂł Ăœ r»ng Ă« Ÿ©y p -1 = 5280 = 25 .3.5.11 , cĂŁ tÊt c¶ cžc −íc sĂš nguyÂȘn tĂš ¼Òu ≀ 19, do Ÿã chŸc chŸn thuËt tožn sÏ kÕt thĂłc cĂŁ kÕt qu¶. ThuËt tožn sÏ kÕt thĂłc kh«ng cĂŁ kÕt qu¶ khi Ÿé mÞn B ¼−üc chĂ€n quž bÐ ¼Ó kh«ng mĂ©t thĂ”a sĂš nguyÂȘn tĂš p n”o cña n m” p -1 chØ chĂža cžc −íc sĂš nguyÂȘn tĂš ≀ B. Nh− vËy, cĂŁ thÓ xem (p -1)-thuËt tožn Pollard ph©n tÝch n th”nh thĂ”a sĂš nguyÂȘn tĂš l” cĂŁ hiÖu qu¶ ŸÚi vĂ­i nhĂ·ng sĂš nguyÂȘn n l” B-mÞn, ng−ĂȘi ta tÝnh ¼−üc thĂȘi gian cÇn ¼Ó thĂčc hiÖn thuËt tožn Ÿã l” cĂŹ O(B lnn /lnB ) phÐp nh©n theo m«Ÿuyn. B©y giĂȘ ta xÐt tr−ĂȘng hĂźp cžc sĂš nguyÂȘn Blum, tĂžc l” cžc sĂš cĂŁ dÂčng n = p.q , tÝch cña hai sĂš nguyÂȘn tĂš lĂ­n. Tr−íc hÕt ta chĂł Ăœ r»ng
  • 54. nÕu ta biÕt hai sĂš nguyÂȘn khžc nhau x v” y sao cho 2 2 (mod ) x y n ≡ th× ta dÔ t×m ¼−üc mĂ©t thĂ”a sĂš cña n . ThĂčc vËy, tĂ” 2 2 (mod ) x y n ≡ ta cĂŁ 2 2 ( )( ) x y x y x y − = + − chia hÕt cho n , do n kh«ng l” −íc sĂš cña x + y hoÆc x - y, nÂȘn gcd(x - y, n) ph¶i l” mĂ©t −íc sĂš cña n, tĂžc b»ng p hoÆc q . Ta biÕt nÕu n = p.q l” sĂš Blum, th× ph−¬ng tr×nh ŸÄng d− 2 2 (mod ) x a n ≡ cĂŁ 4 nghiÖm, hai nghiÖm tÇm th−ĂȘng l” x = a v” x = -a . Hai nghiÖm kh«ng tÇm th−ĂȘng khžc l” ±b , chĂłng l” nghiÖm cña hai hÖ ph−¬ng tr×nh ŸÄng d− bËc nhÊt sau Ÿ©y: ( ) (mod ) (mod ) mod (mod ) x a p x a p x a q x a q ⎧ ⎧ ≡− âŽȘ ≡ âŽȘ âŽȘ âŽȘ ⎚ ⎚ âŽȘ âŽȘ ≡ ≡− âŽȘ ⎩ âŽȘ ⎩ B»ng lËp luËn nh− trÂȘn, ta thÊy r»ng nÕu n l” sĂš Blum, a l” mĂ©t sĂš nguyÂȘn tĂš vĂ­i n, v” ta biÕt mĂ©t nghiÖm kh«ng tÇm th−ĂȘng cña ph−¬ng tr×nh 2 2 (mod ) x a ≡ n , tĂžc biÕt mĂ©t x ≠ ±a sao cho 2 2 (mod ) x a ≡ n th× gcd(x - a , n ) sÏ l” mĂ©t −íc sĂš cña n . NhĂ·ng ÂźiÒu trÂȘn Ÿ©y l” cšn cĂž cho mĂ©t sĂš ph−¬ng phžp t×m −íc sĂš nguyÂȘn tĂš cña mĂ©t sĂš nguyÂȘn dÂčng Blum; Ăœ chung cña cžc ph−¬ng phžp Ÿã l” dÉn vÒ viÖc t×m mĂ©t nghiÖm kh«ng tÇm th−ĂȘng cña mĂ©t ph−¬ng tr×nh dÂčng 2 2 (mod ) x a ≡ n , chÂŒng hÂčn nh− ph−¬ng tr×nh 2 1(mod ) x n ≡ . MĂ©t tr−ĂȘng hĂźp khž lĂœ thĂł trong lĂœ thuyÕt mËt m· l” khi ta biÕt hai sĂš a ,b l” nghÞch ٦o cña nhau theo modφ (n ) (nh−ng kh«ng biÕt φ (n ) ), v” t×m mĂ©t ph©n tÝch th”nh thĂ”a sĂš cña n. B”i tožn ¼−üc ¼Æt ra cĂŽ thÓ l”: BiÕt n cĂŁ dÂčng Blum, biÕt a v” b sao cho ab ≡ 1(modφ (n )). H·y t×m mĂ©t −íc sĂš nguyÂȘn tĂš cña n , hay t×m mĂ©t nghiÖm kh«ng tÇm th−ĂȘng cña ph−¬ng tr×nh 2 1(mod ) x n ≡ . Ta gi¶ thiÕt ab - 1 = 2s . r vĂ­i r l” sĂš lÎ. Ta phžt triÓn mĂ©t thuËt tožn xžc suÊt kiÓu Las Vegas nh− sau: Ta chĂ€n mĂ©t sĂš ngÉu nhiÂȘn v (1≀ v ≀ n - 1). NÕu may mŸn v l” bĂ©i sĂš cña p hay q, th× ta ¼−üc ngay mĂ©t −íc sĂš cña n l” gcd(v,n ). NÕu v nguyÂȘn tĂš vĂ­i n , th× ta tÝnh cžc b×nh ph−¬ng liÂȘn tiÕp kÓ tĂ” v r , ¼−üc cho ¼Õn khi ¼−üc vĂ­i mĂ©t t n”o 2 4 , , ,... r r r v v v ( 2 . 1 mod t r v n ≡ ) 51