Vớ dụ minh họa 3 0-

Một phần của tài liệu Tìm hiểu một số thuật toán mã hóa dữ liệu và ứng dụng (Trang 30)

Sau đõy là một vớ dụ với những số cụ thể. Ở đõy sử dụng những số nhỏ để tiện tớnh toỏn cũn trong thực tế phải dựng cỏc số cú giỏ trị đủ lớn.

Lấy:

p = 5 - số nguyờn tố thứ nhất (giữ bớ mật hoặc hủy sau khi tạo khúa)

q = 7 - số nguyờn tố thứ hai (giữ bớ mật hoặc hủy sau khi tạo khúa)

n = pq = 35 - mụđun (cụng bố cụng khai)

(n)= (p-1)

(q-1)=24. - Giỏ trị hàm số Ơle

e = 5 - số mũ cụng khai (chọn e thoả điều kiện 1< e< n)

d= 29 - số mũ bớ mật ( chọn d sao cho e * d -1 chia hết cho (n))

Như vậy ta cú cặp khúa:

Public Key = (e,n) = (5,35) Private Key = (d,n) = (29,35) Áp dụng để mó hoỏ chuổi : SECURE

Trong bảng chữ cỏi, cú tất cả 26 ký tự, cỏc ký tự ứng với một con số. Do đú, ta cú bảng sau:

Mó húa chuổiSECURE.

Nếu tại đõy, dữ liệu trờn đường chuyển đến người nhận bị một người khỏc bắt được, người đú sẽ khụng biết được nội dung muốn núi điều gỡ, mà chỉ nhận được đú chỉ là những con số, khụng núi lờn được điều gỡ. Nếu muốn đọc được nội dung, người đú phải cú Private Key, mà ứng với Public Key dựng để mó hoỏ dữ liệu trờn thỡ phải cú Private Key thớch hợp. Do đú, dữ liệu sẽ an toàn.

Khi dữ liệu đến tay người nhận, muốn khụi phục lại dữ liệu gốc ban đầu, ta sẽ decrypt lại với n = 35, d = 29.

Nội dung bị mó hoỏ M = cd mod n Dữ liệu gốc 24 19 S 10 5 E 33 3 C 21 21 U 23 18 R 10 5 E 3.2.3 Một số phương phỏp tấn cụng

Tớnh chất an toàn của phương phỏp RSA dựa trờn cơ sở, chi phớ cho việc giải mó bất hợp lệ thụng tin đó được mó húa sẽ quỏ lớn nờn xem như khụng thể thực hiện được.

Vỡ khúa là cụng cộng nờn việc tấn cụng bẻ khúa phương phỏp RSA thường dựa vào khúa cụng cộng để xỏc định khúa riờng tương ứng. Điều quan trọng là dựa vào n để tớnh p, q, từ đú tớnh được d.

3.2.3.1 Phương phỏp sử dụng φ(n)

Gió sử người tấn cụng biết được giỏ trị φ(n). Khi đú việc xỏc định giỏ trị p, q được đưa về giải hai phương trỡnh sau.

n = p*q

φ(n) = (p-1)*q-1)

Thay q = n/p ta được phương trỡnh bậc hai: p2 + p*( φ(n) - n - 1) + n = 0.

p, q chớnh là hai nghiệm của phương trỡnh bậc hai này. Tuy nhiờn vấn đề phỏt hiện được φ(n) cũn khú hơn việc xỏc định hai thừa số nguyờn tố của n.

3.2.3.2 Áp dụng thuật toỏn phõn tớch ra thừa số

Cú nhiều thuật toỏn để phõn tớch ra thừa số. Tuy nhiờn thuật toỏn Pollard p-1, là một trong những thuật toỏn đơn giải, hiệu quả, dựng để phõn tớch ra thừa số nguyờn tố của cỏc số nguyờn lớn, ở đõy ta phõn tớch số nguyờn n dựa vào phõn tớch p-1 với p là một ước nguyờn tố của n.

Cỏc bước của thuật toỏn:

Bước 2: Gỏn a = 2. Bước 3: for j = 2 to b do

a = aj mod n

Bước 4: Tỡm d = gcd(a-1,n). d là ước chung lớn nhất của a-1 và n. Bước 5: Nếu 1< d < n then

d là thừa số nguyờn tố của n (thành cụng). Ngược lại

Khụng xỏc định được thừa số nguyờn tố của n.

Giải thuật này chỉ hiệu quả khi tấn cụng phương phỏp RSA trong trương hợp n cú thừa số nguyờn tố p mà p-1 chỉ cú cỏc ước số nguyờn tố rất nhỏ. Do đú chỳng ta cú thể dễ dàng xõy dựng một hệ mó húa cụng cộng RSA an toàn đối với giải thuật tấn cụng p-1. Cỏch đơn giản là tỡm một số nguyờn tố p1 lớn mà p = 2p1+1 cũng là số nguyờn tố, tương tự, tỡm q1 là số nguyờn tố lớn mà q = 2q1+1 là nguyờn tố.

3.2.3.3 Bẻ khúa dựa trờn tấn cụng lặp lại

Siimons và Norris đó chỉ ra rằng hệ thống RSA cú thể bị tổn thương khi sử dụng phương phỏp tấn cụng lặp lại liờn tiếp. Đú là khi đối thủ biết cặp khúa cụng cộng (e,n) và từ khúa C thỡ họ cú thể tớnh chuổi cỏc từ khúa sau.

C1 = Ce mod n. C2 = C1e mod n. ... Ci = Ci-1e mod n.

Nếu cú một phần tử Cj trong chuỗi C1, C2,…, Ci. Sao cho Cj = C thỡ khi đú kẻ tấn cụng sẻ tỡm được M = Cj-1 bởi vỡ.

Cj = Cej-1 mod n. C = Me mod n.

Vớ dụ : Giả sử anh ta biết {e, n, C} = {17, 35, 3}. Người ta sẻ tớnh. C1 = Ce mod n = 317 mod 35 = 33.

C2 = C1e mod n = 3317 mod 35 = 3. Vỡ C2 = C nờn M = C1 =33.

3.2.4 Đỏnh giỏ thuật toỏn

- Hiệu suất hoạt động: RSA chạy chậm do việc phỏt sinh khoỏ cụng khai, khoỏ bớ mật hay quỏ trỡnh mó hoỏ, giải mó tốn nhiều thời gian vỡ phải tớnh toỏn trờn cỏc số nguyờn dương cực lớn, cú chiều dài vượt quỏ khả năng chứa của thanh ghi nờn phải thực hiện lại nhiều lần và sử dụng nhiều đến bộ xử lý. Do đú, RSA khụng được sử dụng vào mục đớch mó hoỏ cỏc khối lượng dữ liệu lớn mà chỉ ứng dụng trong chữ ký điện tử để mó hoỏ thụng điệp ngắn đó qua hàm băm (hash), giải thuật trao đổi khoỏ bớ mật( khoỏ dựng cho cỏc hệ thống mó hoỏ đối xứng, hay khoỏ riờng) hay là chỉ mó hoỏ dữ liệu với số lượng nhỏ.

- Tớnh bảo mật: Độ an toàn của RSA dựa trờn bài toỏn phõn tớch ra thừa số nguyờn tố. Do đú, chiều dài của số càng lớn thỡ càng khú phõn tớch ra thừa số nguyờn tố.

3.3. Thuật toỏn mó húa MD53.3.1 Hàm băm MD5 3.3.1 Hàm băm MD5

3.3.1.1 Khỏi niệm

MD5 (Message-Digest algorithm 5) là một hàm băm để mó húa với giỏ trị băm là 128 bit. Từng được xem là một chuẩn trờn Internet, MD5 đó được sử dụng rộng rói trong cỏc chương trỡnh an ninh mạng, và cũng thường được dựng để kiểm tra tớnh nguyờn vẹn của tập tin.

MD5 được thiết kế bởi Ronald Rivest vào năm 1991 để thay thế cho hàm băm trước MD4 (cũng do ụng thiết kế, trước đú nữa là MD2).

3.3.1.2 Ứng dụng

MD5 cú 2 ứng dụng quan trọng:

 MD5 được sử dụng rộng rói trong thế giới phần mềm để đảm bảo rằng tập tin tải về khụng bị hỏng. Người sử dụng cú thể so sỏnh giữa thụng số kiểm tra phần mềm bằng MD5 được cụng bố với thụng số kiểm tra phần mềm tải về bằng MD5. Hệ điều hành Unix sử dụng MD5 để kiểm tra cỏc gúi tin mà nú phõn phối, trong khi hệ điều hành Windows sử dụng phần mềm của hóng thứ ba.

 MD5 được dựng để mó húa mật khẩu. Mục đớch của việc mó húa này là biến đổi một chuỗi mật khẩu thành một đoạn mó khỏc, sao cho từ đoạn

thể hoặc phải mất một khoảng thời gian vụ tận (đủ để làm nản lũng cỏc hacker).

3.3.1.3 Thuật giải

MD5 biến đổi một thụng điệp cú chiều dài bất kỡ thành một khối cú kớch thước cố định 128 bits. Thụng điệp đưa vào sẽ được cắt thành cỏc khối 512 bits. Thụng điệp được đưa vào bộ đệm để chiều dài của nú sẽ chia hết cho 512. Bộ đệm hoạt động như sau:

- Trước tiờn chốn bit 1 vào cuối thụng điệp.

- Tiếp đú là hàng loạt bit Zero cho tới khi chiều dài của nú nhỏ hơn bội số của 512 một khoảng 64 bit .

- Phần cũn lại sẽ được lấp đầy bởi một số nguyờn 64 bit biểu diễn chiều dài ban đầu của thụng điệp. Thuật toỏn chớnh của MD5 hoạt động trờn một bộ 128 bit. Chia nhỏ nú ra thành 4 từ 32 bit, kớ hiệu là A, B, C và D. Cỏc giỏ trị này là cỏc hằng số cố định. Sau đú thuật toỏn chớnh sẽ luõn phiờn hoạt động trờn cỏc khối 512 bit. Mỗi khối sẽ phối hợp với một bộ. Quỏ trỡnh xử lý một khối thụng điệp bao gồm 4 bước tương tự nhau, gọi là vũng (“round”). Mỗi vũng lại gồm 16 quỏ trỡnh tương tự nhau dựa trờn hàm một chiều F, phộp cộng module và phộp xoay trỏi…

Hỡnh bờn dưới mụ tả một quỏ trỡnh trong một vũng. Cú 4 hàm một chiều F cú thể sử dụng. Mỗi vũng sử dụng một hàm khỏc nhau.

Hỡnh 3.8: Mụ hỡnh một vũng.

Hàm băm MD5 (cũn được gọi là hàm túm tắt thụng điệp - message degests) sẻ trả về một chuổi số thập lục phõn gồm 32 số liờn tiếp.

Dưới đõy là cỏc vớ dụ mụ tả cỏc kết quả thu được sau khi băm.

MD5("cộng hũa xó hội chủ nghĩa việt nam") = 7b8e76fac176d53c53cb24843e31e759

Thậm chỉ chỉ cần một thay đổi nhỏ cũng làm thay đổi hoàn toàn kết quả trả về :

MD5(“ Cộng Hũa Xó Hội Chủ Nghĩa Việt Nam “) = 4B290F07CAC9A678797B6D23CCD1062B

Ngay cả một chuổi rỗng cũng cho ra một kết quả phức tạp:

MD5(“”) = d41d8cd98f00b204e9800998ecf8427e 3.3.2 MD5

3.3.2.1 Mụ tả

Đầu vào là những khụ́i 512-bit, được chia cho 16 khụ́i con 32-bit. Đầu ra của thuật toỏn là một thiết lập của 4 khụ́i 32-bit để tạo thành mụ̣t hàm Băm 128-bit duy nhất. Đầu tiờn, ta chia thụng điệp thành cỏc khụ́i 512-bit, với khối cuối cựng (đặt là x và x <512-bit) của thụng điệp, chỳng ta cộng thờm một bit 1 vào cuụ́i của x, theo sau đú là cỏc bit 0 để được độ dài cần thiết (512 bit). Kết quả là thụng điệp vào là một chuỗi M cú độ dài chia hờ́t cho 512, vỡ vọ̃y ta cú thể chia M ra thành cỏc N word 32-bit (N word này sẽ chia hờ́t cho 16).

Bõy giờ, ta bắt đầu tỡm cốt của thụng điệp với 4 khụ́i 32-bit A, B, C và D (được xem như thanh ghi) :

A = 0x01234567 B = 0x89abcdef C = 0xfedcba98

Người ta thường gọi A, B, C, D là cỏc chuỗi biến số (chaining variables).

Thụng điệp được chia ra thành nhiều khụ́i 512-bit, mỗi khụ́i 512-bit lại được chia ra 16 khụ́i 32-bit đi vào bụ́n vũng lặp của MD5. Giả sử ta đặt a, b, c và d thay cho A, B, C và D đụ́i với khụ́i 512-bit đõ̀u tiờn của bức điện. Bốn vũng lặp trong MD5 đều cú cấu trỳc giống nhau. Mỗi vũng thực hiện 16 lần biến đụ̉i: Thực hiện với một hàm phi tuyến của 3 trong 4 giỏ trị a, b, c và d sau đú nú cộng kờ́t quả đờ́n giỏ trị thứ 4, tiếp đú cộng với một khụ́i con 32-bit và một hằng sụ́. Sau đú, nú dịch trỏi một được bit thay đụ̉i và cộng kờ́t quả vào một trong 4 giỏ trị a, b, c hay d. Kết quả cuụ́i cựng là một giỏ trị mới được thay thế một trong 4 giỏ trị a, b, c hay d

Hỡnh 3.9: Sơ đồ vũng lặp của MD5.

Cú bốn hàm phi tuyến, mỗi hàm này được sử dụng cho mỗi vũng: F (X, Y, Z) = (X  Y)  (( X)  Z)

G(X, Y, Z) = (X  Z)  (( Z)  Y) H (X, Y, Z) = X  Y  Z

I (X, Y, Z) = Y  (X  (ơZ))

X  Y Phộp toỏn AND trờn bit giữa X và Y. X  Y Phộp toỏn OR trờn bit giữa X và Y. X  Y Phộp toỏn XOR trờn bit giữa X và Y. ơX Phộp toỏn NOT trờn bit của X.

X + Y Phộp cộng.

X <<< s Cỏc bit của X được dịch chuyển xoay vũng sang trỏi s vị trớ (0 ≤ s < 32)

Những hàm này được thiết kế sao cho cỏc bit tương ứng của X, Y và Z là đụ̣c lập và khụng ưu tiờn, và mỗi bit của kờ́t quả cũng độc lập và ngang bằng nhau.

Nếu Mj là một biểu diễn của khụ́i con thứ j (j = 16) và <<<s là phộp dịch trỏi của s bit, thỡ cỏc vũng lặp cú thể biểu diễn như sau:

FF(a,b,c,d,Mj,s,ti) được biểu diễn a = b + ((a + F(b,c,d) + Mj + ti)<<<s) GG(a,b,c,d,Mj,s,ti) được biểu diễn a = b + ((a + G(b,c,d) + Mj + ti) <<<s) HH(a,b,c,d,Mj,s,ti) được biểu diễn a = b+ ((a+H(b,c,d) + Mj + ti) <<< s) II(a,b,c,d,Mj,s,ti) được biểu diễn a = b + ((a + I(b,c,d) + Mj + ti) <<< s).

3.3.2.2 Cỏch thực hiện

Bốn vũng (64 bước) sẽ thực hiện như sau:

Vũng 1: FF (a, b, c, d, M0, 7, 0xd76aa478) FF (d, a, b, c, M1, 12, 0xe8c7b756) FF (c, d, a, b, M2, 17, 0x242070db) FF (b, c, d, a, M3, 22, 0xc1bdceee) FF (a, b, c, d, M4, 7, 0xf57c0faf) FF (d, a, b, c, M5, 12, 0x4787c62a) FF (c, d, a, b, M6, 17, 0xa8304613) FF (b, c, d, a, M7, 22, 0xfd469501) FF (a, b, c, d, M8, 7, 0x698098d8) FF (d, a, b, c, M9, 12, 0x8b44f7af) FF (c, d, a, b, M10, 17, 0xffff5bb1)

FF (a, b, c, d, M12, 7, 0x6b901122) FF (d, a, b, c, M13, 12, 0xfd987193) FF (c, d, a, b, M14, 17, 0xa679438e) FF (b, c, d, a, M15, 22, 0x49b40821).

Vũng 2: GG (a, b, c, d, M1, 5, 0xf61e2562) GG (d, a, b, c, M6, 9, 0xc040b340) GG (c, d, a, b, M11, 14, 0x265e5a51) GG (b, c, d, a, M0, 20, 0xe9b6c7aa) GG (a, b, c, d, M5, 5, 0xd62f105d) GG (d, a, b, c, M10, 9, 0x02441453) GG (c, d, a, b, M15, 14, 0xd8a1e681) GG (b, c, d, a, M4, 20, 0xe7d3fbc8) GG (a, b, c, d, M9, 5, 0x21e1cde6) GG (d, a, b, c, M14, 9, 0xc33707d6) GG (c, d, a, b, M3, 14, 0xf4d50d87) GG (b, c, d, a, M8, 20, 0x455a14ed) GG (a, b, c, d, M13, 5, 0xa9e3e905) GG (d, a, b, c, M2, 9, 0xfcefa3f8) GG (c, d, a, b, M7, 14, 0x676f02d9) GG (b, c, d, a, M12, 20, 0x8d2a4c8a). Vũng 3: HH (a, b, c, d, M5, 4, 0xfffa3942) HH (d, a, b, c, M8, 11, 0x8771f681) HH (c, d, a, b, M11, 16, 0x6d9d6122) HH (b, c, d, a, M14, 23, 0xfde5380c) HH (a, b, c, d, M1, 4, 0xa4beea44) HH (d, a, b, c, M4, 11, 0x4bdecfa9) HH (c, d, a, b, M7, 16, 0xf6bb4b60) HH (b, c, d, a, M10, 23, 0xbebfbc70) HH (a, b, c, d, M13, 4, 0x289b7ec6) HH (d, a, b, c, M0, 11, 0xeaa127fa) HH (c, d, a, b, M3, 16, 0xd4ef3085) HH (b, c, d, a, M6, 23, 0x04881d05) HH (a, b, c, d, M9, 4, 0xd9d4d039) HH (d, a, b, c, M12, 11, 0xe6db99e5) HH (c, d, a, b, M15, 16, 0x1fa27cf8) HH (b, c, d, a, M2, 23, 0xc4ac5665).

Vũng 4: II (a, b, c, d, M0, 6, 0xf4292244) II (d, a, b, c, M7, 10, 0x432aff97) II (c, d, a, b, M14, 15, 0xab9423a7) II (b, c, d, a, M5, 21, 0xfc93a039) II (a, b, c, d, M12, 6, 0x655b59c3) II (d, a, b, c, M3, 10, 0x8f0ccc92) II (c, d, a, b, M10, 15, 0xffeff47d) II (b, c, d, a, M1, 21, 0x85845dd1) II (a, b, c, d, M8, 6, 0x6fa87e4f) II (d, a, b, c, M15, 10, 0xfe2ce6e0) II (c, d, a, b, M6, 15, 0xa3013414) II (b, c, d, a, M13, 21, 0x4e0811a1) II (a, b, c, d, M4, 6, 0xf7537e82) II (d, a, b, c, M11, 10, 0xbd3af235) II (c, d, a, b, M2, 15, 0x2ad7d2bb) II (b, c, d, a, M9, 21, 0xeb86d391).

Những hằng số ti được chọn theo quy luật sau: ở bước thứ i giỏ trị ti là phõ̀n nguyờn của 232*abs(sin(i)), trong đú i = [0..63] được tính theo radian. Sau tất cả những bước này a, b, c và d lần lượt được cộng với A, B, C và D để cho kờ́t quả đõ̀u ra và thuật toán tiếp tục với khụ́i dữ liệu 512-bit tiếp theo cho đờ́n hờ́t thụng điệp. Đầu ra cuụ́i cựng là một khụ́i 128-bit của A, B, C và D, đõy chớnh là hàm Băm nhõn được.

3.3.2.3 Thuật toỏn và sơ đồ khối

Sơ đồ hoạt động của MD5.

Hỡnh 3.10: Sơ đồ khối tổng quỏt F T

Begin

H0=0x67452301; H1:=0xEFCDAB89 H2:=0x98BADCFE; H3:=0x10325476

Chia thụng điệp thành M khối 512 bit

i<=M i=1

i++ A=H0; B=H1; C=H2; D=H3;

Xử lý trờn mỗi khối 512 bit

MD: H0 H1 H2 H3 End

H0=H0+A; H1=H1+B; H2=H2+C; H3=H3+D

Trong đú

Tiền xử lý:

 Thờm bit 1 vào cuối thụng điệp.

 Thờm vào k bit 0 sao cho độ dài thụng điệp nhận được đồng dư 448 (mod 512).

 Thờm 64 bit biểu diễn độ dài của thụng điệp gốc.

Hỡnh 3.11: Sơ đồ xử lý 512 bits Với R[i] là hệ số quay trỏi của mỗi chu kỡ

S Đ Đ Đ S Đ S Begin i =1 i <=15 i <=31 i <=47 f := (B  C)  (( B)  D) g := i f := (D  B)  (( D)  C) g := (5ìi + 1) mod 16 f := B  C  D g := (3ìi + 5) mod 16 f := C  (B  ( D)) g := (7ìi) mod 16 tg = D , D = C , C = B B = ((A + f + K[i] + w[g]) <<< R[i]) + B i <=64 End i =i+1 S

7, 12, 17, 22, 7, 12, 17, 22} R[16..31] := { 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20} R[32..47] := { 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23} R[48..63] := { 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21 K[i] là hằng số. fori =0 to 63 do

PHẦN III: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Sau một thời gian tập trung nghiờn cứu. Em đó tỡm hiểu được một số vấn đề về mó húa thụng tin. Qua đú biết được rằng mó húa cú vai trũ khụng thể thiếu trong lĩnh vực an toàn thụng tin mạng. Mó húa cú ứng dụng to lớn trong đời sống xó hội, trong cỏc lĩnh vực kinh tế, chớnh trị quõn sự của một quốc gia.

Trong đề tài này em đó tỡm hiểu được một số phương phỏp mó húa quan trọng và đang được sử dụng rộng rói nhất, đú là DES, RSA, MD5. Từ cơ sở lý thuyết em đó cài đặt chương trỡnh mụ phỏng cho mó húa dữ liệu như RSA, và một ứng dụng nhỏ của thuật toỏn MD5.

Qua quỏ trỡnh nghiờn cứu em cũng biết được, cỏc thuật toỏn mó húa này tạo nờn nhiều ứng dụng to lớn như chữ kớ thư điện tử, mó húa Password, tuy nhiờn đõy là lĩnh vực khú, đũi hỏi nhiều thời gian và kiến thức sõu, do đú em chỉ dừng lại ở mức độ tỡm hiểu và xõy dựng chương trỡnh mụ phỏng. Trong tương lai em sẽ tỡm hiểu sõu, rộng hơn về cỏc thuật toỏn mó húa để cú thể xõy dựng thành cụng một chương trỡnh ứng dụng để mó húa cỏc tập văn bản cú khớch thước lớn như mó húa đề thi, thư điện tử. Tỡm hiểu thờm một số ngụn ngữ, cỏc phần mềm ứng dụng khỏc để nõng cao và mở rộng phạm vi ứng dụng tớnh bảo mật.

Với thời lượng và kiến thức cũn hạn chế nờn khúa luận tốt nghiệp của em chắc chắn sẽ khụng trỏnh khỏi những thiếu sút, rất mong sự đúng gúp ý kiến của quý thầy cụ giỏo và bạn bố để khúa luận của em được hoàn thiện hơn.

TÀI LIỆU THAM KHẢO

TIẾNG VIỆT:

[1] Phan Đỡnh Diệu, Lý thuyết mật mó và an toàn thụng tin, Đại học

Quốc gia Hà Nội, 1999.

[2] TS. Dương Anh Đức, ThS. Trần Minh Triết, Mó húa và ứng dụng,

Khoa Cụng nghệ Thụng tin, Trường Đại học Khoa học Tự nhiờn, Đại học Quốc gia thành phố Hồ Chớ Minh, 2005

[3] PGS.TS Hồ Thuần (2000), Giỏo trỡnh “Lý thuyết mật mó và an

toàn dữ liệu”, Trường Đại học Bỏch Khoa Hà Nội.

TIẾNG ANH.

[4] R. Rivest, The MD5 Message-Digest Algorithm, MIT Laboratory

for Computer Science and RSA Data Security, Inc, April 1992.

[5] Federal Information Processing Standards Publication 180-2

Specifications for the SECURE HASH STANDARD, 2002.

[6] Mohan Atreya, Ben Hammond, Stephen Paine, Paul Starrett,

Một phần của tài liệu Tìm hiểu một số thuật toán mã hóa dữ liệu và ứng dụng (Trang 30)

Tải bản đầy đủ (DOC)

(47 trang)
w