REFERENCE
TERMS THE EXHIBITS ASSUME
The vocabulary, in one place.
Exhibit 01 opens with “pad codewords after the terminator.” Three terms, before anything has been explained. Everything the exhibits assume is defined here, with a note on why each one matters rather than only what it means.
NO PRIOR KNOWLEDGE ASSUMED / LINKS TO THE EXHIBIT THAT USES EACH TERM
01 / READING THE SYMBOL
Structure
What the black squares are arranged into. QR anatomy shows each of these on a live symbol.
- Module
- One square of the symbol, light or dark. The smallest unit of a QR code. Not the same as a pixel — one module is usually printed or displayed as many pixels, which is what makes structure below module scale possible.
- Version
- The size of the symbol, from 1 to 40. Version 1 is 21×21 modules and each version adds 4 to each side. A longer message, or a higher error-correction level, forces a higher version.
- Quiet zone
- The blank margin of at least four modules around the symbol. A reader needs it to locate the edges; without it, scanning becomes unreliable.
- Finder pattern
- The three large concentric squares at the corners. They give a reader the symbol's position, orientation and scale before any data is read.
- Timing pattern
- The alternating light and dark line running between finder patterns. It establishes where the module grid falls, so a reader can sample each module's centre.
- Alignment pattern
- Smaller concentric squares that appear from version 2 onward. They let a reader correct for perspective and surface distortion across a large symbol.
- Format information
- A short protected field recording the error-correction level and which mask was applied. It is stored twice and carries its own error correction, because a reader cannot decode anything else until it reads this.
- Mask
- One of eight patterns XORed over the data modules to avoid large blank areas or accidental finder-like shapes. The standard scores candidates by penalty and recommends the lowest, but the choice is an implementation behaviour — which is why it shows up in encoder fingerprints.
02 / THE DATA LAYER
Message and encoding
Where most of the hiding in these exhibits happens.
- Codeword
- One byte — eight bits — of the symbol's data stream. Capacity, padding and error correction are all counted in codewords rather than in characters.
- Mode
- How a run of characters is encoded: numeric, alphanumeric, byte, or kanji. Denser modes fit more characters per codeword, so
8675309costs far less in numeric mode than in byte mode. - Segment
- A run of characters encoded in a single mode. A mixed payload can be split into segments in many different, equally valid ways — the basis of exhibit 02.
- Terminator
- Up to four
0bits marking the end of the message. An ordinary decoder stops here and never looks at what follows, which is exactly why what follows can be used. - Pad codeword
- The bytes that fill the remaining capacity after the terminator. The standard prescribes alternating
0xECand0x11. Because the value is prescribed, any other value is both usable as a channel and trivially detectable — see exhibit 01.
03 / ERROR CORRECTION
Reed–Solomon
The reason a damaged QR code still scans — and a place to hide.
- Reed–Solomon code
- The error-correcting code QR uses. It works over codewords, not individual bits, and can repair a bounded number of wrong codewords per block. A single flipped module corrupts one codeword, so it costs one unit of the correction budget.
- Error-correction level
- One of L, M, Q or H, recovering roughly 7%, 15%, 25% and 30% of codewords. Higher levels survive more damage but leave less room for the message, so raising the level can force a higher version.
- Block
- Larger symbols split the data into several blocks, each with its own parity codewords. Correction budgets are per block, so five errors spread across five blocks are far more survivable than five in one.
- Parity codeword
- The redundant codewords Reed–Solomon adds. Checking them without correcting is how an analyst detects deliberate errors that a normal reader would silently repair — the mechanism in exhibit 03.
- Error vs erasure
- An error is a wrong codeword at an unknown position; an erasure is a wrong codeword whose position is already known. Erasures cost half as much of the budget, because the decoder only has to solve for the value.
04 / HIDING
Steganography
Concealment, which is not the same thing as confidentiality. Encryption makes a message unreadable; steganography tries to make it unnoticed.
- Cover
- The ordinary-looking object that carries the hidden message. Here, a valid QR code that scans normally.
- Payload
- The hidden message itself, as distinct from the overt message the scanner returns.
- Capacity
- How much payload a given channel can carry. Usually small, and usually traded against robustness or detectability.
- Embedding
- Modifying a cover so that it carries a payload. Modification is measurable in principle, which is what makes embedding detectable in principle.
- Representation choice
- Hiding by selecting among encodings that are all valid and all decode identically, rather than by modifying one. Nothing is altered, so there is no modification to measure — but the distribution of choices can still betray it, as exhibit 11 shows.
- Visual secret sharing
- Splitting an image into shares that individually reveal nothing and only reconstruct when combined. Exhibit 06 puts one share in each of two scannable QR codes.
- Shadow / share
- One piece of a visual secret sharing split. A single shadow is designed to look like noise.
05 / DETECTION
Steganalysis and evidence
Finding hidden information, and knowing what a finding is worth.
- Steganalysis
- Detecting the presence of hidden information. Note that this is a weaker goal than recovering it, and usually the only one that is achievable.
- Regeneration and compare
- Decode a received symbol, re-encode the same payload with a reference encoder, and compare. Differences are suspicious — but only if the reference encoder makes the same legal choices as the issuer did. See exhibit 08.
- Sensitivity
- The proportion of hidden symbols a detector catches. Also called the true positive rate or recall.
- Specificity
- The proportion of clean symbols a detector correctly leaves alone. When hiding is rare, this matters far more than sensitivity.
- False positive
- A clean symbol that alarms. In QR steganalysis the commonest cause is not malice but an innocent encoder making different legal choices.
- Base rate
- How often the thing being searched for actually occurs in the population being searched. Also called prevalence. It is a property of the traffic, never of the instrument.
- Precision
- Of the symbols that alarm, the proportion that really are hidden. Also called positive predictive value. This is what an alarm is worth, and it depends on the base rate — exhibit 13 is entirely about this number.
- Confusion matrix
- A table of true class against predicted class. The off-diagonal cells, not the headline accuracy, are where a classifier's real weaknesses are visible — as in exhibit 10.
06 / LABELS ON THIS SITE
What the exhibit tags mean
Every exhibit states how much of it is real.
- LIVE
- The mechanism is implemented in this browser and the QR output is genuine. You can save the symbol and scan it with an ordinary phone.
- MODEL
- A teaching model. The cited physical or cryptographic technique is not reproduced exactly, and the exhibit says which part is simplified.
- DATA
- The exhibit reports a measured result produced by this repository's own experiments rather than demonstrating a published technique. The method, the sample and the limitations are stated with the number.
Citations carry a second, independent label recording how far each reference was actually verified — FULL, META, BIB or 2ND. Those are defined on the research record.