Back to Cashout Methods

How to use PGP

PGP, which stands for Pretty Good Privacy, is a type of public/private key encryption. It is strongly advised to utilise encryption in order to enhance the security of your messages and, if desired, to verify the sender’s identity.

I would advise against using PGP on a Windows operating system, as it is not advisable from an OPSEC perspective. This is because you may end up with something along these lines:

—BEGIN PGP PUBLIC KEY BLOCK—
Version: GnuPG v2.0.22 (MingW32)

PGP KEY…

—END PGP PUBLIC KEY BLOCK—

As you can observe, the version is displayed, which is not ideal for you. Should your PGP Public Key fall into the hands of the FBI, they could easily compromise your PGP using their advanced software, resulting in the compromise of your messages signed with PGP.

My recommendation is to always use PGP with a Linux OS, and if possible, to do so in Whonix.

Example:
—BEGIN PGP PUBLIC KEY BLOCK—

PGP KEY…

—END PGP PUBLIC KEY BLOCK—

As you can see, this is more secure and private, as the version does not appear.

Note: Regardless, it is essential to change your PGP Keys at least once a month to ensure the best operational practice.

1. Linux (GUI):

– Install the GNU Privacy Assistant, or GPA for short. This can be accomplished by entering the following command into the terminal:

Code: Select all

sudo apt install gpa

– Now, open GPA using the terminal, simply input:

Code: Select all

gpa

Upon launching the application, the Key Manager window shall appear. The buttons for importing and exporting keys should be readily apparent. To encrypt a message, click the Clipboard button, which will open a new window for text input. Enter your desired text into the provided box and click the button labelled “Encrypt the buffer text”. Subsequently, select the public key of your intended recipient. After clicking “OK” and entering your password, the encrypted message shall materialise.

To decrypt a message, simply paste the encrypted text into the designated box and click the button labelled “Decrypt the buffer text”. Upon entering your password, the message should be displayed in plain text. Should the decryption fail, this typically indicates that the message was either erroneously encrypted with the incorrect public key or was not intended for the recipient:

This should suffice to cover the fundamental aspects of using GPA. For further information, one may consult the manual page by entering:

Code: Select all

man gpa

2. Linux (CLI):

Open a Terminal window and execute the installation of gpg.

Code: Select all

sudo apt-get install gnupg2

Generate a key. It is advisable to utilise an expiring 4096-bit key.

Code: Select all

gpg --full-gen-key

Optionally, upload the public key to the keyserver.

Code: Select all

gpg --send-keys --keyserver pgp.mit.edu key_id

Note: The key ID may resemble this: 0xA19E94B21E3CB11C or this: A66B81FA97F9573AEA83ED9A19E94B21E3CB24A
To import another individual’s public key, ensure it is preserved as a file. Typically, it will be a .asc file, although the file extension is not of utmost importance.

Code: Select all

gpg --import name_of_pub_key_file.asc

Display the public key.

Code: Select all

gpg --armor --export key_id

Export the public key.

Code: Select all

gpg --armor --export key_id > pub_key.asc

Export the secret key.

Code: Select all

gpg --armor --export-secret-key key_id > secret_key.asc

Encrypt a message.

Code: Select all

gpg --encrypt --sign --armor -r key_id name_of_file

List keys.

Code: Select all

gpg --list-keys

Decrypt a message.

Code: Select all

gpg -d name_of_file.asc > decrypted_filename

Several security considerations:

In the event that you prefer to keep the file name confidential when the recipient decrypts your message (e.g., message.txt), modify the file name using the –set-filename option. To encrypt the message:

Code: Select all

gpg -esa -r key_id --set-filename new_filename.txt current_filename.txt

To output to a file:

Code: Select all

gpg -esa -r key_id --set-filename new_filename.txt current_filename.txt > new_filename.txt.asc

Sign a key
As part of the web of trust, you have the ability to cryptographically sign another individual’s public key. This action demonstrates secondary trust. For instance, Whonix’s key is signed by a Debian developer.

Code: Select all

gpg --edit-key key_id

Sign the key.

Code: Select all

sign
save

Verify signatures.

Code: Select all

gpg --check-sigs

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to Cashout Methods