rfjakob/gocryptfs

Encrypted overlay filesystem written in Go

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 22 minutes ago
Added to GitGenius on September 15th, 2026
Created on September 6th, 2015
Open Issues & Pull Requests: 66 (+0)
GitHub issues: Enabled
Number of forks: 299
Total Stargazers: 4,611 (+0)
Total Subscribers: 55 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 29.4 hours
Mean response time: 39.1 days
90th percentile: 72.6 days
Tracked items: 124

Most active contributors

Sign in to see contributor activity.

How this project is maintained

96% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 85% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 27
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 766 days
Stale 30+ days: 23
Stale 90+ days: 19

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (11)
  • feature request (10)
  • question (8)
  • bug outside gocryptfs (4)
  • help wanted (4)
  • macOS (3)
  • wontfix (3)
  • documentation (2)

Most active issues this week

Detailed Description

gocryptfs is an encrypted overlay filesystem written in Go that provides transparent encryption for files and directories using FUSE.

The tool solves the problem of securing sensitive data at rest by creating an encrypted layer between applications and storage. It works by mounting an encrypted directory as a virtual filesystem, automatically encrypting data on write and decrypting on read. The project was inspired by EncFS but addresses its security vulnerabilities while maintaining good performance. It uses AES-GCM for authenticated encryption and is built on the go-fuse FUSE library.

Linux is the primary platform where gocryptfs works natively. macOS support exists at beta quality, with most functionality working but occasional issues possible. For Windows users, an independent C++ reimplementation is available. The tool suits anyone needing transparent encryption for local storage without modifying applications, and is appropriate for protecting important data that requires regular backups and secure key management. The project recommends keeping a copy of the master key in a safe location to allow data recovery if the configuration file is damaged or the password is lost.

The project has undergone extensive testing including its own test suite, stress tests that run indefinitely, and porting of xfstests to FUSE, where it passes generic tests with one exception. Security has been formally audited. The codebase is written in Go and compiles from source with Go 1.13 or higher, with precompiled binaries available for x86_64 Linux systems and packages available in major Linux distributions.