imagehide / plan

Research plan & timeline

PLAN v4 ยท 2026-04-24
Highlight any text โ†’ ๐Ÿ’ฌ comment. Publishes to GitHub Issues; optional ๐Ÿค– Ask Claude to fix tag for action items.

Source: docs/PLAN.md (v4) + decision log from HANDOFF.md. Working title: In-Pixel Signed Provenance with Robust Content Binding. Follow-up to DKiS.

ยง1Problem statement

Embed an invisible, forgery-resistant watermark into a real photograph at capture time, on a phone NPU or camera ISP, such that:

ยง2Threat model

In scope

Out of scope

Watermark removal

Removing the watermark yields an unverified image, which is indistinguishable from any unwatermarked image. Attacker gains nothing.

Re-photograph attacks

Display fake on monitor, capture with watermarking camera. C2PA has the same limitation. Requires multi-sensor liveness (depth, IMU, parallax) โ€” separate paper.

Device key extraction

Inherited hardware-root-of-trust assumption from HTTPS / Secure Boot / C2PA.

Adaptive hash-collision attacks against H

Either in-scope (Path 1) or out-of-scope (Path 2). Path 2 committed โ€” non-adaptive threat model only.

Adversarially retrained img2img pipelines

Out of scope for this paper.

Device metadata trust

device_id, timestamp, gps are signed application fields. Authentic in the sense that sk-holder asserted them, but their truthfulness as sensor-grounded facts requires hardware attestation we do not prove.

Acknowledged risks

riskhow addressed
Denial of verification via benign editsVerifier outputs three-way answer (valid / unverifiable / tampered) but cannot always distinguish the last two.
Catastrophic crop failureWhole-image hashing makes any crop an authentication failure, not graceful partial-verification. Trade for simplicity + smaller payload.
Privacy exposureEmbedding gps, timestamp, device_id in pixels is a legal/privacy liability in some jurisdictions (GDPR). Mitigation: optional fields; minimum signed M = just H(image).

ยง3Locked design โ€” A-tolerant (MWIP)

Minimal Whole-Image Provenance. Internal label A-tolerant. Single headline design. B/C/D below are labeled future-work corners.

Payload โ€” exactly 896 b data, 1024 b ECC codeword

[ H (128 b) | sig (512 b) | pk (256 b) ]    โ† data, 896 b

H    = RobustHash(image)            128 b   content fingerprint
sig  = Ed25519.Sign(sk_device, H)   512 b   authenticator over H
pk   = Ed25519 public key           256 b   device identity

Channel coded with BCH(127,99) Slepian-Wolf on H + RS(128,100) over GF(2^8)
                                                  โ†’ 1024 b embedded in pixels

That is all. No M beyond H. No device_id, timestamp, gps. No cert chain. No OCSP. No per-tile hashes.

Verifier workflow

stagestep
Offline
pixels + verifier only
1. Extract (H, sig, pk) from pixels
2. Compute H' = RobustHash(received_image)
3. Check Hamming(H', H) < ฯ„ โ†’ pixels match signed content
4. Ed25519.Verify(pk, H, sig) โ†’ signature valid
5. "Image carries a valid Ed25519 signature from pk over content H"
Online
registry lookup
6. registry.lookup(pk) โ†’ device metadata + status
7. If active + trusted manufacturer โ†’ "valid provenance from device X"

Offline stage proves signature-content binding. Online stage upgrades that to trustworthy provenance. Split is explicit in the paper โ€” fully-offline trust is not claimed.

What's novel relative to prior work

noveltycloses
Pixel-content hash vs semantic captioncaption-collision forgery (MetaSeal)
pk in pixels, no C2PA manifestmanifest-strip attack (TrustMark+C2PA)
Asymmetric Ed25519 signaturesDKiS symmetric-key (no public verification)
TrustMark-scale encoderMetaSeal's on-camera infeasibility (~1.5 s/image)

Future-work variants (B / C / D)

labelpayloadchange vs A-tolerantstatus
A-tolerant (MWIP)896 bโ€”โœ… headline
B1152 b+ basic metadata (device_id, ts, gps, nonce)๐ŸŸก future
C~1792 b+ short-lived offline cert (flat hierarchy, revocation by expiry)๐ŸŸก future
D~4100 b+ EXIF-extended M + H_tiles + 2-level cert chain๐ŸŸก future

All three of B/C/D fall into the โ‰ฅ 1024 b regime where Exp 0 showed the encoder stalls at current architecture. Contingent on bottleneck widening (16ร—16ร—3 โ†’ 32ร—32ร—3) + longer training. Not demonstrated in this paper.

Path 2 committed for H security

Demonstrate H robustness under benign transforms and resistance to known prior attack methodologies (NeuralHash-style optimization, pHash collision algorithms). Adaptive-collision security explicitly flagged as open. Most defensible in the 10-week timeline. Path 1 adaptive red-team becomes a candidate follow-up paper, not a gating Exp 5.

ยง4Experiment plan

#namegoalstatus
0Image-level payload capacity Find where the CNN encoder's payload capacity stalls. Sweep p โˆˆ {100, 256, 512, 1024, 2048}. done p256 ~ comfortable; p512 marginal (0.795); p1024+ stalls. Architectural cliff confirmed.
1Robust hash H design + eval Design H: image โ†’ 128 b with benign-transform robustness + adversarial-collision resistance under Path 2. in flight pHash baseline implemented; perturbation/collision tests pending
2End-to-end verification Integrate Exp 0 encoder + Exp 1 hash + Ed25519 sign/verify into a full pipeline. Eval pass rate on DIV2K + COCO val. pending
3MetaSeal caption-collision forgery Demonstrate MetaSeal succumbs to caption-collision forgery; our scheme does not. ~200 caption-matched image pairs. pending
4Camera deployment feasibility ONNX/CoreML/TFLite export + int8 quantize + benchmark on Hailo-8 / Apple Neural Engine. Target โ‰ค 100 ms for 12 MP. in flight ONNX export scaffolding; fp16 validation pending
5Adaptive attack red-team (Path 1 only.) Targeted collision via PGD constrained to JPEG survivability. Budgets 2^20 / 2^30 / 2^40. deferred Path 2 committed โ†’ potential follow-up paper
Exp 0 results (completed 2026-04-24)
payloadfinal bit_accstageverdict
1000.9812comfortable
2560.9132marginal
5120.7950 stallcliff
10240.6820 stallrandom+
20480.6230 stallrandom+

p512 cliff verified architectural (35 k extra steps with LR reset moved bit_acc by < 0.5 pp). 16ร—16ร—3 bottleneck is the binder. This drove the INN pivot.

Exp 1 success criteria (Path 2)
Exp 4 deployment kill criteria

ยง5Timeline (10 weeks)

weekswork
Now โ€“ Week 1Exp 0 completes; report generated. Exp 1 scaffolding in parallel (candidate hashes implemented).
Week 1โ€“3Exp 1 (robust hash training + benign-transform evaluation). Path 1/2/3 decision.
Week 4Exp 2 integration + e2e benign-transform evaluation.
Week 5Exp 3 (MetaSeal forgery comparison).
Week 6Exp 4 (camera deployment benchmark).
Week 7Exp 5 (if Path 1 committed) โ€” adaptive attack red-team.
Week 8โ€“9Writeup, ablations, revisions.
Week 10Submission.

Venue candidates updated 2026-05-25

Ranked for this paper's framing (key-bound + content-side + PDQ-drift + INN backbone, 896 b whole-image payload). Prestige = broad CS recognition / h5-index. Fit = how strongly the reviewer pool values threat model + applied coding theory over architecture novelty (5 = ideal, 1 = poor). h5 figures are approximate (Google Scholar Metrics, recent).

# Venue Tier h5 Fit Next deadline One-liner
1 IEEE S&P (Oakland) Big-4 security ~110 5 ~1 Sept 2026 (cyc 2) Top security venue most receptive to applied-crypto + watermarking + info-theory crossover. Best prestige ร— fit.
2 NDSS Big-4 security ~85 5 ~early July 2026 (fall) Same top-4 tier, slightly higher accept rate (~17%) and nearer deadline. Best risk-adjusted bet.
3 USENIX Security Big-4 security ~110 4 ~early Sept 2026 (cyc 1) Equal prestige to S&P; reviewer pool leans systems but applied-crypto papers land regularly.
4 IEEE TIFS Top journal (sec/forensics) ~80 5 rolling Gold standard within watermarking. Lower CS-wide h5; punches above weight in this subfield.
5 NeurIPS Top ML ~330 3 ~mid-May 2026 (likely closed) Home of recent watermarking landmarks (Tree-Ring, Gaussian Shading). Reviewers engage with coding theory. Needs ML-flavored reframing.
6 ACM CCS Big-4 security ~110 3 ~Jan 2027 Same top-4 tier as S&P/USENIX but reviewer pool skews formal/protocol crypto; watermarking can feel off-topic.
7 ICCV Top CV ~270 2 ~March 2027 (biennial) Stable Signature landed here. Reviewers anchor on architecture novelty; coding theory and threat model get skimmed.
8 CVPR Top CV ~440 2 ~early Nov 2026 Highest h5 of any CS venue. Worst fit for coding-theory / threat-model contributions; heavy reframe required.
9 ACM MM Top multimedia ~75 3 ~April 2026 (passed) Decent fit, clear half-tier below Big-4 security or top CV/ML. Reasonable fallback.
10 WIFS / IH&MMSec Specialized workshops ~25โ€“30 4 ~July 2026 / ~Feb 2027 Strong fit, fast cycle. Use only as resubmission target โ€” lowest prestige of the list.
Strategy. Primary aim โ€” NDSS fall (~July) or IEEE S&P cycle 2 (~Sept): top-tier prestige with a reviewer pool that values coding-theory + threat-model contributions. Safety net โ€” IEEE TIFS in parallel (rolling; conference resubmission not blocked). Avoid CVPR/CCS at current framing โ€” fit is poor enough that the EV is below a focused security venue.
Recalibration vs 2026-03-31. The earlier scope cut (see ยง6) shifted the venue target down to IH&MMSec / WiFS / TIFS after dropping per-tile structure. This table reflects an updated assessment: with the key-bound threat model and 896 b payload + empirical PDQ-drift bound now in place, the contribution is competitive at Big-4 security if reframed around the threat model rather than the architecture. Does not require Path 1 robust-hash success โ€” the security claim rides on key-binding and PDQ-drift tolerance, not on H being formally collision-resistant.

ยง6Decision log most recent first

2026-05-17Deployed idea097_design001 to imagehide-demo
8/light backbone, 1024 b ECC codeword wrapping 896 b data, no-AMP training, step 30k. PSNR clean 37.4 dB; bit_acc avg 0.995 over 14 in-scope attacks (worst: chain_wechat at 0.955). Lives in sibling autohide project.
2026-04-28Defaults flipped to 8 / light ยท chain_wechat dropped
INNCodec.subnet_type default โ†’ "light"; INN_BLOCKS โ†’ 8. Mobile variant (0.167 M params) is now the default. chain_wechat (resize 0.3 โ†’ Q50) past resize-tolerance bound โ€” removed from live attack suite. Live suite now 12 attacks.
2026-04-28Multi-res light run 56391691 NaN'd at 40k
Held bit_acc โ‰ˆ 1.0 / PSNR โ‰ˆ 28 dB through step 40,000; NaN at 40,200; decoder froze (val PSNR pinned 11.09 dB) by step 60k. Cancelled. Different failure mode from the curriculum-transition collapses; multi-res sampler is the new variable.
2026-04-27Multi-resolution training + sampler
Added DPED full-res originals (~22K imgs) and CLIC 2020 (~1.7K) on top of COCO + DIV2K. Implemented src/multi_res_dataset.py with an 18-entry (H, W) pool and MultiResBatchSampler deriving batch size from a fixed pixel budget. New args --manifest_dims, --pixel_budget.
2026-04-25Mobile v2 โ€” first fully successful run
bit_acc 1.000 / chain_x 0.999 at ฮฑ=1, PSNR 26.7 dB at full attack severity. First successful run since the curriculum-collapse failures. Encoder traded fidelity for robustness (vs 30 dB target).
2026-04-25Mobile target locked (Levers 2 + 3)
num_blocks 16 โ†’ 8; subnet rdb โ†’ light. 24ร— fewer params, 24ร— fewer FLOPs. Empirically the lighter architecture survived the ฮฑ-ramp without modification.
2026-04-25v3 runs 1 + 2 collapsed at Aโ†’B boundary
Both runs hit the embed-nothing basin at ~step 5,800 with the 3-stage step function. secret_rec_rms diagnostic (added same-day) confirmed the recovered secret was driven 5,000ร— toward zero in 1,200 steps. Curriculum smoothing alone insufficient. Threat model narrowed and Bernoulli ramp added.
2026-04-25v3 design locked after codex review (round 2)
  • Learnable ฮฑ dropped (collapse path); fixed at ฮฑ = 1.
  • "JPEG alignment is load-bearing" walked back; soft preference at 8 px, non-issue at โ‰ฅ 16 px.
  • Multi-shift verifier dropped in favor of single canonical center-trim.
  • Spread-spectrum framing dropped; honest framing: block-mean repetition code.
  • Diagnostics (L1, secret RMS) added to detect deep collapse early instead of at step 100 k.
2026-04-24PLAN v4 โ€” A-tolerant / MWIP locked
Payload locked at exactly 896 b = [ H(128) | sig(512) | pk(256) ]. Tolerant-H mode (Hamming threshold before Ed25519); strict mode rejected as crypto-unsound. Path 2 committed for H security (non-adaptive). Canonical-delivery scope made load-bearing.
2026-04-24B / C / D relegated to future work
All three fall into the โ‰ฅ 1024 b regime where Exp 0 confirmed the CNN encoder stalls at current architecture. Future work after bottleneck widening or alternate encoder architectures.
2026-04-24Per-tile design dropped
Payload exploded (~5 KB/image); tile-sync problem; localization was aspirational. Whole-image is net-better despite losing localization. Crop = tamper, by design.
2026-04-24Exp 0 completed โ€” array 56197028
All 5 payload tasks (100/256/512/1024/2048) reached step 100k. Headline: TrustMark-scale encoder comfortable at ~256 bits, marginal at 512, stalls past 1024.

ยง7Risk register

risklikelihoodmitigationtrigger
H fails benign-transform robustness medium swap candidate; accept higher ฯ„ Exp 1 FR > 10% at JPEG q=50
H broken by prior attack medium narrow claims; Path 1 adaptive defense becomes follow-up collision succeeds under named prior method
896 b doesn't train to bit_acc โ‰ฅ 0.98 medium targeted long-run at 896 b; widen bottleneck if needed Exp 0 follow-up at 896 b stalls below 0.95
Crop/resize complaints from reviewers medium canonical-delivery scope documented; verifier rejects reviewer pushback on social-media pipeline realism
MetaSeal caption-collision attack rate low medium pivot narrative to manifest-strip defense as headline Exp 3 forgery rate < 5%
Camera latency > 100 ms low accept edge-server deployment; reframe Exp 4 fails latency target
Online registry DoS low not a crypto attack; affects liveness not forgery reviewer pushback
The central bet is the robust hash H. Historical record is bad โ€” NeuralHash broken in 11 days, pHash broken by standard attacks, every published robust hash has been collision-attacked. We must design an H that either beats this or honestly scopes the claim to non-adaptive attacks (Path 2 commitment).

ยง8Scope cuts non-negotiable

cutwhy
Ed25519 onlyPost-quantum signatures (Dilithium, Falcon) out of scope.
One device key per cameraNo multi-key, no rotation.
Canonical-delivery assumptionVerifier rejects images whose decoded dimensions violate the declared canonical profile. Crop/resize/rotate/flip = authentication fails (by design, not a bug).
Online registry lookup requiredOffline content-binding is proven from pixels alone. Fully offline device trust = future-work C/D.
No metadata fields in pixelsdevice_id, timestamp, gps, nonce are future-work (variant B+).
No per-tile localization ยท no tamper localizationWhole-image signature only. H_tiles is a D-only future-work feature.
Video deferredโ€”
Re-photograph attacks not defendedInherited C2PA scope.
Device key extraction not defendedInherited hardware-root-of-trust assumption.
No hardware attestation claimFuture variants with device_id/timestamp/gps treat those as signed application fields, not sensor-grounded.

ยง9Change log

2026-04-24v4 โ€” A-tolerant (MWIP) locked
Payload locked at 896 b. Tolerant-H mode. Trust model = offline content-binding + online registry. B/C/D relegated to labeled future-work corners. Path 2 committed. Canonical-delivery scope load-bearing. Design-space axes (H mode, trust model, metadata richness) replace prior Pareto framing.
2026-04-24v3 โ€” first codex convergence round
Dropped per-tile structure in favor of whole-image. Payload collapsed from ~5 KB/image to ~150โ€“450 B/image. pk now embedded in pixels (no C2PA manifest required). Threat model sharpened. Three security paths proposed; decision deferred. Venue target recalibrated from S&P/CCS to IH&MMSec/WiFS/TIFS. Exp 2 (per-tile INN retrain) dropped; Exp 5 (adaptive red-team) added contingent on Path 1.
2026-04-23v2.2 โ€” Design A selected (per-tile public)
Per-tile structure with public hash, ~1 kbit payload. Selected over keyed per-tile (~4 kbit). Per-tile structure maintained at this point; superseded by v3's whole-image pivot.
2026-04-23v2.1 โ€” Option B committed
Direct signature embedding in pixels.
2026-04-23v2 โ€” major revision after literature check
C2PA 2.1 + TrustMark + MetaSeal identified as preemptions of most of v1.
2026-04-23v1 โ€” initial plan
"Pixel-Embedded Provenance with Keyed Content Binding."