Mã hóa bất đối xứng (Công khai)
Phần 1: Tổng quan về mật mã
Phần 2: Mã hóa đối xứng
Nhược điểm của mã hóa đối xứng:
– Vấn đề trao đổi khóa giữa người gửi và người nhận: Phải truyền khóa trên kênh an toàn để giữ bí mật. Ngay nay điều này tỏ ra không hợp lý vì khối lượng thông tin luân chuyển trên khắp thế giới là rất lớn.
– Tính bí mật của khóa (Tính không từ chối): Vì khóa 2 người dùng chung nên khi khóa bị lộ không có cơ sở quy trách nhiệm cho ai.
Với các nhược điểm trên vào năm 1976 Whitfield Diffie và Martin Hellman đã tìm ra một phương pháp mã hóa khác mà có thể giải quyết được hai vấn đề trên, đó là mã hóa khóa công khai (public
key cryptography) hay còn gọi là mã hóa bất đối xứng. Đây có thể xem là một bước đột phá quan trọng nhất trong lĩnh vực mã hóa, chúng ta cùng khám phá khái niệm mã hóa công khai.
Mã hóa công khai hay còn gọi là mã hóa bất đối xứng là mã hóa mà có một cặp khóa (k1 và k2), k1 dùng để mã hóa thì k2 có thể dùng để giải mã và ngược lại. Khóa giữ bí mật được gọi là khóa Private còn khóa công khai cho mọi người biết còn gọi là khóa Public
Có 2 phương pháp triển khai mã hóa này:
Trường hợp 1:
Người nhận là Bob giữ bí mật khóa K2, còn khóa K1 thì đang công khai cho tất cả mọi người biết. Khi đó Alice muốn gởi dữ liệu cho Bob thì dùng khóa K1 để mã hóa. Bob dùng K2 để giải mã.
Alice mã hóa C=E(M,K1) và gửi dữ liệu tới cho Bob, Bob giải mã theo công thức M=D(C,K2);
Trudy biết khóa K1 (vì công bố),nhưng khóa K1 không giải mã được. Do đó chỉ có duy nhất Bob mới có thể giải mã được (vì có khóa K2).
Trường hợp 2:
Người gửi là Alice giữ bí mật khóa K1, còn khóa K2 của Alice thì công khai cho tất cả mọi người biết. Alice muốn gởi dữ liệu cho Bob thì dùng khóa K1 để mã hóa. Bob dùng K2 để giải mã
C=E(M,K1) và Bob giải mã M=D(C,K2)
Trudy cũng biết khóa K2 (vì nó công bố) nên Trudy cũng có thể giải mã được.
Do đó phương án này không đảm bảo tính bảo mật. Nhưng lại có tính chất quan trọng là đảm bảo tính chứng thực và tính không từ chối. Vì chỉ có duy nhất Alice biết được khóa K1, nên nếu Bob dùng K2 để giải mã ra bản tin, thì điều đó có nghĩa là Alice là người gửi bản mã. Nếu Trudy cũng có khóa K1 để gửi bản mã thì Alice sẽ bị quy trách nhiệm làm lộ khóa K1.
Ta quy ước là khóa mà người dùng giữ bí mật được gọi là khóa Private ký hiệu (Kr), còn khóa công bố cho mọi người được gọi là khóa Public ký hiệu (Ku), bộ khóa này được tạo ra bởi thuật toán, nó có mối liên hệ chặt chẽ với nhau
Lượt xem (6205)