Giải mã lý do vì sao mã QR bị rách một phần nhưng vẫn quét được

Vì sao mã QR rách một góc vẫn quét ra? Bí mật này nằm ở dữ liệu được dự phòng ngay bên trong đoạn mã.

Một tờ rơi nhàu nát, mép giấy rách mất một góc, thậm chí ngay chính giữa đoạn mã QR còn dính vết bẩn che lấp. Vậy mà khi đưa điện thoại lên, trang web vẫn mở ra như chưa có chuyện gì xảy ra. Một phần của đoạn mã đã mất nhưng vì sao thông tin vẫn nguyên vẹn?

Vì sao mã QR bị khuyết nội dung vẫn quét được bình thường?

Câu trả lời nằm ở cơ chế sửa lỗi Reed-Solomon. Cơ chế này thêm dữ liệu dự phòng vào thông điệp được mã hóa. Khi gặp phần bị thiếu hoặc hư mất, thiết bị đọc dùng chính dữ liệu đó để dựng lại nội dung. Reed-Solomon được phát triển từ thập niên 1960 và cũng được dùng trong đĩa CD và DVD.

Người tạo mã chọn một trong bốn mức sửa lỗi. Mức L khôi phục khoảng 7%, M khoảng 15%, Q khoảng 25% và H khoảng 30%. Các con số này tính theo số từ mã (codeword) có thể được phục hồi. Ở mức H, gần một phần ba mã có thể thiếu hoặc hỏng mà vẫn quét được.

Nhưng sự an toàn này sẽ phải đánh đổi bằng dung lượng. Mức sửa lỗi càng cao thì càng nhiều dữ liệu dự phòng, khiến lưới ô vuông trên mã QR dày đặc hơn. Một đường dẫn dài ở mức H có thể quá dày để quét từ xa. Vì vậy mức L và M phù hợp với bản in sạch hoặc hiển thị trên màn hình, còn Q và H dành cho môi trường bẩn hoặc dễ mài mòn.

Cơ chế này cũng giải thích vì sao nhiều mã QR chèn được logo ở giữa. Logo được xem như một phần hư hỏng có thể phục hồi. Khi chèn logo, nên dùng mức H, giữ logo nhỏ, tránh ba ô định vị ở góc rồi thử quét bằng nhiều điện thoại.

Hình minh họa một đoạn mã QR bị rách.

Tuy vậy, khả năng này có giới hạn khi tem mã bị hư hỏng quá lớn, chẳng hạn như một vết rách rộng, có thể làm hỏng cả mã ở mức cao. Bên cạnh đó, một mã QR còn cần giữ được nền sáng, ô tối, vùng trắng xung quanh rộng ít nhất bốn ô ở mỗi cạnh và kích thước in tối thiểu khoảng 2x2 cm.

An An (theo QR Planet)

Nguồn Người Đưa Tin: https://nguoiduatin.vn/giai-ma-ly-do-vi-sao-ma-qr-bi-rach-mot-phan-nhung-van-quet-duoc-204262410065002444.htm