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

Các yêu cầu của Mã xác thực tin nhắn (MAC) là gì?

MAC là viết tắt của Message Authentication Code. Đây là một mã hoặc thẻ bảo mật được thêm vào tin nhắn do người gửi gửi tới người nhận để hỗ trợ xác thực và tính toàn vẹn của tin nhắn (không sửa đổi trong tin nhắn).

MAC tương tự như Message Digest (MD) ngoại trừ việc nó cần quy trình mật mã khóa đối xứng để xác thực một thông điệp, tức là khóa tương tự được chia sẻ giữa người gửi và người nhận. Hàm băm có khóa được gọi là thứ hai cho mã xác thực tin nhắn. MAC cũng được định nghĩa là Kiểm tra mật mã.

Thuật toán mã xác thực tin nhắn (MAC) tạo ra một tin nhắn cần được xác thực và một khóa bí mật chỉ phổ biến cho người gửi tin nhắn và người nhận tin nhắn &tạo MAC làm đầu ra. Bằng cách sử dụng MAC, người nhận có thể kiểm tra tính toàn vẹn của tin nhắn và tính xác thực của tin nhắn, tức là tin nhắn có xuất hiện từ người gửi thích hợp hay không. MAC không hỗ trợ tính năng Không thoái thác.

Ba thuật toán thường bao gồm MAC như thuật toán tạo khóa, thuật toán ký và thuật toán xác minh. Thuật toán tạo khóa chọn một khóa ngẫu nhiên.

Thuật toán ký kết truyền một thẻ khi có thể là khóa và thông điệp. Thuật toán xác minh có thể được sử dụng để kiểm tra tính xác thực của thông báo khi được cung cấp khóa và thẻ. Nó sẽ khôi phục thông báo được chấp nhận nếu thông báo và thẻ là xác thực và giống nhau, nhưng nếu không, nó sẽ khôi phục thông báo bị từ chối.

Có một số yêu cầu đối với MAC như sau -

  • Mã xác thực tin nhắn (MAC) thường được sử dụng trong chuyển tiền kỹ thuật số (EFT) để hỗ trợ tính toàn vẹn của thông tin. Họ có thể xác nhận rằng một tin nhắn là xác thực; nói cách khác, nó thực sự đến từ người gửi đã nêu và không duy trì một số thay đổi trên đường.

  • Người xác minh cũng duy trì khóa có thể sử dụng khóa đó để nhận ra các thay đổi đối với thành phần của thư được đề cập.

  • Mã xác thực tin nhắn thường cần thiết để truy cập vào bất kỳ loại tài khoản tài chính nào. Các ngân hàng, công ty môi giới, tổ chức ủy thác và một số tổ chức tiền gửi, đầu tư hoặc bảo hiểm khác cung cấp quyền truy cập trực tuyến có thể sử dụng các mã này. Chúng là một thành phần quan trọng của mật mã tài chính.

  • Nếu đối phương quan sát M và C (K, M) và đối phương phải tính toán không thể đưa ra thông báo M 'sao cho C (K, M') =C (K, M).

  • C (K, M) phải được phân phối nhất quán theo nghĩa là đối với thông báo được chọn ngẫu nhiên, M và M ', xác suất để C (K, M) =C (K, M') là 2 n , trong đó n là số bit trong MAC.

  • Gọi M 'là một phép biến hình đã biết trên M là M' =f (M). Ví dụ, f có thể bao gồm đảo một hoặc nhiều bit xác định. Trong trường hợp đó, PR [C (K, M) =C (K, M ')] =2 -n .