Hệ mật mã này có đặc điểm là thời gian mã hóa và giải mã tƣơng đối nhanh. Do đó hệ mật mã khóa đối xứng thƣờng đƣợc sử dụng để mã hóa những dữ liệu lớn.
Có hai thuật toán đƣợc sử dụng chủ yếu trong việc tạo khóa bí mật trong hệ mật mã khóa đối xứng:
- Thuật toán mã khối: Thuật toán mã hóa từng khối bit đầu vào với độ dài xác định. Độ dài khối đầu vào thƣờng là 64bit. Thuật toán tiêu biểu là: 3DES, AES, ….
- Thuật toán mã dòng: Thuật toán mã hóa từng bit của dòng dữ liệu. Các thuật toán mã hóa dòng này có tốc độ nhanh hơn các các thuật toán mã hóa khối và nó thƣờng đƣợc áp dụng khi lƣợng dữ liệu cần mã hóa chƣa biết trƣớc. Thuật toán tiêu biểu: RC4, RC5,....
2.2.2. Ƣu điểm và nhƣợc điểm của hệ mã hóa khóa đối xứng
Ƣu điểm Nhƣợc điểm
+ Có thể đƣợc thiết kế đạt tốc độ cao. Các thiết bị phần cứng hỗ trợ có thể đọc tốc độ hàng trăm megabytes mỗi giây trong khi việc thực thi bằng phần mềm chỉ đƣợc khoảng vài megabytes mỗi giây.
+ Khóa dùng cho mã hóa khóa đối xứng tƣơng đối ngắn.
+ Đƣợc xem nhƣ thành phần cơ bản có thể triển khai xây dựng các kỹ thuật mã hóa khác bao gồm khởi tạo các số ngẫu nhiên, các hàm băm, các kỹ thuật tính toán.
+ Có thể đƣợc kết hợp để tạo ra các thuật toán mã hóa mạnh hơn.
+ Trong quá trình truyền thông tin giữa hai ngƣời, khóa phải đƣợc giữ bí mật cho cả hai phía.
+ Trong hệ thống mạng lớn, số lƣợng khóa cần đƣợc quản lý rất nhiều. Do vậy việc quản lý khóa hiệu quả đòi hỏi phải cần bên tin cậy thứ ba (TTP: Trusted Third Party).
+ Khóa bí mật cần đƣợc thay đổi thƣờng xuyên.
+ Kỹ thuật chữ kỹ số đƣợc phát triển từ cơ chế mã hóa khóa đối xứng đòi hỏi sử dụng các khóa lớn cho các hàm xác nhận công khai hoặc sử dụng một TTP.
2.3. Hệ mật mã khóa công khai 2.3.1. Khái niệm 2.3.1. Khái niệm
Khác với hệ mật mã khóa đối xứng, hệ mật mã khóa công khai là hệ mật mã dùng một cặp khóa để mã hóa và giải mã khác khau, biết đƣợc khóa này "khó" tính đƣợc khóa kia.
Hệ mã hóa này đƣợc gọi là hệ mã hóa công khai vì khóa dùng để mã hóa đƣợc công khai (gọi là khóa công khai - Public key), khóa giải mã đƣợc giữ bí mật (gọi là khóa riêng - Private key). Điều quan trong đối với hệ thống là không thể tìm ra khóa bí mật nếu chỉ biết khóa công khai [13].