Mật mã Caesar – Wikipedia tiếng Việt

Nguyên tắc của mật mã Caesar là văn bản mã được tạo ra bằng cách thay thế mỗi chữ cái trong văn bản với một chữ cái cách nó một đoạn cho trước trong bảng chữ cái. Trong ví dụ trên độ dịch là 3.

Trong mật mã học, Mật mã Caesar (hay còn được gọi là Mật mã của Caesar, Mật mã chuyển vị, Mã của Caesar hay Chuyển vị Caesar) là một trong những kỹ thuật mã hóa đơn giản và phổ biến nhất. Đây là một dạng mật mã thay thế, trong đó mỗi ký tự trên văn bản thô sẽ được thay bằng một ký tự khác, có vị trí cách nó một khoảng xác định trong bảng chữ cái. Ví dụ với độ dịch chuyển là 3, D sẽ trở thành A, E sẽ trở thành B, v.v. Tên của kỹ thuật mã hóa này được đặt theo tên của Julius Caesar, người đã sử dụng nó trong các thư từ bí mật của mình.[1]

Bước mã hóa được triển khai trong mật mã Caesar thường được phối hợp như một phần của những dạng mã hóa phức tạp hơn, ví dụ điển hình như mật mã Vigenère, lúc bấy giờ vẫn được vận dụng cho mã hóa ROT13. Cũng giống như tổng thể những dạng mật mã thay thế sửa chữa một bảng vần âm khác, mật mã Caesar rất dễ bị phá giải và về cơ bản không phân phối đủ năng lực bảo mật thông tin thông tin liên lạc trong đời sống tân tiến .
Mô tả cách sửa chữa thay thế những ký tự trong một bộ mật mã Caesar hoàn toàn có thể thực thi bằng cách sắp hai bảng vần âm trên hai hàng song song với nhau ; bảng vần âm mật mã sẽ là bảng vần âm thô đã được dịch sang trái hoặc sang phải một số ít vị trí. Ví dụ, dưới đây là một bộ mật mã Caesar được thiết lập bằng phép dịch sang trái 3 vị trí, tương tự với phép dịch sang phải 23 vị trí ( số lượng vị trí dịch này được sử dụng làm khóa mã ) :

Thô:     ABCDEFGHIJKLMNOPQRSTUVWXYZ
Mật mã:  DEFGHIJKLMNOPQRSTUVWXYZABC

Khi tiến hành mã hóa, người gửi mật mã sẽ tra cứu từng ký tự của tin nhắn gốc trên dòng “thô” và sau đó viết ra ký tự tương ứng lấy từ dòng “mật mã”.

Văn bản thô:     THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Văn bản mật mã:  WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ

Quá trình giải thuật của người nhận mật mã được thực thi ngược lại, với thao tác dịch sang phải 3 vị trí .

Mã hóa cũng có thể được biểu diễn thông qua số học mô đun, bằng cách gán các ký tự bằng các con số, theo tuần tự, A → 0, B → 1,…, Z → 25.[2] Mã hóa một chữ cái x bằng phép dịch chuyển n vị trí có thể mô tả bằng biểu thức toán học sau:[3]

E n ( x ) = ( x + n ) mod 26. { \ displaystyle E_ { n } ( x ) = ( x + n ) \ mod { 26 }. }{\displaystyle E_{n}(x)=(x+n)\mod {26}.}

Giải mã được miêu tả tương tự như ,

D n ( x ) = ( x − n ) mod 26. { \ displaystyle D_ { n } ( x ) = ( x-n ) \ mod { 26 }. }{\displaystyle D_{n}(x)=(x-n)\mod {26}.}

(Có nhiều định nghĩa cho phép toán Modulo. Trong trường hợp trên, kết quả phải nằm trong khoảng từ 0 đến 25. Do đó nếu x+n hoặc x-n không nằm trong đoạn 0…25, ta phải cộng hoặc trừ nó với 26.)

Loại mã hóa này có các giải pháp thay thế của từng ký tự là không đổi trong suốt quá trình mã hóa tin nhắn, vì vậy nó được xếp vào dạng thay thế một bảng chữ cái, khác với thay thế nhiều bảng chữ cái.

Lịch sử và ứng dụng[sửa|sửa mã nguồn]

Mật mã Caesar được đặt theo tên của Julius Caesar, người đã sử dụng dạng mã hóa này với phép dịch chuyển 3 vị trí.Mật mã Caesar được đặt theo tên của Julius Caesar. Theo Suetonius, Caesar đã sử dụng dạng mã hóa này với phép di dời 3 vị trí ( A trở thành D khi mã hóa và D trở thành A khi giải thuật ) để bảo vệ những thông điệp có ý nghĩa quân sự. Dù rằng theo những ghi chép, Caesar là người tiên phong vận dụng mật mã Caesar, người ta còn biết tới những loại mật mã thay thế sửa chữa khác được dùng từ trước đó nữa. [ 4 ] [ 5 ]

“Nếu có điều gì bí mật muốn nói, ông viết chúng bằng mật mã. Bằng việc thay đổi thứ tự bảng chữ cái, ông khiến người khác nghĩ rằng những ký tự ấy là không thể đọc được. Nếu ai đó muốn giải mật mã để lấy nghĩa của thông điệp, họ phải dịch chuyển từ chữ cái thứ tư, ấy là D và thay bằng chữ A, và cứ thế tiếp tục với các chữ cái khác.”
— Suetonius, Cuộc đời Julius Caesar 56

Cháu trai Caesar là Augustus cũng sử dụng mật mã, nhưng bằng cách sử dụng ký tự thay thế sửa chữa nằm ngay bên phải, và không quay ngược lại đầu bảng vần âm :

“Bất cứ khi nào viết mật mã, ông sẽ thay chữ B cho chữ A, C cho B và các chữ cái còn lại theo cùng một nguyên tắc, riêng với chữ Z thì sử dụng AA để thay thế.”
— Suetonius, Cuộc đời Augustus 88

Có vật chứng cho thấy Julius Caesar đã sử dụng những bộ mã phức tạp hơn, [ 6 ] một tác gia có tên Aulus Gellius từng đề cập tới một chuyên luận ( hiện đã thất lạc ) về mật mã của Caesar :

“Thậm chí còn có một chuyên luận khá tài tình của nhà ngữ pháp Probus, liên quan đến ý nghĩa bí mật của các chữ cái trong những bức thư tín của Caesar.”
—  Aulus Gellius, Attic Nights 17.9.1–5

Không thể nhìn nhận đúng mực mức độ hiệu suất cao của mật mã Caesar vào thời gian đó, nhưng hoàn toàn có thể nó đã mang lại sức bảo mật thông tin đáng kể, đặc biệt quan trọng là vì hầu hết quân địch của Caesar đều mù chữ và số còn lại thì cho là những thông điệp được viết bằng một thứ ngoại ngữ không xác lập. [ 7 ] Lúc này, vẫn chưa có bất kể ghi chép nào về kỹ thuật phá giải những loại mật mã sửa chữa thay thế đơn thuần. Những vật chứng sớm nhất còn sót lại về chiêu thức thám mã Caesar có niên đại từ khoảng chừng thế kỷ thứ 9, đó là những khu công trình của Al-Kindi trong quốc tế Ả Rập, với việc tò mò ra giải pháp nghiên cứu và phân tích tần suất. [ 8 ]Mật mã Caesar với phép di dời một vị trí được sử dụng ở mặt sau của mezuzah để mã hóa tên của Chúa. Đây hoàn toàn có thể là vật được lưu giữ từ trước khi người Do Thái không được phép có mezuzah. Bản thân những vần âm của mật mã đã tiềm ẩn ” tên vị thần ” mang ý nghĩa tôn giáo mà tín ngưỡng Do Thái giáo chính thống cho là hoàn toàn có thể trấn áp được những thế lực quỷ dữ. [ 9 ]

Vào thế kỷ 19, phần quảng cáo cá nhân trên các tờ báo đôi khi là nơi người ta sử dụng để trao đổi những thông điệp mã hóa, sử dụng các bộ mã đơn giản. Kahn (1967) mô tả về các trường hợp mà những cặp đôi tham gia đối đáp bí mật với nhau bằng cách dùng mật mã Caesar trên tờ The Times.[10] Ngay cả vào cuối năm 1915, mật mã Caesar vẫn được sử dụng khi quân đội Nga thay thế nó cho những dạng mật mã phức tạp hơn, vốn tỏ ra quá khó đối với họ; thế nhưng các nhà phân tích mật mã người Áo và người Đức lại rất dễ dàng phá giải các tin nhắn mã hóa của quân đội Nga.[11][12]

Cấu trúc của hai đĩa quay với mật mã Caesar có thể được sử dụng trong cả việc mã hóa lẫn giải mã.
Ngày nay, tất cả chúng ta hoàn toàn có thể tìm thấy mật mã Caesar trong những game show dành cho trẻ nhỏ, ví dụ điển hình như vòng giải thuật bí hiểm. Thuật toán ROT13 là một mật mã Caesar với độ di dời 13, nó được sử dụng để làm trộn lẫn những văn bản được tìm thấy trên Usenet và dùng để che mờ đoạn văn ( như đoạn cuối của câu truyện cười hay phần bật mý nội dung câu truyện ), nhưng không được dùng như một giải pháp mã hóa trang nghiêm. [ 11 ]

Mật mã Vigenère sử dụng mật mã Caesar với độ dịch chuyển khác nhau tại mỗi vị trí trong văn bản; giá trị của mỗi khóa mã được xác định bằng một từ khóa lặp lại. Nếu từ khóa có dung lượng bằng tin nhắn, được chọn ngẫu nhiên, không bị người khác biết đến và không bao giờ được sử dụng lại, thì đây là dạng mật mã một lần, được chứng minh là không thể phá giải. Điều kiện trên khó tới mức gần như không bao giờ đạt được. Những từ khóa ngắn hơn tin nhắn (ví dụ: “Complete Victory” được Liên minh miền Nam sử dụng trong Nội chiến Hoa Kỳ), tạo ra một dạng mật mã tuần hoàn có thể phá giải bằng cách thực hiện phân tích tần suất với thống kê nâng cao.[13]

Tháng 4 năm 2006, trùm Mafia Bernardo Provenzano bị bắt ở Sicilia khi đang trên đường chạy trốn, một phần vì những thông điệp bị phá giải của ông ta được viết bằng một biến thể vụng về của mật mã Caesar. Mật mã của Provenzano sử dụng những số lượng, trong đó ” A ” được viết là ” 4 “, ” B ” là ” 5 “, v.v. [ 14 ]Năm 2011, Rajib Karim bị phán quyết ở Vương quốc Anh về ” tội khủng bố ” sau khi sử dụng mật mã Caesar để liên lạc với những nhà hoạt động giải trí Hồi giáo Bangladesh, đàm đạo về thủ đoạn làm nổ máy bay hoặc phá vỡ mạng công nghệ thông tin của British Airways. Mặc dù những bên có quyền tiếp cận những kỹ thuật mã hóa tốt hơn nhiều ( bản thân Karim đã sử dụng PGP để tàng trữ tài liệu trên đĩa máy tính ), nhưng họ vẫn chọn bộ mã của riêng mình ( được tiến hành trên Microsoft Excel ), khước từ một bộ mã phức tạp hơn có tên Mujahedeen Secrets, ” chính do những ‘ kaffir ‘ hay những kẻ ngoại đạo biết về nó, nên sẽ kém bảo mật thông tin hơn “. Suy nghĩ trên khiến họ tạo một trình ứng dụng bảo mật an ninh qua trạng thái mập mờ. [ 15 ]

Độ
dịch
Bản thô ứng viên
0 exxegoexsrgi
1 dwwdfndwrqfh
2 cvvcemcvqpeg
3 buubdlbupodf
4 attackatonce
5 zsszbjzsnmbd
6 yrryaiyrmlac
23 haahjrhavujl
24 gzzgiqgzutik
25 fyyfhpfytshj

Mật mã Caesar rất dễ bị phá, ngay cả trong trường hợp người giải thuật chỉ có trong tay những bản mật mã. Có hai trường hợp được xem xét :

  1. người giải mã biết (hoặc đoán) rằng một số dạng mật mã thay thế đơn giản đã được sử dụng, nhưng không biết cụ thể đó là mật mã Caesar;
  2. người giải mã biết chính xác mật mã Caesar được sử dụng, nhưng không biết giá trị khóa mã.

Trong trường hợp tiên phong, mật mã hoàn toàn có thể phá giải bằng những chiêu thức tương tự như như so với những dạng mật mã sửa chữa thay thế đơn thuần nói chung, ví dụ điển hình như nghiên cứu và phân tích tần suất hay nghiên cứu và phân tích những từ mẫu. [ 16 ] Khi nghiên cứu và phân tích, có năng lực người giải thuật sẽ nhanh gọn nhận thấy tính quy tắc trong giải pháp sửa chữa thay thế và suy ra rằng kỹ thuật mã hóa được dùng là mật mã Caesar .
Biểu đồ phân bố các chữ cái trong một mẫu văn bản tiếng Anh điển hình có hình dạng đặc biệt và dễ đoán. Phép dịch chuyển Caesar “xoay” biểu đồ này và có thể xác định bằng cách xem xét biểu đồ.
Trong trường hợp thứ hai, việc làm giải thuật thậm chí còn còn nhẹ nhàng hơn. Vì số khóa mã có năng lực được sử dụng là số lượng giới hạn ( 25 khóa mã so với bảng vần âm tiếng Anh ), mỗi khóa mã hoàn toàn có thể được kiểm tra lần lượt bằng kiểu tiến công vét cạn. Một cách để thực thi là thử giải một đoạn trích nhỏ của bản mật mã với toàn bộ những khóa mã hoàn toàn có thể, và viết lên trên một bảng, [ 17 ] đôi lúc gọi là ” giải thuật một phần bản thô “. [ 18 ] Ví dụ với đoạn mật mã ” EXXEGOEXSRGI ” ; bản thô hoàn toàn có thể nhìn ra ngay lập tức với phép dịch bốn vị trí. [ 19 ] Còn có một cách khác, đó là với mỗi vần âm của bản mật mã, hàng loạt bảng vần âm sẽ được sắp theo thứ tự ngược lại, khởi đầu từ vần âm đó. Tăng tốc cho chiêu thức bằng việc sẵn sàng chuẩn bị trước một tập hợp những dải vần âm được viết theo thứ tự ngược lại. Sau đó, chỉnh sửa những dải để tạo thành những bản mật mã được viết trên từng dòng, trong đó sẽ có một dòng chính là bản thô .Chúng ta cũng hoàn toàn có thể tiến công vét cạn bằng cách so phân phối tần suất của từng vần âm. Cụ thể, với việc vẽ biểu đồ tần suất của mỗi vần âm trong bản mật mã, và biết trước phân phối dự kiến của những vần âm trong ngôn từ gốc của bản thô, người giải thuật hoàn toàn có thể thuận tiện tìm ra độ dịch vị trí bằng cách xem xét sự dời chỗ của những đặc thù đơn cử trên biểu đồ. Đây gọi là nghiên cứu và phân tích tần suất. Ví dụ, trong ngôn từ tiếng Anh, tần suất những vần âm E, T, ( thường là phổ cập nhất ) và Q., Z ( thường là ít tiếp tục nhất ) là tín hiệu đặc trưng. [ 20 ] Máy tính hoàn toàn có thể làm điều này bằng cách so gần khớp phân phối tần suất thực tiễn với dự kiến, ví dụ như sử dụng giải pháp kiểm định chi bình phương. [ 21 ]

Đối với bản thô viết bằng ngôn ngữ tự nhiên, thường sẽ chỉ có một cách giải mã hợp lý, mặc dù đối với những bản thô quá ngắn, có thể có nhiều đáp án khác nhau. Ví dụ, bản mật mã MPQY có thể giải mã thành “aden” hoặc “know” (giả sử bản thô là tiếng Anh); tương tự, “ALIIP” thành “dolls” hoặc “wheel”; và “AFCCP” thành “jolly” hoặc “cheer” (xem thêm khoảng cách unicity).

Với mật mã Caesar, việc mã hóa một bản thô nhiều lần chồng chéo không gia tăng thêm khả năng bảo mật. Điều này do khi thực hiện hai mã hóa, ví dụ, mã hóa khóa A rồi tiếp tục mã hóa khóa B, tương đương với việc thực hiện một mã hóa khóa (A + B) duy nhất. Theo thuật ngữ toán học, tập hợp các phép tính mã hóa trong mỗi khóa có thể tạo thành một nhóm dưới hàm hợp.[22]

Sách tìm hiểu thêm[sửa|sửa mã nguồn]

Liên kết ngoài[sửa|sửa mã nguồn]

Mật mã Caesar – Wikipedia tiếng Việt

Bài viết liên quan
Hotline 24/7: O984.666.352
Alternate Text Gọi ngay