Operation failed with the following error: The OpenPGP key data is not valid

Hi,

After adding a user on our passbolt server. When the user tries to activate the account using the invite, he gets the following error on completion of all the steps: OpenPGP key data is not valid. I’m unable to resolve this error. Some pointers will be helpful.

thank you
slack_8ooxvuOXgj

Hi @heramb :wave: and welcome to passbolt community forum :people_holding_hands:

Can you first check if date and time are correct on both passbolt server and your user machine ? => you can compare with https://time.is/

Then maybe did you ran some commands as root user instead of web user. Can you post here the full output of healthcheck and datacheck commands ?

sudo -H -u www-data bash -c "/usr/share/php/passbolt/bin/cake passbolt healthcheck"
sudo -H -u www-data bash -c "/usr/share/php/passbolt/bin/cake passbolt datacheck --hide-success-details"

Replace www-data with nginx if you aren’t on Debian/Ubuntu and /usr/share/php/passbolt with /var/www/passbolt if you installed passbolt from sources.

Cheers,

Hi @_jc, Thank you for your quick response

The time and date are both correct.
output for the command:

1. $ sudo -H -u www-data bash -c "./bin/cake passbolt healthcheck"
-------------------------------------------------------------------------------
 Healthcheck shell
-------------------------------------------------------------------------------

 Environment

 [PASS] PHP version 8.0.14.
 [PASS] PCRE compiled with unicode support.
 [PASS] The temporary directory and its content are writable and not executable.
 [PASS] The logs directory and its content are writable.
 [PASS] GD or Imagick extension is installed.
 [PASS] Intl extension is installed.
 [PASS] Mbstring extension is installed.

 Config files

 [PASS] The application config file is present
 [PASS] The passbolt config file is present

 Core config

 [PASS] Debug mode is off.
 [PASS] Cache is working.
 [PASS] Unique value set for security.salt
 [PASS] Full base url is set to -
 [PASS] App.fullBaseUrl validation OK.
 [PASS] /healthcheck/status is reachable.

 SSL Certificate

 [PASS] SSL peer certificate validates
 [PASS] Hostname is matching in SSL certificate.
 [PASS] Not using a self-signed certificate

 Database

 [PASS] The application is able to connect to the database
 [PASS] 26 tables found
 [PASS] Some default content is present
 [PASS] The database schema up to date.

 GPG Configuration

 [PASS] PHP GPG Module is installed and loaded.
 [PASS] The environment variable GNUPGHOME is set to /home/www-data/.gnupg.
 [PASS] The directory /home/www-data/.gnupg containing the keyring is writable by the webserver user.
 [PASS] The server OpenPGP key is not the default one
 [PASS] The public key file is defined in config/passbolt.php and readable.
 [PASS] The private key file is defined in config/passbolt.php and readable.
 [PASS] The server key fingerprint matches the one defined in config/passbolt.php.
 [PASS] The server public key defined in the config/passbolt.php (or environment variables) is in the keyring.
 [PASS] There is a valid email id defined for the server key.
 [PASS] The public key can be used to encrypt a message.
 [PASS] The private key can be used to sign a message.
 [PASS] The public and private keys can be used to encrypt and sign a message.
 [PASS] The private key can be used to decrypt a message.
 [PASS] The private key can be used to decrypt and verify a message.
 [PASS] The public key can be used to verify a signature.
 [PASS] The server public key format is Gopengpg compatible.
 [PASS] The server private key format is Gopengpg compatible.

 Application configuration

 [PASS] Using latest passbolt version (3.5.0).
 [FAIL] Passbolt is not configured to force SSL use.
 [HELP] Set passbolt.ssl.force to true in config/passbolt.php.
 [PASS] App.fullBaseUrl is set to HTTPS.
 [PASS] Selenium API endpoints are disabled.
 [PASS] Search engine robots are told not to index content.
 [PASS] Registration is closed, only administrators can add users.
 [PASS] Serving the compiled version of the javascript app
 [PASS] All email notifications will be sent.

 JWT Authentication

 [PASS] The JWT Authentication plugin is enabled
 [PASS] The /var/www/passbolt/config/jwt/ directory is not writable.
 [FAIL] A valid JWT key pair is missing
 [HELP] Run the create JWT keys script to create a valid JWT secret and public key pair:
 [HELP] sudo su -s /bin/bash -c "/var/www/passbolt/bin/cake passbolt create_jwt_keys" www-data

 [FAIL] 2 error(s) found. Hang in there!

2. $ sudo -H -u www-data bash -c "./bin/cake passbolt datacheck --hide-success-details"

Data check shell
[PASS] Data integrity for AuthenticationTokens.
  [PASS] Can validate: 7162/7162
[PASS] Data integrity for Comments.
  [PASS] Can validate: 3/3
[PASS] Data integrity for Favorites.
  [PASS] Can validate: 8/8
[PASS] Data integrity for Gpgkeys.
  [PASS] Can encrypt: 86/86
  [PASS] Can validate: 86/86
  [PASS] Is not expired: 86/86
  [PASS] Is armored key format valid: 86/86
  [PASS] Is email unique: 86/86
[PASS] Data integrity for Groups.
  [PASS] Can validate: 8/8
[PASS] Data integrity for Profiles.
  [PASS] Can validate: 167/167
[PASS] Data integrity for Resources.
  [PASS] Can validate: 894/894
[PASS] Data integrity for Secrets.
  [PASS] Can validate: 7817/7817
[PASS] Data integrity for Users.
  [PASS] Can validate: 167/167

All seems ok excepted the PHP8.0 version. I assume you have multiple PHP versions, the nginx configuration file use php 7.4 and php 8.0 is your default php-cli.

Are you using the latest 3.5.1 browser extension and on which browser ? Can you try to clear all cache and cookies ? Do you have the same behavior with another browser ?

Best,

We are using chrome and the extension version is 3.5.1

We have tried on morzilla firefox also, but we get the same error.