De meeste mensen behandelen een QR-code als een onschuldige snelkoppeling naar een website. Vaak is dat ook zo. Maar een QR is slechts een container voor tekst, en die tekst kan een stuk gevoeliger zijn dan een link. Voordat je een code-afbeelding in de eerste "online QR-lezer" die je vindt zet, is het de moeite waard te weten wat je mogelijk overhandigt — en aan wie.
Wat een QR-code daadwerkelijk kan bevatten

Het zwart-witpatroon codeert platte tekst, en volgens conventie kan die tekst van alles zijn:
- Een URL — het gewone geval, maar soms een privé of eenmalige link (een wachtwoordreset, een uitnodiging, een document dat "niet vermeld" is in plaats van echt openbaar).
- Een wifinetwerk en wachtwoord — de "scan om te verbinden"-codes op routers en in hotels coderen letterlijk de netwerknaam en het wachtwoord in platte tekst.
- Een contactkaart (vCard) — een naam, telefoonnummer, e-mail, en thuis- of kantooradres.
- Een login- of betalingstoken — sommige apps tonen een QR om een sessie of een overboeking te autoriseren; de string erin is in feite een sleutel.
- Platte tekst of een bericht — alles wat iemand koos te coderen.
Niets daarvan is gevaarlijk voor jou wanneer je het op je eigen apparaat decodeert. Het wordt een probleem wanneer decoderen vereist dat de afbeelding ergens anders naartoe wordt gestuurd.
De verborgen stap: "online lezers" uploaden je afbeelding

Hier is het deel dat makkelijk te missen is. Een typische online QR-lezer werkt door je afbeeldingsbestand naar zijn server te uploaden, het daar te decoderen, en het resultaat terug te sturen. Dat betekent dat de foto — en wat de code ook codeert — je apparaat verlaat en landt op hardware die je niet beheerst. Voor een link naar een openbaar artikel, prima. Voor een wifi-wachtwoord, een logintoken of een contactkaart met een thuisadres heb je zojuist een geheim naar de server van een vreemde verzonden, waar het gelogd of gecachet kan worden, allemaal om tekst te lezen die al op je scherm stond.
Je kunt controleren of een tool uploadt: let op een voortgangsbalk die schaalt met bestandsgrootte, of open het Netwerk-tabblad van je browser en kijk of een groot verzoek je afbeelding draagt. Echt lokale tools doen geen van beide.
Decodeer hem in plaats daarvan lokaal
De privacyrespecterende aanpak is de code in je eigen browser te decoderen, zodat de afbeelding nooit reist.
De QR Code Reader van IMG.DIY doet precies dat. Je geeft hem een afbeelding — slepen, plakken of een bestand kiezen — en hij tekent de foto op een canvas en decodeert de QR met de jsQR-bibliotheek recht in je browser. Er wordt niets geüpload. Er is geen account en geen server die het werk doet, en zodra de pagina is geladen blijft het werken met het netwerk uit. Je kunt het jezelf bewijzen: laad de tool, zet vliegtuigmodus aan, en decodeer een code — hij werkt nog steeds, omdat er nooit een server in de lus zat.
Is de code een URL, dan geeft de tool je een klikbare link (gemarkeerd rel=nofollow) zodat je de bestemming kunt zien voordat je je eraan verbindt. Is het een wifistring of contactkaart, dan krijg je de ruwe tekst en een kopieerknop — lees hem, gebruik hem, en hij blijft op je machine.
Een verstandige gewoonte voor gevoelige codes
Twee kleine regels houden je veilig:
- Zie de tekst voordat je handelt. Een code decoderen toont je de bestemming of de inhoud voordat je apparaat met iets verbindt. Dat alleen al ontmantelt veel QR-gebaseerde oplichting, waarbij de gedrukte code wordt verwisseld voor een die ergens vijandigs naar wijst.
- Stem de tool af op het geheim. Voor een openbare link maakt het nauwelijks uit waar je decodeert. Voor een wachtwoord, een token of iemands persoonlijke gegevens, decodeer het lokaal zodat het geheim om te beginnen nooit je apparaat verlaat.
De eerlijke grenzen zijn het vermelden waard: dit leest een code uit een afbeelding die je aanlevert, één tegelijk, niet van een live webcam — een bewuste keuze die alles lokaal houdt. Voor alles wat een QR-code zou kunnen verbergen, is hem op je eigen apparaat lezen simpelweg de juiste standaard.
