emacs
crypt++.el is a package of Lisp functions that recognize automatically
encrypted and encoded (i.e., compressed) files when they are first visited
or written. The BUFFER corresponding to the file is decoded and/or decrypted
before it is presented to the user. The file itself is unchanged on the
disk. When the buffer is subsequently saved to disk, a hook function
re-encodes the buffer before the actual disk write takes place.