Skip to content

A Comprehensive Guide of GpgController

The GpgController in GpgFrontend is a powerful tool for configuring and managing GPG-related settings. It provides advanced options for file operations, password input methods, and custom GPG configurations, catering to both general and advanced users.

To access the GpgController:

  1. Navigate to the Advanced menu in the top toolbar.
  2. Select Open GnuPG Controller from the dropdown menu.

Open GnuPG Controller

The GpgController interface includes three tabs: General, Key Database, and Advanced. Below is a detailed explanation of each tab’s features.

The General tab provides essential configuration options for GpgFrontend’s interaction with GPG.

General Tab

This option determines the format used for encrypted or signed files:

  • Binary Mode: Produces compact and efficient files, ideal for storage and processing.
  • ASCII Mode: Generates human-readable files encoded in ASCII format. This is useful for sharing files over email or systems that might corrupt binary files.

Recommendation: Use binary mode for local file operations and ASCII mode for file sharing or email attachments.

GpgFrontend includes a built-in password input dialog designed as a temporary fallback when no external Pinentry program is available. However, the built-in dialog has limitations and may not work for all password input scenarios.

Recommendation: Users are strongly encouraged to install a full-featured Pinentry program to ensure a seamless and secure password input experience. Pinentry is optimized for GnuPG’s requirements and provides additional features such as better passphrase caching and hardware token support.

Enables verbose logging for troubleshooting GPG operations via the GpgME library. This is useful for advanced users diagnosing issues in encryption or signing workflows.

Ensures that the GPG agent is restarted whenever GpgFrontend launches. This helps avoid issues caused by stale GPG agent processes.

Terminates all GPG-related background processes when the application exits. This ensures that no sensitive information is cached in memory or accessible after the session ends.

Recommendation: Always enable this option for improved security.

Note: Changes to any settings in the General tab will require restarting GpgFrontend to take effect.

The Key Database tab allows users to manage multiple key databases. While detailed documentation is available elsewhere, note the following key points:

  • Add New Key Database: Easily create and manage isolated key databases for different projects or security requirements.
  • Switch Between Databases: Use the Key Toolbox dropdown in the main interface to select the active database.

The Advanced tab is designed for users who need to configure custom GPG installations.

  1. Enable Custom GnuPG: Check the Use Custom GnuPG box to enable this feature.
  2. Specify GPG Configuration Path: Use the Select GnuPG Path button to locate and set the directory where gpgconf resides. This is critical because GpgFrontend relies on the paths provided by gpgconf to locate essential components like gpg, gpgsm, and gpg-agent.
  3. Verifying Custom Configuration: After setting the path, you can test the configuration by running gpgconf --list-components in a terminal. This command lists all available GPG components and their paths, ensuring that GpgFrontend can access themcorrectly.

  • Choose File Formats Wisely: Use Binary Mode for efficiency in local operations and ASCII Mode for readability and compatibility in file sharing.
  • Install a Full-Featured Pinentry: Avoid relying on GpgFrontend’s built-in password dialog for critical operations. Installing Pinentry ensures better compatibility and security.