Vigenère mật mã. Quảng trường Vigenère. Mã hóa văn bản

Mục lục:

Vigenère mật mã. Quảng trường Vigenère. Mã hóa văn bản
Vigenère mật mã. Quảng trường Vigenère. Mã hóa văn bản
Anonim

Mặc dù mật mã đã được làm lại nhiều lần, nhưng lần đầu tiên nó được Giovan Battista Bellaso mô tả vào năm 1553. Sau đó, ông nhận được tên của nhà ngoại giao Pháp Blaise Vigenère. Tùy chọn này khá đơn giản để thực hiện và dễ hiểu, vì nó là phương pháp phân tích mật mã dễ tiếp cận nhất.

Mô tả Phương pháp

Mật mã Wizhner bao gồm một chuỗi các mật mã Caesar. Sau này được đặc trưng bởi sự thay đổi của một số dòng. Đối với mục đích mã hóa, bạn có thể sử dụng một bảng các bảng chữ cái được gọi là hình vuông Vigenère. Trong giới chuyên môn, nó được gọi là trực tràng tabula. Bảng Vigenère bao gồm một số dòng 26 ký tự. Mỗi dòng mới di chuyển một số vị trí nhất định. Kết quả là bảng có 26 phông chữ Caesar khác nhau. Mỗi giai đoạn mã hóa liên quan đến việc sử dụng một bảng chữ cái khác nhau, được chọn tùy thuộc vào ký tự của từ khóa.

Phương pháp mã hóa
Phương pháp mã hóa

Để hiểu rõ hơn bản chất của phương pháp này, chúng ta hãy xem xét mã hóa văn bản bằng cách sử dụng từ ATTACKATDAWN làm ví dụ. Người gửi văn bản ghi lại từ khóa "LEMON" cho đến khi nó khớp với độ dài của văn bản được truyền. Từ khóa sẽ trông như thế nàoLEMONLEMONLE. Ký tự đầu tiên của văn bản đã cho - A - được mã hóa bằng dãy L, là ký tự đầu tiên của khóa. Ký tự này nằm ở giao điểm của hàng L và cột A. Đối với ký tự tiếp theo của văn bản đã cho, ký tự khóa thứ hai được sử dụng. Do đó, ký tự thứ hai của văn bản được mã hóa sẽ giống như X. Nó là kết quả của sự giao nhau của hàng E và cột T. Các phần khác của văn bản đã cho được mã hóa theo cách tương tự. Kết quả là từ LXFOPVEFRNHR.

Quy trình giải mã

Từ được giải mã bằng bảng Vigenère. Bạn cần tìm chuỗi khớp với ký tự đầu tiên của từ khóa. Chuỗi sẽ chứa ký tự đầu tiên của bản mã.

Mã hóa tin nhắn
Mã hóa tin nhắn

Cột chứa ký tự này sẽ khớp với ký tự đầu tiên của văn bản nguồn. Các giá trị tiếp theo sẽ được giải mã theo cách tương tự.

Mẹo quan trọng

Khi cung cấp bản mã, bạn phải chỉ định một từ khóa. Nó cũng sẽ cần thiết để giải mã bằng cách sử dụng mật mã Vigenère của Nga. Để đảm bảo rằng mã hóa là chính xác, tốt hơn là nên kiểm tra kỹ văn bản. Nếu văn bản không được mã hóa chính xác, nó không thể được giải mã một cách chính xác.

Trình tạo mật mã
Trình tạo mật mã

Khi sử dụng ô vuông Vigenère với khoảng trắng và dấu chấm câu, quá trình giải mã sẽ trở nên phức tạp hơn nhiều. Điều quan trọng cần biết là sự lặp lại thường xuyên của từ mã sẽ giúp giải mã văn bản dễ dàng hơn. Do đó, thông tin mã phảidài.

Cảnh báo phương pháp

Mật mã Vigenère, giống như nhiều loại khác, không an toàn vì nó rất dễ bị bẻ khóa. Nếu có nhu cầu chuyển giao thông tin bí mật, bạn không cần phải dùng đến phương pháp này. Các phương pháp khác đã được phát triển cho các mục đích như vậy. Mật mã Vigenère là một trong những phương pháp mã hóa lâu đời nhất và phổ biến nhất.

Mã hóa dữ liệu
Mã hóa dữ liệu

Chìa khóa là một cụm từ đặc biệt. Nó được lặp lại nhiều lần và được viết trên văn bản được mã hóa. Kết quả là, mỗi chữ cái của tin nhắn đã gửi được dịch chuyển so với văn bản được chỉ định bằng một số nhất định, được chỉ định bởi chữ cái của cụm mật khẩu. Trong vài thế kỷ, phương pháp này đã liên tục giữ vị trí là phương pháp mã hóa đáng tin cậy nhất. Vào thế kỷ 19, những nỗ lực đầu tiên để phá vỡ mật mã Vigenère đã được ghi nhận, dựa trên việc xác định độ dài của cụm từ khóa. Nếu biết độ dài của nó, thì văn bản có thể được chia thành các đoạn nhất định, được mã hóa theo cùng một dịch chuyển.

Các phương pháp giải mã bổ sung

Bạn có thể mở thư gốc bằng phương pháp phân tích tần số nếu văn bản đã cho đủ dài. Việc giải mật mã phần lớn phụ thuộc vào việc tìm độ dài của cụm từ khóa. Có hai phương pháp chính cho phép bạn xác định độ dài của cụm từ khóa. Phương pháp đầu tiên để giải mã mật mã Vigenère được phát triển bởi Friedrich Kassitzky. Phương pháp này dựa trên việc tìm kiếm bigrams. Bản chất của nó nằm ở thực tế là nếu cùng một biểu đồ được lặp lại trong thông điệp được mã hóa ở một khoảng cách bằng bội số chiều dài của khóathì khả năng cao là nó sẽ xuất hiện ở các vị trí giống nhau trong bản mã. Nếu bạn tìm thấy một khoảng cách nhất định, lấy các ước của nó, bạn có thể nhận được một tập hợp các số nhất định. Chúng sẽ là độ dài của cụm từ khóa. Tuy nhiên, phương pháp này cần một chút may mắn. Trong một văn bản được mã hóa lớn, bạn có thể tìm thấy các bigram ngẫu nhiên, điều này sẽ làm phức tạp rất nhiều quá trình giải mã.

Phương pháp mã hóa
Phương pháp mã hóa

Phương pháp thứ hai để giải mã văn bản được Friedman đề xuất. Bản chất của nó nằm ở sự dịch chuyển theo chu kỳ của thông điệp được mã hóa. Văn bản kết quả được viết dưới bản mã gốc và số lượng các chữ cái phù hợp ở dòng dưới cùng và trên cùng được tính. Các số kết quả cho phép bạn tính toán cái gọi là chỉ số đối sánh. Nó được xác định bởi tỷ lệ phù hợp với tổng độ dài của tin nhắn. Chỉ số trùng hợp cho các văn bản tiếng Nga là xấp xỉ 6%. Tuy nhiên, đối với các văn bản ngẫu nhiên, chỉ số này xấp xỉ 3 hoặc 1/32. Phương pháp của Friedman dựa trên thực tế này. Văn bản được mã hóa được viết với sự thay đổi 1, 2, 3, v.v. các chức vụ. Sau đó, đối với mỗi ca, bạn cần tính toán chỉ số của các trận đấu. Vì vậy, cần phải thực hiện chuyển dịch theo chu kỳ của toàn bộ thông điệp. Khi thay đổi chỉ mục theo một số ký tự nhất định, độ dài của chỉ mục có thể tăng lên đáng kể. Điều này cho thấy rằng độ dài của từ khóa có thể bằng một số nhất định. Nếu một tình huống xảy ra trong đó tất cả các ký tự được dịch chuyển đến cùng một vị trí, chỉ số đối sánh sẽ có cùng giá trị với giá trị ban đầubản văn. Nếu một chỉ số được tính toán cho mật mã Vigenère, thì vẫn xảy ra so sánh văn bản ngẫu nhiên hiệu quả.

Thực hiện phân tích tần số

Nếu kết quả của quá trình giải mã là dương, bạn có thể nhập văn bản vào các cột. Các cột được hình thành dựa trên văn bản nguồn. Kassitzky đã phát minh ra dạng văn bản tiên tiến nhất. Tuy nhiên, phương pháp này không thể được áp dụng nếu mạng tinh thể lệch khỏi trình tự tiêu chuẩn của các chữ cái trong bảng chữ cái. Do đó, phương pháp này cho phép bạn tìm ra độ dài của các phím chỉ trong những trường hợp đặc biệt.

Đề xuất: