Computer >> Máy Tính >  >> Lập trình >> Lập trình

MD5 trong An toàn thông tin là gì?

MD5 là viết tắt của thuật toán thông báo tin nhắn. Nó là một giao thức mật mã được sử dụng để xác thực thông điệp cũng như xác minh nội dung và chữ ký số. MD5 dựa trên một hàm băm để kiểm tra xem một tệp mà nó có thể gửi có khớp với nhau và tệp được nhận bởi người mà nó được gửi đến hay không.

Thuật toán thông báo thông báo MD5 là phiên bản thứ 5 của Thuật toán thông báo thông báo do Ron Rivest phát minh để thực hiện thông báo thông báo 128 bit. MD5 tương đối nhanh chóng với các phiên bản khác của thông báo tóm tắt, tạo ra văn bản thuần túy của các khối 512 bit, được chia thành 16 khối, mỗi khối 32 bit và tạo ra khối rối 128 bit, là một tập hợp bốn khối, mỗi bit trong số 32 bit.

MD5 tạo thông báo tóm tắt thông qua năm bước, chẳng hạn như đệm, độ dài nối thêm, chia đầu vào thành các khối 512-bit, khởi động các biến chuỗi một khối quy trình và 4 vòng và sử dụng nhiều hằng số cho mỗi lần lặp.

Với sự phát triển của một số thuật toán băm, các chuyên gia đã lưu ý rằng các nhà nghiên cứu phát hiện ra rằng MD5 có những điểm yếu nghiêm trọng về khả năng "chống va chạm".

Xung đột xuất hiện khi hai giá trị băm được phát hiện là giống nhau hoặc giống nhau. Nó có thể hoạt động bình thường, mỗi giá trị băm riêng lẻ phải cụ thể. Vì chức năng này là bắt buộc đối với các giao thức xác thực nổi tiếng như Secure SocketsLayer (SSL), MD5 đã được khôi phục với các loại thuật toán băm khác nhau.

Các kỹ sư bảo mật và những người khác nổi tiếng với danh sách lớn các thuật toán băm với các thuộc tính chung. MD5 và các loại thuật toán băm khác được định nghĩa là các hàm "lộn xộn".

Khái niệm này là một băm "tiêu hóa" một giá trị ban đầu và xuất ra một giá trị thay thế về cơ bản khác với giá trị ban đầu. Hàm băm có nhiều cách sử dụng chính khác nhau về tính an toàn và tính hiệu quả của cơ sở dữ liệu, liên quan đến nhu cầu tìm kiếm các giá trị thay thế và lưu trữ dữ liệu.

MD5 cũng được sử dụng như một tổng kiểm tra cho các tài liệu. Trong thời đại Internet, các trang web có những điểm bất đồng nghiêm trọng có thể cho phép tin tặc thay đổi liên kết tải xuống và những kẻ lừa đảo tải xuống tệp bị giả mạo.

Một phương pháp được giảm thiểu là thông qua sự cần thiết của tổng kiểm tra, nơi một hàm băm duy nhất được tạo ra dựa trên tệp và được hỗ trợ để người dùng có thể tạo dựa trên băm trên tệp họ tải xuống và so sánh. Nếu chúng kết nối tệp là tệp tương tự và không bị giả mạo.

MD5 thường được sử dụng để xác thực tệp. Việc sử dụng băm MD5 để kiểm tra bản sao của tệp so với bản gốc sẽ đơn giản hơn nhiều so với việc kiểm tra từng chút một để xem liệu hai bản sao có khớp nhau hay không.

MD5 được sử dụng để bảo mật và mã hóa thông tin, nhưng ngày nay công dụng cơ bản của nó là xác thực. Bởi vì tin tặc có thể tạo một tệp có hàm băm tương tự chính xác làm tệp hoàn toàn khác, MD5 không an toàn trong các hoạt động mà ai đó giả mạo tệp.