iQOO 2026 Grand Finale · Open Innovation

A field photo is not proof. Seal the frame on the phone.

Before it can be swapped, spoofed, or edited. The phone decides before the photo leaves — captured live, at this spot, of this scene. If camera, IMU motion and GNSS disagree, it refuses the seal and names the failed check.

Phone sealsLaptop reviewsNetwork off
SHA-256 on device
0 cloud calls
FrameSealWard 14
Job Close garbage ticketLIVE
● LIVEGNSS ±5 m
SEALED
Camera live
Motion
GNSS agrees
Edit check
Checking… 
6,595 / 6,709

Latehar NMMS worksite photos found fraudulent or duplicated.

Times of India · Sep 2026
75

of those had already been approved before the review.

Times of India · Sep 2026
25–40%

India e-commerce RTO, with fake delivery attempts a named driver.

Seller logistics reports · 2026
0

cloud calls in the seal path. Works in airplane mode.

FrameSeal design rule
Ward 14 · garbage heap · “Close garbage ticket”

Four outcomes. One seal. Three refusals.

Sensors refuse first. The hash only checks the edit. Every refusal names the failed check — and the laptop can't override it.

SEALED
PASS

Sealed

  • Walked ~2 steps
  • Live frame
  • GNSS agrees
  • Hash written
SHA-256 · on device
REFUSED
REFUSE

Gallery

  • No capture motion
  • File is old
  • Seal blocked
  • Reason shown
GALLERY: no capture motion · file not from live camera
REFUSED
REFUSE

Spoof

  • Mock location on
  • IMU still
  • Signals disagree
SPOOF: mock location on · IMU still · signals disagree
REFUSED
REFUSE

Edit

  • After-photo wiped
  • Hash mismatch
  • Scene changed
EDIT: hash break · scene changed
How it works

The phone decides before the photo leaves.

No cloud call in the seal path. Every step runs on the device — this prototype runs it in your browser.

01 · CAPTURE

Live camera

Frame grabbed from the live stream. There is no gallery path into a seal.

02 · BODY

IMU + GNSS

Step / still check and a GNSS fix — and they must agree. Disagreement refuses.

03 · SEAL

SHA-256, local

Hash of frame bytes + sensor packet, computed on the phone.

04 · EDIT CHECK

Perceptual hash

Best-effort dHash compare of the after-photo. Never claims to catch every deepfake.

05 · DESK

Read-only review

Laptop verifies and accepts. It cannot mint a seal or override a refusal.

Sensors refuse first Model / hash only checks the edit No cloud call in the seal path Works in airplane mode once loaded
On device
Camera live✓
Motion · 3 steps✓
GNSS agrees✓
SEALED
Phone seals

The decision happens where the sensors are.

Camera, accelerometer and GNSS are read together at capture. The seal is written locally — or refused, with the reason.

.frameseal.json
file · clipboard
no cloud
REVIEW DESK · WARD 14READ-ONLY
PASS · SEALED3 steps · GNSS ok
REFUSE · GALLERYfile not live
REFUSE · SPOOFmock location
REFUSE · EDIThash break
✓ INTEGRITY OK
ACCEPT & CLOSE TICKET
Guided demo · 30 seconds

Try it as a judge

  1. Open Phone (Seal). On a laptop it opens in Judge mode with a built-in Ward 14 scene.
  2. Tap Pass, Gallery, Spoof and Edit. Sensors tick and the checklist resolves to SEALED or REFUSED, naming the failed check.
  3. Tap Send to desk (or download the .frameseal.json).
  4. Open Laptop (Review Desk). Accept the sealed card; refused cards stay blocked. Hit Verify, then Tamper a copy to watch the desk catch an edited card.
  5. On a phone, switch to Live sensors — real rear camera, accelerometer steps and GPS. Walk two steps toward the subject, then seal.
Who it's for

The reviewer, not the worker

The person who pays a wage, closes a ward ticket, or releases a delivery has nothing but a JPEG and trust. FrameSeal hands them a card that says how the frame was captured.

Wage releaseWard ticket closureDelivery proof

Wiped & spoofed in Gurugram

One worker AI-wiped a garbage heap from a photo; another spoofed GPS from Jhajjar.

The Print · Jul 2026
Live prototype

Seal one. Refuse three.
Then try to fool the desk.

Runs entirely in your browser. Turn on airplane mode after it loads — it keeps sealing.