Tính MAC KMAC128 cho tệp
Tính tag xác thực KMAC128 của tệp với khóa bí mật và chuỗi tùy biến của bạn, ngay trong trình duyệt, rồi so sánh với tag mong đợi.
Bội số của 8, từ 8 đến 16384 bit.
Nhãn phân tách miền tùy chọn, ví dụ tên ứng dụng của bạn. Chuỗi khác nhau cho ra kết quả hoàn toàn không liên quan.
Khóa đang trống. Không có khóa bí mật thì KMAC không xác thực được gì.
Chưa chọn tệp nào. Checksum sẽ hiện ngay khi bạn chọn tệp.
Tệp được đọc theo từng phần ngay trong trình duyệt và không bao giờ được tải lên.
MAC KMAC128 cho tệp là gì?
Công cụ này tính tag KMAC128 của một tệp bằng khóa bí mật, chuỗi tùy biến tùy chọn và độ dài đầu ra do bạn chọn, rồi so sánh với tag mong đợi. Khác với checksum thông thường, tag khớp cho thấy tệp được tạo bởi người biết khóa.
Cách sử dụng MAC KMAC128 cho tệp
- Nhập Khóa bí mật và Mã hóa khóa, cùng Chuỗi tùy biến (S) tùy chọn và Độ dài đầu ra (bit); mỗi lần thay đổi, tag sẽ được tính lại.
- Nhấn vào vùng thả tệp hoặc kéo tệp vào đó; tệp được đọc theo từng khối và có thanh tiến trình hiển thị.
- Kiểm tra Tên tệp và Kích thước tệp hiện bên dưới để chắc chắn bạn đã chọn đúng tệp.
- Dán checksum do nhà cung cấp công bố vào ô Checksum mong đợi — bạn sẽ nhận được Khớp hoặc Không khớp (chữ hoa/thường, tiền tố
0xvà tên tệp ở cuối đều được bỏ qua). - Chọn Định dạng đầu ra rồi nhấn Sao chép để lưu hoặc gửi tag.
Ví dụ
A file hash-abc.txt containing "abc", key "secret" (UTF-8), S empty
9723991ae89d1a16b62b38aaa31cb025d0612906eb4f2885a73efc7d43091523
Độ dài đầu ra 256 bit.
Khi nào nên dùng MAC KMAC128 cho tệp
Dùng công cụ để kiểm tra một tệp có đến từ bên cùng chia sẻ khóa bí mật với bạn hay không, hoặc để tạo tag cho tệp trong hệ thống dựa trên KMAC. Để xác minh một bản tải xuống công khai, checksum hoặc chữ ký số mới là công cụ phù hợp — MAC đòi hỏi cả hai bên cùng nắm khóa.
MAC KMAC128 cho tệp hoạt động như thế nào
Khóa đã đệm được hấp thụ trước, tiếp đến là tệp theo từng lát 4 MB, rồi đến độ dài đầu ra đã mã hóa, trước khi tag được vắt ra. KMAC128 (NIST SP 800-185) là cSHAKE128 với tên hàm "KMAC". Hàm hấp thụ bytepad(encode_string(K), 168) — tức khóa được đệm cho đủ một khối — rồi đến thông điệp, sau đó là right_encode(L) với L là độ dài đầu ra yêu cầu, và vắt ra L bit. Vì L là một phần của đầu vào, KMAC 256 bit và 512 bit của cùng dữ liệu hoàn toàn không liên quan với nhau (khác với SHAKE). Thiết kế sponge giúp cấu trúc đặt khóa làm tiền tố đơn giản vẫn an toàn, nên KMAC không cần cấu trúc lồng nhau như HMAC.
Các Trường Hợp Sử Dụng Phổ Biến
- Xác minh tag xác thực của tệp firmware hoặc bản sao lưu
- Tạo dấu vân tay có khóa cho tệp mà người ngoài không thể tái tạo
- Kiểm thử bản cài đặt KMAC với đầu vào dung lượng lớn
Lưu Ý Bảo Mật
Hãy dùng khóa bí mật ngẫu nhiên dài ít nhất 16 byte. Tag không còn tác dụng bảo vệ nếu khóa bị lộ. Mọi xử lý đều diễn ra cục bộ.
Câu Hỏi Thường Gặp
Tệp và khóa có bị tải lên không?
Không. Cả hai đều ở lại trong trình duyệt; tệp được đọc cục bộ theo từng khối.
Vì sao tag của tôi không khớp?
Các byte của khóa (hãy kiểm tra mã hóa khóa), chuỗi tùy biến và độ dài đầu ra đều phải trùng khớp chính xác, và nội dung tệp cũng vậy.
Tag KMAC có phải là chữ ký số không?
Không. Bất kỳ ai có khóa dùng chung đều tạo được tag hợp lệ, nên nó chỉ chứng minh việc sở hữu khóa chứ không xác định danh tính của một người ký cụ thể.