≡ Menu

UNIX File Encryption howto

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.

Share this tutorial on:

Your support makes a big difference:
I have a small favor to ask. More people are reading the nixCraft. Many of you block advertising which is your right, and advertising revenues are not sufficient to cover my operating costs. So you can see why I need to ask for your help. The nixCraft, takes a lot of my time and hard work to produce. If you use nixCraft, who likes it, helps me with donations:
Become a Supporter →    Make a contribution via Paypal/Bitcoin →   

Don't Miss Any Linux and Unix Tips

Get nixCraft in your inbox. It's free:

{ 4 comments… add one }
  • mike April 17, 2007, 1:25 pm

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

  • Tofig July 6, 2008, 6:09 am

    I would prefer using gnupg which is available from FreeBSd ports.

  • Praveen Thati October 1, 2009, 11:30 am

    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.

  • pratik March 19, 2012, 7:28 am

    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 ..

Leave a Comment

You can use these HTML tags and attributes: <strong> <em> <pre> <code> <a href="" title="">

   Tagged with: , , , , , , , , ,