



















Preview text:
  lOMoAR cPSD| 58412604           lOMoAR cPSD| 58412604 Nội dung       Giới thiệu chung   Thuật toán mã hoá RSA   Các hàm Hash và MAC 
 Chữ ký số và chứng thực      lOMoAR cPSD| 58412604         lOMoAR cPSD| 58412604 1. Mật mã khóa công khai   
 Ý tưởng về khoá công khai được Diffie và Hellman  đưa ra vào năm 1976. 
 Sự phát triển của hệ thống mã hoá khoá công khai 
đã tạo ra một cuộc cách mạng trong lịch sử ngành  mật mã.      lOMoAR cPSD| 58412604    
. Mật mã khóa công khai (tt)        lOMoAR cPSD| 58412604
 Các mật mã đối xứng dùng chung một khoá cho quá 
trình mã hoá và giải mã. Chúng đều dựa trên nền 
tảng của phép thay thế và hoán vị. Nhưng các thuật 1   
toán mã hoá công khai dựa trên các hàm toán học  là chủ yếu. 
 Hệ mật mã khoá công khai là bất đối xứng, cho phép 
sử dụng hai khoá riêng biệt cho các quá trình mã  hoá và giải mã.        lOMoAR cPSD| 58412604
1. Mật mã khóa công khai (tt)   
 Đặc điểm của hệ mật mã khoá công khai: 
 Không thể suy ra khóa bí mật dù biết trước thuật toán và khóa  công khai. 
 Một trong hai khóa đều có thể dùng để mã hóa và khóa còn  lại dùng đề giải mã. 
1. Mật mã khóa công khai (tt)   
 Các thành phần của hệ mã khoá công khai:      lOMoAR cPSD| 58412604
 Bản rõ: thông điệp có thể đọc, đầu vào của giải thuật   Giải thuật mã hóa 
 Khóa công khai và bí mật: một cặp khóa được chọn sao cho 1 
khóa dùng để mã hóa và 1 khóa dùng để giải mã. 
 Bản mã: thông điệp đầu ra ở dạng không đọc được, phụ thuộc vào 
bản rõ và khóa. Nghĩa là với cùng một thông điệp, 2 khóa khác 
nhau sinh ra 2 bảng mã khác nhau.   Giải thuật giải mã  2. Một vài ứng dụng   
2.1. Ứng dụng trong bảo mật      lOMoAR cPSD| 58412604
 Giả sử mỗi người dùng sử dụng hai khoá (K1, K2), 
trong đó K1 dùng để mã hoá, K2 dùng để giải mã. 
 Người đó có thể công bố công khai khoá K1 (trong 
“danh bạ”) để người gửi tin mã hoá thông điệp, và 
giữ bí mật K2 (dùng riêng cho mình) để giải mã khi 
nhận được thông điệp.      lOMoAR cPSD| 58412604           lOMoAR cPSD| 58412604
2. Một vài ứng dụng (tt)   
2.1. Ứng dụng trong xác thực 
 Nếu người gửi muốn khẳng định thông điệp là của 
mình, không phải do kẻ khác làm giả, anh ta có thể 
mã hoá thông điệp bằng khoá bí mật K2 của mình  trước khi gửi đi. 
 Người nhận sẽ dùng khoá công khai K1 của người 
gửi để giải mã. Nếu giải mã thành công thì chứng 
tỏ thông điệp đó đúng là của người gửi.      lOMoAR cPSD| 58412604            
Downloaded by LU MY (mymycv.hr@gmail.com)   lOMoAR cPSD| 58412604
3. Hàm một chiều (One-way function)   
 Nhắc lại: không thể suy ra khoá bí mật dù biết thuật  toán và khoá công khai. 
 Có thể đạt được điều đó nhờ các hàm toán học đặc 
biệt gọi là hàm một chiều.  3. Hàm một chiều (tt)     Hàm 
được gọi là hàm một chiều nếu:      lOMoAR cPSD| 58412604  Đối với mọi tính ra   là dễ dàng 
 Khi biết rất khó để tính ngược  . 
 Nói cách khác, thời gian tiêu tốn để tính hàm ngược 
là vô cùng lớn, và được coi là không giải được!  3. Hàm một chiều (tt)     Ví dụ:   Cho số nguyên tố  .   Dễ dàng tính được:  N =        lOMoAR cPSD| 58412604
 Tuy nhiên rất khó để tính được các số nguyên tố 
 nếu biết , nhất là khi các thừa số 
này là các số nguyên tố lớn. 
 Số nguyên tố lớn: dài tới hàng trăm chữ số thập phân 
4. Hàm cửa lật một chiều (Trapdoor  one-way function)   Hàm 
 được gọi là hàm cửa lật một chiều nếu  tính   là dễ, tính 
 là không thể, nhưng có cửa lật dễ    dàng tính được  .      lOMoAR cPSD| 58412604
 Tạo PKC (public key cryptosystem) bằng hàm 
cửa lật: giữ bí mật cửa bẫy. 
 Ví dụ: trong ví dụ hàm một chiều, dãy   là cửa lật. 
4. Hàm cửa lật một chiều (Trapdoor  one-way function) 
 Tạo hệ mã PKC sử dụng hàm lật một chiều: 
 Lấy (hàm sinh mã) là hàm lật một chiều. 
 Khóa bí mật chính là bí mật cửa bẫy. 
 Nếu biết khóa bí mật thì có thể dễ dàng tính được nghịch 
đảo của , tức là (hàm giải mã), còn không thì rất khó.      lOMoAR cPSD| 58412604
 Khả năng bị phá: thử vét cạn. Tuy nhiên phương pháp 
này bất khả thi vì khối lượng tính toán quá lớn.   Ứng dụng: hệ mã RSA.      lOMoAR cPSD| 58412604           lOMoAR cPSD| 58412604 1. Giới thiệu   
 Phát minh bởi R. Rivest, A. Shamir & L. Adleman  (1977) 
 Là hệ mật mã khóa công khai phổ biến và đa năng nhất  trong thực tế 
 RSA là một thuật toán mã hoá khối, mỗi khối là một 
dãy bít nhị phân ứng với một số nguyên trong 
khoảng từ 0 đến n – 1. 
 Kích thước điển hình của n là 1024 bit, hay 309 chữ  số thập phân. Tức là        lOMoAR cPSD| 58412604
2. Công thức mã hóa – giải mã     Công thức mã hoá:    (1)     Công thức giải mã:    (2)     Trong đó: 
 n = p.q là tích của hai số nguyên tố lớn 
 P (plaintext), C (ciphertext) thuộc Zn 
 a và b là các số nguyên thoả mãn điều kiện:    (3)