Een QR-code (Quick Response code) is een tweedimensionale matrix-code. Hij slaat informatie op in een patroon van zwarte en witte vierkantjes: een URL, tekst, contactgegevens, een WiFi-netwerk of een betaallink. Een smartphone-camera leest de code in minder dan een seconde.
Kort verhaal van de uitvinding
QR-codes zijn uitgevonden in 1994 door Denso Wave, een dochteronderneming van Toyota in Japan. Het doel: een code die veel meer gegevens kon bevatten dan een gewone barcode, en die vanuit elke hoek te scannen was.
De traditionele EAN/UPC-barcode bevat maximaal 20 tekens. De eerste QR-versie kon al 7.089 cijfers opslaan in één code. En een scanner hoeft de code niet recht te houden: het patroon bevat drie herkenningsblokken in de hoeken (finder patterns) die oriëntatie bepalen.
In de periode 2000-2010 werd de QR-code populair in Japanse tijdschriften en reclame. Europa en de VS waren later. Pas toen smartphones standaard een QR-scanner in de camera-app kregen (iOS 11 in 2017, Android grotendeels al eerder via Google Lens) groeide het gebruik wereldwijd hard.
Hoe werkt het technisch?
Structuur van een QR-code
Een QR-code bestaat uit verschillende functionele zones:
- Finder patterns: De drie grote vierkante blokken in de hoeken (links-boven, rechts-boven, links-onder). De scanner gebruikt ze om de positie, oriëntatie en schaal te bepalen.
- Alignment pattern: Bij grotere codes een klein herkenningsblok rechtsonder. Helpt bij gecorrumpeerde of gedistorte codes.
- Timing patterns: Afwisselende zwart-wit strepen die de grootte van de modules (vakjes) definiëren.
- Format information: Twee gebieden die het foutcorrectieniveau en het maskerpatroon beschrijven.
- Data modules: De rest van het patroon. Hier zit de eigenlijke inhoud.
Datacapaciteit per foutcorrectieniveau
Het foutcorrectieniveau (ECC) bepaalt hoeveel van de code beschadigd mag zijn zonder verlies van leesbaarheid. Hoe hoger het niveau, hoe groter de QR. En hoe robuuster.
| ECC-niveau | Teken: ECC | Max. tekens (alfanumeriek) | Typisch gebruik |
|---|---|---|---|
| L (Low) | ~7% | 4.296 tekens | Schone digitale omgeving |
| M (Medium) | ~15% | 3.391 tekens | Standaard gebruik (default) |
| Q (Quartile) | ~25% | 2.420 tekens | Outdoor, poreus materiaal |
| H (High) | ~30% | 1.817 tekens | Met logo, sterk beschadigd materiaal |
Data-encoding
De data wordt gecodeerd in een van vier modi afhankelijk van de inhoud:
- Numeric: Alleen cijfers (0-9). Meest compact: 10 bits per 3 cijfers.
- Alphanumeric: Cijfers + hoofdletters + een paar symbolen, iets minder compact.
- Byte: Alle ASCII-tekens inclusief kleine letters en speciale tekens. Meest universeel.
- Kanji: Japanse dubbele-byte karakters.
Een URL als https://qrwerk.nl gebruikt Byte-modus en past zelfs op een versie-1 QR (het kleinste formaat van 21×21 modules).
Waarom QR versus een gewone barcode?
Een traditionele barcode (EAN-13, Code-128) is eendimensionaal: de data zit in de breedte van de strepen. Dat beperkt de capaciteit en vereist dat de scanner de barcode recht in één richting leest.
QR-codes zijn tweedimensionaal: de data zit in de horizontale én de verticale richting. Dat levert drie voordelen op:
- Meer data per cm²: Tot 350× meer dan een EAN-13.
- Scannen vanuit elke hoek: Geen precisie vereist, werkt met camera-apps.
- Foutcorrectie: Een barcode met een kras is onleesbaar; een QR met 30% schade is nog steeds decodeerbaar.
Use-cases
Enkele gangbare toepassingen van QR-codes vandaag:
- Betalingen: In China verwerkt WeChat Pay en Alipay dagelijks miljarden QR-betalingen. In Nederland wordt QR ook gebruikt bij iDEAL-betalingen via banken.
- Menukaart: Restaurants gebruiken QR-menus om drukkosten te vermijden en het menu realtime bij te werken.
- Visitekaartje: Scan → contact direct in adresboek, geen tikfouten.
- WiFi-toegang: Gasten verbinden zonder wachtwoord te typen. De QR codeert de netwerknaam en het wachtwoord.
- Productverificatie: Luxe merken en farmaceutica gebruiken QR-codes met foutcorrectie en digitale handtekening om namaak te detecteren.
- Eventtickets: QR-code als boarding pass of entreeticket, voor een snelle scan bij de deur.
- Pakketlabels: Logistieke bedrijven (DHL, PostNL) gebruiken QR naast of in plaats van de 1D-barcode.
Veiligheid: waar let je op?
QR-codes zijn neutraal: ze bevatten alleen een tekenreeks. Maar die tekenreeks kan een kwaadaardige URL zijn. Enkele risico’s:
- QRishing (QR-phishing): Een nep-QR geplakt over een echte (bijv. op parkeerautomaten of OV-chipkaart-readers) leidt je naar een nagemaakte betaalpagina.
- Malware-download: Een URL in de QR kan rechtstreeks een APK- of EXE-bestand downloaden.
- Misleidende URL:
https://qrwerk-nl.phishing.comlijkt opqrwerk.nlmaar is dat niet.
Praktische check: Kijk altijd naar de URL die je telefoon toont voor je erop tikt. Vertrouw je het niet? Niet openen. Gebruik alleen QR-codes van betrouwbare bronnen of op fysieke locaties die je kent.
Waarom de QR-code gebleven is
In 30 jaar groeide de QR-code van interne Toyota-logistiek naar dagelijks gebruik. Hoge datacapaciteit, scannen vanuit elke hoek en foutcorrectie maken hem robuuster en veelzijdiger dan een barcode.
Zelf een QR-code maken? Dat kan gratis op qrwerk: maak je QR-code. Je hebt er geen account voor nodig.