- Add NFC ePassport roadmap (ICAO 9303, eIDAS) - Add TensorFlow.js edge face detection (BlazeFace) - Add structured audit logger (GDPR-compliant) - Risk scoring support Part of KYC Apple Native UX v1.1.0
6.8 KiB
quiXzoom — Verified Reality
Beslutad: 2026-06-17. Konceptuell grund för hela produkten.
Vad produkten egentligen är
Zoomern samlar inte in bilder. Zoomern samlar in verifierbar verklighet, medan AI avgör när tillräcklig evidens har samlats in för att uppdragsgivarens datakrav ska anses uppfyllda.
Uppdragsgivaren köper inte bilder. De köper förtroende för att en observation av verkligheten faktiskt har ägt rum.
De fyra nivåerna
Nivå 1 — Foto
Användaren tar en bild.
Problem: lätt att fuska, dålig kvalitet, många omtag. Liveness: noll.
Nivå 2 — Smart Scan
Användaren filmar objektet. AI väljer bästa frames, vinklar, OCR-underlag automatiskt.
Liveness: låg — en stillbild kan inte ersätta scanning, men en inspelad video kan.
Nivå 3 — Guided Evidence Collection
AI kräver aktiv rörelse under scanning.
Exempel på direktiv i sekvens:
- "Gå ett steg åt vänster"
- "Luta telefonen uppåt"
- "Zooma in etiketten"
- "Visa objektets högra sida"
Här börjar det bli svårt att fuska med en stillbild eller förberedd video. Liveness: medium — kräver att man aktivt följer instruktioner.
Nivå 4 — Liveness Verified Evidence
Systemet bevisar att:
- Objektet existerar
- Objektet finns på platsen (geo-verifierat)
- Objektet filmas just nu (inte en inspelning)
- Videoströmmen är äkta (inte en skärm som visar en annan skärm)
Liveness: hög — korrelerade signaler från oberoende sensorer.
Liveness Score — poängsystem, inte binärt
Liveness Score: 97/100
✓ Kamerarörelse (gyro-pattern matchar naturlig rörelse)
✓ Parallax verifierad (djupförändring vid rörelse)
✓ Fokusförändringar (autofokus-aktivitet matchar scen)
✓ GPS verifierad (±15m från uppdragets adress)
✓ App Attest verifierad (iOS / Android Play Integrity)
✓ Videoström kontinuerlig (inga klipp eller hopp)
✓ Challenge-respons löst (se nedan)
⚠ Ljusskiftningar svaga (inomhus, acceptabelt)
Risk: låg
Varje signal är oberoende. Förfalskning av en signal hjälper inte — alla måste korrelera.
Poängsystemet möjliggör kalibrering per uppdragstyp:
- Lågvärdesuppdrag: Liveness Score >60 accepteras
- Högvärdesuppdrag (infrastruktur, juridisk dokumentation): >90 krävs
Challenge-Response — det slumpmässiga testet
Vid varje scanning-session genererar systemet en unik challenge-sekvens efter att sessionen startar. Aldrig förberäknad.
Exempel på en session:
T+0s: "Visa hela elmätaren"
T+8s: "Gå ett steg bakåt" ← genererad vid T+6s
T+14s: "Zooma in på etiketten" ← genererad vid T+12s
T+21s: "Visa plomberingen" ← genererad vid T+19s
Instruktionerna genereras i realtid baserat på:
- Vad systemet ännu inte har verifierat (saknade evidence requirements)
- En slumpmässig rörelsekomponent (för liveness, inte för data)
Varför det fungerar: En inspelning som gjordes igår kan inte svara på en challenge som genererades för 8 sekunder sedan. En skärm som visar en annan skärm saknar korrekt parallax. En stillbild rör sig inte när telefonen rör sig.
Signalerna i detalj
| Signal | Vad den mäter | Svår att förfalska? |
|---|---|---|
| Gyrodata | Naturliga handhållna rörelser | Ja — kräver synkad servo |
| Accelerometer | Steg, vibrationer, tyngdkraft | Ja |
| Parallax | Djupförändring vid sidorörelse | Mycket — kräver 3D-modell |
| Fokusförändringar | Autofokus aktiverar vid avståndsbyte | Ja |
| Ljusskiftningar | Naturliga skuggor/reflexer i miljön | Delvis |
| GPS + tid | Plats och tidpunkt | Delvis (GPS-spoofing möjligt men detekterbart) |
| App Attest (iOS) | Enhetens integritet, ej jailbreakad | Hög |
| Play Integrity (Android) | Samma | Hög |
| Videoström-kontinuitet | Inga klipp, inga frame-hopp | Ja |
| Challenge-respons | Rätt rörelse vid rätt tidpunkt | Mycket hög |
Evidenspaketet (uppdaterat)
Utöver frames innehåller paketet nu sensor-telemetri:
{
"control_point": "electricity_meter",
"session_id": "sess_abc123",
"liveness_score": 97,
"liveness_signals": {
"gyro_natural": true,
"parallax_verified": true,
"focus_changes": 4,
"gps_match": true,
"app_attest": true,
"stream_continuous": true,
"challenge_responses": 3,
"challenge_pass_rate": 1.0
},
"evidence": [
{ "requirement_id": "e1", "frame": "frame_142.jpg", "confidence": 0.97 },
{ "requirement_id": "e2", "frame": "frame_198.jpg", "confidence": 0.94, "value": "SE-4821-9938-01" },
{ "requirement_id": "e3", "frame": "frame_265.jpg", "confidence": 0.91, "value": "04821.3" },
{ "requirement_id": "e4", "frame": "frame_302.jpg", "confidence": 0.88 }
],
"geo": { "lat": 59.334, "lng": 18.063, "accuracy_m": 4 },
"scan_duration_ms": 23400
}
Vad detta innebär för marknaden
Foto-verifiering (konkurrenterna): bilder + metadata. Körbar på 2015 års teknik. Lätt att fuska.
quiXzoom Verified Reality: kryptografiskt attesterat evidenspaket med sensor-korrelation och challenge-response. Omöjligt att fabricera utan att vara på platsen med rätt enhet vid rätt tidpunkt.
Det öppnar marknader som kräver juridisk bevisning:
- Försäkringsärenden (bevisbörda)
- Infrastrukturkontroller (myndighetsrapportering)
- Fastighetsbesiktning (tvister)
- KYC / adressverifiering (bank/fintech)
För dessa köpare är "förtroende" inte ett mjukt värde — det är ett juridiskt krav.
Arkitekturkonsekvenser
- Sensor-pipeline måste vara native (React Native räcker inte för gyro-sampling i hög frekvens) → native iOS/Android modul
- Challenge-generator måste vara server-side och stateless → kan inte förutsägas av klienten
- App Attest / Play Integrity måste integreras från dag 1 — retroaktiv integration är svår
- Liveness Score-modellen måste kalibreras per uppdragstyp — inte en global tröskel
- Audit trail är nu ett rättsligt underlag, inte bara en logg → immutable storage, signerat
Öppna frågor (uppdaterade)
- Liveness Score-tröskel per uppdragstyp — vem sätter dem? Uppdragsgivaren, quiXzoom, eller automatisk kalibrering?
- Challenge-sekvens-längd — hur många challenges per session utan att det känns irriterande?
- GPS-spoofing — accepterar vi att det går att fuska med GPS om alla andra signaler är gröna?
- Offline-liveness — App Attest kräver nät. Hur hanterar vi scanning i tunnlar/källare?
- Juridisk status — behöver vi ett yttrande om beviskraft i svensk/EU-rätt för att sälja till försäkringsbolag?
Bygger på: QUIXZOOM_SMART_SCAN.md, QUIXZOOM_AVO_MASTERPROMPT_V2.md Nästa steg: Native iOS proof-of-concept för gyro-pipeline + challenge-response.