Problem Statement
Current grievance platforms fail at the last mile: verifying that a problem was actually resolved on the ground. Status updates and uploaded photos are easily fabricated, reused, or backdated. This destroys trust between citizens, authorities, and the platform.
VishwaGuru will solve this by implementing a cryptographically verifiable, geo-temporally bound resolution proof system.
Core Idea
Every grievance resolution must produce tamper-proof, verifiable evidence that proves:
The authority was physically present at the grievance location
The evidence was captured after the grievance was raised
The evidence has not been reused or modified
Citizens can independently verify the authenticity
No blockchain hype. No buzzwords. Pure applied cryptography + systems engineering.
System Architecture Overview
- Resolution Proof Token (RPT)
When an authority marks a grievance as “Resolved”, the backend generates a one-time Resolution Proof Token containing:
Grievance ID
Authority ID
Geo-fence radius
Validity window (e.g. 15 minutes)
Nonce
This token is:
Signed using server private key
Expires automatically
Single-use only
- Geo-Temporal Evidence Capture
The authority’s device must:
Be inside the geo-fenced radius
Capture image/video only within the token validity window
Embed raw metadata:
GPS coordinates
Timestamp
Device fingerprint hash
Client-side enforcement + server-side validation.
- Cryptographic Evidence Hashing
Before upload:
Media file is hashed using SHA-256
Hash + metadata + token ID are bundled
Bundle is signed again server-side
The original file hash is stored immutably.
No file overwrite. No silent edits.
- Citizen Verification Layer
Public grievance page displays:
Resolution timestamp
Location match indicator
Evidence integrity status
“Verified by system” badge
Citizens can:
View hash fingerprint
Reopen grievance if mismatch detected
- Anti-Fraud & Reuse Detection
System automatically flags:
Duplicate hashes across grievances
Same media reused in different locations
Repeated near-identical metadata
Triggers escalation instead of closure.
Technical Implementation Guide
Backend
Token generation with asymmetric signing
Geo-fence validation service
Immutable evidence store
Hash comparison pipeline
Audit logs (append-only)
Recommended stack:
FastAPI / Node backend
PostgreSQL + immutable table pattern
Redis for token expiry
Object storage for evidence
Frontend
Token-locked resolution UI
GPS permission enforcement
Capture-only flow (no gallery uploads)
Live validation feedback
Security Considerations
Replay attack prevention
Token misuse protection
Clock drift handling
Offline capture rejection
Acceptance Criteria
A grievance cannot be marked resolved without valid cryptographic proof
Evidence captured outside geo-fence is rejected
Reused media is automatically detected
Citizens can transparently verify resolution authenticity
System scales without human moderation dependency
Problem Statement
Current grievance platforms fail at the last mile: verifying that a problem was actually resolved on the ground. Status updates and uploaded photos are easily fabricated, reused, or backdated. This destroys trust between citizens, authorities, and the platform.
VishwaGuru will solve this by implementing a cryptographically verifiable, geo-temporally bound resolution proof system.
Core Idea
Every grievance resolution must produce tamper-proof, verifiable evidence that proves:
The authority was physically present at the grievance location
The evidence was captured after the grievance was raised
The evidence has not been reused or modified
Citizens can independently verify the authenticity
No blockchain hype. No buzzwords. Pure applied cryptography + systems engineering.
System Architecture Overview
When an authority marks a grievance as “Resolved”, the backend generates a one-time Resolution Proof Token containing:
Grievance ID
Authority ID
Geo-fence radius
Validity window (e.g. 15 minutes)
Nonce
This token is:
Signed using server private key
Expires automatically
Single-use only
The authority’s device must:
Be inside the geo-fenced radius
Capture image/video only within the token validity window
Embed raw metadata:
GPS coordinates
Timestamp
Device fingerprint hash
Client-side enforcement + server-side validation.
Before upload:
Media file is hashed using SHA-256
Hash + metadata + token ID are bundled
Bundle is signed again server-side
The original file hash is stored immutably.
No file overwrite. No silent edits.
Public grievance page displays:
Resolution timestamp
Location match indicator
Evidence integrity status
“Verified by system” badge
Citizens can:
View hash fingerprint
Reopen grievance if mismatch detected
System automatically flags:
Duplicate hashes across grievances
Same media reused in different locations
Repeated near-identical metadata
Triggers escalation instead of closure.
Technical Implementation Guide
Backend
Token generation with asymmetric signing
Geo-fence validation service
Immutable evidence store
Hash comparison pipeline
Audit logs (append-only)
Recommended stack:
FastAPI / Node backend
PostgreSQL + immutable table pattern
Redis for token expiry
Object storage for evidence
Frontend
Token-locked resolution UI
GPS permission enforcement
Capture-only flow (no gallery uploads)
Live validation feedback
Security Considerations
Replay attack prevention
Token misuse protection
Clock drift handling
Offline capture rejection
Acceptance Criteria
A grievance cannot be marked resolved without valid cryptographic proof
Evidence captured outside geo-fence is rejected
Reused media is automatically detected
Citizens can transparently verify resolution authenticity
System scales without human moderation dependency