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)

Searching Database…

这是干什么的?TurboCrypt 是一个快速、易用的命令行工具,可以加密和解密文件、Git 仓库和目录树——小到单个文档,大到一整个备份目录都能处理。
它是命令行工具,还是有图形界面?它是纯粹的命令行工具:先创建密钥,然后用一条命令加密和解密文件。README 里没有提到任何图形界面。
除了 TurboCrypt 本身,我还需要安装别的东西吗?基本的加密和解密不需要任何其他东西。挂载加密文件夹需要用到 FUSE——在 Linux 上一次性安装 fuse3,在 macOS 上安装 fuse-t;之后就可以不用 root 权限进行挂载,macOS 也不需要内核扩展。
如果我丢失了加密密钥会怎样?你的文件将无法恢复——README 建议把 secret.key 的备份保存在别处,并警告任何拿到这个密钥的人都能读取你的文件。挂载文件夹的功能仅支持 Linux 和 macOS。
它能在哪些操作系统上运行?Linux、macOS、Windows 和 BSD。它用 Zig 编写,是一个小巧、可移植的二进制文件。
我的文件是留在自己电脑上,还是会被传到别的地方?一切都在你自己的电脑上完成:加密文件夹可以放在你自己的磁盘上,也可以放在你已连接的远程存储上,文中没有提到任何账号或云服务。
我可以用它把私人文件放进公开的 Git 仓库吗?可以。在一个使用默认密钥的检出仓库中,你可以选定需要保密的文件,继续在原来的路径上正常编辑,而 Git 存储的是加密后的副本。持有密钥的其他维护者可以还原这些文件;其他人看到的只有公开的项目内容。
挂载加密文件夹能给我带来什么?你可以用平时习惯的编辑器或文件管理器打开加密文件夹,正常读写和编辑文件,而文件始终保持加密状态。对于频繁变动的大文件,turbocrypt init 会创建一个以加密分块写入的随机访问容器,没有文件大小限制,也不会在内存中保留任何内容。
它使用了哪些密码学原语?Argon2、AEGIS、HCTR2 和 TurboSHAKE——都是现代的加密构造,而且 README 说明没有任何不安全的可回退选项。
文档对日常使用覆盖了哪些内容?隐藏文件名、跳过文件、校验备份、发送文件、还原备份、选择默认密钥,以及备份密钥,确保你的数据始终可以恢复。
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