Skip to content

ZK-IA: In-browser ZK auth plugin for image integrity.

License

Notifications You must be signed in to change notification settings

moven0831/ZK-IA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZK-IA: In-browser ZK auth plugin for image integrity

Note

ZK-IA aims to provide a browser plugin that supports in-browser ZKP generation for content creators and verification for content viewers.

📝 Details

The manipulation of digital images has become a significant challenge in maintaining information integrity. Traditional methods of ensuring image integrity often fall short due to their limitations in handling permissible image transformations or vulnerabilities to adversaries.

This research aim to proposes a browser plugin for publishing platforms such as Medium and Mirror. The plugin will enable content creators to generate ZKP for redacted images in their articles. On the other hand, content viewers can verify these proofs, ensuring that the redacted images they view are derived from the original photo and that the metadata matches the original. This process guarantees image integrity while preventing any inference of new information from the redacted images and proofs. Therefore, if the redacted images are verified, viewers can be confident that what they are seeing has not been sourced from tampered material, such as unauthorized edited photos or deepfake creations.

🚩 Goals

Explore a reliable and feasible scheme for authenticating digital images on top of the state-of-the-art zk-SNARKs. Specifically, achieve image integrity where the redactions made by the owner are undeniable and traceable. Moreover, if any area has been legally edited, we want to attain area zero-knowledge, and it should be impossible to infer any information about the modified part from the proofs and post-processed images.

Objectives:

  • Develop a PoC IA (image authentication) scheme where the performance is optimized among current protocols.
  • Build a browser plugin on top of the IA scheme. (working issues related to the plugin)
  • Ensure the plugin can correctly function on plublishing platforms with in feasible time.
Flow of Redactable signature scheme for image
Expected user flow of the ZK-IA plugin

🔨 Working Status

Idea: In the first round of study, I've read through all the papers cited in references. It occurs to me that image post-processing circuits such as grayscaling, resizing, and cropping contain a few similar constraints that might be able to improve using recursive SNARK.

Next step:

  1. Compile image post-processing circuits into Nova prover by Nova Scotia (it supports in-browser proving and verification).
  2. Run Nova and test the performances with the benchmarks in the papers. Construct a comparison table among existed protocols.
  3. Study on the choices of hash function. I will continue the study on which combinations of them (e.g. Poseidon Hash + Lattice Hash) best fit the recursive SNARK.

🎯 Milestones

Status Milestone Objective Tasks Duration
Understanding and Preliminary Research Gain a comprehensive understanding of current image authentication methods and their limitations. Literature review and analysis of existing systems. Check the intro slides 2 weeks
Theoretical Scheme Development Develop a theoretical scheme for IA (image authentication) using zk-SNARKs. Formulating the theoretical aspects of using PCD for image authentication and defining permissible image transformations. 3 weeks
Prototype Development Create a working prototype of plugin that provides in-browser ZKP generation and verification on top of the IA scheme Implementing a prototype that supports a basic set of permissible transformations such as resizing. Which needs to work on at least one publishing platform. 4 weeks
Benchmarking and Support more image transformations Benchmark the plugin and the IA scheme. Extend the supported image transformations. Complete the UX details. Evaluating the prototype’s efficiency with benchmarks. Provide support for more image transformations such as grayscale and cropping. 3 weeks
Iteration and Documentation Iterate the plugin based on user's testing feedback and prepare comprehensive documentation. Refining the prototype, preparing documentation (for developer who want to build on top of the IA scheme mainly) and user manuals. 2 weeks

References

  • T. Datta and D. Boneh. 2022. "Using ZK Proofs to Fight Disinformation". Medium Article.
  • [LHC23] Region-aware Photo Assurance System for Image Authentication
  • [LWW+22] A blockchain-based privacy-preserving authentication system for ensuring multimedia content integrity
  • [CHN+22] "VILS: A Verifiable Image Licensing System".
  • [LNS+22] "Vronicle: Verifiable Provenance for Videos from Mobile Devices".
  • [KLL+21] Efficient Verifiable Image Redacting based on zk-SNARKs
  • [ZLW19] Blockchain-based photo forensics with permissible transformations
  • [KLK+19] AuthCropper: Authenticated Image Cropper for Privacy Preserving Surveillance Systems
  • [NRP19] Proving Multimedia Integrity using Sanitizable Signatures Recorded on Blockchain
  • [Korus17] Digital image integrity – a survey of protection and verification techniques
  • [NT16] "PhotoProof: Cryptographic Image Authentication for Any Set of Permissible Transformations".

About

ZK-IA: In-browser ZK auth plugin for image integrity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published