Filesystem-level encryption,[1] often called file-based encryption, FBE, or file/folder encryption, is a form of disk encryption where individual files or directories are encrypted by the file system itself.

This is in contrast to the full disk encryption where the entire partition or disk, in which the file system resides, is encrypted.

Types of filesystem-level encryption include:

  • the use of a 'stackable' cryptographic filesystem layered on top of the main file system
  • a single general-purpose file system with encryption

The advantages of filesystem-level encryption include:

General-purpose file systems with encryption

edit

Unlike cryptographic file systems or full disk encryption, general-purpose file systems that include filesystem-level encryption do not typically encrypt file system metadata, such as the directory structure, file names, sizes or modification timestamps. This can be problematic if the metadata itself needs to be kept confidential. In other words, if files are stored with identifying file names, anyone who has access to the physical disk can know which documents are stored on the disk, although not the contents of the documents.

One exception to this is the encryption support being added to the ZFS filesystem. Filesystem metadata such as filenames, ownership, ACLs, extended attributes are all stored encrypted on disk. The ZFS metadata relating to the storage pool is stored in plaintext, so it is possible to determine how many filesystems (datasets) are available in the pool, including which ones are encrypted. The content of the stored files and directories remain encrypted.

Another exception is CryFS replacement for EncFS.

Cryptographic file systems

edit

Cryptographic file systems are specialized (not general-purpose) file systems that are specifically designed with encryption and security in mind. They usually encrypt all the data they contain – including metadata. Instead of implementing an on-disk format and their own block allocation, these file systems are often layered on top of existing file systems e.g. residing in a directory on a host file system. Many such file systems also offer advanced features, such as deniable encryption, cryptographically secure read-only file system permissions and different views of the directory structure depending on the key or user ...

One use for a cryptographic file system is when part of an existing file system is synchronized with 'cloud storage'. In such cases the cryptographic file system could be 'stacked' on top, to help protect data confidentiality.

See also

edit

References

edit
  1. ^ "File-Level Encryption". PCI Security Standards Council. Retrieved 2024-10-18.

📚 Artikel Terkait di Wikipedia

Deniable encryption

there.[citation needed] One example of deniable encryption is a cryptographic filesystem that employs a concept of abstract "layers", where each layer can

ECryptfs

(enterprise cryptographic filesystem) is a package of disk encryption software for Linux. Its implementation is a POSIX-compliant filesystem-level encryption

EncFS

EncFS is a Free (LGPL) FUSE-based cryptographic filesystem. It transparently encrypts files, using an arbitrary directory as storage for the encrypted

Filesystem in Userspace

Filesystem in Userspace (FUSE) is a software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own

Non-cryptographic hash function

CPU-optimized non-cryptographic hashes include FNV-1a and Murmur3. Some non-cryptographic hash functions are used in cryptographic applications (usually

List of cryptographic file systems

This is a list of filesystems with support for filesystem-level encryption. Not to be confused with full-disk encryption. AdvFS on Digital Tru64 UNIX

Encrypting File System

File System". Microsoft. 1 May 2008. Retrieved 24 August 2011. "Cryptographic Filesystems, Part One: Design and Implementation". Security Focus. Archived

Rabin fingerprint

Network Filesystem (LBFS) from MIT uses Rabin fingerprints to implement variable size shift-resistant blocks. The basic idea is that the filesystem computes