Show HN: Ncrypt – Query encrypted files privately with FHE

7 rstock 0 7/4/2025, 7:17:16 PM github.com ↗
Hey HN,

We're building ncrypt, an open-source encrypted file manager that allows you to store, manage, and privately query your files using fully homomorphic encryption (FHE). This project originally started as a simple SFTP-like CLI for my personal S3 buckets which I used to send and retrieve encrypted files and have more granular control over key rotation.

As the number of files that I was storing grew, file discovery started to become a problem, and I found myself frequently having to download and decrypt files to inspect their contents. Rather than leaving them unencrypted in S3 and therefore easier to search, I started looking into the concept of searching over encrypted data using fully homomorphic encryption. This led me to Zama's concrete-python library (https://github.com/zama-ai/concrete), which provides a simple Python interface for performing FHE operations.

FHE is notoriously slow, so rather than trying to search over entire files I focused on a more tractable problem, indexing and searching over file metadata (summaries, keywords, embeddings, etc) which was small enough to make search practical. While still not fast compared to traditional file management tools, ncrypts search performance is decent if you keep directory sizes relatively small (under 25 files), and most of the heavy lifting happens during metadata extraction, not at search time.

The two types of encrypted queries we currently support are keyword search and cosine similarity search over vector embeddings, which are generated using user-specified huggingface models. Ncrypt currently supports metadata extraction for text, image, and audio files. Check out our code and give it a try at https://github.com/ncryptai/ncrypt.

We love feedback!

Comments (0)

No comments yet