Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Do an bao mat thong tin.pdf
PREMIUM
Số trang
122
Kích thước
1.9 MB
Định dạng
PDF
Lượt xem
1961

Do an bao mat thong tin.pdf

Nội dung xem thử

Mô tả chi tiết

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

MUÏC LUÏC

I .1 Giôùi thieäu....................................................................................................... 3

I.2 Caùc Heä Maõ Thoâng Duïng:................................................................................. 3

e. Phöông phaùp Affine........................................................................................... 4

f. Phöông phaùp Vigenere....................................................................................... 5

I.2 LAÄP MAÕ DES................................................................................................. 14

I. 3 THAÙM MAÕ DES............................................................................................ 17

I.3.1. Thaùm maõ heä DES - 3 voøng................................................................. 20

II.3.2. Thaùm maõ heä DES 6-voøng ..................................................................... 24

II.3. 3 Caùc thaùm maõ vi sai khaùc ...................................................................... 28

III. CAØI ÑAËT THAÙM MAÕ DES 3 VOØNG...................................................... 28

III.1 Giao Dieän .................................................................................................... 28

III.2 XÖÛ LYÙ ............................................................................................................

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

LÔØI NOÙI ÑAÀU

Hieän nay, nöôùc ta ñang trong giai ñoaïn tieán haønh coâng nghieäp hoùa, hieän ñaïi hoùa ñaát

nöôùc. Tin hoïc ñöôïc xem laø moät trong nhöõng ngaønh muõi nhoïn. Tin hoïc ñaõ vaø ñang ñoùng goùp

raát nhieàu cho xaõ hoäi trong moïi khía caïnh cuûa cuoäc soáng.

Maõ hoùa thoâng tin laø moät ngaønh quan troïng vaø coù nhieàu öùng duïng trong ñôøi soáng xaõ hoäi.

Ngaøy nay, caùc öùng duïng maõ hoùa vaø baûo maät thoâng tin ñang ñöôïc söû duïng ngaøy caøng phoå

bieán hôn trong caùc lónh vöïc khaùc nhau treân Theá giôùi, töø caùc lónh vöïc an ninh, quaân söï, quoác

phoøng…, cho ñeán caùc lónh vöïc daân söï nhö thöông maïi ñieän töû, ngaân haøng…

ÖÙng duïng maõ hoùa vaø baûo maät thoâng tin trong caùc heä thoáng thöông maïi ñieän töû, giao dòch

chöùng khoaùn,… ñaõ trôû neân phoå bieán treân theá giôùi vaø seõ ngaøy caøng trôû neân quen thuoäc vôùi

ngöôøi daân Vieät Nam. Thaùng 7/2000, thò tröôøng chöùng khoaùn laàn ñaàu tieân ñöôïc hình thaønh taïi

Vieät Nam; caùc theû tín duïng baét ñaàu ñöôïc söû duïng, caùc öùng duïng heä thoáng thöông maïi ñieän

töû ñang ôû böôùc ñaàu ñöôïc quan taâm vaø xaây döïng. Do ñoù, nhu caàu veà caùc öùng duïng maõ hoùa vaø

baûo maät thoâng tin trôû neân raát caàn thieát.

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

I. MOÄT SOÁ PHÖÔNG PHAÙP MAÕ HOÙA

I .1 Giôùi thieäu

Ñònh nghóa 1.1: Moät heä maõ maät (cryptosystem) laø moät boä-naêm (P, C, K, E, D) thoûa maõn

caùc ñieàu kieän sau:

1. P laø khoâng gian baûn roõ. taäp hôïp höõu haïn taát caû caùc maåu tin nguoàn caàn maõ hoùa coù theå

coù

2. C laø khoâng gian baûn maõ. taäp hôïp höõu haïn taát caû caùc maåu tin coù theå coù sau khi maõ

hoùa

3. K laø khoâng gian khoaù. taäp hôïp höõu haïn caùc khoùa coù theå ñöôïc söû duïng

4. Vôùi moãi khoùa k∈K, toàn taïi luaät maõ hoùa ek∈E vaø luaät giaûi maõ dk∈D töông öùng. Luaät

maõ hoùa ek: P → C vaø luaät giaûi maõ ek: C → P laø hai aùnh xaï thoûa maõn

( ( )) , k k dex x xP = ∀∈

Tính chaát 4. laø tính chaát chính vaø quan troïng cuûa moät heä thoáng maõ hoùa. Tính chaát naøy

baûo ñaûm vieäc maõ hoùa moät maåu tin x∈P baèng luaät maõ hoùa ek∈E coù theå ñöôïc giaûi maõ

chính xaùc baèng luaät dk∈D.

Ñònh nghóa 1.2: Zm ñöôïc ñònh nghóa laø taäp hôïp {0, 1, ..., m-1}, ñöôïc trang bò pheùp coäng

(kyù hieäu +) vaø pheùp nhaân (kyù hieäu laø ×). Pheùp coäng vaø pheùp nhaân trong Zm ñöôïc thöïc

hieän töông töï nhö trong Z, ngoaïi tröø keát quaû tính theo modulo m

Ví duï: Giaû söû ta caàn tính giaù trò 11 × 13 trong Z16. Trong Z, ta coù keát quaû cuûa pheùp nhaân

11×13=143. Do 143≡15 (mod 16) neân 11×13=15 trong Z16.

Moät soá tính chaát cuûa Zm

1. Pheùp coäng ñoùng trong Zm, i.e., ∀ a, b ∈ Zm, a+b ∈ Zm

2. Tính giao hoaùn cuûa pheùp coäng trong Zm, i.e., ∀ a, b ∈ Zm, a+b =b+a

3. Tính keát hôïp cuûa pheùp coäng trong Zm, i.e., ∀ a, b, c ∈ Zm, (a+b)+c =a+(b+c)

4. Zm coù phaàn töû trung hoøa laø 0, i.e., ∀ a ∈ Zm, a+0=0+a=a

5. Moïi phaàn töû a trong Zm ñeàu coù phaàn töû ñoái laø m – a

6. Pheùp nhaân ñoùng trong Zm, i.e., ∀ a, b ∈ Zm, a×b∈ Zm

7. Tính giao hoaùn cuûa pheùp coäng trong Zm, i.e., ∀ a, b ∈ Zm, a×b=b×a

8. Tính keát hôïp cuûa pheùp coäng trong Zm, i.e., ∀ a, b, c ∈ Zm, (a×b)×c =a×(b×c)

9. Zm coù phaàn töû ñôn vò laø 1, i.e., ∀ a ∈ Zm, a×1=1×a=a

10. Tính phaân phoái cuûa pheùp nhaân ñoái vôùi pheùp coäng, i.e., ∀ a, b, c ∈ Zm, (a+b)×c

=(a×c)+(b×c)

11. Zm coù caùc tính chaát 1, 3 – 5 neân taïo thaønh 1 nhoùm. Do Zm coù tính chaát 2 neân taïo thaønh

nhoùm Abel. Zm coù caùc tính chaát (1) – (10) neân taïo thaønh 1 vaønh

I.2 Caùc Heä Maõ Thoâng Duïng:

a. Heä Maõ Ñaày (Shift Cipher )

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

Shift Cipher laø moät trong nhöõng phöông phaùp laâu ñôøi nhaát ñöôïc söû duïng ñeå

maõ hoùa. Thoâng ñieäp ñöôïc maõ hoùa baèng caùch dòch chuyeån (xoay voøng) töøng kyù töï ñi k vò trí

trong baûng chöõ caùi.

Phöông phaùp Shift Cipher

Cho P = C = K = Z26. Vôùi 0 ≤ K ≤ 25, ta ñònh nghóa

eK = x + K mod 26

vaø

dK = y - K mod 26

(x,y ∈ Z26)

trong ñoù 26 laø soá kyù töï trong baûng chöõ caùi La tinh, moät caùch töông töï cuõng coù theå

ñònh nghóa cho moät baûng chöõ caùi baát kyø. Ñoàng thôøi ta deã daøng thaáy raèng maõ ñaåy laø moät heä

maät maõ vì dK(eK(x)) = x vôùi moïi x∈Z26.

b. Heä KEYWORD-CEASAR

Trong heä maõ naøy khoùa laø moät töø naøo ñoù ñöôïc choïn tröôùc, ví duï PLAIN. Töø naøy

xaùc ñònh daõy soá nguyeân trong Z26 (15,11,0,8,13) töông öùng vôùi vò trí caùc chöõ caùi cuûa caùc

chöõ ñöôïc choïn trong baûng chöõ caùi. Baây giôø baûn roõ seõ ñöôïc maõ hoùa baèng caùch duøng caùc

haøm laäp maõ theo thöù töï:

e15, e11, e0, e8, e13, e15, e11, e0, e8, e,...

vôùi eK laø haøm laäp maõ trong heä maõ chuyeån.

c. Heä Maõ Vuoâng (SQUARE)

Trong heä naøy caùc töø khoùa ñöôïc duøng theo moät caùch khaùc haún. Ta duøng baûng chöõ

caùi tieáng Anh (coù theå boû ñi chöõ Q, neáu muoán toång soá caùc chöõ soá laø moät soá chính phöông)

vaø ñoøi hoûi moïi chöõ trong töø khoùa phaûi khaùc nhau. Baây giôø moïi chöõ cuûa baûng chöõ caùi

ñöôïc vieát döôùi daïng moät hình vuoâng, baét ñaàu baèng töø khoùa vaø tieáp theo laø nhöõng chöõ caùi

coøn laïi theo thöù töï cuûa baûng chöõ.

d. Maõ theá vò

Moät heä maõ khaùc khaù noåi tieáng . Heä maõ naøy ñaõ ñöôïc söû duïng haøng traêm naêm nay.

Phöông phaùp :

Cho P = C = Z26. K goàm taát caû caùc hoaùn vò coù theå coù cuûa 26 kyù hieäu

0,...,25. Vôùi moãi hoaùn vò π∈K, ta ñònh nghóa:

eπ(x) = π(x)

vaø ñònh nghóa dπ(y) = π

-1(y)

vôùi π

-1 laø hoaùn vò ngöôïc cuûa hoaùn vò π.

Trong maõ theá vò ta coù theå laáy P vaø C laø caùc baûng chöõ caùi La tinh. Ta söû duïng Z26

trong maõ ñaåy vì laäp maõ vaø giaûi maõ ñeàu laø caùc pheùp toaùn ñaïi soá.

e. Phöông phaùp Affine

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

Cho P = C = Z26 vaø cho

K = {(a,b) ∈ Z26 × Z26 : gcd(a,26) = 1}

Vôùi K = (a,b) ∈ K, ta xaùc ñònh

eK(x) = ax+b mod 26

vaø

dK = a-1(y-b) mod 26

(x,y ∈ Z26)

Phöông phaùp Affine laïi laø moät tröôøng hôïp ñaëc bieät khaùc cuûa Substitution Cipher.

Ñeå coù theå giaûi maõ chính xaùc thoâng tin ñaõ ñöôïc maõ hoùa baèng haøm ek∈ E thì ek phaûi laø moät

song aùnh. Nhö vaäy, vôùi moãi giaù trò y∈Z26, phöông trình ax+b≡y (mod 26) phaûi coù nghieäm

duy nhaát x∈Z26.

Phöông trình ax+b≡y (mod 26) töông ñöông vôùi ax≡(y–b ) (mod 26). Vaäy, ta chæ caàn

khaûo saùt phöông trình ax≡(y–b ) (mod 26)

Ñònh lyù1.1: Phöông trình ax+b≡y (mod 26) coù nghieäm duy nhaát x∈Z26 vôùi moãi giaù trò b∈Z26

khi vaø chæ khi a vaø 26 nguyeân toá cuøng nhau.

Vaäy, ñieàu kieän a vaø 26 nguyeân toá cuøng nhau baûo ñaûm thoâng tin ñöôïc maõ hoùa baèng haøm ek

coù theå ñöôïc giaûi maõ vaø giaûi maõ moät caùch chính xaùc.

Goïi φ(26) laø soá löôïng phaàn töû thuoäc Z26 vaø nguyeân toá cuøng nhau vôùi 26.

Ñònh lyù 1.2: Neáu ∏=

= m

i

e

i

i n p

1

vôùi pi laø caùc soá nguyeân toá khaùc nhau vaø ei ∈ Z+

, 1 ≤ i ≤ m thì

( ) ∏( ) =

− = − m

i

e

i

e

i

i i n p p

1

1 φ

Trong phöông phaùp maõ hoùa Affine , ta coù 26 khaû naêng choïn giaù trò b, φ(26) khaû naêng choïn

giaù trò a. Vaäy, khoâng gian khoùa K coù taát caû nφ(26) phaàn töû.

Vaán ñeà ñaët ra cho phöông phaùp maõ hoùa Affine Cipher laø ñeå coù theå giaûi maõ ñöôïc thoâng tin

ñaõ ñöôïc maõ hoùa caàn phaûi tính giaù trò phaàn töû nghòch ñaûo a

–1

∈ Z26.

f. Phöông phaùp Vigenere

phöông phaùp maõ hoùa Vigenere söû duïng moät töø khoùa (keyword) coù ñoä daøi m. Coù theå xem

nhö phöông phaùp maõ hoùa Vigenere Cipher bao goàm m pheùp maõ hoùa Shift Cipher ñöôïc aùp

duïng luaân phieân nhau theo chu kyø.

Khoâng gian khoùa K cuûa phöông phaùp Vigenere coù soá phaàn töû laø 26, lôùn hôn haún phöông

phaùp soá löôïng phaàn töû cuûa khoâng gian khoùa K trong phöông phaùp Shift Cipher. Do ñoù, vieäc

tìm ra maõ khoùa k ñeå giaûi maõ thoâng ñieäp ñaõ ñöôïc maõ hoùa seõ khoù khaên hôn ñoái vôùi phöông

phaùp Shift Cipher.

Phöông phaùp maõ hoùa Vigenere Cipher

Choïn soá nguyeân döông m. Ñònh nghóa P = C = K = (Z26)

m

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

K = { (k0, k1, ..., kr-1) ∈ (Z26)

r

}

Vôùi moãi khoùa k = (k0, k1, ..., kr-1) ∈ K, ñònh nghóa:

ek(x1, x2, ..., xm) = ((x1+k1) mod 26, (x2+k2) mod n, ..., (xm+km) mod 26)

dk(y1, y2, ..., ym) = ((y1–k1) mod n, (y2–k2) mod n, ..., (ym–km) mod 26)

vôùi x, y ∈ (Z26)

m

g. Heä maõ Hill

Phöông phaùp Hill Cipher ñöôïc Lester S. Hill coâng boá naêm 1929: Cho soá nguyeân döông

m, ñònh nghóa P = C = (Z26)

m. Moãi phaàn töû x∈P laø moät boä m thaønh phaàn, moãi thaønh phaàn

thuoäc Z26. YÙ töôûng chính cuûa phöông phaùp naøy laø söû duïng m toå hôïp tuyeán tính cuûa m thaønh

phaàn trong moãi phaàn töû x∈P ñeå phaùt sinh ra m thaønh phaàn taïo thaønh phaàn töû y∈C.

Phöông phaùp maõ hoùa Hill Cipher

Choïn soá nguyeân döông m. Ñònh nghóa:

P = C = (Z26)

m vaø K laø taäp hôïp caùc ma traän m×m khaû nghòch

Vôùi moãi khoùa K

k k k

k k

k k k

k

m m m m

m

m

=

,1 ,2 ,

2,1 2,

1,1 1,2 1,

L

M M M

L L

L

, ñònh nghóa:

() ( )

= =

m m m m

m

m

k m

k k k

k k

k k k

e x xk x x x

,1 ,2 ,

2,1 2,

1,1 1,2 1,

1 2 , ,...,

L

M M M

L L

L

vôùi x=(x1, x2, ..., xm) ∈ P

vaø dk(y) = yk–1 vôùi y∈ C

Moïi pheùp toaùn soá hoïc ñeàu ñöôïc thöïc hieän treân Zn

h. Maõ hoaùn vò

Nhöõng phöông phaùp maõ hoùa neâu treân ñeàu döïa treân yù töôûng chung: thay theá moãi kyù töï

trong thoâng ñieäp nguoàn baèng moät kyù töï khaùc ñeå taïo thaønh thoâng ñieäp ñaõ ñöôïc maõ hoùa. YÙ

töôûng chính cuûa phöông phaùp maõ hoaùn vò laø vaãn giöõ nguyeân caùc kyù töï trong thoâng ñieäp

nguoàn maø chæ thay ñoåi vò trí caùc kyù töï; noùi caùch khaùc thoâng ñieäp nguoàn ñöôïc maõ hoùa baèng

caùch saép xeáp laïi caùc kyù töï trong ñoù.

Phöông phaùp maõ hoùa maõ hoaùn vò

Choïn soá nguyeân döông m. Ñònh nghóa:

P = C = (Z26)

m vaø K laø taäp hôïp caùc hoaùn vò cuûa m phaàn töû {1, 2, ..., m}

Vôùi moãi khoùa π ∈ K, ñònh nghóa:

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

( ) () ( ) ( ) ( ) m m e x x x x x x π π π π , ,..., , ,... 1 2 = 1 2 vaø

( ) () ( ) ( ) ( ) m m d y y y y 1 y 1 y 1 , ,..., , ,... 1 2 1 2 = − − − π π π π

vôùi π

–1 hoaùn vò ngöôïc cuûa π

Phöông phaùp maõ hoaùn vò chính laø moät tröôøng hôïp ñaëc bieät cuûa phöông phaùp Hill. Vôùi

moãi hoaùn vò π cuûa taäp hôïp {1, 2, ..., m} , ta xaùc ñònh ma traän kπ = (ki, j ) theo coâng thöùc sau:

( )

⎧ = = trong tröôøng hôïp ngöôïc laïi

neáu

0,

1, ,

i j ki j

π

Ma traän kπ laø ma traän maø moãi doøng vaø moãi coät coù ñuùng moät phaàn töû mang giaù trò 1, caùc

phaàn töû coøn laïi trong ma traän ñeàu baèng 0. Ma traän naøy coù theå thu ñöôïc baèng caùch hoaùn vò

caùc haøng hay caùc coät cuûa ma traän ñôn vò Im neân kπ laø ma traän khaû nghòch. Roõ raøng, maõ hoùa

baèng phöông phaùp Hill vôùi ma traän kπ hoaøn toaøn töông ñöông vôùi maõ hoùa baèng phöông phaùp

maõ hoaùn vò vôùi hoaùn vò π.

d. Maõ voøng

Trong caùc heä tröôùc ñeàu cuøng moät caùch thöùc laø caùc phaàn töû keá tieáp nhau cuûa baûn roõ

ñeàu ñöôïc maõ hoùa vôùi cuøng moät khoùa K. Nhö vaäy xaâu maõ y seõ coù daïng sau:

y = y1y2... = eK(x1) eK(x2)...

Caùc heä maõ loaïi naøy thöôøng ñöôïc goïi laø maõ khoái (block cipher).

Coøn ñoái vôùi caùc heä maõ doøng. YÙ töôûng ôû ñaây laø sinh ra moät chuoãi khoùa z = z1z2...,

vaø söû duïng noù ñeå maõ hoùa xaâu baûn roõ x = x1x2...theo qui taéc sau:

... ( ) ( )... 1 2 1 1 2 2 y y y e x e x = = z z

I.3 Quy trình thaùm maõ:

Cöù moãi phöông phaùp maõ hoaù ta laïi coù moät phöông phaùp thaùm maõ töông öùng nhöng

nguyeân taéc chung ñeå vieäc thaùm maõ ñöôïc thaønh coâng thì yeâu caàu ngöôøi thaùm maõ

phaûi bieát heä maõ naøo ñöôïc duøng hoaù. Ngoaøi ra ta coøn phaûi bieát ñöôïc baûn maõ vaø baûn

roõ öùng.

nhìn chung caùc heä maõ ñoái xöùng laø deã caøi ñaët vôùi toác ñoä thöïc thi nhanh.

Tính an toaøn cuûa noù phuï thuoäc vaøo caùc yeáu toá :

• Khoâng gian khoaù phaûi ñuû lôùn

• vôùi caùc pheùp troän thích hôïp caùc heä maõ ñoái xöùng coù theå taïo ra ñöôïc moät heä

maõ môùi coù tính an toaøn cao.

• baûo maät cho vieäc truyeàn khoùa cuõng caàn ñöôïc xöû lyù moät caùch nghieâm tuùc.

Vaø moät heä maõ hoaù döõ lieäu ra ñôøi (DES). DES ñöôïc xem nhö laø chuaån maõ hoùa döõ

lieäu cho caùc öùng duïng töø ngaøy 15 thaùng 1 naêm 1977 do UÛy ban Quoác gia veà Tieâu chuaån

cuûa Myõ xaùc nhaän vaø cöù 5 naêm moät laàn laïi coù chænh söûa, boå sung.

DES laø moät heä maõ ñöôïc troän bôûi caùc pheùp theá vaø hoaùn vò. vôùi pheùp troän thích hôïp

thì vieäc giaûi maõ noù laïi laø moät baøi toaùn khaù khoù. Ñoàng thôøi vieäc caøi ñaët heä maõ naøy cho

nhöõng öùng duïng thöïc teá laïi khaù thuaän lôïi. Chính nhöõng lyù do ñoù noù ñöôïc öùng duïng roäng

raõi cuûa DES trong suoát hôn 20 naêm qua, khoâng nhöõng taïi Myõ maø coøn laø haàu nhö treân khaép

theá giôùi. Maëc duø theo coâng boá môùi nhaát (naêm 1998) thì moïi heä DES, vôùi nhöõng khaû naêng

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

cuûa maùy tính hieän nay, ñeàu coù theå beû khoùa trong hôn 2 giôø. Tuy nhieân DES cho ñeán nay

vaãn laø moät moâ hình chuaån cho nhöõng öùng duïng baûo maät trong thöïc teá.

II. HEÄ MAÕ CHUAÅN DES (Data Encryption Standard)

II.1 Ñaëc taû DES

Phöông phaùp DES maõ hoùa töø x coù 64 bit vôùi khoùa k coù 56 bit thaønh moät töø coù y 64 bit.

Thuaät toaùn maõ hoùa bao goàm 3 giai ñoaïn:

1. Vôùi töø caàn maõ hoùa x coù ñoä daøi 64 bit, taïo ra töø x0 (cuõng coù ñoä daøi 64 bit) baèng caùch

hoaùn vò caùc bit trong töø x theo moät hoaùn vò cho tröôùc IP (Initial Permutation). Bieåu dieãn

x0 = IP(x) = L0R0, L0 goàm 32 bit beân traùi cuûa x0, R0 goàm 32 bit beân phaûi cuûa x0

L0 R0

x0

Hình.1 Bieåu dieãn daõy 64 bit x thaønh 2 thaønh phaàn L vaø R

2. Xaùc ñònh caùc caëp töø 32 bit Li, Ri vôùi 1≤ i ≤ 16theo quy taéc sau:

Li = Ri-1

Ri = Li-1⊕ f (Ri-1, Ki)

vôùi ⊕ bieåu dieãn pheùp toaùn XOR treân hai daõy bit, K1, K2, ..., K16 laø caùc daõy 48 bit phaùt

sinh töø khoùa K cho tröôùc (Treân thöïc teá, moãi khoùa Ki ñöôïc phaùt sinh baèng caùch hoaùn vò

caùc bit trong khoùa K cho tröôùc).

Li-1 Ri-1

f Ki

Li Ri

Hình.2 Quy trình phaùt sinh daõy 64 bit LiRi töø daõy 64 bit Li-1Ri-1vaø khoùa Ki

3. AÙp duïng hoaùn vò ngöôïc IP-1 ñoái vôùi daõy bit R16L16, thu ñöôïc töø y goàm 64 bit. Nhö

vaäy, y = IP-1 (R16L16)

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

Haøm f ñöôïc söû duïng ôû böôùc 2 laø

A

B1 B2 B3 B4 B5 B6 B7 B8

S1

J

E(A)

S2 S3 S4 S5 S6 S7 S8

C1 C2 C3 C4 C5 C6 C7 C8

f(A,J)

E

+

P

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

Haøm f coù goàm 2 tham soá: Tham soá thöù nhaát A laø moät daõy 32 bit, tham soá thöù hai J laø

moät daõy 48 bit. Keát quaû cuûa haøm f laø moät daõy 32 bit. Caùc böôùc xöû lyù cuûa haøm f(A, J)nhö

sau:

• Tham soá thöù nhaát A (32 bit) ñöôïc môû roäng thaønh daõy 48 bit baèng haøm môû roäng E.

Keát quaû cuûa haøm E(A) laø moät daõy 48 bit ñöôïc phaùt sinh töø A baèng caùch hoaùn vò theo

moät thöù töï nhaát ñònh 32 bit cuûa A, trong ñoù coù 16 bit cuûa A ñöôïc laäp laïi 2 laàn trong

E(A).

• Thöïc hieän pheùp toaùn XOR cho 2 daõy 48 bit E(A) vaø J, ta thu ñöôïc moät daõy 48 bit B.

Bieåu dieãn B thaønh töøng nhoùm 6 bit nhö sau:B = B1B2B3B4B5B6B7B8

• Söû duïng 8 ma traän S1, S2,..., S8, moãi ma traän Si coù kích thöôùc 4×16 vaø moãi doøng cuûa

ma traän nhaän ñuû 16 giaù trò töø 0 ñeán 15. Xeùt daõy goàm 6 bit Bj = b1b2b3b4b5b6,

Sj(Bj) ñöôïc xaùc ñònh baèng giaù trò cuûa phaàn töû taïi doøng r coät c cuûa Sj, trong ñoù, chæ soá

doøng r coù bieåu dieãn nhò phaân laø b1b6, chæ soá coät c coù bieåu dieãn nhò phaân laø b2b3b4b5.

Baèng caùch naøy, ta xaùc ñònh ñöôïc caùc daõy 4 bit Cj = Sj(Bj), 1 ≤ j ≤ 8.

• Taäp hôïp caùc daõy 4 bit Cj laïi. ta coù ñöôïc daõy 32 bit C = C1C2C3C4C5C6C7C8. Daõy 32

bit thu ñöôïc baèng caùch hoaùn vò C theo moät quy luaät P nhaát ñònh chính laø keát quaû cuûa

haøm F(A, J)

caùc haøm ñöôïc söû duïng trong DES.

Hoaùn vò khôûi taïo IP seõ nhö sau:

IP

58 50 42 34 26 18 10 2

60 52 44 36 28 20 12 4

62 54 46 38 30 22 14 6

64 56 48 40 32 24 16 8

57 49 41 33 25 17 9 1

59 51 43 35 27 19 11 3

61 53 45 37 29 21 13 5

63 55 47 39 31 23 15 7

Ñieàu naøy coù nghóa laø bit thöù 58 cuûa x laø bit ñaàu tieân cuûa IP(x); bit thöù 50 cuûa x laø

bit thöù hai cuûa IP(x) v.v.

Hoaùn vò ngöôïc IP-1 seõ laø:

IP-1

40

39

38

37

8

7

6

5

48

47

46

45

16

15

14

13

56

55

54

53

24

23

22

21

64

63

62

61

32

31

30

29

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

36

35

34

33

4

3

2

1

44

43

42

41

12

11

10

9

52

51

50

49

20

19

18

17

60

59

58

57

28

27

26

25

Haøm môû roäng E ñöôïc ñaëc taû theo baûng sau:

E – baûng choïn bit

32

4

8

12

16

20

24

28

1

5

9

13

17

21

25

29

2

6

10

14

18

22

26

30

3

7

11

15

19

23

27

31

4

8

12

16

20

24

28

32

5

9

13

17

21

25

29

1

Taùm S-hoäp vaø hoaùn vò P seõ ñöôïc bieåu dieãn nhö sau:

S1

14

0

4

15

4

15

1

12

13

7

14

8

1

4

8

2

2

14

13

4

15

2

6

9

11

13

2

1

8

1

11

7

3

10

15

5

10

6

12

11

6

12

9

3

12

11

7

14

5

9

3

10

9

5

10

0

0

3

5

6

7

8

0

13

S2

15

3

0

13

1

13

14

8

8

4

7

10

14

7

11

1

6

15

10

3

11

2

4

15

3

8

13

4

4

14

1

2

9

12

5

11

7

0

8

6

2

1

12

7

13

10

6

12

12

6

9

0

0

9

3

5

5

11

2

14

10

5

15

9

S3

10

13

13

1

0

7

6

10

9

0

4

13

14

9

9

0

6

3

8

6

3

4

15

9

15

6

3

8

5

10

0

7

1

2

11

4

13

8

1

15

12

5

2

14

7

14

12

3

11

12

5

11

4

11

10

5

2

15

14

2

8

1

7

12

S4

ÑOÀ AÙN BAÛO MAÄT THOÂNG TIN HEÄ MAÕ DES

NGOÂ THÒ TUYEÁT HAØ – T012825

7

13

10

3

13

8

6

15

14

11

9

0

3

5

0

6

0

6

12

10

6

15

11

1

9

0

7

13

10

3

13

8

1

4

15

9

2

7

1

4

8

2

3

5

5

12

14

11

11

1

5

12

12

10

2

7

4

14

8

2

15

9

4

14

S5

2

14

4

11

12

11

2

8

4

2

1

12

1

12

11

7

7

4

10

0

10

7

13

14

11

13

7

2

6

1

8

13

8

5

15

6

5

0

9

15

3

15

12

0

15

10

5

9

13

3

6

10

0

9

3

4

14

8

0

5

9

6

14

3

S6

12

10

9

4

1

15

14

3

10

4

15

2

15

2

5

12

9

7

2

9

2

12

8

5

6

9

12

15

8

5

3

10

0

6

7

11

13

1

0

14

3

13

4

1

4

14

10

7

14

0

1

6

7

11

13

0

5

3

11

8

11

8

6

13

S7

4

13

1

6

11

0

4

11

2

11

11

13

14

7

13

8

15

4

12

1

0

9

3

4

8

1

7

10

13

10

14

7

3

14

10

9

12

3

15

5

9

5

6

0

7

12

8

15

5

2

0

14

10

15

5

2

6

8

9

3

1

6

2

12

S8

13

1

7

2

2

15

11

1

8

13

4

14

4

8

1

7

6

10

9

4

15

3

12

10

11

7

14

8

1

4

2

13

10

12

0

15

9

5

6

12

3

6

10

9

14

11

13

0

5

0

15

3

0

14

3

5

12

9

5

6

7

2

8

11

P

16

29

1

5

2

32

19

22

7

12

15

18

8

27

13

11

20

28

23

31

24

3

30

4

21

17

26

10

14

9

6

25

Tải ngay đi em, còn do dự, trời tối mất!