Kinh Nghiệm về Giải mã Vigenère Mới Nhất

Pro đang tìm kiếm từ khóa Giải mã Vigenère được Cập Nhật vào lúc : 2022-11-15 05:58:00 . Với phương châm chia sẻ Thủ Thuật về trong nội dung bài viết một cách Chi Tiết Mới Nhất. Nếu sau khi tìm hiểu thêm nội dung bài viết vẫn ko hiểu thì hoàn toàn có thể lại Comment ở cuối bài để Ad lý giải và hướng dẫn lại nha.

Mật mã Vigenère đã nâng dãn hàng trăm năm mà không thể phá vỡ với khóa đủ dài. Nhưng nếu sử dụng những khóa ngắn hoặc nếu những nhà thám mã có đủ nhiều bản mã so với độ dài khóa thì mật mã Vigenère lại bị thám mã là khá thuận tiện và đơn thuần và giản dị. Bài viết dưới đây trình làng về mật mã Vigenère và phương pháp thám mã loại mật mã này.

Đôi nét về mật mã Vigenère

Mật mã Vigenère là một phương pháp mã hóa chữ văn bản tiếng Anh, lần thứ nhất được mô tả bởi Giovan Battista Bellaso vào năm 1553. Phương pháp mã hóa mật mã Vigenère dễ hiểu và dễ thực thi, nhưng chỉ đến năm 1863 với nhiều nỗ lực suốt ba thế kỷ, Friedrich Kasiski mới xuất bản một phương pháp chung để giải thuật mật mã Vigenère.

Mật mã Vigenère là tập hợp những quy tắc thay thế vần âm đơn trong bảng vần âm tiếng Anh qua việc sử dụng 26 mật mã Caesar với tiến trình dịch chuyển từ 0 đến 25 tương ứng từ chữ a đến chữ z. Cụ thể, bản mã Vigenère được lập theo công thức sau:

ci = (pi + ki) mod 26, i=1,,l

trong số đó, C = c1cl là bản mã, P=p1pl là bản gốc, K = k1kl là dãy khóa và l là độ dài bản rõ. Tương tự, bản gốc P hoàn toàn có thể được xem nếu biết khóa và bản mã theo công thức:

pj = (cj kj) mod 26, j = 1,,l

Mật mã Vigenère không thể phá vỡ trong trường hợp sử dụng những khóa đủ dài. Nhưng với những khóa ngắn hoặc nếu nhà thám mã có đủ nhiều bản mã so với độ dài khóa thì khá dễ để phá vỡ. Việc thám mật mã Vigenère thường tiến hành theo hai bước là: xác lập độ dài chu kỳ luân hồi của khóa trước, tiếp theo đó tìm khóa rõ ràng.

Tìm chu kỳ luân hồi khóa của mật mã Vigenère

Đầu tiên cần lưu ý là chu kỳ luân hồi của khóa tìm kiếm được hoàn toàn có thể không đúng với thực tiễn được sử dụng. Nếu bản mã đủ dài thì hoàn toàn có thể là đúng chuẩn, những phương pháp được phục vụ ở đấy là gần đúng.

Mật mã Vigenère vận dụng những mật mã Caesar rất khác nhau cho những vần âm liên tục. Ví dụ một bản mã Vigenère như sau:

Hình 1. Bản mã hóa sử dụng mật mã Vigenère

Mật mã Caesar là một dạng của mật mã thay thế, Từ đó mỗi ký tự trong bản rõ được thay thế bằng một ký tự cách nó một đoạn trong bảng vần âm để tạo thành bản mã. Giả sử với khóa là 3 (dịch 3 vị trí trong bảng vần âm), thì chữ a sẽ tiến hành thay bằng chữ d, chữ b sẽ tiến hành thay bằng e và cứ thế đến hết bản rõ. Phương pháp này được đặt tên là Caesar, vị Hoàng đế đã sử dụng loại mật mã này thường xuyên trong việc làm.

Nếu mật mã Vigenère sử dụng khóa có chu kỳ luân hồi 3 là ‘PUB’, thì vần âm rõ thứ nhất được mã hóa bằng mật mã Caesar với khóa là 16 (P là vần âm thứ 16 của bảng vần âm), vần âm thứ hai được mã với khóa là 21 (vần âm U) và vần âm thứ ba được mã với khóa là 2 (vần âm B). Chữ cái rõ thứ 4 được mã hóa quay trở lại bằng chữ khóa thứ nhất (khóa 16). Kết quả là, những vần âm ở những vị trí 1,4,7,10,… đều được mã hóa bằng cùng một mật mã Caesar với chữ khóa là P. Các vần âm ở những vị trí 2,5,8,11,… và 3,6,9,12,… được mã hóa bằng mật mã Caesar với khóa tương ứng là chữ U và B.

Như vậy, trình tự đúng chuẩn sẽ tùy từng chu kỳ luân hồi của khóa mật mã, tức là độ dài khóa, như với ví dụ trên thì độ dài chu kỳ luân hồi khóa là 3.

Phương pháp tìm chu kỳ luân hồi khóa theo sự lặp lại của nhóm vần âm

Để xác lập chu kỳ luân hồi của khóa mật mã Vigenère, phương pháp Kasiski xem xét sự lặp lại của những nhóm vần âm như Hình 2.

Hình 2. Sự lặp lại của nhóm vần âm

Đoạn lặp lại loạt VHVS gồm 18 ký tự, gợi ý rằng độ dài khóa hoàn toàn có thể là 18, 9, 6, 3, 2. Còn đoạn lặp lại loạt QUCE là 30 ký tự, gợi ý độ dài khóa là 30, 15, 10, 6, 5, 3, 2. Kết hợp lại, độ dài khóa hoàn toàn có thể là 6, 3 hoặc 2.

Chỉ số trùng hợp (Index of coincidence – I.C. còn được ký hiệu là Ic())

Nếu trong bản mã không còn sự lặp lại của một loạt vần âm nào, người thám mã sẽ sử dụng đến chỉ số trùng hợp Ic.

Giả sử X là một chuỗi ký tự trong tiếng Anh, ký hiệu xác suất xuất hiện của những chữ a, b,, z lần lượt là p0, p1,, p25. Khi đó:

Khi đó:

Ic (x) = = 0.0822+0.0152++0.0012 = 0.065

Chỉ số trùng hợp đôi lúc được gọi là tỷ suất lặp lại. Nếu bản mã rõ ràng có độ dài n, na là tần số xuất hiện của chữ a, nb là tần số xuất hiện của chữ b, thì chỉ số trùng hợp gần đúng được xem theo công thức sau:

Chỉ số trùng hợp (Ic) là một kỹ thuật thống kê giúp xác lập một đoạn văn bản có phục vụ quy luật ngôn từ của tiếng Anh. Một tính chất quan trọng của kỹ thuật là giá trị Ic không thay đổi nếu vận dụng mật mã thay thế đơn cho văn bản. Điều này là vì Ic nhờ vào tần số xuất hiện của vần âm và mật mã thay thế đơn không làm thay đổi tần số của cục vần âm riêng lẻ. Với văn bản tiếng Anh sẽ có được mức giá trị Ic làm tròn là 0.06, nếu những ký tự có phân phối đồng đều thì Ic gần hơn với 0,03 – 0,04.

Phương pháp dùng chỉ số trùng hợp để xác lập chu kỳ luân hồi của khóa mật mã Vigenère thực thi như sau. Trước tiên, giả sử độ dài khóa là 2, thực hành thực tiễn trích xuất hai chuỗi tại những vị trí 1, 3, 5, 7,… và 2, 4, 6, 8,… từ bản mã như Hình 1 (lưu ý rằng Ic được xem bằng phương pháp sử dụng toàn bộ chuỗi mã, không riêng gì có là phần được hiển thị).

Tương tự với trường hợp độ dài khóa là 3 sẽ có được 3 chuỗi, tương ứng với những giá trị Ic như sau:

Như vậy, Ic trung bình riêng với trường hợp chu kỳ luân hồi 2 là khoảng chừng 0,048 và riêng với trường hợp chu kỳ luân hồi 3 là khoảng chừng 0,047.

Quy trình này sẽ tiến hành lặp lại cho toàn bộ những độ dài khóa muốn kiểm tra. Ví dụ tiếp tục tính với chu kỳ luân hồi phủ lên đến mức 15 sẽ có được những giá trị trung bình I.C (avg I.C.) tương ứng như Hình 3.

Hình 3. Các giá trị trung bình I.C.

Theo cột giá trị, hoặc theo biểu đồ, có 2 giá trị trung bình I.C cao đột biến đã gợi ý rằng khóa mật mã hoàn toàn có thể có độ dài 7 hoặc 14. Cả hai xác suất này phải được tiếp tục kiểm tra.

Tìm khóa mật mã theo kỹ thuật thống kê khi bình phương

Ví dụ thám mã với khóa chu kỳ luân hồi 7 (sử dụng 7 mật mã Caesar) cho bản mã ở Hình 1, việc tìm khóa khá thuận tiện và đơn thuần và giản dị. Thám mã sẽ so sánh giá trị thống kê Kh
i bình phương của dãy phá mã với giá trị phân phối tần số xuất hiện vần âm tiếng Anh.

Lập chuỗi vần âm lấy từ những vị trí 1, 8, 15, 22, của bản mã ở Hình 1 (vurzjugrggugvgjqkeoagugkkqvwqp). Đây là chuỗi được mã hóa với cùng một mật mã Caesar.

Giải mã chuỗi này với cả 26 mật mã Caesar hoàn toàn có thể, lập bảng so sánh phân phối tần số của văn bản được giải thuật với phân phối tần số tiếng Anh cho từng khóa. Tương ứng, sẽ thu được 26 giá trị thống kê Khi bình phương. Khóa đúng chuẩn sẽ tương ứng với văn bản được giải thuật với thống kê Khi bình phương thấp nhất. Kết quả rõ ràng như Hình 4 đã tìm kiếm được vần âm khóa thứ nhất, Từ đó giá trị Khi bình phương nhỏ nhất là 41.22, tương ứng với khóa là 2 (vần âm c).

Hình 4. Giá trị thống kê Khi bình phương của chuỗi giải thuật

Tiếp tục tìm 6 vần âm khóa còn sót lại Theo phong cách cực tiểu Khi bình phương tương tự để tìm những khóa tương ứng sẽ thu được chuỗi khóa 2,8,0,7,4,17,18. Chuyển về dạng vần âm là chuỗi ‘CIAHERS’, chuỗi khóa này bị sai một vị trí. Điều này đã cho toàn bộ chúng ta biết không thể hoàn toàn nhờ vào kỹ thuật thám mã này trừ khi thu được bản mã đủ dài. Khóa đúng chuẩn trong trường hợp này là ‘CIPHERS’ và thực tiễn kiểm tra Khi bình phương có hai giá trị rất thấp cho dãy con thứ 3. Thật rủi ro không mong muốn, giá trị nhỏ nhất lại không đúng, giá trị khóa đúng có mức giá trị Khi bình phương to nhiều hơn giá trị nhỏ nhất một chút ít.

Thực tế trong kiểm tra Khi bình phương cũng như I.C, xác suất xuất hiện của những vần âm không phải luôn luôn đúng, chúng gần đúng. Hơn nữa, tần số của những vần âm trong bản mã không phản ánh đúng chuẩn phân phối xác suất những vần âm trên văn bản mã. Đó là nguyên do kết quả trên cho ra chữ khóa A mà lẽ ra phải là P. Do đó, việc xem xét thêm những khía cạnh khác ví như thể nhờ vào quy luật ngôn từ để sửa đổi kết quả là rất thiết yếu.

TÀI LIỆU THAM KHẢO

[1] Dr. S.B. Sadkhan, Cryptanalysis of a Vigenère, Security of Networks, 2011-2012

[2] Chris Christensen, Cryptanalysis of the Vigenère Cipher: The Friedman Test, Spring 2015, MAT/ CSC 483

[3] Jonathan Taylor, Lecture # 4 Vigenère Cipher Kasiski Attack, Statistics 116-Fall 2002

[4] Author: Jeremy Druin, Learning Cryptography by Doing It Wrong: Cryptanalysis of the Vigenère Cipher, , Advisor: Christopher Walker, CISSP, CCISO, GCED, GWEB, Accepted: 2/1/2022

[5] ://shodhganga.inflibnet.ac.in/ bitstream/10603/26543/10/10_chapter5.pdf, CRYPTANALYSIS OF VIGENÈRE CIPHER AND SUBSTITUTION CIPHER

[6] S. S. Omran A. S. Al-Khalid D. M. Al-Saady, A Cryptanalytic Attack on Vigenère Cipher Using Genetic Algorithm, 2011 IEEE Conference on Open Systems (ICOS2011), September 25 – 28, 2011, Langkawi, Malaysia

[7] Mehmet E. Dalkilic and Cengiz Gungor, An Interactive Cryptanalysis Algorithm for the Vigenère Cipher, Ege University, International Computer Institute Bornova 35100 Izmir, TURKEY, fdalkilic,

4480

Video Giải mã Vigenère ?

Bạn vừa đọc tài liệu Với Một số hướng dẫn một cách rõ ràng hơn về Review Giải mã Vigenère tiên tiến và phát triển nhất

Share Link Cập nhật Giải mã Vigenère miễn phí

Người Hùng đang tìm một số trong những ShareLink Download Giải mã Vigenère Free.

Giải đáp vướng mắc về Giải mã Vigenère

Nếu sau khi đọc nội dung bài viết Giải mã Vigenère vẫn chưa hiểu thì hoàn toàn có thể lại phản hồi ở cuối bài để Admin lý giải và hướng dẫn lại nha
#Giải #mã #Vigenère