Tool to decrypt/encrypt with barcodes 128. Code 128 is a normalized barcode system which is described in EAN-128 (or GS1-128).
Barcode 128 - dCode
Tag(s) : Character Encoding, Image Processing
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
Encryption uses the EAN-128 barcode coding standard which includes 3 encoding tables: the 128A, 128B and 128C codes.
The barcode therefore includes alternate black and white lines of variable width (between 1 and 4).
The code starts with Start and ends with End, between are the characters to encrypt each represented by 6 bars (3 blacks and 3 whites).
Example: DCODE is written with 128B barcode Start, D, C, O, D, E, End thus 211214,112313,131321,133121,112313,132113,2331112
Normally the code 128 includes a checksum (modulo 103).
Decryption requires performing a reading of the bar according to EAN-128 standard. Many app for smartphones facilitate this work.
Example: a barcode has for raw message 2112141123131313211331211123131321132331112
Check the first 6 digits (corresponding to the first 3 black bars and 3 white bars)
Example: 211214 that stands for the Start code for 128B.
Split the message each 6 characters and translate them.
Example: 112313 for character d, then 131321, etc. The message contained in the bar code is dCode.
The barcode may have a conventional graphical form (black and white lines similar to zebra's stripes) or a binary equivalent (of 0 to vacuum and 1 white bars) or a base 4 code (1,2,3 and 4 for the size of the bar, alternating black and white).
The bar code may have a variable length. It begins (usually) by Start and ends with the character End (see table).
Coding table 128A has ASCII characters from 00 to 95.
Coding table 128B has ASCII characters from 32 to 127.
Coding table 128C has all numeric values from 00 to 99.
id | bands | 128A | 128B | 128C |
---|---|---|---|---|
0 | 212222 | space | space | 00 |
1 | 222122 | ! | ! | 01 |
2 | 222221 | " | " | 02 |
3 | 121223 | # | # | 03 |
4 | 121322 | $ | $ | 04 |
5 | 131222 | % | % | 05 |
6 | 122213 | & | & | 06 |
7 | 122312 | 07 | ||
8 | 132212 | ( | ( | 08 |
9 | 221213 | ) | ) | 09 |
10 | 221312 | * | * | 10 |
11 | 231212 | + | + | 11 |
12 | 112232 | , | , | 12 |
13 | 122132 | - | - | 13 |
14 | 122231 | . | . | 14 |
15 | 113222 | / | / | 15 |
16 | 123122 | 0 | 0 | 16 |
17 | 123221 | 1 | 1 | 17 |
18 | 223211 | 2 | 2 | 18 |
19 | 221132 | 3 | 3 | 19 |
20 | 221231 | 4 | 4 | 20 |
21 | 213212 | 5 | 5 | 21 |
22 | 223112 | 6 | 6 | 22 |
23 | 312131 | 7 | 7 | 23 |
24 | 311222 | 8 | 8 | 24 |
25 | 321122 | 9 | 9 | 25 |
26 | 321221 | : | : | 26 |
27 | 312212 | ; | ; | 27 |
28 | 322112 | < | < | 28 |
29 | 322211 | = | = | 29 |
30 | 212123 | > | > | 30 |
31 | 212321 | ? | ? | 31 |
32 | 232121 | @ | @ | 32 |
33 | 111323 | A | A | 33 |
34 | 131123 | B | B | 34 |
35 | 131321 | C | C | 35 |
36 | 112313 | D | D | 36 |
37 | 132113 | E | E | 37 |
38 | 132311 | F | F | 38 |
39 | 211313 | G | G | 39 |
40 | 231113 | H | H | 40 |
41 | 231311 | I | I | 41 |
42 | 112133 | J | J | 42 |
43 | 112331 | K | K | 43 |
44 | 132131 | L | L | 44 |
45 | 113123 | M | M | 45 |
46 | 113321 | N | N | 46 |
47 | 133121 | O | O | 47 |
48 | 313121 | P | P | 48 |
49 | 211331 | Q | Q | 49 |
50 | 231131 | R | R | 50 |
51 | 213113 | S | S | 51 |
52 | 213311 | T | T | 52 |
53 | 213131 | U | U | 53 |
54 | 311123 | V | V | 54 |
55 | 311321 | W | W | 55 |
56 | 331121 | X | X | 56 |
57 | 312113 | Y | Y | 57 |
58 | 312311 | Z | Z | 58 |
59 | 332111 | [ | [ | 59 |
60 | 314111 | \ | \ | 60 |
61 | 221411 | ] | ] | 61 |
62 | 431111 | ^ | ^ | 62 |
63 | 111224 | _ | _ | 63 |
64 | 111422 | NUL | ` | 64 |
65 | 121124 | SOH | a | 65 |
66 | 121421 | STX | b | 66 |
67 | 141122 | ETX | c | 67 |
68 | 141221 | EOT | d | 68 |
69 | 112214 | ENQ | e | 69 |
70 | 112412 | ACK | f | 70 |
71 | 122114 | BEL | g | 71 |
72 | 122411 | BS | h | 72 |
73 | 142112 | HT | i | 73 |
74 | 142211 | LF | j | 74 |
75 | 241211 | VT | k | 75 |
76 | 221114 | FF | l | 76 |
77 | 413111 | CR | m | 77 |
78 | 241112 | SO | n | 78 |
79 | 134111 | SI | o | 79 |
80 | 111242 | DLE | p | 80 |
81 | 121142 | DC1 | q | 81 |
82 | 121241 | DC2 | r | 82 |
83 | 114212 | DC3 | s | 83 |
84 | 124112 | DC4 | t | 84 |
85 | 124211 | NAK | u | 85 |
86 | 411212 | SYN | v | 86 |
87 | 421112 | ETB | w | 87 |
88 | 421211 | CAN | x | 88 |
89 | 212141 | EM | y | 89 |
90 | 214121 | SUB | z | 90 |
91 | 412121 | ESC | { | 91 |
92 | 111143 | FS | | | 92 |
93 | 111341 | GS | } | 93 |
94 | 131141 | RS | ~ | 94 |
95 | 114113 | US | DEL | 95 |
96 | 114311 | FNC3 | FNC3 | 96 |
97 | 411113 | FNC2 | FNC2 | 97 |
98 | 411311 | ShiftB | ShiftA | 98 |
99 | 113141 | CodeC | CodeC | 99 |
100 | 114131 | CodeB | FNC4 | CodeB |
101 | 311141 | FNC4 | CodeA | CodeA |
102 | 411131 | FNC1 | FNC1 | FNC1 |
103 | 211412 | Start A | Start A | Start A |
104 | 211214 | Start B | Start B | Start B |
105 | 211232 | Start C | Start C | Start C |
106 | 2331112 | Stop | Stop | Stop |
Other than 128a, 128b and 128c variants, some other norms of barcodes exists such as EAN 8, EAN 13, Code 39, Code 93 or postal barcodes.
The vast majority of barcode standards are accepted by optical (laser) scanners or their software.
A barcode-128 encodes any string, this string can be anything and can mean anything... If the string is a number, this number can be an id in some database (usually the case for barcode of products), but without the database, it is only a number...
dCode shares a character font file (ttf font) here (link) (unknown source, unknown licence)
dCode retains ownership of the online 'Barcode 128' tool source code. Except explicit open source licence (indicated CC / Creative Commons / free), any 'Barcode 128' algorithm, applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, translator), or any 'Barcode 128' function (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and no data download, script, copy-paste, or API access for 'Barcode 128' will be for free, same for offline use on PC, tablet, iPhone or Android ! dCode is free and online.
Please, check our dCode Discord community for help requests!
NB: for encrypted messages, test our automatic cipher identifier!
Thanks to your feedback and relevant comments, dCode has developed the best 'Barcode 128' tool, so feel free to write! Thank you!