Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Thuật toán Mật mã Caesar

Đọc tài liệu này bằng ngôn ngữ khác: English

Trong mật mã học, Mật mã Caesar, còn được gọi là mã của Caesar, mật mã dịch chuyển, mã Caesar hoặc dịch chuyển Caesar, là một trong những kỹ thuật mã hóa đơn giản và được biết đến rộng rãi nhất. Đây là một dạng của mật mã thay thế, trong đó mỗi chữ cái trong văn bản gốc được thay thế bởi một chữ cái cách đó một số vị trí nhất định trong bảng chữ cái. Ví dụ, với một dịch chuyển sang trái 3, D sẽ được thay thế bởi A, E sẽ trở thành B, v.v. Phương pháp này được đặt theo tên Julius Caesar, người đã sử dụng nó trong thư từ cá nhân của mình.

Thuật toán Mật mã Caesar

Ví dụ

Sự biến đổi này có thể được thể hiện bằng cách căn chỉnh hai bảng chữ cái; bảng chữ cái mã là bảng chữ cái gốc xoay trái hoặc phải một số vị trí nhất định. Ví dụ, đây là một mật mã Caesar sử dụng một xoay trái ba vị trí, tương đương với một dịch chuyển phải 23 (tham số dịch chuyển được sử dụng như là khóa):

Bảng chữ cái gốc:  ABCDEFGHIJKLMNOPQRSTUVWXYZ
Bảng chữ cái mã:   XYZABCDEFGHIJKLMNOPQRSTUVW

Khi mã hóa, người ta tìm từng chữ cái của tin nhắn trong dòng "bảng chữ cái gốc" và viết ra chữ cái tương ứng trong dòng "bảng chữ cái mã".

Văn bản gốc:  THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Văn bản mã:   QEB NRFZH YOLTK CLU GRJMP LSBO QEB IXWV ALD

Độ phức tạp

  • Thời gian: O(|n|)
  • Không gian: O(|n|)

Tài liệu tham khảo