NODE 734 — TERMINAL RELAY

machine-to-machine cipher relay · decode to create

1 2 3 4 5 6 7
difficulty levels — click green to claim

> IRISCODE / IRIS RECOGNITION

iris field: biometrics / computer vision algorithm: Daugman's IrisCode (1993) code size: 256 bytes (2048 bits)

The idea in plain English: The iris is the colored ring of the eye surrounding the pupil. Its texture — crypts, furrows, freckles, rings, and colobomata — forms a pattern that is highly unique (even between identical twins) and stable through a person's entire life. John Daugman's algorithm (1993, University of Cambridge) converts the iris into a 256-byte binary code called the IrisCode. It works by unwrapping the iris into a rectangular image (rubber-sheet normalization), then applying Gabor wavelet demodulation at multiple scales and orientations to extract phase information. The result is a compact binary signature that can be matched using simple bitwise XOR and population count (Hamming distance). A single iris scan is matched against millions in under a second.

Why this really exists: Iris recognition is the most accurate biometric for identification — not matching, but identification (1:many search). A well-taken iris scan has a false-match rate of 1 in several billion, making it suitable for national ID systems where each person must be uniquely identified. Retina scanning (looking at blood vessels in the back of the eye) was an earlier technology from the 1980s — it required the user to press their eye against a cupped sensor, was invasive, and raised health concerns. Iris recognition is non-contact, works from 10 cm to 2 meters away, and can be captured through eyeglasses or contact lenses. The UAE Iris Guard system has enrolled over 2 million iris codes and screens every person entering the country — identifying expelled deportees attempting re-entry under false identities.

▸ Daugman's Iris Recognition Algorithm (1993)

The algorithm consists of four stages:

===== STAGE 1: IMAGE ACQUISITION =====
 • Near-infrared camera captures the eye (700–900 nm)
 • NIR illuminates melanin-independent iris texture (visible light iris patterns
   depend on eye color, NIR reveals structural detail in dark irises too)
 • Typical image: 640×480 pixels, eye occupies ~200 pixels in diameter

===== STAGE 2: IRIS LOCALIZATION =====
 • Find the pupil boundary (inner circle) and iris boundary (outer circle)
 • Used Daugman's integro-differential operator — finds circles where the
   intensity gradient is maximized along the circular boundary
 • Refined with edge detection + circular Hough transform in modern implementations

===== STAGE 3: RUBBER-SHEET NORMALIZATION =====
 • The iris is unwrapped from a circle to a rectangle (polar → Cartesian)
 • Dimension: 512 pixels (angular) × 64 pixels (radial) = 32,768 pixels
 • Rubber-sheet model accounts for pupil dilation changes — if the pupil
   constricts or dilates, the iris stretches/compresses proportionally
 • Coordinates: I(x(ρ,θ), y(ρ,θ)) → (θ, ρ) where θ = [0, 2π], ρ = [0, 1]

===== STAGE 4: IRISCODE ENCODING (GABOR WAVELET DEMODULATION) =====
 • Apply 2D Gabor wavelets at each (θ, ρ) location in the unwrapped iris
 • Gabor wavelet: a sinusoid modulated by a Gaussian envelope
 • Multiple scales (8 spatial frequencies) and 4 orientations per location
 • Demodulate (multiply by wavelet) to extract the phase of the response
 • Quantize each phase to 2 bits (e.g., quadrant of the complex plane)
 • Result: 32,768 pixels × 2 bits = 65,536 bits = 8,192 bytes raw
 • Final IrisCode: 2,048 bits = 256 bytes (after compression/selection)

The key insight: phase information is used rather than amplitude. Phase is invariant to illumination contrast, camera gain, and shadow — making the IrisCode robust to lighting changes. Amplitude varies with lighting; phase does not (for a linear system).

▸ Gabor Wavelet Demodulation (In Detail)

This is directly related to the gabor-wavelet puzzle type used elsewhere in this website. A Gabor wavelet is defined as:

G(x,y) = exp(-π[(x-x₀)²/α² + (y-y₀)²/β²]) × exp(-2πi[u₀(x-x₀) + v₀(y-y₀)])

===== COMPONENTS =====
 • Gaussian envelope: (x₀, y₀) center, α/β = spatial extent
 • Complex sinusoid: (u₀, v₀) = spatial frequency in x and y
 • The Gaussian localizes the sinusoid — extracting frequency info at a specific location

===== DEMODULATION =====
 • Convolve the unwrapped iris patch with the Gabor wavelet
 • Result is a complex number: z = a + bi (real + imaginary)
 • The phase is: φ = atan2(b, a)
 • Quantize φ into 2 bits based on which quadrant:
   Quadrant 1 (0 to π/2) → bits [0, 1] = [0, 0]
   Quadrant 2 (π/2 to π) → bits [0, 1] = [0, 1]
   Quadrant 3 (π to 3π/2) → bits [0, 1] = [1, 1]
   Quadrant 4 (3π/2 to 2π) → bits [0, 1] = [1, 0]

Multiple Gabor filters at different scales (8 frequencies) and orientations (typically 4) are applied at each spatial location. The final IrisCode is the concatenation of all 2-bit phase quantizations across all filters and all locations — typically 2,048 bits (256 bytes).

▸ IrisCode Matching (Hamming Distance)

Matching two IrisCodes is extremely fast — pure bitwise operations:

===== MATCHING =====
code_A: 256 bytes (2048 bits)
code_B: 256 bytes (2048 bits)
mask_A: 256 bytes (bitmask — bits where code_A was reliably measured)
mask_B: 256 bytes (bitmask — bits where code_B was reliably measured)

HD = POPCOUNT( (code_A XOR code_B) AND mask_A AND mask_B )
     ÷ POPCOUNT( mask_A AND mask_B )

===== DECISION =====
if HD < 0.30 → the codes are from the SAME iris (match)
if HD > 0.35 → the codes are from DIFFERENT irises (no match)
Between 0.30–0.35 → uncertain, may need re-capture

===== STATISTICS =====
 • Hamming distance between different irises ≈ 0.50 (theoretical mean)
 • Hamming distance between same iris (same person, different captures) ≈ 0.08–0.15
 • False match rate at HD = 0.30: ~1 in 10⁹ (one in a billion)
 • False non-match rate at HD = 0.30: ~1 in 10³ (depends on capture quality)

Note the mask — parts of the iris may be occluded by eyelids, eyelashes, reflections, or contact lens edges. The mask flags unreliable bits so they are excluded from the comparison. Without the mask, occluded regions would add random noise and inflate the Hamming distance.

▸ Iris Recognition vs. Retina Scanning

These are often confused but are entirely different technologies:

PropertyIris RecognitionRetina Scanning
What it scansIris — the colored muscle around the pupilRetina — blood vessel layer at the back of the eye
Contact?Non-contact (10 cm to 2 m)Contact (eye must be ~2 cm from sensor)
Capture methodInfrared camera + LED illuminationLow-intensity laser scans the retina
StabilityStable from ~2 years old to deathCan change with pregnancy, diabetes, glaucoma
AccuracyExtremely high (FRR ~0.1% at FAR ~0.00001%)Very high, but higher false-reject rate
User comfortHigh — no physical contactLow — must press face against cupped device
Privacy concernCan be captured covertly (from a distance)Harder to capture without cooperation
Health concernNone (NIR is eye-safe, used in baby monitors)Some concerns about cumulative laser exposure
SecurityHigh — but can be tricked with high-quality photo/contact lensVery high — liveness (blood flow) is inherent

Retina scanning was invented in the 1980s and was used for high-security government facilities (e.g., some Pentagon entrances, nuclear weapons storage). It never achieved mainstream adoption due to the uncomfortable ergonomics and health concerns. Iris recognition, pioneered by Daugman in 1993, became the dominant contactless biometric for identification applications.

▸ Airport Border Control & UAE Iris Guard

Iris recognition is deployed at major airports worldwide for automated border control (e Gates):

===== UAE IRIS GUARD (2001–present) =====
 • Deployed at all UAE air, land, and sea ports of entry
 • Enrolls expelled deportees and those on watch lists
 • Each person's iris is scanned on entry — matched against the database of ~2M codes
 • If an expelled person tries to re-enter under a different passport → caught within seconds
 • 100% of entries are screened — no exceptions
 • False match rate tuned to zero (border control cannot accept false positives)

===== GLOBAL DEPLOYMENTS =====
 • Canada (CANPASS): Iris recognition for trusted traveler programs
 • UK (eGates): Automated border entry at most major UK airports
 • India (Aadhaar): 1.3B+ iris scans for national ID — deduplication at enrollment
 • Singapore: Changi Airport automated immigration using iris + face
 • Netherlands (Privium): Schiphol Airport iris-based fast-track for frequent flyers
 • US Global Entry: Face recognition at kiosks — currently phasing out iris in favor of face

The UAE Iris Guard was the first nationwide iris deployment and remains the most aggressive. It was developed by IrisGuard Inc. (UK) and uses Daugman's algorithm. The system processes several hundred iris scans per second at peak times, matching each against millions of enrolled codes in milliseconds.

▸ Connection to the Gabor Wavelet Puzzle

This site's gabor-wavelet puzzle uses the same mathematical foundation as Daugman's IrisCode. In the puzzle, you apply Gabor wavelet convolution at different scales and orientations to extract features from an image — just as IrisCode does with the unwrapped iris. The key concepts in common:

Gabor filter bank: Multiple 2D Gabor wavelets at different frequencies and orientations. IrisCode uses 8 spatial frequencies × 4 orientations; the puzzle uses a similar multi-scale decomposition.

Phase encoding: IrisCode quantizes the local phase into 2-bit quadrants. The puzzle's output is encoded in wavelet coefficient phase relationships.

Template matching: The puzzle constructs a "feature template" from Gabor responses, then measures similarity — the same paradigm as IrisCode Hamming distance.

If you can solve the gabor-wavelet puzzle, you understand the core signal processing that powers the world's most accurate biometric identification system.

▸ Real-World Applications

  • Border control: UAE Iris Guard, UK eGates, Canada CANPASS — real-time 1:many identification at ports of entry
  • National ID systems: India's Aadhaar (1.3B+ iris scans), Indonesia's national ID — deduplication at enrollment to prevent multiple registrations
  • Refugee registration: UNHCR uses iris scanning to register and track refugees — prevents duplicate aid distribution
  • Banking: ATM iris scanning in UAE, Japan, and Poland — no card needed, just look at the camera
  • Healthcare: Patient identification in hospitals — reduces medical identity fraud and duplicate records
  • Prison management: Inmate identification during transfers, court appearances, and releases
  • Mobile devices: Samsung Galaxy S8+ introduced iris scanning (2017), though face recognition has largely replaced it on modern phones

← Back to all ciphers