New Whitepaper: Enhancing Visual Trust in Messaging Apps

How we brought Proofmode and C2PA Content Credentials into a secure messenger, so people can see what is known about the media they receive, and what isn't.

Nathan
October 2026
Secure Messaging
Content Credentials
In-Thread

Messaging apps have become the front line of visual evidence. When a crisis unfolds, the photos and videos that reach journalists, human rights defenders, and diaspora communities rarely arrive through newsrooms or verified archives. They arrive in a chat thread, forwarded by a relative or a trusted contact, stripped of context and of nearly every piece of data that could show where they came from.

Today we’re publishing Enhancing Visual Trust in Messaging Apps, a whitepaper developed jointly by Guardian Project (Proofmode), Okthanks, and Rights Action Lab (RAL). It describes how we integrated Proofmode and C2PA Content Credentials into RAL’s browser-based secure messaging app, and the design patterns we think any messenger can adopt.

Our thesis is simple: a secure messenger should use every available signal, from cryptographic Content Credentials down to basic file heuristics, to tell recipients what is known about a piece of media, how confidently it is known, and what cannot be verified at all. Instead of issuing opaque trust verdicts, the app should show the evidence and help people reach their own conclusions.

Key contributions
  • A layered signal model that combines C2PA manifests, Proofmode proof data, conventional file metadata, and heuristics, each labeled with an honest assurance level.
  • Five in-line interventions (Captured with a camera, Modified, Generated with AI, Older than 3 months, Screenshot) that turn technical provenance into plain-language cues inside the message thread.
  • Room-aware privacy defaults that protect at-risk senders in group settings while keeping full evidence intact in direct conversations.
  • Provenance shown on both sides of the send button: senders see and control what they share, and recipients see what can and cannot be verified.

RAL has been instrumental in Proofmode’s development and in evaluating how it works in the real world, by providing partial funding, leading user testing to make sure Proofmode is easy to use, and testing this integration inside their communication tool.

The problem: trust breaks down in the thread

Public discussion of synthetic media tends to focus on sophisticated deepfakes. In practice, the misinformation that moves through messaging groups during a crisis is usually much simpler. It succeeds because the channels it travels through erase the clues that would expose it. We see three recurring patterns:

  • Resurfaced historical media. Authentic footage from past events gets re-shared as breaking news. Video of South African firefighters from prior years, for example, keeps resurfacing framed as a present-day emergency response. Nothing about the pixels is fake; only the implied date and place are, so tools that look for manipulation won’t flag it.
  • AI-generated synthetic content. Generative tools now produce realistic but entirely fabricated scenes, like the viral animal-rescue clips that circulate every wildfire season. This material has no real capture history, and its synthesis artifacts are rarely visible on a phone screen.
  • Stripped metadata and screen captures. Mainstream messengers re-encode media and discard metadata in transit. People forward content as screenshots, which replace the original file with a new one that has no history at all.

By the time evidence reaches the person who needs to evaluate it, every signal of where it came from has usually been removed.

Diagram comparing a typical messaging path, where Content Credentials, Proofmode proof, EXIF metadata, and original pixels are lost after capture, with an Original-quality path where all four survive capture, review, send, and receive.
Figure 1. In a typical messaging path, provenance is lost at the first hop. When a sender chooses Original, the file and all of its provenance arrive intact inside an encrypted room.

Design principles

Designing provenance features for people in hostile environments means balancing three goals: evidence must be trustworthy, the people who create it must stay safe, and the interface must work for non-experts under stress. Four principles guided the work:

  • Harm reduction for at-risk groups. Raw metadata can endanger lives. GPS coordinates, device serial numbers, or even a phone model can help an adversary identify a source. Transparency has to establish the integrity of content without exposing its creator.
  • Context-sensitive exposure. What is appropriate to reveal depends on where media is shared: the size of a room, who is in it, and the risk of it being seen by unintended third parties.
  • Privacy-preserving defaults. Vulnerable users are protected without configuring anything. Privacy holds unless someone deliberately chooses otherwise, and that choice is always visible and reversible.
  • Progressive assurance. Cues clearly separate cryptographically verified provenance from unverified metadata and from simple heuristics, without discrediting the weaker signals, which are often all a recipient has.

A layered signal model

RAL’s messenger is a secure chat platform co-designed with human rights advocates and digital security trainers, with rooms that are private and encrypted by default. We approached the integration from the point of view of the people receiving media: diaspora members getting evidence from their community, journalists seeking eyewitness accounts, and human rights advocates gathering records for their research. That led us to treat provenance as a stack of signals rather than a single yes-or-no check.

The signal stack: C2PA Content Credentials and Proofmode proof bundles are cryptographically verifiable, embedded file metadata is informative but not verifiable, and file heuristics are indicative only. All four feed the app's interpretation and labels.
Figure 2. The app reads every available layer of evidence and labels each with the level of assurance it can actually support.
  • Cryptographic layers. A C2PA manifest is a signed record embedded in the file that can describe how it was created (captured by a camera or generated by a model) and what edits were made. Proofmode adds signed hashes, device and sensor metadata, and a capture timestamp. Both can be checked for tampering.
  • Descriptive layers. EXIF, XMP, and IPTC metadata often record the camera model, capture date, and editing software. It’s valuable context, but anyone can edit it, so it can’t be treated as proof without a signature.
  • Heuristic layer. Even when metadata is gone, the file still says something: dimensions that match a phone screen, an aspect ratio, a format, or signs of earlier compression.

When a sender chooses Original quality, the app sends the unmodified file, so its Content Credentials and metadata travel with it. Compressed re-encodes the image and removes that data, which is the right default in some contexts. In end-to-end encrypted rooms the server can’t see the media, so all of this analysis happens on the device.

In-line interventions

Content Credentials only help if people see them. In a messenger, provenance needs to be visible at two moments: before media is sent, so the sender understands and controls what is shared, and after it arrives, so the recipient can weigh it in context.

We combined Content Credentials with the other signal layers to produce short, plain-language cues we call interventions. Each one answers a single question a recipient is likely to have. We chose five, based on the kinds of media diaspora communities are actually receiving today.

Four-step flow from raw signals to a plain-language cue: Read (C2PA manifest, Proofmode proof, EXIF and XMP, file properties), Interpret, Grade (verified, unverified metadata, heuristic only), and Surface in the thread as one of the five interventions.
Figure 3. Signals are read, interpreted, graded for assurance, and surfaced in the thread as a single, readable label.
Captured with a camera

The media came from a physical camera, not a generator or a screen.

Strongest: C2PA capture assertion or a Proofmode proof with sensor data
Fallback: camera make, model, and exposure data in EXIF

Modified

The media has been changed since it was captured.

Strongest: edit actions in the C2PA manifest, or a hash mismatch against a Proofmode proof
Fallback: editing-software tags in file metadata

Generated with AI

The media was produced wholly or partly by a generative model.

Strongest: C2PA digital source type declaring AI generation
Fallback: generator-written metadata, where present

Older than 3 months

The media was captured well before it is being shared.

Strongest: signed capture timestamp (C2PA or Proofmode)
Fallback: original capture date in EXIF

Screenshot

The media is a capture of a screen, not of the world.

Strongest: a declared screen-capture source type
Fallback: screen-matching dimensions and missing camera data

Because interventions draw on the whole signal stack, they work with or without Content Credentials. A screenshot with no metadata can still be labeled as a screenshot; a file with a valid manifest earns a stronger, verifiable label. The five map directly to the problems above: “Older than 3 months” addresses resurfaced media, “Generated with AI” addresses synthetic content, and “Screenshot” and “Modified” flag the lossy, recontextualized copies that dominate forwarded threads.

A chat message showing a mountain landscape image with a 'Generated with AI' label above it.
Figure 4. Interventions give recipients insight in the message thread, with or without Content Credentials.

Context-aware privacy defaults

Metadata can expose people. We had to deliver media transparency without revealing anything about a sender that they hadn’t knowingly chosen to share. Our design research made the stakes concrete: communicators in the diaspora were uneasy even about showing the model of the phone that took a picture.

WITNESS’s research on C2PA Content Credentials and the Surveillance Risk describes a person who documents something that could put them in danger. They ask that the image not be published under their name, but the embedded credential still carries their name and device identifiers. Photos shared in messaging apps eventually travel through other systems, and what was meant to be verified privately may need to be stripped when used publicly.

We resolved this by making the defaults depend on the room:

  1. Group rooms keep compressing images and withhold media details unless the sender explicitly chooses to share them.
  2. Direct message rooms, where evidence is usually exchanged and trust is higher, default to sending the original file and its metadata whenever Content Credentials are present.

In both cases, interventions stay visible as a hint that more information exists, which raises awareness of provenance without forcing disclosure.

Side-by-side comparison of room defaults. Group room: compressed quality, no metadata unless the sender opts in, details withheld, interventions shown as a hint. Direct room: original quality when Content Credentials exist, metadata included, details available, interventions shown as a hint. In both rooms the sender can always override.
Figure 5. Defaults follow the trust model of the conversation, and the sender always has the final say.
The quality picker: Compressed at 600 by 400 pixels and 1 KB, or Original at 1024 by 860 pixels and 20 MB, with the note 'Captured with a camera.'
Figure 6. The quality sheet makes the trade-off explicit: Compressed protects the sender, Original preserves the evidence.

Progressive assurance

Because the app shows everything that can be known about a piece of media, it also has to be candid about how much of it can be trusted. Ordinary metadata may have been altered; Content Credentials let a recipient confirm that it hasn’t. The interface needs to make that distinction clear without implying that unverified information is false.

We explored several models and chose restraint: short, neutral messages that say whether the details shown can be verified, and point to where verification can happen. We deliberately avoided alarm-style warnings and numeric trust scores, which invite people to outsource their judgment instead of using it.

Three tiers of assurance: Verified provenance, where Content Credentials or a Proofmode proof are present and intact; Unverified metadata, where file metadata carries no signature; and Heuristic cue only, where no metadata survives but file properties still say something.
Figure 7. Three tiers of assurance, each paired with the message the recipient actually sees.
Two message banners: 'Information is available for this image to be verified. Upload to Content Credentials Verify' and 'Details for this image cannot be verified.'
Figure 8. Subtle, neutral messages tell recipients whether details can be verified.

The end-to-end experience

Together, these pieces form a single flow that starts before the send button and continues after delivery. The sender sees exactly what will be shared and picks the right trade-off for the room. The recipient sees a cue in the thread, can open the details, and is told plainly whether those details can be independently verified.

Sender journey: select media, choose quality, review details, send. Recipient journey: see the cue, open details, read assurance, verify.
Figure 9. Provenance appears at each step of the sender and recipient journeys.
Two phone screens: a photo attached to a message, and the quality and details sheet showing 'Captured with a camera', source device, creation timestamp, location, and a link to verify Content Credentials.
Figure 10. The sender flow: selecting media, attaching it to a message, and reviewing quality and provenance details before sending.
Three phone screens of a chat room showing messages labeled 'Contains modified media', 'AI generated, 3 months ago', and 'Captured with a real camera'.
Figure 11. Interventions in context: modified media, AI-generated media, and camera captures as they appear in a room.

Limitations and open questions

We want to be clear about what this approach does not do:

  • No provenance is not evidence of fakery. Most authentic media today carries no Content Credentials. A missing manifest should never be treated as a negative signal, and our design doesn’t.
  • Heuristics can be gamed. File dimensions and metadata can be forged, which is why those signals are always labeled as unverified.
  • Credentials prove origin, not truth. A verified camera capture can still be framed misleadingly. Provenance narrows the question; it doesn’t answer it.
  • Verification shouldn’t leak the evidence. Deeper verification currently means uploading media to a web-based Content Credentials verifier. For sensitive material, verification that happens entirely on the device is better.
  • Adoption is uneven. Cryptographic layers become more valuable as more cameras, editors, and generators sign their output.
  • Storage and bandwidth matter. Sending uncompressed originals can be hard for people on low-storage devices and slow connections.

A model for any messenger

Embedding Proofmode and C2PA Content Credentials directly into a secure messaging workflow shows that media provenance can be both accessible and privacy-preserving. These patterns aren’t specific to one app. We think they offer a practical model for any messaging platform that wants to support visual trust:

  1. Preserve provenance end to end whenever a sender chooses to, and make it very clear how to opt out.
  2. Combine every available signal, and label each with the assurance it can actually support.
  3. Translate provenance into a small set of plain-language cues shown in the thread.
  4. Let the context of the conversation, not a global setting, decide what is exposed by default.
  5. Inform judgment rather than replacing it.

Guardian Project, Okthanks, and Rights Action Lab welcome collaboration with platform developers, standards bodies, and civil society partners who share these goals. Read the full whitepaper below, and get in touch if you’d like to work with us.

About the partners

Guardian Project, founded in 2009, is a global collective of designers, trainers, researchers, and developers building open-source software that enhances privacy and security for everyone, including Orbot, Proofmode, and ButterBox.

Okthanks are product designers, researchers, and advocates shaping technology for a freer, safer world, partnering with technologists, human rights organizations, and advocates to advance human and digital rights.

Rights Action Lab (RAL) has been instrumental in the development of Proofmode and its integration into secure communication tools, providing critical funding, extensive user testing, and evaluation of in-app integrations that help communities establish visual trust in secure online spaces.

More News

See more

Build with Proofmode

Check out our open- source library. We offer free and commercial licenses, as well as integration services.

For Developers

We offer integration services

Need assistance integrating our code into your software or app? Our team of experienced, reliable developers are ready to help.

Contact Us