In this work, you are going to use the program openssl to encrypt, decrypt, and hash some values. We are going to use real algorithms that are used in modern communications.
At a command prompt, type “openssl ciphers” to see the ciphers that are available with this installation of openssl.
First, we will attempt to encrypt and then decrypt a string. After the first command, you’ll need to enter a password that will derive your encryption key.
- echo “CIS3100” | openssl enc -aes-256-cbc -a
- echo <previous output> | openssl enc -aes-256-cbc -a -d
You should have returned “CIS3100” (our original plaintext) at this point. To break down further what’s happening, the echo command is used to provide text input to openssl. Then, we call the program openssl; “enc” says we are using the encryption/decryption module; “-a” is encoding the data in base64; and “-d” is specifying that this will be a decryption operation.
Now, let’s try hashing a password:
- openssl passwd -salt “salt” “password”
In this example, the returned result will be your hash of a password. The hash will be the same for each time you run this with the same parameters. However, it is not easily reversible. To break down further what’s happening, “-salt” is specifying a value to be a salt, an additional piece of data to add complexity to your hash and make it harder for someone to brute force your list of hashes; “password” (in this case) is your secret password value.
Now, for your submission, you’ll be encrypting, decrypting, or hashing the following values and submitting those based on the parameters given. Remember that capitalization matters, and be careful to remove any line breaks in the output when you copy and paste.
- Encrypt “CIS3100” using the password “password” and the algorithm “aes-128-cbc”.
- Decrypt “U2FsdGVkX18O3AUltiVEAyBDcfesmyojn8pU6zXWUu8x4LHsrV3Q+BWRR2wjC3Xl” using the password “password” and the algorithm “aes-128-cbc”.
- Hash the password “MySecret” using the salt “pepper”.
- Decrypt “U2FsdGVkX18idu4Cp/KbOanB726etAlbcmI/yeihAoh01Md5EOkb8Ld/
tuHyq54rlq17bV9srO025vbZ+jRRHrwbd+iNQaMQ==” using the
password “password1” and algorithm “aes-256-cbc” and then decrypt
that result using the password “password2” and algorithm “aes-256-cbc”.
- The work should be double-spaced, 12-point Times New Roman font, with one-inch margins
- Use APA for citing references and quotations