Tool to decrypt/encrypt with a barcodes 128 generator, 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!
Barcode 128 is a type of barcode used to encode alphanumeric data in a representation of black and white stripes. It can store a large number of characters and is widely used in industry, logistics, and inventory management. 128 barcodes follow the EAN-128 coding standard (international standard) which describes how to encode the 128 ASCII characters (hence its name). The standard describes 3 coding tables: code 128A, code 128B and code 128C.
Encoding with 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 or Stop (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/End | Stop/End | Stop/End |
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 (unknown source, unknown licence)
dCode retains ownership of the "Barcode 128" source code. Except explicit open source licence (indicated Creative Commons / free), the "Barcode 128" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or the "Barcode 128" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "Barcode 128" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!
Reminder : dCode is free to use.
The copy-paste of the page "Barcode 128" or any of its results, is allowed (even for commercial purposes) as long as you credit dCode!
Exporting results as a .csv or .txt file is free by clicking on the export icon
Cite as source (bibliography):
Barcode 128 on dCode.fr [online website], retrieved on 2024-12-21,