Tom Auger (taugr)

Coding, researching, and teaching with AI

August 17, 2018 · 5 min read
OpenSSL

How to encrypt a file with a password using OpenSSL

Archived from the old blog. Original URL: https://tomauger.gitlab.io/posts/2018-08-17-encrypting-a-file-using-openssl/.

Reference of commands to encrypt a file with a password using OpenSSL.

Update 5 Aug 2020: with recent versions of openssl the -pbkdf2 flag should be used for secure password hashing. Omit this flag if using an earlier version of openssl that doesn’t support it, or even better upgrade to a version that supports it!

Encryption

To encrypt a file:

openssl enc -aes256 -pbkdf2 -salt -in file.txt -out file.txt.enc

You will be prompted to enter an encryption password. If you want to specify the password in the command use the -pass parameter, for example to encrypt with the password myPassword run:

openssl enc -aes256 -salt -pbkdf2 -in file.txt -out file.txt.enc -pass pass:myPassword

To list the available encryption algorithms run:

openssl list-cipher-commands

Decryption

To decrypt a file:

openssl enc -aes256 -d -pbkdf2 -in file.txt.enc -out file.txt

You will be prompted to enter the decryption password.

To specify the password in the command use the -pass parameter. For example to decrypt using the password myPassword run:

openssl enc -aes256 -pbkdf2 -d -in file.txt.enc -out file.txt -pass pass:myPassword

References