ECryptfs


eCryptfs is a package of disk encryption software for Linux. Its implementation is a POSIX-compliant filesystem-level encryption layer, aiming to offer functionality similar to that of GnuPG at the operating system level, and has been part of the Linux kernel since version 2.6.19. The eCryptfs package has been included in Ubuntu since version 9.04 and is being used for implementing Ubuntu's encrypted home directory feature.
eCryptfs is derived from Erez Zadok's Cryptfs. It uses a variant of the OpenPGP file format for encrypted data, extended to allow random access, storing cryptographic metadata with each individual file.
It also encrypts file and directory names which makes them internally longer. The reason is it needs to uuencode the encrypted names to eliminate unwanted characters in the resulting name.
This lowers the maximum usable byte name length of the original file system entry depending on the used file system.