MAC là viết tắt của Message Authentication Code. Nó cũng được định nghĩa là một thẻ. Nó được sử dụng để xác định nguồn gốc và đặc điểm của một thông điệp. MAC sử dụng mật mã xác thực để kiểm tra tính hợp pháp của thông tin được gửi qua mạng được chia sẻ từ người này sang người khác.
MAC cung cấp rằng thông báo xuất hiện từ đúng người gửi, chưa được sửa đổi và thông tin được truyền qua mạng hoặc được lưu trong hoặc ngoài hệ thống là hợp pháp và không bao gồm mã độc hại. MAC có thể được lưu trên cấu trúc bảo mật phần cứng, một thiết bị được sử dụng để xử lý các khóa kỹ thuật số đáp ứng.
MAC được phát triển bởi một hàm băm an toàn có khóa trên một tin nhắn. Nó có thể được sử dụng để cung cấp tính toàn vẹn của thông báo sao cho nếu một thông báo được bảo mật bởi MAC bị cản trở, nó có thể được xác định bằng cách so sánh MAC có trong tệp tin và MAC được tính toán lại.
MAC là tổng kiểm tra có khóa của thông báo được chia sẻ chuyển tiếp với thông báo. MAC an toàn có tính năng mà bất kỳ thay đổi nào đối với trang sẽ cung cấp tổng kiểm tra là null.
MAC có thể được sử dụng cho nhiều mục đích không chỉ là bảo mật thông tin liên lạc. Ví dụ:giả sử cần phải lưu tệp trên ổ USB flash di động, ổ này chia sẻ thông thường với bạn bè của chúng tôi.
Nó có thể bảo mật chống giả mạo các tệp trên ổ đĩa flash của chúng tôi, máy của chúng tôi có thể tạo khóa bí mật và lưu MAC của mỗi tệp ở đâu đó trên ổ đĩa flash.
Khi máy đọc tệp, nó có thể kiểm tra xem MAC có đúng không trước khi sử dụng nội dung tệp. Theo một nghĩa nào đó, đây là trường hợp nó đang giao tiếp với một phiên bản tương lai của chính chúng, do đó, bảo mật cho thông tin được lưu trữ có thể được xem như khác với bảo mật thông tin liên lạc.
Nhược điểm cơ bản của phương pháp này là thiếu an toàn trước những sửa đổi có chủ đích trong nội dung thông điệp. Kẻ xâm nhập có thể sửa đổi thông báo, do đó tính tổng tổng kiểm mới và cuối cùng khôi phục tổng kiểm ban đầu bằng giá trị mới. Một thuật toán CRC thông thường chỉ cho phép xác định các phần tử bị hư hỏng ngẫu nhiên của thông báo (nhưng không phải là những thay đổi có chủ ý do kẻ tấn công thực hiện).
Xác thực thông điệp cho phép một bên và người gửi truyền một thông điệp đến bên khác và Người nhận theo phương thức sao cho nếu thông điệp bị thay đổi đường dẫn, do đó Người nhận chắc chắn sẽ xác định được điều này.
Xác thực tin nhắn còn được gọi là xác thực nguồn gốc dữ liệu. Bởi vì nó xác thực điểm gốc cho mỗi tin nhắn. Xác thực tin nhắn là đảm bảo nguyên tắc của tin nhắn với điều kiện là mỗi tin nhắn được nhận và có thể phê duyệt có uy tín phải xuất hiện trong cùng một tình huống mà nó được truyền đi và có chèn, xóa hoặc thay đổi các bit.