Outil pour décoder le code-barres 39. Le Code 39 (ou Code 3 sur 9, ou Alpha39) est une norme de code-barres qui est progressivement remplacée par le Code 128.
Code Barres 39 - dCode
Catégorie(s) : Codage de Caractères, Traitement d'Image
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
Le chiffrement utilise une table de codage avec 43 caractères : les 26 lettres majuscules, les 10 chiffres et quelques caractères spéciaux (-, ., $, /, +, % et ' ' (espace). Le caractère * peut apparaitre mais il n'existe pas, il est simplement utilisé comme caractère de début et de fin.
Chaque caractère comprend 5 barres noires et 4 barres blanches (soit 9 éléments en tout) en commencant par noir et en alternant blanc et noir. Chaque bande peut avoir 2 largeurs : fine ou large (généralement 3 fois plus large), ainsi il est donc possible de binariser le code (| pour les bandes fines, et ▮ pour les bandes larges). Or, dans ces 9 éléments il y en a systématiquement 3 bandes sont plus larges, d'ou le nom du code 39.
Un code-barre 39 commence par * et se termine par *. Voici la table de correspondance des caractères :
0 | |||▮▮|▮|| | 1 | ▮||▮||||▮ |
2 | ||▮▮||||▮ | 3 | ▮|▮▮||||| |
4 | |||▮▮|||▮ | 5 | ▮||▮▮|||| |
6 | ||▮▮▮|||| | 7 | |||▮||▮|▮ |
8 | ▮||▮||▮|| | 9 | ||▮▮||▮|| |
A | ▮||||▮||▮ | B | ||▮||▮||▮ |
C | ▮|▮||▮||| | D | ||||▮▮||▮ |
E | ▮|||▮▮||| | F | ||▮|▮▮||| |
G | |||||▮▮|▮ | H | ▮||||▮▮|| |
I | ||▮||▮▮|| | J | ||||▮▮▮|| |
K | ▮||||||▮▮ | L | ||▮||||▮▮ |
M | ▮|▮||||▮| | N | ||||▮||▮▮ |
O | ▮|||▮||▮| | P | ||▮|▮||▮| |
Q | ||||||▮▮▮ | R | ▮|||||▮▮| |
S | ||▮|||▮▮| | T | ||||▮|▮▮| |
U | ▮▮||||||▮ | V | |▮▮|||||▮ |
W | ▮▮▮|||||| | X | |▮||▮|||▮ |
Y | ▮▮||▮|||| | Z | |▮▮|▮|||| |
- | |▮||||▮|▮ | . | ▮▮||||▮|| |
|▮▮|||▮|| | $ | |▮|▮|▮||| | |
/ | |▮|▮|||▮| | + | |▮|||▮|▮| |
% | |||▮|▮|▮| | * | |▮||▮|▮|| |
Une bande large est 3 fois plus épaisse qu'une bande fine.
Exemple : Une bande fine noire serait codée 1 et une bande noire large sera codée 111.
Exemple : *A* se code |▮||▮|▮||▮||||▮||▮ |▮||▮|▮|| soit en binaire 1 000 1 0 111 0 111 0 1 0 111 0 1 0 1 000 1 0 111 0 1 000 1 0 111 0 111 0 1 0
Le déchiffrement nécessite de réaliser une lecture des barres et d'utiliser la table de codage du code 39.
De nombreux logiciels pour smartphone ou des douchettes laser peuvent faciliter ce travail.
Exemple : Le message est |▮||▮|▮|| ||||▮▮||▮ ▮|▮||▮||| ▮|||▮||▮| ||||▮▮||▮ ▮|||▮▮||| |▮||▮|▮|| (alternance de bandes noires et blanches), repérer |▮||▮|▮|| au début et à la fin ce qui indique bien le code 39. Puis remplacer chaque groupe de 9 barres par leur correspondant dans la table. Le message clair est DCODE.
La somme de controle est manquante dans cet exemple
Associer à chaque caractère la valeur de sa position dans l'alphabet de 43 caractères 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%* (en partant de 0)
Faire la somme de ces valeurs et calculer le résultat modulo 43. Le caractère de controle est celui en position (somme%43) dans l'alphabet.
Le code barre a une forme graphique classique (des traits noirs et blancs) ou bien un équivalent binaire (des 1 ou N pour des noirs et des 0 ou B pour des traits blancs).
Le code-barre peut avoir une longueur variable. Il commence et se termine par le caractère *.
Le code-barres a est constitué de traits par groupes de 9 dont 3 sont plus larges, d'où le nom 3 sur 9 ou 39.
dCode se réserve la propriété du code source pour "Code Barres 39". Sauf code licence open source explicite (indiqué Creative Commons / gratuit), l'algorithme pour "Code Barres 39", l'applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou les fonctions liées à "Code Barres 39" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou les données, en téléchargement, script, ou les accès API à "Code Barres 39" ne sont pas publics, idem pour un usage hors ligne, PC, mobile, tablette, appli iPhone ou Android !
Rappel : dCode est gratuit.
Le copier-coller de la page "Code Barres 39" ou de ses résultats est autorisée (même pour un usage commercial) tant que vous créditez dCode !
L'exportation des résultats sous forme de fichier .csv ou .txt est gratuite en cliquant sur l'icone export
Citer comme source bibliographique :
Code Barres 39 sur dCode.fr [site web en ligne], consulté le 21/11/2024,