La norme QR code ISO/IEC 18004, expliquée
Les QR codes sont définis par une norme internationale ouverte, ISO/IEC 18004. Voici ce que couvre cette norme et pourquoi elle compte.
La norme ISO/IEC 18004 est le règlement commun qui fait fonctionner les QR codes partout — elle définit exactement comment un QR code est construit, encodé et décodé, afin que tout scanner conforme sur Terre puisse lire tout code conforme.
Chaque fois que vous scannez un QR code sur une affiche dans un pays avec un téléphone acheté dans un autre, vous vous fiez à un accord invisible consigné dans un document appelé ISO/IEC 18004. C'est la raison pour laquelle un QR code n'est pas un gadget propriétaire mais une véritable norme ouverte. Décortiquons ce que cette norme dit réellement, et pourquoi le fait d'en avoir une compte tant. 🐾
Qu'est-ce que l'ISO/IEC 18004 ?
L'ISO/IEC 18004 est la norme internationale qui spécifie la symbologie QR Code — le nom technique du « langage » du QR code. Elle est publiée conjointement par l'Organisation internationale de normalisation (ISO) et la Commission électrotechnique internationale (IEC), les deux organismes qui maintiennent la plupart des normes mondiales des technologies de l'information.
La première édition a été publiée en 2000, quelques années seulement après l'invention du QR code par Denso Wave en 1994. Elle a été révisée depuis pour ajouter de nouvelles fonctionnalités et clarifier des détails, mais le cœur est resté remarquablement stable. Comme le format est figé dans une norme ouverte, un code que vous générez aujourd'hui se scannera encore dans des décennies — aucun fournisseur ne peut discrètement changer les règles sous vos pieds.
Que définit réellement la norme ?
Une norme comme celle-ci a une grande mission : supprimer l'ambiguïté. Si deux ingénieurs aux antipodes la suivent tous les deux, leur encodeur et leur décodeur s'accorderont parfaitement. Pour cela, l'ISO/IEC 18004 fixe chaque couche d'un QR code.
- Structure du symbole — les tailles (appelées versions), la grille de modules et les motifs de fonction fixes comme les motifs de repérage, de synchronisation et d'alignement.
- Encodage des données — comment le texte et les nombres deviennent des bits, à l'aide des modes numérique, alphanumérique, octet et Kanji.
- Correction d'erreurs — le schéma Reed–Solomon et les quatre niveaux (L, M, Q, H) qui permettent de lire des codes endommagés.
- Masquage des données — les huit motifs de masque qui gardent les pixels uniformément mélangés pour ne pas dérouter les scanners.
- Informations de format et de version — les petites zones protégées qui indiquent au lecteur le niveau d'erreur, le masque et la taille.
- Un algorithme de décodage de référence — une recette pas à pas qu'un scanner peut suivre pour reconvertir une image en données d'origine.
Si vous voulez une visite conviviale de ces zones physiques, notre guide sur l'anatomie d'un QR code nomme chaque partie, et comment fonctionnent les QR codes parcourt tout le scan.
Structure : versions, modules et motifs de fonction
La norme définit les QR codes en versions de 1 à 40. La version 1 est une grille de 21×21 modules (les petits carrés) ; chaque palier ajoute quatre modules par côté, de sorte que la version 40 atteint un imposant 177×177. Plus la version est grande, plus elle contient de données.
Au sein de chaque symbole, certaines zones sont réservées. Les trois grands motifs de repérage d'angle permettent à un scanner de localiser et d'orienter le code ; les motifs de synchronisation en pointillés servent de règle ; et les motifs d'alignement (à partir de la version 2) aident à corriger l'inclinaison et la déformation. La norme précise exactement où se situe chacun d'eux, afin que les décodeurs sachent toujours où regarder.
Encodage : transformer le texte en bits
L'ISO/IEC 18004 définit quatre modes d'encodage principaux, chacun ajusté à un type de contenu différent. Le mode numérique tasse les chiffres de manière serrée (10 bits pour 3 chiffres), l'alphanumérique gère un jeu de 45 caractères (11 bits pour 2 caractères), le mode octet porte des octets arbitraires comme du texte UTF-8, et le mode Kanji stocke de façon compacte les caractères japonais (13 bits chacun). Un encodeur peut même changer de mode en cours de message pour rester efficace. Notre analyse approfondie des modes d'encodage des QR codes montre comment cela fonctionne, et l'encodage des caractères et les QR codes couvre le versant textuel.
Une bonne norme ne se contente pas de dire « stockez les données ». Elle dit exactement quel bit va où — c'est cette précision qui rend l'interopérabilité mondiale possible.
Correction d'erreurs : la référence pour la fiabilité
L'une des contributions les plus précieuses de la norme est un schéma rigoureux de correction d'erreurs fondé sur les codes Reed–Solomon. Elle définit quatre niveaux de protection — environ 7 % (L), 15 % (M), 25 % (Q) et 30 % (H) du code récupérable — et précise exactement comment les octets de récupération sont calculés et entrelacés avec vos données. C'est le calcul qui se cache derrière les QR codes qui se scannent encore lorsqu'ils sont rayés, tachés ou partiellement recouverts d'un logo. Voyez la correction d'erreurs des QR codes et la correction d'erreurs Reed–Solomon pour les détails, sans l'algèbre lourde.
L'algorithme de décodage de référence
Un aspect subtil mais important de l'ISO/IEC 18004 est qu'elle décrit une procédure de décodage de référence : localiser les motifs de repérage, construire la grille d'échantillonnage, lire les informations de format, retirer le masque, extraire les mots de code, exécuter la correction d'erreurs et enfin interpréter les données selon leur mode. Publier cette recette signifie que chaque fabricant de scanner part de la même compréhension de ce à quoi ressemble « le correct », ce qui explique pourquoi la qualité de lecture est si constante d'un appareil bon marché à un appareil coûteux.
Éditions et modèles
La famille QR s'est étoffée au fil du temps, et la norme a grandi avec elle. Le dessin original de 1994 s'appelle désormais Model 1. La version utilisée presque partout aujourd'hui est le Model 2, qui a ajouté des motifs d'alignement et d'autres raffinements pour une meilleure lecture aux grandes tailles. Des éditions ultérieures de l'ISO/IEC 18004 ont aussi introduit le Micro QR, une variante compacte à repère unique pour les espaces minuscules.
D'autres membres de la famille — comme le rMQR rectangulaire et l'iQR à haute densité — sont couverts par leurs propres normes apparentées mais partagent le même ADN. Notre guide sur les variantes du QR code présente tout le clan.
Pourquoi les normes ouvertes comptent
Il est facile de tenir l'interopérabilité pour acquise, mais c'est tout l'enjeu. Parce que le QR est défini par une norme ouverte et publiée plutôt que par un format secret :
- N'importe qui peut construire un encodeur ou un décodeur sans autorisation ni obstacles de licence.
- Les codes sont pérennes — les règles ne peuvent pas être révoquées par une seule entreprise.
- La concurrence se joue sur la qualité et les fonctionnalités, pas sur l'enfermement des utilisateurs.
- Un code créé avec un outil se lit parfaitement sur le scanner de n'importe quel autre outil.
Cette ouverture est précisément ce qui permet à un projet comme QR Puppy d'exister : le format appartient à tout le monde. Nous générons des codes statiques simples et conformes à la norme, sans suivi ni expiration — lisez notre manifeste si vous voulez savoir pourquoi cela nous tient à cœur. La propriété de la technologie mérite d'être comprise aussi ; voyez à qui appartient le QR code.
Où la norme se situe parmi ses cousines
Les QR codes ne sont pas la seule symbologie 2D à avoir un foyer ISO. Le Data Matrix vit dans l'ISO/IEC 16022, le PDF417 dans l'ISO/IEC 15438 et l'Aztec dans l'ISO/IEC 24778. Chacun a été normalisé afin que différents secteurs — logistique, aviation, santé — puissent s'appuyer sur un format stable et partagé. Si vous comparez les options, nos articles sur QR code contre Data Matrix et les codes Aztec et PDF417 les mettent côte à côte.
Envie de voir la norme à l'œuvre ? Vous pouvez créer un QR code gratuit avec QR Puppy — entièrement conforme à l'ISO/IEC 18004, et à vous pour toujours.
Questions fréquentes
L'ISO/IEC 18004 est-elle gratuite à lire ?
La technologie QR qu'elle décrit est libre d'utilisation, mais le document officiel de la norme lui-même est vendu par l'ISO et les organismes de normalisation nationaux, comme la plupart des publications ISO. La bonne nouvelle, c'est que vous n'avez pas besoin de l'acheter pour créer ou scanner des codes — d'innombrables bibliothèques open source l'implémentent déjà fidèlement.
Quelle est la différence entre Model 1 et Model 2 ?
Le Model 1 est le QR code original de 1994. Le Model 2 est la version raffinée utilisée presque universellement aujourd'hui ; il a ajouté des motifs d'alignement et d'autres ajustements qui rendent les codes plus grands plus fiables à lire. Quand les gens disent « QR code », ils désignent presque toujours le Model 2.
Suivre la norme signifie-t-il que chaque QR code est identique ?
Non — cela signifie que chaque code est compatible. Deux codes peuvent contenir des données différentes, utiliser des tailles, des niveaux d'erreur et des masques différents, tout en restant lisibles par le même scanner parce qu'ils obéissent tous au même règlement.
Qui maintient la norme ?
L'ISO et l'IEC la maintiennent conjointement par l'intermédiaire de leurs comités techniques, avec l'apport d'experts du secteur. Elle est révisée périodiquement et mise à jour lorsque de nouvelles fonctionnalités ou clarifications sont nécessaires, tout en préservant la rétrocompatibilité.
Le Micro QR et le rMQR font-ils partie de l'ISO/IEC 18004 ?
Le Micro QR est inclus dans la norme QR Code. Le rMQR rectangulaire et l'iQR à haute densité sont définis dans leurs propres normes étroitement apparentées mais viennent de la même famille et des mêmes principes de conception. Consultez notre guide sur les variantes du QR code pour la liste complète.
Créez un QR code de façon honnête 🐾
Gratuit pour toujours, sans suivi, sans expiration — généré directement dans votre navigateur.