awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rfjakob avatar

rfjakob/gocryptfs

0
View on GitHub↗
4,312 星标·296 分支·Go·mit·9 次浏览nuetzlich.net/gocryptfs↗

Gocryptfs

gocryptfs is a FUSE-based encrypted filesystem that transparently encrypts and decrypts file contents and filenames on disk. It uses block-level authenticated encryption with AES-GCM or AES-SIV-512, binding each block to its file header and offset for integrity, while obfuscating filenames with EME or AES-SIV wide-block ciphers using per-directory initialization vectors. The system derives all encryption keys and initialization vectors deterministically from a master key using HKDF and SHA256, enabling reproducible ciphertext for reliable backup and synchronization workflows.

The project distinguishes itself through several key capabilities. It supports reverse-mode encryption overlays that create an encrypted view of a plaintext directory on the fly, allowing secure backups without modifying original files. Hardware security key authentication via FIDO2 tokens provides an alternative to password-based unlocking. The filesystem stores each file as a separate encrypted blob, enabling efficient incremental synchronization with cloud storage services like Dropbox or rsync. A master key recovery mechanism prints keys on mount, allowing data access even if configuration files or passwords are lost.

The encrypted filesystem supports standard operations including atomic renames, hard links, extended attributes, and fallocate calls. It includes filesystem integrity verification through structural scanning to detect tampering or errors. The project compiles into a static Go binary with embedded cryptographic libraries, enabling portable deployment without runtime dependencies.

Features

  • FUSE - Mounts encrypted directories as decrypted virtual filesystems via FUSE for transparent read/write access.
  • FUSE Virtual Filesystems - Intercepts filesystem calls through a FUSE kernel module to present an encrypted directory as a decrypted mount point transparently.
  • File Encryption - Encrypts each file individually with AES-GCM and stores ciphertext alongside metadata so only the key holder can decrypt.
  • Block-Level Encryption - Encrypts file data in fixed-size blocks with AES-GCM, binding each block to its offset and file header for integrity.
  • Block-Level Tampering Detection - Detects unauthorized modifications to encrypted blocks on read and returns I/O errors while logging corruption to syslog.
  • Block Swapping Prevention - Binds each encrypted block to its file header and offset to prevent block swapping between files or positions.
  • Deterministic File Encryptions - Derives keys and IVs deterministically so ciphertext remains reproducible for cloud sync and backup tools.
  • Deterministic Filename Encryptions - Encrypts file names using a directory IV derived from the encrypted path so ciphertext names stay consistent for backup workflows.
  • Deterministic Per-File Encryptions - Derives file content keys and IVs deterministically from the master key and file path using HKDF and SHA256.
  • Encrypted Mounts - Creates a decrypted virtual view of an encrypted folder using a FUSE filesystem so applications can read and write plaintext files.
  • Encrypted FUSE Filesystems - Provides an overlay filesystem that encrypts files on disk while presenting a decrypted view when mounted via FUSE.
  • Encrypted File Name Hiding - Encrypts file and directory names with per-directory IVs to prevent plaintext name exposure on disk.
  • Filename Encryption - Encrypts filenames with EME or AES-SIV wide-block ciphers using per-directory initialization vectors to hide directory structure.
  • Authenticated File Encryptions - Protects file contents with GCM encryption and file names with EME wide-block encryption, using Scrypt for password hashing.
  • Filesystem Initialization Vector Derivation - Derives all IVs deterministically from encrypted file paths using SHA256 for reproducible ciphertext in backups.
  • Cloud-Compatible - Stores each file as a separate encrypted blob for efficient incremental sync with Dropbox or rsync.
  • Deterministic - Derives keys and IVs deterministically so ciphertext remains reproducible for cloud sync and backup tools.
  • Filesystem Initialization Vector Derivation - Computes all IVs deterministically from encrypted file paths using SHA256 so encryption is reproducible without random values.
  • Deterministic File Content Key Derivation - Generates file content keys from a master key using HKDF-SHA256, producing 64-byte keys for AES-SIV-512 encryption.
  • AES-GCM File Encryptors - Protects file contents with authenticated AES-GCM and obfuscates filenames with EME wide-block encryption.
  • Filesystem Name Obfuscation - Obfuscates filenames with EME or AES-SIV wide-block encryption to hide directory structure and prevent name leakage.
  • AES-SIV-512 File Encryptions - Encrypts file data using deterministic authenticated encryption with AES-SIV-512, binding block numbers into IV and associated data.
  • Cloud File Sync - Stores each file as a separate encrypted blob so standard tools like Dropbox or rsync can synchronize changes incrementally.
  • Encrypted Cloud Syncs - Places encrypted folders inside cloud-sync directories while keeping decrypted views outside for secure cloud synchronization.
  • Reverse-Mode Overlays - Creates an encrypted view of a plaintext directory on the fly, enabling secure backups without modifying original files.
  • Reverse-Mode Mounts - Creates an encrypted view of a plaintext directory so you can back up unencrypted data without exposing the original content.
  • Hardware Security Key Authentications - Unlocks encrypted volumes using FIDO2 hardware tokens instead of passwords for stronger access control.
  • Encrypted Backups - Encrypts plain-text directories with deterministic encryption so backup tools can store ciphertext without exposing original content.
  • Hardware Authentication - Supports unlocking encrypted volumes using FIDO2 hardware tokens as an alternative to password entry.
  • Master Key Recovery - Prints a master key on mount that allows data access even if the config file is lost or the password is forgotten.
  • FIDO2 Token Authentications - Unlocks encrypted volumes using FIDO2 tokens instead of passwords for key management.
  • Integrity Verifications - Scans encrypted directories for structural errors and detects tampering to ensure data consistency.
  • File Storage Systems - Encrypted overlay file system.

Star 历史

rfjakob/gocryptfs 的 Star 历史图表rfjakob/gocryptfs 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Gocryptfs 的开源替代方案

相似的开源项目,按与 Gocryptfs 的功能重合度排序。
  • keybase/clientkeybase 的头像

    keybase/client

    9,171在 GitHub 上查看↗

    This project is an end-to-end encrypted communication client designed for secure messaging and identity management using public-key cryptography. It provides a cryptographic identity manager to verify authenticity across platforms and integrates a local messaging daemon to synchronize encrypted data and handle network communication. The system features a remote encrypted file system that mounts encrypted storage as local directories for direct file interaction. It also includes automated identity provisioning for registering and authenticating new devices and automation bots using cryptograph

    Gochatend-to-end-encryptiongo
    在 GitHub 上查看↗9,171
  • authenticator-extension/authenticatorAuthenticator-Extension 的头像

    Authenticator-Extension/Authenticator

    4,522在 GitHub 上查看↗

    Authenticator is a multi-factor authentication manager and browser extension designed to generate and store two-step verification codes directly within a web browser. It functions as an encrypted secret store that produces both time-based and counter-based security codes to protect online account access. The project distinguishes itself through cross-browser synchronization, replicating authentication accounts across different browser instances using cloud or local backups. It utilizes password-based encryption to protect authentication seeds and provides a synchronization tool to maintain co

    TypeScript2faauthenticatorchrome-extension
    在 GitHub 上查看↗4,522
  • backup/backupbackup 的头像

    backup/backup

    4,868在 GitHub 上查看↗

    This project is a Unix backup orchestrator used for modeling and executing full-stack data protection. It functions as a management system for database dumps, encrypted archiving, version rotation, and remote storage transport. The system distinguishes itself by orchestrating native system tools for various databases, including PostgreSQL, MySQL, MongoDB, Redis, and Riak. It employs a secure archive workflow that combines compression and encryption using GPG, OpenSSL, or AES before transporting packages to S3-compatible services, Dropbox, or remote servers via SFTP and RSync. Broad capabilit

    Ruby
    在 GitHub 上查看↗4,868
  • tangyoha/telegram_media_downloadertangyoha 的头像

    tangyoha/telegram_media_downloader

    4,865在 GitHub 上查看↗

    This project is a Telegram API client and media archiving system designed to programmatically retrieve chat histories and export media. It functions as a download manager and message forwarder, allowing users to back up photos, videos, and documents from Telegram chats into structured local archives. The system distinguishes itself through advanced content filtering and forwarding capabilities. It can monitor chats for new messages, apply custom regular expressions to filter media by size or date, and automatically forward content between chats. This includes the ability to export protected c

    JavaScriptcosplatfromcross-platformdownloader
    在 GitHub 上查看↗4,865
查看 Gocryptfs 的所有 30 个替代方案→

常见问题解答

rfjakob/gocryptfs 是做什么的?

gocryptfs is a FUSE-based encrypted filesystem that transparently encrypts and decrypts file contents and filenames on disk. It uses block-level authenticated encryption with AES-GCM or AES-SIV-512, binding each block to its file header and offset for integrity, while obfuscating filenames with EME or AES-SIV wide-block ciphers using per-directory initialization vectors. The system derives all encryption keys and initialization vectors deterministically from a master key…

rfjakob/gocryptfs 的主要功能有哪些?

rfjakob/gocryptfs 的主要功能包括:FUSE, FUSE Virtual Filesystems, File Encryption, Block-Level Encryption, Block-Level Tampering Detection, Block Swapping Prevention, Deterministic File Encryptions, Deterministic Filename Encryptions。

rfjakob/gocryptfs 有哪些开源替代品?

rfjakob/gocryptfs 的开源替代品包括: keybase/client — This project is an end-to-end encrypted communication client designed for secure messaging and identity management… authenticator-extension/authenticator — Authenticator is a multi-factor authentication manager and browser extension designed to generate and store two-step… backup/backup — This project is a Unix backup orchestrator used for modeling and executing full-stack data protection. It functions as… tangyoha/telegram_media_downloader — This project is a Telegram API client and media archiving system designed to programmatically retrieve chat histories… winscp/winscp — WinSCP is a remote file manager and SFTP and FTP client that provides a graphical interface for browsing, editing, and… syncthing/syncthing — Syncthing is a decentralized file synchronization engine that maintains consistent data states across multiple devices…