مجموعة الاختبار العامة
ادعاءاتنا بشأن توافق الماسحات لا تكون جيدة إلا بقدر الأدلة التي تستند إليها. هذه الصفحة هي مجموعة البيانات, المدخلات القانونية التي نختبر كل مشفِّر عليها بشكل انحداري، بالإضافة إلى سلوك كاميرا الهاتف الذي يمكنك تدقيقه بنفسك.
تنزيل corpus.zip بيانات JSON + CSV + منهجية + README. ~4 KB.
Loading version…
كيفية استخدام المجموعة
كل متجه اختبار موجود في /test-vectors/fixtures.json. كائن JSON واحد لكل نوع. يُجلب مباشرة من الموقع.
خذ خريطة fields لأي بيانات، ضع القيم في المولّد لذلك النوع، واضغط توليد.
وجّه iPhone Camera أو Android Camera أو Google Lens أو ماسحًا صناعيًا نحو رمز QR المُنشأ. تأكد أن النص المفكوك يحتوي على كل سلسلة فرعية expect.
إذا أعاد ماسح في أجهزتك فكًّا لا يتطابق مع البيانات، أفِد بمشكلة. سنعيد إنتاجها ونضيف ماسحك إلى مصفوفة التوافق العامة وإذا كانت خطأ في المشفِّر نشحن إصلاحًا.
نتائج المسح المتوقعة, مجموعة مختارة
| Type | Fixture input | iOS Camera | Android Camera | Pro scanner |
|---|---|---|---|---|
| URL | https://example.com/test | يفكّ | يفكّ | يفكّ |
| WiFi | SSID=MyNet PSK=... WPA | Joins network | Joins network | يفكّ |
| vCard | FN=Alice ORG=Acme | Add to Contacts | Add to Contacts | يفكّ |
| TOTP | otpauth://totp/...?secret=JBSW... | جزئي | جزئي | يفكّ |
| eSIM | LPA:1$rsp.example.com$K2-LM... | iOS 17.4+ | Android 13+ | يفكّ |
| Bitcoin (BIP-21) | bitcoin:1A1zP1eP... | جزئي | جزئي | يفكّ |
| SEPA (EPC) | BCD + name + IBAN + amount | Raw string | Raw string | جزئي |
| Swiss QR-bill | SPC + IBAN + address + amount | Raw string | Raw string | Swiss banking apps |
| GS1 Digital Link | https://id.gs1.org/01/09506000134352 | يفكّ | يفكّ | POS parses AIs |
| Data Matrix | Arbitrary payload | لا يفكّ | Google Lens only | يفكّ |
| Aztec | Arbitrary payload | لا يفكّ | Some Android | يفكّ |
| PDF417 | AAMVA or arbitrary | لا يفكّ | Google Lens partial | يفكّ |
| AAMVA driver license | @
ANSI 636014080002DL... | iOS 17+ license-aware | Android license apps | يفكّ |
| EAN-13 | 0012345678905 | يفكّ | يفكّ | Every retail POS |
| Micro QR | Compact payload | لا يفكّ | لا يفكّ | Industrial only |
ماذا تعني "نتيجة المسح المتوقعة"
- يفكّ, يفكّ.
- جزئي, جزئي, يعتمد على تطبيق أو إصدار نظام تشغيل معين.
- لا يفكّ, لا يفكّ, الكاميرا الأصلية لا تُعيد شيئًا. يتطلب ماسحًا متخصصًا.
ملاحظات المنهجية
- Every fixture round-trips. CI generates each code in headless Chromium, decodes via
BarcodeDetector, asserts substring match. - Scanner results are from manual testing on real devices. iPhone 15 Pro / iOS 18.3, Pixel 8 / Android 14, Zebra DS8100.
- We publish negative results. iPhone refusing Data Matrix is "No decode", not rebrandled as "native reader."
- The corpus is versioned. Fixture history for audit trail.
ما هو قادم
- Pre-rendered artifacts. Future revision adds pre-rendered SVG + PNG per fixture for scanner-fleet harnesses.
- Scanner-fleet attestation. docs/SCANNER_ATTESTATION.md, grows each time we verify against a new device.
- Third-party verification. Independent security lab run pending; report publishes here on arrival.