UNIX File Encryption howto

last updated in Categories , , , , , ,

Q. I’m using UNIX (FreeBSD) at work. I need to encrypt a file. What command I need to type?

A. You need to use crypt command which provides very simple file encryption. It works under UNIX, BSD, Linux and possible all other UNIX like oses.

Itis a very simple encryption program, working on a secret-key basis. It operates as a filter, i.e., it encrypts or decrypts a stream of data from standard input, and writes the result to standard output. Since its operation is fully symmetrical, feeding the encrypted data stream again through the engine (using the same secret key) will decrypt it.

Task: Encrypt the original file called my.txt

Type the command as follows:
$ cat my.txt | crypt > my.cpy

Enter key:

This will create an encrypted form of my.txt file, and store it in the file my.cpy.

Task: Ensure that the file is encrypted

Type the following command:
$ cat my.cpy

Task: Decrypt the file called my.txt

Type the command as follows:
$ cat my.cpy | crypt > my.file.txt

Under FreeBSD you can use enigma (same command with different name – the crypt utility, also known as enigma), to displays the previously created file on the terminal:
$ enigma PASSWORD < my.cpy

Also note that many new UNIX oses comes with mcrypt command. It is intended to be a replacement of the old unix crypt under the GNU General Public License.


Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

4 comment

  1. Note that the crypt command is notoriously weak. Use ccrypt and its associated commands instead. It uses AES encryption and is far stronger.

  2. when we given this command we got the error as cryptcommand not found. But in the start of the page you given as this cmd can be used for all UNIX OS.

    So i did not get any help from this site.

    Thank you and hope the things will be with clear data in this site from this day onwards.

    Thank you for considering the feedback.

  3. I have tried to call this command
    cat my.txt | crypt > my.cpy
    but error is showing that this command is not in my system ..

    Still, have a question? Get help on our forum!