EncFS: an Encrypted Filesystem for FUSE.
Clone or download
Permalink
Failed to load latest commit information.
ci spread CI work over targets Aug 26, 2017
cmake Accept netbsd's librefuse as a FUSE library Jun 25, 2017
encfs Correct a sign-compare warning (#516) Apr 26, 2018
integration Cygwin, better handle read-only FS Apr 6, 2018
intl 1.x: update gettext, replace autosprintf with boost::format Nov 13, 2013
po Correct typo in russian translate (#528) Jul 3, 2018
test update ci builds Aug 7, 2017
vendor Add "gtest" from "https://github.com/google/googletest.git@release-1.8.0 Aug 7, 2017
.clang-format reformat using clang Oct 19, 2014
.gitignore drop autoconf ignore rules Jun 17, 2015
.travis.yml Make Travis use last stable Xcode Oct 10, 2017
AUTHORS tweak docs, cleanup metadata Sep 9, 2016
CMakeLists.txt Changelog 1.9.5 Apr 27, 2018
COPYING add license text for included sources Apr 25, 2016
COPYING.GPL apply license change Oct 22, 2012
COPYING.LGPL apply license change Oct 22, 2012
ChangeLog Changelog 1.9.5 Apr 27, 2018
DESIGN.md Fix pod links in DESIGN.md Feb 28, 2015
INSTALL.md Update installation instructions May 16, 2018
PERFORMANCE.md Put benchmark results into PERFORMANCE.md Dec 8, 2014
README-NLS remove reference to old autoconf script Jun 18, 2015
README.md Doc, redirect Win users to the Wiki (#511) Apr 23, 2018
build.sh skip install for tests and other vendored subdirs Oct 8, 2017
config.h.cmake replace most compile-time platform checks with build-time checks Aug 7, 2017
create-dev-pkg.sh add LIB_INSTALL_DIR override, fixes #213 Sep 15, 2016
devmode switch to osx_image xcode8.3 Aug 9, 2017
integration.sh Add current path to perl integration tests Aug 10, 2017
package-source.sh Add signing hint in package-source.sh helper (#517) Apr 27, 2018

README.md

EncFS - an Encrypted Filesystem

Build Status

  • Travis: Travis CI

About

EncFS provides an encrypted filesystem in user-space. It runs in userspace, using the FUSE library for the filesystem interface. EncFS is open source software, licensed under the LGPL.

EncFS is now over 15 years old (first release in 2003). It was written because older NFS and kernel-based encrypted filesystems such as CFS had not kept pace with Linux development. When FUSE became available, I wrote a CFS replacement for my own use and released the first version to Open Source in 2003.

EncFS encrypts individual files, by translating all requests for the virtual EncFS filesystem into the equivalent encrypted operations on the raw filesystem.

For more info, see:

Status

Over the last 15 years, a number of good alternatives have grown up. Computing power has increased to the point where it is reasonable to encrypt the entire filesystem of personal computers (and even mobile phones!). On Linux, ecryptfs provides a nice dynamically mountable encrypted home directory, and is well integrated in distributions I use, such as Ubuntu.

EncFS has been dormant for a while. I've started cleaning up in order to try and provide a better base for a version 2, but whether EncFS flowers again depends upon community interest. In order to make it easier for anyone to contribute, it is moving a new home on GitHub (2014). Since then project has been updated a few times thanks to several contributors, so if you're interested in EncFS, please dive in!

Unique Features

EncFS has a few features still not found anywhere else (as of Dec 2014) that may be interesting to you:

Reverse mode

encfs --reverse provides an encrypted view of an unencrypted folder. This enables encrypted remote backups using standard tools like rsync.

Fast on classical HDDs

EncFS is typically much faster than ecryptfs for stat()-heavy workloads when the backing device is a classical hard disk. This is because ecryptfs has to to read each file header to determine the file size - EncFS does not. This is one additional seek for each stat. See PERFORMANCE.md for detailed benchmarks on HDD, SSD and ramdisk.

Works on top of network filesystems

EncFS works on network file systems (NFS, CIFS...), while ecryptfs is known to still have problems.

Development

The master branch contains the latest stable codebase. This is where bug fixes and improvments should go.

The dev branch contains experimental work, some of which may be back-ported to the master branch when it is stable. The dev branch is not stable, and there is no guarantee of backward compatibility between changes.

Donations

How about a nice email instead?

Windows

EncFS works on Cygwin, there are also some Windows ports.

See the wiki for additional info.

FAQ

What settings should I use for Dropbox?

Use standard mode. There have been reports of a pathological interaction of paranoia mode with Dropbox' rename detection. The problem seems to be with External IV chaining, which is not active in standard mode.