4. Bảo mật trong thương mại di động
4.4 Mô hình Hybrid/Session key System
Hình 16. Mô hình Hybrid system
Để tận dụng được tốc độ của mã hóa đối xứng và sức mạnh của mã hóa bất đối xứng, ta sử dụng mô hình Hybrid system. Trong đó gồm 2 bước:
- Trao đổi khóa bí mật: Sử dụng mã hóa bất đối xứng để trao đổi khóa bí mật. Khóa do bên A sinh ra, được mã hóa bằng public key của B và gửi cho B, B sử dụng private key của mình để giải mã và nhận khóa bí mật
- Trao đổi thông tin: Từ bước sau, khóa bí mật sẽ được dùng để trao đổi thông tin, sử dụng mã hóa đối xứng.
Như vậy, mã hóa bất đối xứng sẽ chỉ phải sử dụng một lần, giúp làm tăng tốc độ của hệ thống, tiết kiệm tài nguyên mà vẫn đảm bảo tính bảo mật của mã hóa bất đối xứng.
Sử dụng mô hình Hybrid system có thể chống lại được việc đánh cắp thông tin cũng như là che dấu thông tin, nhưng lại chưa chắc chắn được tính toán toàn vẹn của thông tin. Một kẻ tấn công man-in-the-midle M có thể bắt được các gói tin mà A gửi cho B đồng thời dùng khóa công khai của B để giả mạo 1 gói tin khác và gửi cho B. Để khắc phục điều này, hệ thống sử dụng MAC để đảm bảo tính toàn vẹn dữ liệu. MAC là một message digest được sinh ra khi dùng hàm băm 1 chiều băm bản tin cùng với session key. MAC sẽ được gửi kèm theo gói tin và khi B nhận được cũng băm bản tin và session key để verify tính toàn vẹn dữ liệu.
Sinh viên thực hiện: Lê Sỹ Đức - Khóa K50 - Lớp CNPM 41
Hình 17. Mô hình Hybrid System với MAC
Nên nhớ rằng Hybrid system không phải là thuốc chữa bách bệnh. Mô hình Session key được coi là bảo mật hơn Hybrid system, trong đó client cũng có 1 cặp key công khai riêng, và khóa session được sinh từ 2 phía. Tức là khóa bí mật sẽ được sinh từ 2 thành phần, mỗi thành phần sẽ được một bên sinh ra. Điều này làm tăng thêm tính bảo mật của khóa bí mật.
Sinh viên thực hiện: Lê Sỹ Đức - Khóa K50 - Lớp CNPM 42
Public Key của B
Alice Bob
message Message encrypted message
Private Key của B
Public Key của B Private Key của B
Private Key của A Public Key của A
Session key Session key Session key Session key Session key Session key
Public Key của A Private Key của A
Session key Session key
Alice Bob
Hình 18. Mô hình session key
- Bước 1 : quá trình trao đổi khóa (Key agreement)
A sinh key thứ nhất, dùng public key của B để mã hóa key rồi gửi cho B, B dùng private key của mình để giải mã, lấy được key thứ nhất đồng thời sinh key thứ 2 rồi gửi cho A bằng cách dùng public key của A. A dùng private key của mình, giải mã để lấy được key thứ 2. Như vậy, khóa session là kết hợp của 2 key thứ nhất và thứ 2.
- Bước 2 : quá trình trao đổi thông tin. Các thông tin sẽ được mã hóa bằng khóa bí mật.