Kho kiểm thử công khai

Các tuyên bố về tương thích máy quét của chúng tôi chỉ đáng tin cậy bằng bằng chứng làm nền tảng. Trang này là corpus, các đầu vào mà chúng tôi chạy kiểm tra hồi quy trên từng họ encoder của mình, cộng với hành vi camera điện thoại mà bạn có thể tự kiểm tra mà không cần tin vào lời chúng tôi.

Lý do tồn tại: hầu hết các công cụ QR đều công bố ma trận tương thích. Chúng tôi công bố corpus đằng sau ma trận đó. Nếu bạn chịu trách nhiệm về đội máy quét, bán lẻ, kho hàng, dược phẩm, hàng không, DMV, bạn có thể chạy corpus này qua các thiết bị đọc của mình và xác minh mọi tuyên bố chúng tôi đưa ra.

Tải xuống corpus.zip Gói fixtures JSON + CSV + phương pháp + README. ~4 KB.

Đang tải phiên bản…

Cách sử dụng corpus

Tải xuống fixtures.

Mỗi vector kiểm tra nằm trong /test-vectors/fixtures.json. Một đối tượng JSON mỗi loại với các trường đầu vào và substring giải mã dự kiến. Lấy trực tiếp từ trang này, không có bản sao lỗi thời.

Tạo lại các QR.

Lấy bản đồ fields của bất kỳ fixture nào, nhập các giá trị vào bộ tạo cho loại đó, và nhấn Tạo. QR kết quả giống từng bit với những gì CI của chúng tôi dùng để kiểm tra vòng lặp.

Quét bằng đội thiết bị của bạn.

Hướng iPhone Camera, Android Camera, Google Lens, máy quét công nghiệp (Zebra, Honeywell, Datalogic), hoặc thiết bị đọc dành cho ứng dụng (ứng dụng ngân hàng, ứng dụng xác thực) vào QR đã tạo. Xác nhận văn bản được giải mã có chứa mọi substring expect cho fixture đó.

Báo cáo sự khác biệt.

Nếu máy quét trong đội của bạn trả về kết quả giải mã không khớp với fixture, hãy tạo báo cáo lỗi. Chúng tôi sẽ tái hiện, thêm máy quét của bạn vào ma trận tương thích công khai, và (nếu là lỗi encoder) gửi bản sửa lỗi.

Kết quả quét dự kiến

Được dựng từ cùng tập dữ liệu với ma trận tương thích và dòng "Quét được trên" của mỗi trang loại, nên ba nơi này không thể mâu thuẫn nhau. Tệp fixture đầy đủ tại /test-vectors/ có 33 mục, mỗi mục cho một họ encoder mà chúng tôi kiểm tra hồi quy; đây không phải một dòng cho mỗi loại sản phẩm, và chúng tôi không tuyên bố như vậy.

LoạiĐầu vào fixtureiPhone CameraAndroid CameraMáy quét chuyên nghiệp
URLhttps://example.com/testMở liên kếtA1Mở liên kếtA5Giải mã đượcA8
WiFiWIFI:S:MyNet;T:WPA;P:...;;Kết nối mạngA1Kết nối mạngA5Giải mã payloadA8
WiFi Enterprise (EAP)WPA2-EAP PEAP identity=alice@corpiOS 17+, đã ghi nhậnUGiải mã được; việc kết nối tùy vào nhà sản xuấtUGiải mã payloadQ
vCardFN=Alice ORG=Acme ...Thêm vào Danh bạA1Thêm vào Danh bạA5Giải mã payloadA8
TOTPotpauth://totp/...?secret=JBSW...Ứng dụng xác thực đọc đượcA9, A10Ứng dụng xác thực đọc đượcA9, A10Giải mã URIA8
eSIMLPA:1$rsp.example.com$K2-LM...iOS 17.4+ cấp phátA4Android 13+ cấp phátUGiải mã URIQ
Bitcoin (BIP-21)bitcoin:1A1zP1eP...Ứng dụng ví mởQỨng dụng ví mởQGiải mã URIQ
SEPA (EPC)BCD header + name + IBAN + amountChỉ chuỗi thôQChỉ chuỗi thôQGiải mã chuỗi thôQ
Swiss QR-billSPC header + IBAN + address + amountChỉ chuỗi thôQChỉ chuỗi thôQGiải mã chuỗi thôQ
Micro QRCompact payloadKhông giải mã đượcV, UKhông giải mã đượcGThiết bị đọc công nghiệpZ
rMQRRectangular payloadKhông giải mã đượcUKhông giải mã đượcGFirmware Zebra, Scandit và Cognex đời mớiZ
GS1 Digital Linkhttps://id.gs1.org/01/09506000134352Mở URLQMở URLQFirmware POS phân tích các AIQ
AztecArbitrary payloadKhông giải mã đượcA2Google Lens, một số biến thểA7GốcA8
Data MatrixArbitrary payloadKhông giải mã đượcA2Google LensA6GốcA8
PDF417AAMVA or arbitraryKhông giải mã đượcA2Google Lens, không ổn địnhA7GốcA8
AAMVA driver license@\n\x1e\rANSI 636014100002DL...Luồng nhận dạng bằng lái iOS 17+A3Chỉ ứng dụng nhận dạng bằng láiUGốcA8
EAN-13 / UPC-A0012345678905Không giải mã đượcApGoogle LensGMọi POS bán lẻA8
Code 128ABC-123Không giải mã đượcApGoogle LensGGốcA8

Cách đọc các dấu hiệu

Bằng chứng

Ý nghĩa của "kết quả quét dự kiến"

Ghi chú phương pháp

Nhật ký xác thực đội máy quét

Mọi lần chạy thiết bị thủ công, có ngày tháng. Các dòng được thêm khi chúng tôi có thiết bị mới hoặc người dùng báo cáo sai lệch; một kết quả không bao giờ thay đổi âm thầm, nó sẽ nhận một dòng mới.

#DeviceOS / appCorpus sliceResultDateNotes
A1iPhone 15 ProiOS 18.3, native CameraAll QR fixturespass2026-04-10
A2iPhone 15 ProiOS 18.3, native CameraAztec, PDF417, Data Matrixfail2026-04-10Không có cái nào giải mã gốc (đúng như dự kiến, xem /standards/non-qr-2d/)
A3iPhone 15 ProiOS 18.3, native CameraAAMVA PDF417partial2026-04-10Luồng nhận dạng bằng lái iOS 17+ đề nghị Thêm vào Wallet; không trả về PDF417 thô
A4iPhone 15 ProiOS 18.3, WalleteSIM LPApass2026-04-12Luồng Thêm eSIM kích hoạt đúng
A5Pixel 8Android 14, native CameraAll QR fixturespass2026-04-10
A6Pixel 8Android 14, Google LensData Matrixpass2026-04-10
A7Pixel 8Android 14, Google LensAztec, PDF417partial2026-04-10Một số biến thể giải mã được; hỗ trợ không ổn định
A8Zebra DS8100firmware CAAACS00-002-R06All 2D + 1D fixturespass2026-04-11Thiết bị đọc ảnh công nghiệp, tham chiếu chuẩn
A9Google Authenticatorv7.0+ (iOS/Android)TOTP, HOTPpass2026-04-12Chỉ SHA-1, 6 chữ số (bỏ qua tham số algorithm/digits theo hồ sơ mặc định trên thực tế của Google)
A101Passwordv8 (iOS/Android/macOS)TOTP, HOTPpass2026-04-12Hỗ trợ đầy đủ RFC gồm SHA-256, SHA-512, 8 chữ số

Sắp ra mắt

Xem thêm

Corpus được kiểm tra hồi quy lần cuối 2026-04-18. Thiết bị đã xác minh: iPhone 15 Pro / iOS 18.3, Pixel 8 / Android 14, Zebra DS8100.