4. Nội dung và bố cục của luận văn
2.3. Mã hóa bằng khóa công khai
2.3.1. Khái niệm
Mã hóa bằng khóa công khai hay còn được gọi là mã hóa khóa bất đối xứng hay mã hóa bằng khóa chung. Hệ thống mã hóa bằng khóa công khai sử dụng hai khóa khác nhau để mã hóa và giải mã: một khóa dành cho người mã hóa thường được công khai và khóa còn lại dùng cho người giải mã và được giữ bí mật. Như vậy thì hệ thống mã hóa sử dụng khóa công khai cần có một quá trình sinh ra hai khóa để mã hóa và giải mã thông điệp và các khóa này được xem như một bộ đôi:
Là khóa được phép công khai mà không phải chịu bất kì một rủi ro nào về an toàn, khóa này được dùng để mã hóa dữ liệu.
Private-key (khóa bí mật):
Là khóa để giải mã và được giữ bí mật, mỗi một dữ liệu được mã hóa bằng khóa công khai thì chỉ có thể giải mã được bằng một khóa bí mật thích hợp.
Một số thuật toán mã hóa khóa công khai phổ biến như: RSA, Elgamal, … Quá trình mã hóa và giải mã bằng cách sử dụng khóa công khai được minh họa như hình sau:
Hình 2.3: Mã hóa bằng khóa công khai
2.3.2. Ưu khuyết điểm
Ưu điểm của phương pháp này là: Mặc dù kẻ tấn công biết thuật toán mã hóa và khóa mã hóa cũng không thể xác định được khóa giải mã. Chức năng này đạt được trên nguyên tắc sử dụng các hàm một chiều trong toán học khi tính hàm y= f(x) là đơn giản nhưng ngược lại việc tính giá trị y khi đã biết x là rất khó khăn.
Điểm yếu lớn nhất của phương pháp mã hóa bằng khoá công khai là tốc độ mã hóa và giải mã rất chậm so với mã hóa bí mật, nếu dùng mã hóa công khai để mã hóa dữ liệu truyền - nhận giữa hai bên thì sẽ tốn rất nhiều chi phí.