Lecteur de QR code, gratuit
Importez une image ou glissez-déposez un QR code pour décoder son contenu instantanément.
Déposez une image de QR code ici ou cliquez pour importer
Prend en charge PNG, JPG, GIF, BMP, WebP
Comment utiliser ce lecteur de QR code
- Cliquez sur la zone d'import ou glissez-déposez une image contenant un QR code.
- L'outil décode le QR code instantanément et affiche son contenu.
- Cliquez sur Copier pour copier le texte décodé, ou Ouvrir le lien s'il s'agit d'une URL.
Que peut contenir un QR code ?
- URL · liens vers des sites web, des stores d'applications ou des profils sociaux.
- Texte brut · n'importe quel message ou note.
- Identifiants WiFi · SSID, mot de passe et type de chiffrement pour une connexion automatique.
- vCards · informations de contact (nom, téléphone, e-mail, organisation).
- E-mail/SMS · adresses e-mail ou numéros de téléphone pré-remplis.
Questions fréquentes
Quels formats d'image sont pris en charge ?
PNG, JPEG, GIF, BMP et WebP. Tout format d'image courant que votre navigateur peut afficher.
Mon image est-elle envoyée à un serveur ?
Non. Le QR code est décodé entièrement dans votre navigateur en JavaScript. Votre image ne quitte jamais votre appareil.
Peut-il lire des QR codes depuis des captures d'écran ?
Oui ! Captures d'écran, photos et documents numérisés fonctionnent. Le QR code doit juste être bien visible et pas trop flou.
Une invention de 1994 chez Denso Wave, et un plateau de go
Le code QR a été inventé en 1994 par Masahiro Hara, un ingénieur du département de développement de la Denso Corporation (la filiale issue de l'essaimage qui est devenue Denso Wave a été officiellement créée plus tard), pour résoudre un problème précis dans l'industrie automobile japonaise. Le modèle de production allégée de Toyota, avec son accent sur les étiquettes Kanban et la production à forte diversité et faible volume, générait plus de références (SKU) que les codes-barres unidimensionnels existants ne pouvaient en gérer. Un code-barres linéaire standard, du type imprimé sur les produits de supermarché, contient une vingtaine de caractères ; une seule pièce automobile pouvait devoir suivre un numéro de commande, un numéro de pièce, un lot, un fournisseur et un indicateur de processus, si bien que les ouvriers finissaient par lire une dizaine de codes-barres à la suite, avec un taux de mauvaises lectures correspondant. En 1992, Hara fut chargé de concevoir un code bidimensionnel capable de porter toute l'étiquette en un seul symbole, dans n'importe quelle orientation, rapidement.
La célèbre histoire des origines veut que Hara ait imaginé le schéma de codage pendant une partie de go à l'heure du déjeuner, l'ancien jeu de plateau dans lequel des pierres noires et blanches sont disposées sur une grille de 19×19. Les modules noirs et blancs d'un code-barres matriciel sont essentiellement des pierres de go sur un treillis carré, et Hara a reconnu que le motif bidimensionnel dense pouvait porter bien plus d'informations qu'un code-barres unidimensionnel de même surface physique. L'autre pièce du puzzle était l'orientation : comment un scanner sait-il où le code commence, finit, et de quel côté est le haut, lorsque le code est photographié de biais ou à l'envers ? La réponse de Hara, ce sont les trois motifs de repérage en carrés concentriques, placés dans trois coins de chaque code QR.
Pour choisir un motif qui n'entrerait pas en collision avec l'impression ordinaire, l'équipe de Hara a passé en revue des milliers de magazines, journaux et documents imprimés et a recensé les fréquences de longueur de plage des zones noires et blanches. Ils ont constaté que le rapport de largeurs de bandes 1:1:3:1:1 (un noir fin, un blanc fin, un noir épais, un blanc fin, un noir fin) n'apparaissait presque jamais dans l'impression ordinaire. C'est ce rapport que recherchent les scanners. Lorsqu'une caméra repère dans une image trois zones dont les largeurs de bandes correspondent au rapport 1:1:3:1:1 sur les deux axes, elle peut affirmer avec confiance qu'il s'agit des trois coins d'un symbole QR et corriger la perspective à partir de là. Le rapport s'est avéré assez robuste pour que les codes QR puissent être décodés sur des surfaces courbes, sous des angles allant jusqu'à environ trente degrés, et malgré une occultation partielle.
La décision de la licence ouverte
L'autre contribution décisive de Denso Wave fut stratégique plutôt que technique. L'entreprise détient des brevets sur le code QR (et continue de déposer des brevets sur des dérivés comme l'iQR et le SQRC), mais elle a explicitement renoncé à ses droits de redevance pour l'usage des codes QR conformes aux normes publiques JIS et ISO. La position publique de Denso Wave, réaffirmée sur la FAQ et les pages de brevets de son site qrcode.com, est qu'aucune licence n'est nécessaire, aucun contrat n'est requis et aucun frais n'est dû pour l'usage commercial du code QR, du moment que le symbole respecte la spécification ISO/IEC 18004. La marque déposée sur le terme « QR Code » est enregistrée, mais le code-barres matriciel sous-jacent est libre.
Ce n'était pas le choix évident en 1994. Symbol Technologies, qui détenait alors le brevet du PDF417, facturait des redevances ; l'Aztec et le Datamatrix avaient eu, eux aussi, des débuts juridiquement encombrés. Le choix de Denso Wave de céder gratuitement le format signifiait que n'importe qui (fabricants d'imprimantes, constructeurs de téléphones mobiles, réseaux de paiement, chaînes de restaurants, développeurs d'applications de traçage des contacts) pouvait intégrer des codes QR sans frottement juridique. Cette décision est la principale raison pour laquelle les codes QR ont remporté la course aux codes-barres 2D dans les applications grand public.
La correction d'erreurs Reed-Solomon : pourquoi un QR taché fonctionne encore
La raison pour laquelle un code QR continue de fonctionner lorsqu'il est partiellement taché, déchiré ou recouvert d'un petit logo, c'est la correction d'erreurs Reed-Solomon, une technique de théorie du codage vieille de quarante ans. Les codes Reed-Solomon ont été présentés dans un article de cinq pages, « Polynomial Codes over Certain Finite Fields », par Irving S. Reed et Gustave Solomon, alors membres du personnel du MIT Lincoln Laboratory. L'article a été achevé sous la forme d'un rapport interne du Lincoln Lab en décembre 1958 et publié sous une forme légèrement modifiée dans le Journal of the Society for Industrial and Applied Mathematics, vol. 8, p. 300-304, en 1960. Reed et Solomon travaillaient à l'origine sur le système de défense aérienne SAGE, qui devait maintenir la cohérence des signaux radar sur des liaisons de communication bruitées en temps de guerre. Leur idée était qu'une séquence de données pouvait être traitée comme les coefficients d'un polynôme sur un corps fini, évalué en un ensemble de points ; la redondance de la surévaluation permet à un récepteur de retrouver le polynôme même lorsque certaines des évaluations sont erronées. Ces mêmes mathématiques sous-tendent les CD, les DVD, les transmissions des sondes spatiales lointaines, la télévision hertzienne et (depuis 1994) chaque code QR du monde.
Les codes QR offrent quatre niveaux de correction d'erreurs sélectionnables par l'utilisateur, chacun représentant un compromis différent entre capacité de données et robustesse :
- Niveau L (faible) : récupération d'environ 7 % des mots de code
- Niveau M (moyen) : environ 15 %, la valeur par défaut en pratique
- Niveau Q (quartile) : environ 25 %
- Niveau H (élevé) : environ 30 %, assez élevé pour qu'un QR de niveau H continue de fonctionner avec un logo étonnamment grand collé sur sa surface
Le coût d'une correction plus élevée est une capacité réduite : la même version physique d'un code QR contient bien moins de charge utile au niveau H qu'au niveau L, car davantage de modules sont occupés par des bits de parité.
La capacité à la version 40 : la limite supérieure
Les codes QR existent en quarante versions. La version 1 fait 21×21 modules. Chaque version successive ajoute 4 modules par côté, de sorte que la version 2 fait 25×25, la version 3 fait 29×29, jusqu'à la version 40 à 177×177 modules. Les charges utiles maximales à la version 40 avec la correction d'erreurs la plus faible (L) :
- 7 089 caractères numériques (chiffres)
- 4 296 caractères alphanumériques (chiffres, lettres majuscules, espace, quelques signes de ponctuation)
- 2 953 octets de données binaires arbitraires (ce qui englobe le texte UTF-8)
- 1 817 caractères kanji en encodage Shift JIS
Ces maximums chutent fortement avec une correction plus élevée : au niveau H, le même symbole de version 40 ne contient plus que 3 057 chiffres, 1 852 caractères alphanumériques, 1 273 octets ou 784 kanji. En pratique, les codes QR de plus de quelques centaines d'octets sont rares ; au moment où l'on atteint la version 20 environ, les modules deviennent trop petits pour être scannés de façon fiable depuis un téléphone à bout de bras sans caméra haute résolution.
Datamatrix, Aztec, PDF417 : les alternatives au QR que vous croiserez
- Le Datamatrix (fin des années 1980, ISO/IEC 16022) est un code-barres matriciel carré ou rectangulaire optimisé pour les très petits marquages, avec un seul motif de repérage en forme de L. Il domine le marquage des petites pièces (cartes de circuits imprimés, instruments chirurgicaux, doses unitaires pharmaceutiques) et la sérialisation de la directive européenne sur les médicaments falsifiés, qui, depuis 2019, exige que chaque boîte de médicament sur ordonnance porte un Datamatrix.
- L'Aztec (1995, ISO/IEC 24778) tire son nom du motif de repérage en cible placé en son centre, qui évoque une pyramide aztèque à degrés vue de dessus. Sa particularité est qu'il ne nécessite aucune zone de silence (aucune bordure vierge autour du symbole), ce qui lui permet de tenir dans des espaces exigus comme le coin d'une carte d'embarquement papier. C'est la norme pour les billets électroniques d'avion et de nombreux systèmes de train et de transport en commun en Europe.
- Le PDF417 (Symbol Technologies, 1991, ISO/IEC 15438) est techniquement un code « linéaire empilé » plutôt qu'un véritable code matriciel : plusieurs rangées de codes-barres linéaires empilées les unes au-dessus des autres. Le plus dense des quatre pour le texte ASCII simple, il peut porter plus d'un kilooctet de données ; il est utilisé au dos des permis de conduire américains (encodant l'ensemble des données de la bande magnétique, et plus encore) et sur les étiquettes d'expédition de FedEx et d'autres transporteurs.
Parmi ces quatre, les codes QR ont remporté le marché grand public pour trois raisons : la lecture omnidirectionnelle grâce aux trois repères de coin, la licence ouverte, et l'intégration profonde avec l'industrie japonaise de la téléphonie mobile à la fin des années 1990, qui leur a donné une masse critique de scanners installés avant tout concurrent.
Chronologie de la normalisation ISO
Les codes QR ont d'abord été publiés comme norme industrielle japonaise (JIS X 0510) en janvier 1999, puis comme norme internationale, ISO/IEC 18004, en juin 2000. ISO/IEC 18004:2006 (septembre 2006) l'a remplacée ; elle définissait le « QR Code 2005 », une légère extension du Modèle 2 avec des motifs d'alignement supplémentaires. ISO/IEC 18004:2015 (février 2015) a renommé le symbole simplement « QR Code » (en supprimant le suffixe de l'année), intégré des clarifications et corrigé des erreurs mineures. L'édition actuelle est ISO/IEC 18004:2024, la quatrième édition, publiée en août 2024. La norme, comme toutes les publications ISO, est vendue sous forme de PDF payant ; plusieurs implémentations open source (notamment ZXing) ont servi de références vivantes pour la spécification.
Les variantes de Denso Wave : Micro QR, iQR, SQRC, rMQR
La spécification originale de Hara de 1994 s'appelle aujourd'hui Modèle 1. Le Modèle 2, défini en 1997, est la version à laquelle la plupart des gens pensent aujourd'hui lorsqu'ils disent « code QR » ; il s'étend jusqu'à la version 40 et constitue la base de la norme ISO moderne. Le Micro QR Code n'utilise qu'un seul motif de repérage et une zone de silence plus petite, ce qui lui permet de tenir dans des espaces plus restreints. L'iQR Code, introduit par Denso Wave en 2011, offre jusqu'à 80 % de capacité de plus que le Modèle 2 ; il peut être carré ou rectangulaire, atteignant 422×422 modules et 40 000 chiffres. Le SQRC (Secure QR Code) porte deux couches : une couche publique lisible par n'importe quel scanner QR, et une couche privée chiffrée nécessitant un lecteur et une clé spéciaux. Le rMQR (Rectangular Micro QR Code) a été normalisé en 2022 sous le nom d'ISO/IEC 23941 : un hybride de Micro QR et d'iQR, bien plus large que haut, qui tient dans des bandes étroites comme le côté d'une étiquette ou le bord d'une carte de circuit imprimé.
La poussée post-COVID et la culture du paiement par QR en Chine
L'adoption du code QR en Occident a été poussive pendant la majeure partie des années 2010. Puis la COVID-19 est arrivée. L'OMS ayant déclaré la pandémie le 11 mars 2020, les restaurants, les pôles de transport et les bâtiments publics partout dans le monde avaient besoin de moyens sans contact pour partager les menus, enregistrer les visiteurs et traiter les paiements, et le code QR était la seule surface sans contact mature et sans matériel disponible. À la mi-2020, les menus en code QR étaient quasi universels dans les restaurants américains et européens. Le volume de transactions de paiement par QR à Singapour aurait augmenté d'environ 272 % d'une année sur l'autre au cours de 2021. Beaucoup de ces usages (en particulier les menus) ont reculé depuis la phase aiguë, mais la barrière culturelle au fait de scanner un QR en public a été définitivement levée.
L'autre moteur de l'adoption du QR (chronologiquement le plus ancien) est l'écosystème de paiement mobile chinois. Alipay a introduit les paiements par QR en 2011 ; le WeChat Pay de Tencent a suivi en 2014 et a dopé l'adoption avec la fonction d'« enveloppe rouge » de la fête du Printemps, passant de 30 millions à 100 millions d'utilisateurs en un mois après son lancement. En 2016, plus de 1,65 billion de dollars de transactions transitaient par les paiements en code QR en Chine. Aujourd'hui, Alipay détient environ 53 % du marché chinois du paiement mobile et WeChat Pay environ 42 %, soit ensemble près de 90 %. Plus de 90 % des paiements mobiles en Chine se font par code QR, et environ 70 % de la population les utilise régulièrement.
Quand l'Occident a obtenu la lecture native des QR
L'autre catalyseur majeur de l'adoption occidentale a été la prise en charge native par la caméra. Apple a livré iOS 11 en septembre 2017, et l'application Appareil photo de cette version reconnaissait silencieusement les codes QR par défaut, la première fois qu'un iPhone pouvait lire un QR sans installer d'application tierce. Apple n'a même pas évoqué la fonctionnalité à la WWDC 2017 ; les critiques l'ont découverte après la sortie publique. Le changement a touché plus de 700 millions d'iPhone la première année. Google a suivi : Google Lens a ajouté la prise en charge des QR en mai 2018 et a commencé à se déployer dans les applications appareil photo de dix fabricants Android ; Android 9, sorti la même année, a fait de la lecture native des QR un standard de la plateforme. En l'espace d'environ un an, l'ère des applications dédiées de « scanner QR » a effectivement pris fin.
Le quishing : la montée de l'hameçonnage par QR
La même lecture sans friction qui a rendu les codes QR utiles pendant la pandémie les a aussi rendus attrayants pour les concepteurs d'attaques par hameçonnage. Le quishing (hameçonnage par code QR) utilise une image QR intégrée dans un courriel ou un prospectus imprimé pour diffuser une URL malveillante. Comme l'URL est cachée à l'intérieur du code, les passerelles de sécurité de messagerie traditionnelles qui analysent le texte des liens ne peuvent pas l'inspecter ; comme l'utilisateur est généralement invité à scanner avec un appareil mobile personnel, l'attaque passe du réseau de l'entreprise (avec ses protections) à un téléphone (souvent sans).
L'ampleur a vite grandi. De 2021 à 2023, les scans de codes QR ont augmenté de 433 %. La part des courriels d'hameçonnage utilisant une charge utile QR est passée d'environ 0,8 % en 2021 à environ 12,4 % en 2023, puis s'est stabilisée à environ 10,8 % en 2024. En 2023, les codes QR apparaissaient dans 22 % de toutes les attaques d'hameçonnage. Environ 27 % des courriels de quishing usurpent des notifications d'authentification multifacteur ; environ 90 % visent les identifiants de connexion. Les cadres dirigeants ont 42 fois plus de risques que les employés de base de recevoir une tentative de quishing. La réponse défensive sur laquelle les équipes de sécurité se sont accordées : ne pas ouvrir automatiquement les charges utiles QR. Décodez-les, regardez l'URL en texte clair, et décidez. C'est exactement ce qu'un lecteur de QR basé sur l'image (comme celui-ci) permet à un utilisateur prudent de faire.
Les schémas d'URI que vous verrez couramment décodés
Un code QR n'est qu'une enveloppe autour d'une chaîne d'octets ; le sens de ces octets est dicté par la convention. Un petit nombre de conventions couvrent presque tout ce que l'on voit dans la nature :
- Les URL http: / https:, de loin les plus courantes.
- Les URI mailto: (avec les paramètres de requête facultatifs
?subject=et?body=) remplissent un brouillon de courriel. - Les URI tel: déclenchent un appel téléphonique.
- Les URI sms: (et l'ancienne forme SMSTO:, popularisée par NTT DoCoMo) préremplissent un message texte.
- Les URI geo: ouvrent une carte à une latitude et une longitude précises.
- WIFI: un schéma informel défini par Denso Wave, de la forme
WIFI:S:<SSID>;T:<WPA|WEP|nopass>;P:<password>;H:<true|false>;;, qui permet à un téléphone de rejoindre un réseau d'une seule pression. La bête de somme des affiches de Wi-Fi pour invités. - MECARD: (NTT DoCoMo), un format de contact compact.
- vCard (RFC 6350), la norme internationale détaillée pour les contacts, largement prise en charge malgré sa taille.
Ce lecteur affiche la charge utile décodée en texte clair. Suivre le lien ou copier le texte relève de votre décision ; rien n'est ouvert automatiquement.
Comment fonctionne le décodage côté navigateur, sous le capot
Deux bibliothèques open source dominent le décodage QR côté navigateur. jsQR, écrite par Daniel Beaver sous le pseudo GitHub « cozmo », est un portage en pur TypeScript qui prend des ImageData brutes (le tableau de pixels d'un canevas, d'une image vidéo ou d'une image téléversée) et renvoie le texte décodé. Elle n'a aucune dépendance, aucun code spécifique à une plateforme, et est assez petite pour être livrée depuis un CDN dans une seule balise de script. Cet outil utilise jsQR. L'autre option majeure est le portage JavaScript de ZXing (« Zebra Crossing »), une bibliothèque de codes-barres à l'origine en Java qui prend en charge bien plus de formats 2D et 1D que le seul QR, publiée sous les noms @zxing/library et @zxing/browser sur npm.
Une troisième voie est l'API native de la plateforme BarcodeDetector, qui fait partie de la W3C Shape Detection API et qui expose à JavaScript un lecteur de codes-barres intégré au navigateur. BarcodeDetector a été livrée activée par défaut dans Chrome 83 en mai 2020 (Microsoft Edge l'a reprise en même temps). Cependant, l'API dépend de la plateforme : elle s'appuie sur la détection de codes-barres au niveau du système d'exploitation et est entièrement prise en charge sur macOS, Android et Chrome sur Android ; Chrome sous Windows et Linux ne l'implémentent pas. Firefox et Safari ne l'ont pas livrée. La plupart des scanners QR de navigateur en production utilisent jsQR ou zxing-js comme solution de repli, appelant BarcodeDetector lorsqu'elle est disponible et le décodeur JavaScript sinon.
Plus de questions
Pourquoi utiliser cet outil plutôt que de pointer mon téléphone vers le code ?
Trois vraies raisons : (1) le QR est déjà à l'intérieur d'une image que vous avez sur votre ordinateur (une capture d'écran d'un courriel, une affiche téléchargée, une page de PDF) et le faire passer sur votre téléphone pour le scanner ajoute du frottement ; (2) le QR est suspect et vous voulez lire l'URL avant de vous engager à la suivre (c'est le cas d'usage de défense contre le quishing) ; (3) vous avez généré un QR vous-même et vous voulez vérifier la charge utile sans faire l'aller-retour par une caméra de téléphone.
Quel est le plus petit code QR qui se scanne encore de façon fiable ?
À peu près la version 1 (21×21 modules) au niveau de correction d'erreurs H, imprimée à 1 cm×1 cm ou plus, scannée par un téléphone à bout de bras sous un bon éclairage. En dessous, la résolution descend sous ce que la plupart des caméras de téléphone peuvent distinguer. Pour l'impression physique, la règle empirique est que la longueur du côté du QR devrait représenter au moins 1/10 de la distance de lecture prévue : un code de 5 cm se scanne à environ 50 cm de distance.
Mon image ne se décode pas. Que puis-je faire ?
Recadrez plus serré sur le QR (supprimez le fouillis d'arrière-plan), augmentez le contraste (les codes très pâles ne se décodent pas bien), évitez une inclinaison de perspective extrême (au-delà d'environ 30°, l'étape de correction de perspective se dégrade), et vérifiez que les trois grands motifs de repérage en carrés concentriques sont intacts. Si un seul des trois repères de coin est manquant ou masqué, le décodeur ne peut pas établir l'orientation. Si le QR a un logo intégré au centre, il devrait quand même fonctionner du moment que la source a été générée au niveau de correction d'erreurs H.
L'URL de ce QR est-elle sûre à suivre ?
Cet outil décode l'URL mais ne la juge pas. Regardez le domaine attentivement : correspond-il à la marque que le QR prétend représenter ? Est-ce un raccourcisseur d'URL (bit.ly, tinyurl, etc.) qui masque la destination réelle ? Si quelque chose semble louche (un domaine mal orthographié, un TLD inconnu, une adresse IP, une URL anormalement longue), traitez-le comme vous le feriez d'un lien de courriel suspect. Tout l'intérêt de décoder avant de scanner est de vous donner une chance de porter ce jugement.