| Description: | A tool for creating single-use unrecoverable encrypted sandboxes. |
| Latest Version: | 2020 |
| Source Code: | src/ |
| Architecture: |
|
| Dependencies: |
|
| Arch Repositories: |
|
| AUR Page: | quixand |
| Arch Forum Thread: | 67019 |
| Tags: |
quixand - create single-use unrecoverable encrypted sandboxes
quixand [options] [paths]
Quixand (pronounced “quicksand”) is a tool for easily creating disposable, single-session encrypted sandboxes. Quixand will create an encrypted directory with EncFS using “paranoid” mode and a random key. Once mounted, quixand can create temporary files and directories within the encrypted directory and symlink any file on your system to them. You can then use the symlinked files and directories as you normally would, but any data written to them will not be written to the disk in an unencrypted form. Once unmounted, the data within the encrypted directory should be unrecoverable because the key is not stored anywhere. Typical usage includes sandboxing your browser cache directory, creating secure disposable history files for various apps that you only wish to use for a single session, and creating a general-purpose sandbox for temporary files, for example the contents of a usb stick. The “EXAMPLES” section below should provide further insight into potential uses of quixand.
Quixand depends on EncFS (Encrypted Filesystem) to create the encrypted directory. The encrypted directory is created using encfs’s “paranoid” mode along with a one-time 256-bit random key generated from /dev/urandom. The key is not stored anywhere. Once the encrypted directory is unmounted, there should be no easy way to recover its contents and thus it is intended for use as a single-session sandbox. The strength of this setup directly depends on EncFS and the user is advised to consult the EncFS documentation in order to familiarize him-/herself with EncFS’s strengths and weaknesses. The author of quixand assumes absolutely no liability for its use and the user uses quixand entirely at his or her own risk.
EncFS does not require a fixed amount of space and thus bypasses the need to pre-allocate disk space and set up partitions etc. The encrypted directory will grow as needed and will only be limited by the amount of space available in /tmp.
To improve the security of the setup, it is recommended that the user either encrypt their swap partition with a one-time key at boot or disable swap completely to prevent the contents of memory from being written to the disk during operation.
$XDG_CONFIG_HOME/quixand or
$HOME/.config/quixand.
--renew implies
--purge, see --purge
--* for an example of how to pass through quixand arguments
to the wiper.
Any other argument that begins with “–” will act as a switch that toggles argument parsing. This should be used to pass through arguments that match quixand options. For example, to use the “wipe” command to recursively wipe directories, it must be passed the “-r” option, which is also a quixand option. This can be done with any of the following, which are all equivalent.
quixand --wipe-with wipe -- -r -- --dir somedir
quixand --wipe-with wipe --foo -r --foo --dir somedir
quixand --wipe-with wipe --bar -r --bar --dir somedir
The --dir, --file,
--encfs-args and --wipe-with arguments act as
switches. By default, all non-option arguments passed to quixand will be
considered files that should be symlinked. If “–dir” or “–encfs-args” is
encountered then they will be interpreted as dirs that should be
symlinked or additional arguments to encfs, respectively. Consider the
following examples:
Create 3 file symlinks.
quixand foo bar bazCreate 1 file symlink (foo) and 2 dir symlinks (bar,baz).
quixand foo --dir bar bazCreate 2 file symlinks (foo,baz) and 1 dir symlink (bar).
quixand foo --dir bar --file bazCreate a sandbox in your home dir.
quixand -d ~/sandboxSandbox your image thumbnails in ~/.thumbnails.
quixand -d ~/.thumbnailsSandbox your bash history.
quixand ~/.bash_historySandbox your Firefox cache.
quixand -d ~/.mozilla/firefox/<profile>/CacheDo all of the above when you first log in by adding the following line to ~/.bash_profile.
quixand ~/.bash_history -d ~/sandbox ~/.thumbnails ~/.mozilla/firefox/<profile>/CachePurge all of the above.
quixand -p ~/.bash_history -d ~/sandbox ~/.thumbnails ~/.mozilla/firefox/<profile>/Cache