Fact-checked by Grok 2 weeks ago

EncFS

EncFS is a user-space cryptographic filesystem that provides transparent for individual files on operating systems, utilizing the () library to translate requests from a virtual decrypted mount point into encrypted operations on an underlying raw filesystem directory. Developed by Valient Gough and first released in 2003, EncFS enables users to secure data with a password-derived key, supporting ciphers such as (with up to 256-bit keys) and Blowfish, while storing encrypted files in a specified for offline protection against unauthorized access. Key features include per-file initialization vectors to prevent pattern analysis, filename encoding schemes (stream or block-based) to obscure metadata, and optional "paranoia" mode that adds message authentication codes (MACs) to detect tampering, though it operates without root privileges and inherits limitations from the host filesystem, such as maximum filename lengths. Originally designed for personal use during travel, EncFS supports reverse mode for on-demand of plaintext backups and works over network filesystems like NFS or CIFS, but its development has been dormant since 2018, with official discontinuation announced in May 2024, leading to recommendations against its use in new setups due to vulnerabilities identified in a 2014 security audit (including IV reuse and misuse that enable attacks with multiple file versions); alternatives like gocryptfs are preferred for modern applications. Licensed under the GNU Lesser General Public License (LGPL) version 3.0, the source code remains available on , but EncFS is unmaintained and being phased out in many distributions as of 2025, with dependencies on the libfuse library.

Introduction

Definition and Purpose

EncFS is a user-space encrypted pass-through designed for operating systems, leveraging the () framework to mount an encrypted directory and present a decrypted view of its contents to users. It operates entirely within user space, requiring no kernel modifications or special privileges beyond standard access. The encrypts individual files on-the-fly as they are written and decrypts them during reads, ensuring that only is stored in the underlying filesystem while the mounted directory appears as a seamless interface. This pass-through design means that no unencrypted data persists on disk; all decryption happens transiently in within the mounted view, maintaining even if the is powered off or the mount is unmounted. EncFS's primary purpose is to enable secure of sensitive by overlaying transparent onto existing filesystems, allowing users to protect specific directories without reformatting drives or altering the host . Originally developed for personal use during international travel to safeguard contents, it offers advantages over full-disk tools, such as the ability to and unmount encrypted volumes quickly without rebooting the system.

History and Development

EncFS was initially developed by Valient Gough in 2003 as one of the first encrypted filesystems built on the FUSE library, enabling user-space implementation of filesystem encryption without kernel modifications. The project originated from Gough's need to secure personal data during travel, leveraging FUSE's emerging capabilities for transparent encryption. Early releases emphasized basic AES encryption for individual files, providing a straightforward pass-through mechanism where plaintext files were transparently encrypted on storage. Version 1.0, released in 2004, introduced streamable cipher modes, allowing sequential file access without requiring full decryption, which improved usability for larger files. Subsequent development continued under Gough's leadership, with the project licensed under the GNU Lesser General Public License (LGPL) to facilitate integration into various applications. The codebase was hosted on Google Code before migrating to GitHub in 2013, where it remains available as open-source software. Key milestones include version 1.7 in , which added block-level message codes (MACs) to detect tampering or corruption in encrypted data blocks. By 2015, EncFS had garnered significant adoption, influencing kernel-integrated tools like , whose design drew inspiration from EncFS's key management and stacking approach. In 2014, a security audit conducted by Taylor Hornby identified multiple cryptographic weaknesses, prompting the release of version 1.8 in 2015, which addressed some issues such as improved randomization but left others unresolved. The final stable release, version 1.9.5, arrived in April 2018, incorporating bug fixes, enhanced configuration options, and better cross-platform support without introducing major new features. Following the release of version 1.9.5, has ceased, and in May 2024, the project was declared unmaintained, with recommendations to use alternatives like gocryptfs.

Technical Overview

Architecture and Operation

EncFS operates as a userspace filesystem that maintains two distinct directories: a plaintext directory, which serves as the mounted virtual view accessible to the user, and a ciphertext directory, which acts as the backend storage for encrypted data. Encryption and decryption are managed transparently through the FUSE (Filesystem in Userspace) interface, which intercepts file system operations and translates them between the virtual plaintext view and the underlying encrypted storage. This architecture allows EncFS to layer encryption atop any compatible backing filesystem without modifying the kernel. The mounting process begins when a user executes the encfs command, specifying the ciphertext directory, the desired mount point for the plaintext view, and a passphrase for authentication. Upon successful passphrase entry, EncFS derives a master key using (Password-Based Key Derivation Function 2) and mounts the virtual filesystem at the specified point, enabling seamless read and write operations as if accessing an unencrypted directory. During operation, read requests trigger decryption of the relevant data blocks from the ciphertext storage, while write requests encrypt modified blocks before storing them; this on-the-fly processing ensures that the plaintext view remains unencrypted in memory but never persists to disk. In terms of data flow, EncFS divides files into fixed-size blocks—defaulting to 1024 bytes—for independent encryption using the derived key, allowing efficient handling of large files without requiring full-file decryption for partial access. The filesystem employs no central metadata file; instead, essential configuration details are stored in a small XML file (.encfs6.xml) within the ciphertext directory, while file-specific metadata resides in per-file headers. The overall file structure is mirrored in the ciphertext directory, with plaintext filenames encoded to produce opaque, encrypted equivalents that preserve the directory hierarchy. EncFS also supports a reverse mode, invoked via the --reverse option, which encrypts files from an existing unencrypted directory into a ciphertext backend on demand, facilitating scenarios like secure backups or without altering the source. Block size remains a configurable during filesystem creation to balance and needs. To enable efficient partial file access, EncFS incorporates streaming ciphers in specific contexts, such as encrypting the final block of a or handling filename encoding, which avoids the need to process entire files for random reads or seeks.

Core Components

EncFS employs a key derivation mechanism based on the Password-Based Key Derivation Function 2 (), utilizing HMAC-SHA1 as the underlying pseudorandom function to generate encryption keys from a user-provided . This process incorporates an optional 160-bit to enhance security against precomputed attacks, with the number of iterations dynamically adjusted to target a specific computational delay—typically 0.5 seconds in standard mode or 3 seconds in paranoia mode—ensuring resistance to brute-force attempts while balancing usability. In terms of file handling, EncFS structures each encrypted file with an 8-byte header containing a random 64-bit (IV) and, optionally, a (MAC) for integrity verification. The file contents are divided into 1024-byte blocks (including the MAC overhead when enabled), which are encrypted using block ciphers in Cipher Block Chaining () mode or stream ciphers for confidentiality. This per-file IV assignment prevents IV reuse attacks across different files, promoting unique encryption contexts even for files of identical content. Filename encoding in EncFS involves encrypting the original with a derived key and , followed by a Base64-like to obscure the and ensure with underlying filesystems. The encoded result is padded to align with block sizes where necessary, using either streamable (variable-length) or block-aligned modes to balance and storage efficiency. For added integrity, EncFS supports optional 8-byte headers per encrypted , computed using the file to authenticate and detect unauthorized modifications. These MACs are included by default in paranoia mode but can be enabled in standard configurations to verify -level consistency upon access. A key concept in EncFS is the use of initialization vectors (s) assigned per or , which are randomized to avoid patterns that could enable . Additionally, EncFS supports external IV chaining, where the content IV is derived by combining the filename-derived IV with additional path information, thereby linking and for enhanced protection against selective attacks.

Configuration Options

Cipher and Block Configurations

EncFS supports a selection of block cipher algorithms for encrypting file contents, primarily relying on implementations from the library. The default cipher in standard mode is with a 192-bit operating in mode, providing a balance between security and performance for general use. Alternative ciphers include Blowfish, which uses an 8-byte size and supports key sizes up to 448 bits, suitable for legacy compatibility or environments with specific performance needs. While earlier versions focused on these s, later iterations up to version 1.9.5 maintain compatibility without introducing stream ciphers like ChaCha20 as standard options. Block size in EncFS is configurable during filesystem creation, typically ranging from bytes to 4096 bytes to optimize for different access patterns. Smaller block sizes, such as or 512 bytes, facilitate efficient to file portions by minimizing the amount of data that needs decryption for partial reads. Larger sizes, up to 4096 bytes, improve throughput for sequential I/O operations by reducing overhead per . The default block size is bytes in both standard and paranoia modes, ensuring a compromise between these trade-offs. Key derivation in EncFS employs the function with HMAC-SHA1 as the pseudorandom function, introduced as the default since version 1.5 to strengthen passphrase-based keys against brute-force attacks. In standard mode, the number of iterations is calibrated to approximately 0.5 seconds of computation time on typical hardware, resulting in around 64,000 iterations on a 1.6 GHz , while paranoia mode extends this to 3 seconds for enhanced security. Users can adjust these iterations manually in expert configuration mode, with options up to thousands or more to match hardware capabilities and security requirements; salt size defaults to 160 bits for added . This time-based approach allows adaptability without fixed numerical limits, though expert mode permits direct specification. For data integrity, EncFS offers optional MAC headers per block, computed as a 64-bit using the same derived key as , appended to each block (adding 8 bytes overhead). These MACs, enabled by default in paranoia mode but disabled in standard mode to prioritize , verify block authenticity during reads and detect tampering. In expert mode, users can toggle this feature, balancing protection against storage and computational costs. IVs for blocks are generated by XORing a file-specific IV with the block number, enabling independent of blocks. The block-based encryption model in EncFS divides files into fixed-size blocks, allowing partial file access without decrypting the entire file, which supports efficient operations in virtual filesystems. Following a 2014 security audit, version 1.7.4 and later incorporated recommended improvements, including the "standard" mode with and time-calibrated for stronger default configurations.

Filename and IV Chaining Options

EncFS provides several configuration options for securing filenames and initialization vectors (), which are essential for protecting and preventing attacks that could infer file structures or relationships from the encrypted storage. These options allow users to balance , performance, and compatibility during filesystem creation. Filename encoding modes determine how plaintext filenames are transformed into ciphertext to obscure their content and length. The "Null" mode applies no encoding, leaving filenames unencrypted and suitable only for low- scenarios where metadata protection is unnecessary. In "" mode, filenames are padded and encrypted in fixed blocks matching the cipher's block size—such as 16 bytes for —providing simple obfuscation that somewhat hides the original length but may reveal patterns in longer names. The "" mode, preferred for stronger , encrypts filenames character-by-character using a approach, resulting in ciphertext lengths closely matching the plaintext while ensuring no discernible patterns or length leaks. IV chaining options enhance security by linking IVs across files and directories, preventing attackers from correlating ciphertext based on identical content or names. Per-file IV initialization generates a unique 64-bit random IV for each file's data encryption, stored in an 8-byte header, to avoid patterns that could arise from reusing IVs and enable comparison of identical files. External IV chaining derives the file's data IV from the filename's IV, creating a dependency that ties content encryption to metadata and disables hard links within the filesystem to maintain integrity. Filename-to-IV header chaining further integrates this by using directory-specific IVs for filename encryption, ensuring that files with the same name in different directories produce distinct ciphertext filenames and mitigating directory traversal attacks. This chaining mechanism overall prevents inference of file relationships or hierarchies from ciphertext sizes, names, or modification patterns. Block MAC headers can be enabled alongside IV options for , appending an 8-byte (or 16-byte for larger s) message authentication code to each encrypted using the volume and IV. This detects any tampering or corruption in individual blocks, integrating seamlessly with per-file IVs to verify without relying on external filesystem checks. The filename IV chaining option, which derives IVs from parent directories, was introduced in EncFS version 1.7 to strengthen protection against such inference attacks.

Uses and Applications

Common Scenarios

EncFS has been employed for protection, particularly in scenarios involving shared computers where users needed to safeguard sensitive documents, such as financial records or files, within their directories. By creating an encrypted filesystem atop an existing , users could and access decrypted data only after providing a password, ensuring that unencrypted files remain inaccessible to others on the system. This approach was ideal for laptops or multi-user environments, where quick setup and user-level permissions via allow for seamless encryption without administrative privileges. As of November 2025, due to EncFS's unmaintained and vulnerabilities (see Disadvantages and Status sections), it is not recommended for new setups; alternatives like gocryptfs are preferred. However, it continues limited legacy use in low-risk scenarios. In , EncFS enabled the securing of offsite or by layering over existing data, avoiding the need for full re-encryption of large datasets. Users often employed EncFS in reverse mode to decrypt remote directories for tools like , allowing incremental updates to encrypted volumes stored on external servers or services such as SSHFS-mounted locations. This method supported automated workflows, including integration with Deja Dup, where the EncFS volume is mounted prior to initiating the , ensuring that only data is captured and subsequently re-encrypted by the tool. For portable storage, EncFS was utilized on USB drives to create cross-platform encrypted containers that could be accessed on different devices after mounting. This setup was particularly useful for travelers or users transferring data between systems, as the encrypted files appear as a regular directory once unlocked, with compatibility extended via older ports like EncFSMP for non-Linux environments, though EncFSMP has limited maintenance since ~2018. EncFS found application in virtual environments, such as encrypting specific folders within virtual machines or containers, where its userspace implementation facilitated straightforward deployment without kernel modifications. In containerized setups like , EncFS could overlay encryption on shared volumes, providing isolated secure storage for application data, though with the aforementioned caveats on security. Prior to the widespread adoption of in the late 2000s, EncFS was a common choice in distributions like for establishing quick-setup encrypted volumes, often recommended for personal encrypted home directories due to its simplicity and FUSE-based accessibility.

Integration with Other Systems

EncFS requires the FUSE module to enable mounting of encrypted directories as virtual filesystems, operating in user space to provide transparent access without kernel modifications or elevated privileges beyond FUSE permissions. This architecture supported primary deployment on , with compatibility extending to macOS via OSXFUSE and BSD systems through their respective FUSE implementations. The filesystem layered effectively over network protocols, including NFS, CIFS (via ), and , permitting remote access to encrypted storage where the backing encrypted directory resides on a standard . This allowed efficient synchronization and replication of the , as identical files yield the same encrypted output under consistent settings, while the decrypted view remains local to the mounting system. In a related cross-platform capability, the FUSE-based design facilitated such integrations across supported operating systems without native dependencies. For backups, EncFS integrated seamlessly with utilities like , , and Duplicity to support incremental encrypted archiving. The --reverse option creates an on-demand encrypted representation of directories, enabling to transfer only changed encrypted files for remote storage without modifying originals; can similarly capture the decrypted mountpoint as a standard archive, and Duplicity handles full or differential backups of the virtual filesystem with built-in and layering. EncFS found application in containerized environments for secure, isolated storage, such as volumes or instances, where access must be explicitly enabled. In , containers require the --device /dev/[fuse](/page/Fuse) flag and --cap-add SYS_ADMIN to mount EncFS volumes successfully, allowing encrypted data persistence across container lifecycles. For , provisioning the /dev/[fuse](/page/Fuse) character device (e.g., via mknod) within the container permits standard EncFS operations in the isolated namespace. As a stackable FUSE filesystem, EncFS could overlay other FUSE-based systems, such as for remote mounting, combining with network access in a single virtual layer—though successive userspace processing may incur overhead in latency and resource use. Complementing this, the "normal file server" mode positions the decrypted EncFS mountpoint for network sharing via protocols like or NFS, delivering unencrypted views to clients while keeping the underlying encrypted storage protected on the host.

Advantages

Performance and Scalability

EncFS demonstrates notable efficiency in handling backups through its per-file encryption approach, which allows only changed blocks within modified files to be encrypted and stored, facilitating incremental operations without necessitating full filesystem scans. This design enables tools like in reverse mode to efficiently synchronize only altered data, reducing backup times and bandwidth usage compared to full-volume systems. The filesystem's scalability for large datasets stems from its per-file encryption model, where each is independently and stored in an underlying , avoiding the overhead of encrypting and managing entire volumes as seen in block-device-based solutions. This granular approach supports handling terabyte-scale collections without performance degradation from global re-encryption or mounting delays, making it suitable for growing archives or media libraries. Random access to files is efficiently supported via modes for filename encoding and block-based data , permitting quick partial reads without decrypting entire files—ideal for metadata-heavy tasks like video seeking or database queries. In benchmarks, this results in faster random seeks on hard disk drives (HDDs), with EncFS achieving up to 92.8 operations per second compared to slower alternatives like CryFS at 72.7 operations per second. Integrity verification through optional block MAC headers enhances reliability by embedding an 8-byte cryptographic per block, allowing EncFS to detect or modifications (including bitrot from storage errors) during access and refuse decryption if discrepancies occur. On HDDs, EncFS outperforms alternatives like in stat()-intensive workloads due to its on-demand decryption of filenames and , avoiding per-operation header reads that incur seek penalties on spinning disks. Benchmarks confirm this advantage, with EncFS handling 9419 random stat operations per second versus 5738 for CryFS under similar conditions. Performance can be further optimized via configurable block sizes, tailored to specific I/O patterns—for instance, using 64-byte blocks for high-randomness workloads like to minimize overhead and on small reads. Larger blocks (e.g., bytes default) reduce computational costs for but may increase delays for partial file operations, as configurable in expert setup modes. As detailed in the and block configurations section, these options allow balancing throughput and responsiveness.

Flexibility Across Environments

EncFS demonstrates significant adaptability across diverse hardware and software environments due to its userspace implementation via the framework, which avoids deep system dependencies. On , it integrates natively, allowing seamless operation without administrative privileges beyond FUSE setup. Ports extend this support to other operating systems: EncFSMP provides a Windows-compatible version using the for userspace filesystems, while macOS support relies on OSXFUSE (now macFUSE), though users report occasional stability issues such as mount failures during system updates. The filesystem's design enables compatibility with various physical storage devices, including traditional hard disk drives (HDDs), solid-state drives (SSDs), and like USB flash drives, as it operates on existing directories without mandating specialized formatting or partitioning. This independence from underlying hardware allows EncFS volumes to be created and accessed across different storage types interchangeably, provided the host system supports or equivalent. For instance, an EncFS-encrypted directory on a USB drive can be mounted on any compatible system, preserving during transfers. EncFS can function as a secure backend for file sharing protocols such as or NFS, where the encrypted volume is mounted locally on the server and exposed as an unencrypted share to clients, ensuring remains protected at on the storage medium. This setup is particularly useful for creating encrypted -accessible storage without altering server configurations. Additionally, its lack of modifications—relying entirely on userspace operations—makes it ideal for transient environments like distributions or multi-boot systems, where full control is unavailable or risky; users have successfully mounted EncFS volumes in live sessions for data recovery tasks.

Disadvantages

Security Concerns

A comprehensive security audit of EncFS version 1.7.4 conducted by Taylor Hornby in 2014 identified multiple cryptographic vulnerabilities that undermine its protection against various attacks. These include high-impact stream cipher malleability, where the use of s for the last block of files allows adversaries with write access to manipulate without detection, potentially altering decrypted content. IV reuse in modes further exacerbates risks, as file initialization vectors (s) are derived by XORing the block number with a static file IV, enabling potential keystream and recovery attacks if an attacker observes multiple file versions. Filename inference attacks are also possible due to the design where filenames are decrypted before MAC verification, allowing partial leakage of even if the full is unknown. EncFS 1.7 suffers from weak filename encoding that permits buffer overflows in the encodeName method and facilitates directory structure leakage, as the layout and naming conventions of encrypted files closely mirror the plaintext directory hierarchy, enabling attackers to infer organizational details from ciphertext alone. The system provides no forward secrecy, relying on static, passphrase-derived keys without mechanisms for key rotation or ephemeral keys, meaning that compromise of the master key exposes all historical and future file contents. This design choice heightens risks in scenarios where long-term storage or evolving threats are involved. Early EncFS modes lack robust , using the same key for both block encryption and message authentication codes (s), with MAC verification not performed in constant time, which allows timing attacks and undetected tampering on blocks. Additionally, 64-bit MACs are insufficient against forgery after approximately 2^32 blocks, and configuration options can disable MACs entirely, further weakening integrity protections. Passphrase-derived keys in EncFS are vulnerable to offline brute-force attacks, particularly targeting the encrypted (.encfs6.xml), which stores critical and allows rapid verification of passphrase guesses without mounting the full filesystem. EncFS offers no deniability against forensic analysis, as the distinctive .encfs6.xml file explicitly indicates an EncFS volume, and variations in file sizes or deterministic encoding in reverse mode can reveal the presence of encrypted sensitive data. The 2014 audit rated EncFS as unsuitable for high-threat models, emphasizing its insecurity against offline attacks on , especially when an adversary obtains multiple snapshots of the encrypted volume over time, allowing exploitation of plaintext changes to recover keys or content. Version 1.8 of EncFS implemented partial fixes, including improved MAC verification and optional unique IV chaining to address some IV reuse concerns, but core risks persist, such as decryption attacks enabled by multiple ciphertext snapshots due to the underlying design's reliance on file-specific keys without comprehensive state binding.

Practical Limitations

EncFS exhibits limited compatibility outside of environments supporting the (Filesystem in Userspace) framework, as it is fundamentally designed as a user-space filesystem relying on for integration with the kernel. This restricts its use to and other systems with FUSE available, precluding native support in kernel-integrated or non-FUSE setups without additional porting efforts. A Windows port known as EncFSMP provides partial cross-platform functionality by mounting EncFS volumes on Windows and macOS, but it is based on EncFS version 1.7.4 and thus lags behind the latest implementation (version 1.9.5), missing subsequent enhancements and bug fixes. This version discrepancy can lead to issues when exchanging volumes between platforms, as EncFSMP's feature set does not fully align with newer capabilities. Additionally, EncFSMP incorporates a closed-source component for file mounting, which may introduce further compatibility constraints in diverse Windows environments. EncFS imposes restrictions on filename lengths due to the expansion caused by and encoding, which can exceed underlying filesystem limits. For instance, on filesystems with a 255-character limit, EncFS effectively caps filenames at approximately 190 characters to accommodate the overhead of encrypted names, preventing the creation or of longer paths without truncation or errors. The system's resilience to is inherently tied to the underlying filesystem, lacking independent error correction or redundancy mechanisms at the layer. Partial corruption in individual encrypted files may render only those files unusable upon decryption, but damage to critical files—such as the .encfs6.xml configuration—can prevent the entire from succeeding, effectively locking to the whole volume until repaired or recreated. EncFS is not well-suited for high-concurrency access scenarios, such as multi-user servers, owing to the inherent overhead of , which involves frequent user-kernel context switches and of operations. This can result in performance degradation under heavy parallel I/O loads, with studies showing FUSE-based filesystems experiencing up to 83% overhead on SSDs compared to native implementations. Scalability in very large is constrained by EncFS's per-file model, where operations like directory listings require decrypting and processing for each entry individually, leading to increased and resource usage as the number of files grows. This per-file overhead accumulates in environments with thousands of small files, making EncFS less efficient for massive-scale storage compared to block-level alternatives.

Project Status

Development History and Audits

EncFS was initially developed by Valient Gough starting in 2003 as a userspace encrypted filesystem leveraging the library. Following the release of version 1.9.5 on April 27, 2018, the project entered a period of stagnation with no further official releases. activity, including commits and contributions, dropped sharply after 2018, with the last notable commit occurring in 2024. A significant was conducted in January 2014 by Hornby of Defuse.ca on version 1.7.4, identifying seven major cryptographic issues. These included weaknesses in key derivation, such as the generation of initialization vectors (s) by XORing the number with the file , which could lead to IV reuse under certain conditions. The concluded that EncFS did not align with contemporary cryptographic standards and recommended against its use for new deployments. In response to the audit findings, no official fixes were implemented by the upstream project. Community efforts focused on minor patches, primarily for build compatibility in distributions, but these did not address the core concerns. One notable was EncFSMP, a multiplatform port emphasizing Windows and macOS compatibility, which incorporated the 1.9.5 codebase and received its last update in December 2018. Debian maintainers marked the encfs package (version 1.9.5-3) for autoremoval from testing in December 2025 due to build failures with updated tools like 4, as tracked in bug report #1112870. On May 28, 2024, project maintainer Valient Gough updated the repository's README to formally declare EncFS dormant, noting that no further development or maintenance would occur.

Current Recommendations

In 2025, EncFS is considered dormant, with its original developer, Valient Gough, announcing in May 2024 that the project would receive no further updates or support. This status reflects the codebase's age and lack of alignment with modern cryptographic standards, leaving unresolved issues from prior audits unaddressed. Major Linux distributions have responded to EncFS's dormancy by issuing warnings or planning removals. As of September 2025, 's documentation highlights the project's unmaintained state and known vulnerabilities, advising users to review security reports before deployment. has marked the encfs package (version 1.9.5-3) for autoremoval from testing on December 1, 2025, due to build failures with updated tools like 4. Similarly, Gentoo has masked the sys-fs/encfs package, indicating it is scheduled for removal from the repository. For users with existing EncFS-encrypted data, migration to actively maintained alternatives is recommended to ensure ongoing and . The process typically involves decrypting the EncFS volume and re-encrypting the plaintext files using tools like gocryptfs or CryFS, which offer stronger encryption models without the metadata leakage issues of EncFS. Gough explicitly recommends gocryptfs for new setups, citing its active development, performance parity in standard modes, and use of modern primitives like XChaCha20-Poly1305. CryFS provides an additional option, particularly for scenarios, as it encrypts file sizes and directory structures to enhance . While EncFS may remain viable for , low-risk applications—such as read-only archives of non-sensitive data—its use for new or actively modified sensitive storage is strongly discouraged due to the absence of fixes for identified vulnerabilities.

References

  1. [1]
    vgough/encfs: EncFS: an Encrypted Filesystem for FUSE. - GitHub
    EncFS encrypts individual files, by translating all requests for the virtual EncFS filesystem into the equivalent encrypted operations on the raw filesystem.Vgough/encfs · Encfs - An Encrypted... · Status
  2. [2]
    encfs(1) - Linux man page
    EncFS creates a virtual encrypted filesystem which stores encrypted data in the rootdir directory and makes the unencrypted data visible at the mountPoint ...
  3. [3]
    encfs - Encrypted pass-through FUSE filesystem - FreshPorts
    Nov 7, 2024 · EncFS is an encrypted pass-through filesystem which runs in userspace, using the FUSE kernel module. Similar in design to CFS and other pass-through ...
  4. [4]
    Encrypt filesystems with EncFS and Loop-AES - Linux.com
    Mar 20, 2006 · EncFS provides an encrypted filesystem in userspace and runs without any special permissions. In fact, it's not so much a filesystem as a ...
  5. [5]
    Project of the Month, April 2006 - SourceForge Community Blog
    Mar 31, 2006 · Encfs became one of the first public filesystems based on FUSE. As I learned more about the demands on a filesystem, I tried to help out with ...<|control11|><|separator|>
  6. [6]
    encfs-users Mailing List for Encrypted Filesystem for FUSE
    EncFS filesystem users. You can subscribe to this list here ... version 1.0.0, current version 1.0.0) /opt/local/lib/libcrypto.1.0.0.dylib ...
  7. [7]
    encfs has Moved! - Google Code
    encfs has Moved! This project has moved to a new location on the internet. Its new home is at: https://vgough.github.io/encfs/. The Google Code Archive ...
  8. [8]
    [PDF] eCryptfs: An Enterprise-class Encrypted Filesystem for Linux
    would be to extend EncFS, a userspace crypto- graphic ... 193–197. [7] The Trusted Computing Group. “TCG. Specification Architecture Overview version 1.0.
  9. [9]
    EncFS Security Audit
    Jan 15, 2014 · This audit finds that EncFS is not up to speed with modern cryptography practices. Several previously known vulnerabilities have been reported.
  10. [10]
    encfs - mounts or creates an encrypted virtual filesystem
    As of version 1.5, EncFS now uses PBKDF2 as the default key derivation function. The number of iterations in the keying function is selected based on wall clock ...
  11. [11]
    feature : support for encfs · Issue #2529 · hashcat/hashcat - GitHub
    Aug 26, 2020 · The algorithm seems to always use PBKDF2-HMAC-SHA1 with hundreds of ... functions # # same as rev_undo_ex_or () + reverse (): sub ...
  12. [12]
    encfs(1) — encfs — Debian unstable - Debian Manpages
    Mar 18, 2025 · PBKDF2 with 3 second runtime, 160 bit salt. Filesystem Block Size ... As of version 1.5, EncFS now uses PBKDF2 as the default key derivation ...
  13. [13]
    How likely is it to have encFS not recognize a valid password? #442
    Oct 31, 2017 · ... PBKDF2, with 1200166 iterations Salt Size: 160 bits Block Size: 1024 bytes, including 8 byte MAC header Each file contains 8 byte header ...
  14. [14]
    Encrypt your Dropbox or any folder with EncFS on Mac OS X
    Jul 1, 2013 · This entry describes how to install EncFS on Mac OS X with homebew without breaking other tools using osxfuse (like TrueCrypt).
  15. [15]
    encfs.txt
    That means a user not only needs a password, but also a physical 'key' (the USB holding the config) to mount the encfs filesystem, and only during the mount ...
  16. [16]
    dropbox/encfs: EncFS Encrypted Filesystem - GitHub
    EncFS is a program which provides an encrypted virtual filesystem for Linux using the FUSE kernel module ( see http://sourceforge.net/projects/avf to download ...<|control11|><|separator|>
  17. [17]
    Home
    **Summary of EncFS Purpose and Features (from https://github.com/vgough/encfs/wiki):**
  18. [18]
    Encrypt Directory with EncFS on Linux - LinuxConfig
    Sep 22, 2025 · This short tutorial will show you how to encrypt and decrypt your directories with the EncFS cryptographic filesystem.Create Encrypted Directory · Using Encrypted Directory · Unmounting Encrypted...
  19. [19]
    Encrypt your data with EncFS on Ubuntu 16.04 - HowtoForge
    This tutorial shows how you can use EncFS on Ubuntu 16.04 (Xenial Xerus) to encrypt your data. 1 Preliminary Note. I'm using the username falko on my Ubuntu ...Encfs Security Information · 2 Installing Encfs · 3 Using Encfs
  20. [20]
    Encrypted directories with Encfs - Futurile
    Introduction. EncFS is used to encrypt individual directories or sections of the filesystem. When decrypted these stores are mounted as virtual filesystem.Introduction · Installation · Basic Usage
  21. [21]
    deja-dup backup encrypted home - Ask Ubuntu
    Oct 29, 2012 · Deja-dup backs up your files once they are unencrypted and then re-encrypts them with another kind of encryption. You will have two copies of ...EncFs insecure, what to use now - Ask Ubuntuuse ecryptfs for Ubuntu One with an already encrypted home directoryMore results from askubuntu.comMissing: common scenarios portable USB virtual environments Linux distros integration
  22. [22]
    Using EncFS on a USB drive - Information Security Stack Exchange
    Mar 10, 2014 · I am using EncFS with a USB drive. How secure is this if my USB drive gets stolen? I ask because the .encfs6.xml file is saved in the USB drive ...Missing: storage | Show results with:storage
  23. [23]
    EncFSMP download | SourceForge.net
    Rating 4.8 (24) · FreeThe Open Source Excellence badge is awarded to open source projects that have reached the milestone of 100,000 total downloads, or 10,000 monthly downloads for ...Missing: statistics | Show results with:statistics
  24. [24]
    Using a docker encfs to encrypt a folder - General Support - Unraid
    Jul 12, 2024 · I ran a test on a linux mint bare metal machine where I created an ubuntu docker image and installed encfs on it.
  25. [25]
    EncryptedHomeDirectoryHowto - Community Help Wiki
    Jan 5, 2014 · Encrypted Home Directory with EncFS and pam-encfs, with working X and Gnome. (i) Please refer to EncryptedFilesystems for further documentation./etc/security/pam_encfs... · /etc/pam. D/gdm · Create Encrypted Folder
  26. [26]
    woelfl/docker-encfs
    docker run -it --name encfs-decrypt \ --cap-add SYS_ADMIN \ --device /dev/fuse \ --security-opt apparmor:unconfined \ -e ENCFS_PWD=pwd \ -e ENCFS_OPTS=-o ...<|separator|>
  27. [27]
    How to mount encfs in a LXC container - Ask Ubuntu
    May 30, 2016 · Answer: mknod -m 666 /dev/fuse c 10 229. 666 = perms c = character device 10 = minor num for /dev/fuse in the host 229 = major num for ...Missing: Docker containerization
  28. [28]
    [PDF] Design and Implementation of a Provably Secure Encrypted Cloud ...
    A security audit [Hor14] showed some other serious flaws in the current implementation of. EncFS. In the conclusion, they state that EncFS is not safe if an ...<|control11|><|separator|>
  29. [29]
    [PDF] Integrity Checking in Cryptographic File Systems with Constant ...
    Abstract. In this paper we propose two new constructions for pro- tecting the integrity of files in cryptographic file systems.
  30. [30]
    Install encfs on macOS with MacPorts
    To install encfs, run the following command in macOS terminal (Applications->Utilities->Terminal). sudo port install encfs ; To see what files were installed by ...Missing: stability | Show results with:stability
  31. [31]
    How to set up an encrypted directory to be mounted only during ...
    Oct 11, 2012 · The encfs command thus mounts the unencrypted form locally, with the remote store remaining encrypted. configure smb.conf so that the relevant ...
  32. [32]
    Can I Mount ENCFS container from Ubuntu live usb?
    Feb 24, 2015 · I'm using an Ubuntu live usb to back up my stuff. I want to mount my ENCFS container to back up the files, but I can't figure out how to do it ...EncFs insecure, what to use now - Ask UbuntuCreate Encrypted Bootable USB without Overwriting Internal DiskMore results from askubuntu.comMissing: suitable | Show results with:suitable
  33. [33]
    [PDF] EncFS goes Multi-User: Adding Access Control to an Encrypted File ...
    EncFS. EncFS [1] is a FUSE[7]-based virtual file system devel- oped by Valient Gough. As mentioned in Section I, it is an overlay file system that encrypts ...
  34. [34]
  35. [35]
    EncFS MP
    Welcome to the EncFSMP project homepage. This is the homepage of EncFS MP, a program to mount EncFS folders on Windows and OS X.Missing: statistics | Show results with:statistics
  36. [36]
    encfs - Debian Package Tracker
    Version 1.9.5-3 of encfs is marked for autoremoval from testing on Mon 01 Dec 2025. It is affected by #1112870. The removal of encfs will also cause the removal ...
  37. [37]
    [Discussion] comparison with EncFSMP · Issue #88 · jetwhiz/encfs4win
    Sep 3, 2017 · EncFSMP is just a wrapper around the encfs software, targeting compatibility with encfs 1.7.4. encfs4win is maintained in lock-step with the upstream encfs ...Missing: limitations | Show results with:limitations
  38. [38]
    Rules regarding maximum filename length are confusing ... - GitHub
    Jun 27, 2016 · Long story short - according to encfs man page it should handle file names up to "approximately" 189 characters since underlying ext4 FS handles ...
  39. [39]
    [PDF] To FUSE or Not to FUSE: Performance of User-Space File Systems
    Mar 2, 2017 · The overhead caused by. StackfsBase is high in these experiments (up to –60% for. HDD and –83% for SSD), for both HDD and SSD, and especially ...Missing: EncFS | Show results with:EncFS
  40. [40]
    EncFS development ? · Issue #314 · vgough/encfs - GitHub
    Mar 20, 2017 · The EncFS project has been running for pretty long now, the git history goes back to 2008, and the first release was 2003. Development has ...Missing: Valient Gough
  41. [41]
    sys-fs/encfs - Gentoo Packages
    Unmaintained upstream, last release more than 7 years old. Old data is getting harder to read. Alternatives: sys-fs/gocryptfs or rclone crypt. Removal on ...
  42. [42]
    EncFSMP news
    Dec 21, 2018 · Version 0.99.0, 27.10.2018: · Beta version of 1.0, use with caution! · Upgrade of encfs to 1.9.5 · Update of PFM to 1.0.0.191, boost to 1.68.0, ...
  43. [43]
    EncFS - ArchWiki
    Sep 26, 2025 · EncFS is a userspace stackable cryptographic file-system similar to eCryptfs, and aims to secure data with the minimum hassle.User Friendly Mounting · /etc/pam. D/ · Encrypted Backup
  44. [44]
    Migration guide: EncFS to GoCryptFS #795 - GitHub
    Oct 8, 2023 · I originally wrote this for migrating gocryptfs 0.x to gocryptfs 1.0, it basically applies to any filesystem migration, including EncFS to gocryptfs.Missing: recommends | Show results with:recommends
  45. [45]
    Comparison of encrypted cloud storage solutions - CryFS
    EncFS has severe security vulnerabilities in its current version. eCryptfs might cause crashes or undefined behavior if there is more than one device connected ...Missing: limitations | Show results with:limitations