- Supports GnuPG v1.4 and v2.2
- Check GnuPG availability/version.
- Encryption for multiple recipients or with simple passphrase
- Encrypt/decrypt text or file to text, file or preview
- Passphrase/Pin entry only into original GnuPG Pinentry dialog. Not through Visual Studio Code or something else.
- End session to reset password cache by killing gpg-agent.
- Works with smartcards.
- Sign/verify file.
- Keys generate/edit/delete/import/export.
- Detects local/alternated homedir/key ring
- Code folding for BEGIN PGP .../END PGP ... blocks
The extension is available in multiple languages (Google Translator):
The command palette ...
- Check GnuPG
- Copy Fingerprint To Clipboard
- Copy KeyId To Clipboard
- Decrypt ... (opens sub menu)
- Decrypt File
- Decrypt Preview
- Decrypt Selection
- Delete Key
- Delete Secret Key
- Edit Public Key (with use of the internal terminal)
- Encrypt ... (opens sub menu)
- Encrypt File For Recipients
- Encrypt File w/ Passphrase
- Encrypt Preview For Recipients
- Encrypt Preview w/ Passphrase
- Encrypt Selection For Recipients
- Encrypt Selection w/ Passphrase
- End Session
- Environment ... (opens sub menu)
- Export Public Keys
- Export Secret Keys
- Export Secret Sub-Keys
- Generate Key
- Import Keys
- Keys ... (opens sub menu)
- List Public Keys
- List Secret Keys
- Show Smartcard
- Sign File
- Trust ... (opens sub menu)
- Verify File
The explorer context menu ...
The editor context menu ...
Used File extensions
<filename>.<ext>.asc: This should be an ascii encrypted file (option:
--armor) of the
- It although can be an ascii encoded key file.
<filename>.<ext>.sig: This should be an ascii encoded signature file corresponding to
<filename>.key: This should be an ascii encrypted key (option:
This extension uses simple command line tools to copy content (commands, fingerprints, key ids) to the clipboard.
- Windows: CLIP
- MacOS: PBCOPY
- Linux: XCLIP
Support for an alternate homedir/key ring
When VSCode is opened in a folder with (file:
pubring.kbx OR file:
pubring.gpg) AND (folder:
private-keys-v1.d OR file:
secring.gpg) included, then the
--homedir parameter is used in every command of this VSCode instance.
Additionally the extension supports a workspace configuration to set the path for the keyring. Consequently there is a order for the keyring location:
- Use local keyring in workspace, when detected
- When not 1. , then check for
- When not 2. , then use GnuPG default keyring location
Using several VSCode instances at the same time is not recommended, because the
gpg-agent is running in the background for one session. Otherwise you have to kill the session. TIP: Change folder in one instance, because
gpg-agent will be killed automatically.
Check GnuPG command to see the current used home directory.
Support for GnuPG v1.4
With GnuPG v1.4, there is no pinentry window, where you can enter a pin. Therefore, all commands, which require a pin input, will be prepared to run in the internal terminal. The commands are written to the terminal and you have to press RETURN and follow the instructions. Some functions are not available at all.
GnuPG does not work perfectly in the VSCode terminal, or in other terminal emulators (hyper, cmder, ...). Therefore all commands for the terminal are additionally copied to the clipboard so that you can insert them in a real terminal window (cmd, bash, ...).
- Use pure GnuPG installation (
- or Gpg4win