3 Kiến thức nền tảng
3.3 Mật mã học và các kỹ thuật có liên quan được sử dụng trong đề tài
3.3.2 Mã hóa bất đối xứng
Mã hóa bất đối xứng là hình thức mã hóa để bảo mật dữ liệu, trong đó việc mã hóa và giải mã dữ liệu dùng hai khóa khác nhau. Khóa dùng để mã hóa dữ liệu gọi là khóa bí mật (private key), khóa dùng để giải mã dữ liệu gọi là khóa cơng khai (public key). Bằng cách này, mã hóa bất đối xứng quyết vấn đề chia sẻ khóa của mã hóa đối xứng. Q trình trao đổi dữ liệu diễn ra như sơ đồ 3.6 sau:
3.3 Mật mã học và các kỹ thuật có liên quan được sử dụng trong đề tài
Hình 3.6: Q trình trao đổi dữ liệu dùng khóa bất đối xứng[1]
Trong đó:
• Bước 1. Bên gửi chọn khóa cơng khai của người nhận dữ liệu - trường hợp này là khóa cơng khai của Alice - để mã hóa thơng điệp cần gửi (plaintext). • Bước 2. Thơng điệp đã mã hóa được truyền an tồn qua đường truyền. • Bước 3. Bên nhận giải mã thơng điệp dùng khóa bí mật của chính mình để
giải mã và đọc thơng điệp.
Với giải thuật bất đối xứng, khóa cơng khai sẽ được chia sẻ rộng rãi, có thể xem như định danh của một người, mọi người trong cộng đồng có thể thấy khóa cơng khai của người khác. Do đó khi muốn trao đổi dữ liệu, bên gửi chỉ cần chọn khóa cơng khai của người nhận để mã hóa, người nhận dùng khóa bí mật của mình để giải mã, mà khơng cần phải có cơ chế trao đổi khóa như ở giải thuật mã hóa đối xứng.
Các giải thuật mã bất hóa đối xứng có tốc độ mã hóa và giải mã thấp hơn các giải thuật mã hóa đối xứng khi mã hóa cùng một dữ liệu. Một số giải thuật mã hóa bất đối xứng được dùng phổ biến là giải thuật mã hóa RSA, giải thuật mã hóa ECC, cơ chế trao đổi khóa DiffieÊHellman.
3.3 Mật mã học và các kỹ thuật có liên quan được sử dụng trong đề tài