24/05/2018, 17:07

Định nghĩa hệ thống mật mã

4000 năm trước ở Ai cập, con người đã biết sử dụng chữ tượng hình. Thượng cổ ở Hy Lạp, mã hiệu đã được sử dụng để đánh dấu nô lệ. 2000 năm trước, Julius Caesar là người đầu tiên sử dụng hệ thống mật mã trong trao đổi thông tin. Tồn ...

  • 4000 năm trước ở Ai cập, con người đã biết sử dụng chữ tượng hình.
  • Thượng cổ ở Hy Lạp, mã hiệu đã được sử dụng để đánh dấu nô lệ.
  • 2000 năm trước, Julius Caesar là người đầu tiên sử dụng hệ thống mật mã trong trao đổi thông tin.

Tồn tại nhiều hệ mật mã khác nhau, tuy nhiên có thể biểu diễn bằng mô hình tổng quát như sau:

Mô hình hệ mật mã tổng quát

Có hai kỹ thuật cơ bản sử dụng trong các hệ mã cổ điển, đó là thay thế và dịch chuyển.

Một hệ mật mã là một bộ 5 (P, C, K,ε size 12{ε} {}, D), thỏa mãn các điều kiện sau đây:

  1. P là tập hữu hạn các bản tin rõ
  2. C là một tập hữu hạn các bản tin đã mã hóa
  3. K là không gian khóa, là tập hữu hạn các khóa
  4. Với mỗi K size 12{ in } {}K, tồn tại một giải thuật mã hóa eK∈ size 12{e rSub { size 8{K} } in } {}ε size 12{ε} {}và một giải thuật giải mã dK∈ size 12{d rSub { size 8{K} } in } {}D. Trong đó: eK: size 12{e rSub { size 8{K} } :} {}P→ size 12{ rightarrow } {}C và dK: size 12{d rSub { size 8{K} } :} {}C→ size 12{ rightarrow } {}P là các hàm sao cho dK(eK(x))=x size 12{d rSub { size 8{K} } ( e rSub { size 8{K} } ( x ) ) =x} {} với mọi x size 12{ in } {}P.

Một số quy ước: plain text (chữ thường), cipher text (chữ hoa)

Ghi chú:

Zm size 12{Z rSub { size 8{m} } } {} được định nghĩa là tập {0, …, m-1} và hai phép toán + và *. Hai phép toán này tương tự như trên trường số nguyên cộng với phép toán rút gọn kết quả module theo m.

Cho a, b là các số nguyên, m là số nguyên dương. Ta viết a≡b(modm) size 12{a equiv b ( "mod"m ) } {} nếu (b-a) chia hết cho m. Cụm từ a≡b(modm) size 12{a equiv b ( "mod"m ) } {} được đọc là “a, b đồng dư module m”.

0