Privacy-first AI infrastructure.

Velum

Masking files, not just text: contracts and PDFs

Jul 27, 20265 min read

When people picture an AI privacy mistake, they picture a sentence. Someone types a customer name into a chatbot, hits send, and a single line of text slips out. That happens. But it is the small version of the problem.

The large version is a file. Someone drags a signed contract, a folder of client records, a batch of medical notes, or a quarterly export into an AI tool and asks it to summarise, compare, or draft something. One action, and the entire document is now sitting on a server somewhere. The leak is not a sentence. It is the whole thing.

Why a file is riskier than a prompt

A prompt is bounded. You wrote it, you can see it, and the amount of private data in it is whatever you chose to type. A file is the opposite. It carries far more than you are looking at in the moment.

Think about a single employment contract. It holds names, a home address, a salary figure, a tax or national ID number, bank details, signatures, and dates. A client record export can hold thousands of rows, each one a person. A medical note can mix a diagnosis with a date of birth and a phone number in the same paragraph. You uploaded the file to ask one narrow question, but you handed over every identifier inside it.

Files also tend to involve more people. A prompt is usually about one matter. A document is often the combined record of many: every customer in the export, every patient in the registry, every counterparty in the deal book. The person uploading rarely got consent from all of them to send their data to a third party, because the upload felt like a small convenience, not a transfer.

And a file hides things. Tracked changes, comments, metadata, hidden columns, footnotes, and earlier drafts can all carry private data you are not even looking at on screen. You cannot redact what you did not notice.

What file-level masking actually does

File masking works on the document the same way reversible masking works on a prompt, but it reads the whole file first.

The tool opens the document and reads the text across all of it, not just the part you are focused on. It finds the private data wherever it appears: names, emails, phone numbers, addresses, identification numbers, financial details, dates tied to a person. It replaces each one with a reversible placeholder, keeping the same value mapped to the same placeholder throughout, so the document still makes sense. Then it produces a masked copy you can safely use with an AI tool.

When the AI replies, the original values are restored in the answer. You get a real, specific result, and the document that left for the model never carried the private data in the first place.

The difference from old-style redaction is that nothing is destroyed. A redacted PDF gives you a black bar and no way back. A masked copy gives you a clean version to work with and the original values waiting to be put back into the reply.

Common formats, handled locally

Velum is built for files, not only text. It can take common document formats and produce a masked version on your own machine. The desktop app handles:

  • PDF
  • DOCX
  • RTF
  • TXT and Markdown
  • CSV and TSV

Some PDFs are not really text. They are scans, an image of a page with no readable characters underneath. For those, the desktop app can turn on OCR, an optional extra you enable and download once, so it reads the words inside the image and masks them as it would any other text. It is slower than a text PDF, and it is desktop only. A scanned contract is still a contract, and the private data in it still needs to be found.

The point that matters most: this happens locally. The reading, the detection, and the masked copy are all produced on your machine. The file does not take a round trip through someone else's cloud to get cleaned. Nothing readable has to leave your device for the masking to work, which means the document with the real names and numbers never sits on a server you do not control.

Whole folders, not one file at a time

Real work does not arrive as a single tidy file. It arrives as a folder. A case has a stack of exhibits. A deal has a data room. A reporting cycle has a directory full of exports.

The Velum desktop app can mask text, single files, and entire folders, fully offline. You point it at a directory and it works through the documents inside, producing masked copies without you opening each one by hand. That is the difference between protecting the one file you remembered and protecting the batch you actually have.

Batch masking also closes a quiet gap. When you process files one at a time, the tedious ones get skipped. Someone masks the contract they are thinking about and forgets the twelve supporting documents next to it. Whole-folder masking removes that choice. The set is handled as a set.

The shift worth making

The instinct to watch what you type into a chatbot is a good one. But it solves the smaller half of the problem. The data that moves in bulk moves as files, and files carry more identifiers, more people, and more hidden content than any prompt you would write by hand.

Masking at the file level, on your own machine, means you can use AI on the documents you actually work with: the contracts, the records, the notes, the data exports, without sending any of it away to be read. The private data stays where it belongs, and you still get the answer you came for.

See how it handles your documents with Velum, or request a demo.

Share this article
XLinkedIn

Keep reading