turbocrypt README

The project's README from github.com/jedisct1/turbocrypt. As one markdown file: README.md.

TurboCrypt Logo

TurboCrypt

A universal file encryption tool.

TurboCrypt encrypts anything from a single document to a whole directory of backups. You can also use it to open encrypted folders as local volumes or keep private files in a public Git repository.

Install TurboCrypt

On macOS, install the signed universal binary with Homebrew. Trust the tap first, then install:

brew trust jedisct1/turbocrypt
brew install jedisct1/turbocrypt/turbocrypt

You can also download the archive for your system from the releases page, extract it, and put turbocrypt somewhere on your PATH.

If you'd rather build it yourself, install the master version of Zig, then run:

git clone https://github.com/jedisct1/turbocrypt.git
cd turbocrypt
zig build --release=fast

You'll find the program in zig-out/bin/. The getting started guide walks you through installation and your first encrypted files.

Encrypt your first folder

First, create a key and save it as your default:

turbocrypt keygen secret.key
turbocrypt config set-key secret.key

Keep a backup of secret.key somewhere separate from your encrypted files. You'll need that key to get them back, and anyone who has it can read them.

Now encrypt a folder, check the encrypted copy, and restore it to a new folder:

turbocrypt encrypt my-documents/ encrypted-documents/
turbocrypt verify encrypted-documents/
turbocrypt decrypt encrypted-documents/ restored-documents/

Your original files stay where they are. The same commands work on individual files, too.

Open an encrypted folder

On Linux and macOS, you can work with encrypted files through a normal folder:

mkdir -p ~/Volumes/documents
turbocrypt mount --daemon encrypted-documents/ ~/Volumes/documents

Open ~/Volumes/documents in your editor or file manager. When you're done, close the files and unmount it:

turbocrypt unmount ~/Volumes/documents

This uses FUSE and needs a one-time installation of fuse3 on Linux or fuse-t on macOS. After setup, you can mount your files without running TurboCrypt as root. On macOS, no kernel extension is needed.

For large files that change often, turbocrypt init creates a container made for random access. Files in it are read and written in encrypted chunks, so the mount keeps nothing in memory and has no file-size limit:

turbocrypt init encrypted-container/
turbocrypt mount --daemon encrypted-container/ ~/Volumes/documents

See Work with an encrypted folder for setup, remote folders, file-size limits, and containers.

Keep maintainer files in Git

From an existing checkout with a default key set, choose the files that should stay private:

turbocrypt git init
turbocrypt git add NOTES.md ops/
git commit -m "Add maintainer files"

You keep editing the files at their usual paths, while Git stores encrypted copies. Other maintainers can restore them with the key; everyone else sees the public project.

The Git guide covers setup, everyday commits, and restoring private files in another clone.

More things you can do

turbocrypt (jedisct1/turbocrypt)

fuse
Searching Database…

What is this?TurboCrypt is a fast, easy-to-use command-line tool that encrypts and decrypts files, Git repositories, and directory trees — from a single document to a whole directory of backups.
Is it a command-line tool, or does it have a graphical interface?It is purely a command-line tool: you create a key, then encrypt and decrypt files with a single command. The README mentions no graphical interface.
Do I need to install anything besides TurboCrypt itself?Nothing for basic encrypting and decrypting. Mounting encrypted folders uses FUSE — a one-time install of fuse3 on Linux or fuse-t on macOS; after that you can mount without root, and macOS needs no kernel extension.
What happens if I lose my encryption key?Your files are unrecoverable — the README says to keep a backup of secret.key somewhere separate, and warns that anyone who has it can read your files. Mounted folders are described for Linux and macOS only.
Which operating systems does it run on?Linux, macOS, Windows, and BSD. It is written in Zig as a small, portable binary.
Do my files stay on my machine, or do they go anywhere?Everything happens on your own machine: encrypted folders can sit on your own disk or on remote storage you've connected, and no accounts or cloud services are mentioned.
Can I keep private files in a public Git repository with it?Yes. From a checkout with a default key, you choose the files that should stay private and keep editing them at their usual paths while Git stores encrypted copies. Other maintainers with the key can restore them; everyone else sees only the public project.
What does mounting an encrypted folder give me?You open the encrypted folder in your usual editor or file manager and read and edit files normally while they stay encrypted. For large files that change often, turbocrypt init creates a random-access container written in encrypted chunks, with no file-size limit and nothing kept in memory.
Which cryptographic primitives does it use?Argon2, AEGIS, HCTR2, and TurboSHAKE — modern constructions, and the README says there are no insecure options to fall back on.
What do the docs cover for everyday use?Hiding filenames, skipping files, checking backups, sending a file, restoring a backup, choosing a default key, and backing up keys so your data stays recoverable.
What are similar projects?cryptomator, eza, diff-so-fancy, cz-cli, lane, nullclaw, hexyl, autojump
Creator
jedisct1
Size
1 MB
Stars
129
Age
11mo
Commits · 90 Days