Phân tích mật mã là việc giải mã và truy vấn các mã, mật mã hoặc văn bản được mã hóa. Phân tích mật mã cần quy tắc số để tìm kiếm độ nhạy của thuật toán và phân chia thành hệ thống mật mã hoặc bảo mật thông tin.
Mục tiêu chính của phân tích mật mã là phát hiện ra các điểm yếu trong hoặc nói cách khác là đánh bại các thuật toán mã hóa. Nghiên cứu này có thể được sử dụng bởi các nhà mật mã học để nâng cao và củng cố hoặc khôi phục các thuật toán có sai sót không thể sửa chữa được.
Loại tấn công này khai thác bản chất của thuật toán để lấy bản rõ hoặc khóa đang được sử dụng từ thông điệp được mã hóa.
Phân tích mật mã thường yêu cầu kiểm tra trực tiếp hệ thống mật mã tại chỗ, thường là một nỗ lực toán học tập trung nâng cao để giải mã bằng cách sử dụng dữ liệu đã biết về thiết kế mã hóa.
Chúng có thể liên quan đến các thông điệp được mã hóa bị chặn (bản mã), các thông điệp ban đầu đầy đủ, một phần, có khả năng hoặc được liên kết bị chặn (bản rõ) hoặc chúng có thể sử dụng dữ liệu được biết đến để sử dụng một cách thích ứng trong các thử nghiệm liên tiếp.
Các tài nguyên máy tính cần thiết cho việc phân tích mật mã như thời gian, bộ nhớ và thông tin. Ngoài ra còn có các mức độ thành tích có thể thay đổi khác nhau, từ sự cố hoàn toàn của thuật toán mã hóa đến việc xác định được các điểm yếu trong đó.
Có nhiều kiểu tấn công Cryptanalysis như sau -
-
Chỉ tấn công văn bản mã - Trong cuộc tấn công này, kẻ tấn công chỉ có quyền truy cập vào một số bản mã. Nó cố gắng phát hiện ra khóa và bản rõ tương ứng. Kẻ tấn công được coi là hiểu thuật toán và có thể chặn bản mã.
-
Tấn công văn bản rõ đã biết - Trong cuộc tấn công này, nhà phân tích mật mã hiểu một số cặp bản rõ đã được thu thập trước đó, hơn nữa là bản mã bị chặn mà nó muốn phá vỡ.
-
Cuộc tấn công được chọn-rõ ràng - Kiểu tấn công chosen-plaintext cũng giống như kiểu tấn công đã biết nhưng các cặp bản rõ đã được lựa chọn bởi chính kẻ tấn công. Loại tấn công này đơn giản hơn để thực hiện nhưng chúng ít có khả năng xuất hiện hơn.
-
Tấn công vũ lực - Kiểu tấn công này cần các thuật toán cố gắng đoán một số tập hợp logic có thể có của bản rõ, sau đó được mã hóa và so sánh với mật mã ban đầu.
-
Tấn công văn bản mã được chọn - Tấn công bản mã được chọn giống với bản rõ đã chọn. Trong trường hợp này, kẻ tấn công chọn một số bản mã và giải mã nó để phát triển một bản mã. Cuộc tấn công này có thể áp dụng nếu kẻ tấn công có quyền truy cập vào máy tính của người nhận.
-
Tấn công từ điển - Kiểu tấn công này cần một danh sách từ để phát hiện ra sự trùng khớp của bản rõ hoặc khóa. Nó thường được sử dụng khi cố gắng bẻ khóa mật khẩu được mã hóa.
-
Tấn công bảng cầu vồng - Kiểu tấn công này so sánh văn bản mật mã với các hàm băm được tính toán trước để khám phá các kết quả phù hợp.
-
Tấn công người ở giữa (MITM) - Tấn công xuất hiện khi hai bên sử dụng chia sẻ tin nhắn hoặc khóa để giao tiếp thông qua một kênh diễn ra an toàn nhưng thường bị xâm phạm.
Kẻ tấn công sử dụng cuộc tấn công này để chặn các tin nhắn đi qua kênh truyền thông. Hàm băm tránh các cuộc tấn công MITM.
-
Tấn công văn bản rõ thích ứng (ACPA) - Nó tương tự như CPA, cuộc tấn công này sử dụng bản rõ và bản mã đã chọn dựa trên dữ liệu học được từ các lần mã hóa trong quá khứ.