Checksum là gì?

Noun Programming

Thường được sử dụng để kiểm tra tính toàn vẹn dữ liệu để đảm bảo tập tin không bị hỏng trong quá trình tải xuống (download) và tệp không bị nhiễm phần mềm độc hại (malware) hoặc phần mềm độc hại khác. Checksum thường được biểu diễn dưới dạng một chuỗi dài các ký tự chữ và số. Ví dụ: một check sum của MD5 là 120EA8A25E5D487BF68B5F7096440019

Ví dụ như sau:

File 1 (File gốc) -> Checksum -> Mã hash 1

File 2 (Copy từ file 1) -> Checksum -> Mã hash 2

Nếu mã hash 1 bằng mã hash 2 thì file 2 là 1 bản sao hoàn chỉnh của file 1. Nếu mã hash 1 khác mã hash 2 thì file 2 là 1 bản sao lỗi của file 1. Nó đã gặp lỗi trong quá trình copy từ file 1

Noun Network

Checksum là một kỹ thuật phát hiện lỗi (error detection).Có hai phương pháp xử lý liên quan đến việc này. Người gửi tạo checksum và gửi dữ liệu ban đầu cùng với checksum. Người nhận cũng tạo checksum từ dữ liệu nhận được. Nếu sum được tạo ra ở phía người nhận là tất cả các số 1 thì chỉ có dữ liệu được chấp nhận.

Người gửi làm theo các bước sau:

  • Dữ liệu được chia thành k khối, mỗi khối n bit.
  • Tính tổng (phép toán cộng nhị phân) của k khối
  • Cộng carry vào tổng nếu có
  • Thực hiện phép bù 1 (one's complement) ta được checksum
  • Người gửi gửi dữ liệu gốc cùng với checksum.

Người nhận làm theo các bước sau:

  • Nhận các khối dữ liệu cùng với checksum
  • Tính tổng của các khối + checksum
  • Nếu kết quả tổng chứa tất cả là bit 1 thì chấp nhận ngược lại từ chối
Learning English Everyday