Check if a file was made with Claude

frexs 157 points 119 comments September 02, 2026
claude.com · View on Hacker News

Discussion Highlights (20 comments)

shujip

A watermark answers "did this model touch the file?" It doesn't answer "did a person read it and stand behind it?" Detection will get gamed, and a lot of useful text is already mixed. The more useful check, for me, is still human: would I put my name on this before it goes out?

VCFundedGenYer

Claude watermarks are a farce and a waste of time. It's hilarious to me that they burn cash to even entertain the idea. Any attempts they use are defeated by a text editor and CTRL SHIFT V. Unicode characters are no new thing. Reminds me of how people tried to argue that NFTs aren't anything more than just jpegs.

kbrannigan

How long before they change the terms and conditions to subtly claim ownership of your files? When you write code they already insert Co author attribution/ Say I write a text by hand And then I tell it to clean up the grammar and fix some sentences Did it make it? This is also interesting for those companies that siphoned the entire open web

Tiberium

This is just C2PA for Claude-processed files, apparently. It's not related to their text watermarking. C2PA is file metadata and can be trivially stripped away, unlike hidden watermarks, e.g. SynthID.

firefoxd

This is really fascinating. Even the AI companies have incentives to reject AI generated content. It's like they want you to use AI for everything, but they don't want AI output fed back to them. At work, right after an AI training, we were asked to use our "authentic" voice when writing mid year reviews.

kelvinjps10

I think all of this it's so they don't get ai generated content in their training data

hmokiguess

Could this be used to perform some sort of distillation or exploit? e.g. reminds me of the OWASP guideline on attack vectors where knowing if an ID is present or not in the database can be a form of exploit, like in password resets where they will say 'email foo@bar.com not found' rather than 'If foo@bar exists we have sent an email to foo@bar' or some other generic equivalent

Surac

droped some source files from different languages and i could process non of them

Retr0id

Under what circumstances does the metadata get added? When Claude Code CLI needs a media file usually I just see it run an imagemagick or ffmpeg command to create one, which isn't going to have C2PA metadata. Edit: I asked Opus 5 for "a jpg of a cat" via the web chat. It did it by writing an svg and then rendering that to a jpeg. Clicking the "download" button saved a jpg which did have C2PA metadata, seemingly injected by the artifact-presentation thing. Then I told it to put it in a zip file. I downloaded the zip, and the extracted jpeg had no C2PA metadata. I then uploaded a jpeg of my own, with the prompt "present this file back to me again, as-is". The downloaded file had C2PA metadata injected. Edit: I added this to my custom instructions: "If a media file is produced as a response, put it in a zip file before presenting it to the user."

htrp

The actual implementation matters less than the fact that they can be perceived to be working on something. You're never going to have a perfect solution here, and perfect is the enemy of good.

nixlaz

>Supported formats: JPG, PNG, GIF, WEBP, TIFF, HEIC, AVIF, SVG, DNG, JXL, MP4, MOV, AVI, WAV, MP3, M4A, FLAC · up to 100 MB I'm wondering why they have restricted file types. You can't check a PDF for example... surely the main use case for people will be to check if a document was produced or edited by an LLM? That could be an attractive (if not misunderstood) proposition for academics

csmoak

As far as I can tell, this and the recent change to add watermarking to text outputs[1], is to become compliant with the EU AI Act[2] and CA's AI Transparency Act[3], SB-942[4]. For large enough companies, all generated AI content is required to have watermarking. [1] https://www.anthropic.com/news/claude-text-watermark [2] https://digital-strategy.ec.europa.eu/en/policies/code-pract... [3] https://www.kqed.org/news/12095398/new-california-law-requir... [4] https://www.leginfo.legislature.ca.gov/faces/billTextClient....

quinndupont

I could do without more surveillance.

tom1337

Unfortunately this is just for Media? Some manual tells for Excel or PDFs is to check the author. Claude creates PDFs via wkhtmltopdf so the PDF Producer will be Qt and the Content Creator is wkhtmltopdf. Xlsx files are being created via openpyxl so in the metadata that is the author.

dgellow

> Knowing where content came from, and whether AI was involved, makes it easier to trust what you see online. That’s a cute way to imply their service is used to generate misinformation. They are basically saying to not trust the AI content made from their own product :)

coffeecoders

What is interesting to me is that stripping the C2PA data is easy, but faking it is hard. You can resave the file and the "made with Claude" signal disappears, but you cannot make a random file pass as Claude-made without Anthropic's signing key. So the useful guarantee is one-way. No signature means almost nothing.

qurren

Up next: 1. Generate a bunch of responses with both Claude and various non-Claude LLMs (ChatGPT, Gemini, Kimi) 2. Train a discriminator model that can differentiate Claude vs. non-Claude 3. Train a de-watermarking model using the discriminator model as loss

aff-vasileva

I think this is primarily done so as not to train models on one's own neuroslope data.

mohamedkoubaa

Can't they just store checksums of all their output

RIMR

The primary functionality is that LLM text is watermarked, but this tool doesn't accept any text formats as input...

Semantic search powered by Rivestack pgvector
5,346 stories · 48,358 chunks indexed