code: public static PGPSecretKeyRing restoreSecretKeyBackup(SecretkeyElement backup, String backupCode)
              throws InvalidBackupCodeException, IOException, PGPException {
          byte[] encrypted = Base64.decode(backup.getB64Data());
  
          byte[] decrypted;
          try {
              decrypted = PGPainless.decryptWithPassword(encrypted, new Passphrase(backupCode.toCharArray()));
          } catch (IOException | PGPException e) {
              throw new InvalidBackupCodeException("Could not decrypt secret key backup. Possibly wrong passphrase?", e);
          }
  
          return PGPainless.readKeyRing().secretKeyRing(decrypted);
      }
docs: Decrypt a secret key backup and return the {@link PGPSecretKeyRing} contained in it.
  TODO: Return a PGPSecretKeyRingCollection instead?
  
  @param backup encrypted {@link SecretkeyElement} containing the backup
  @param backupCode passphrase for decrypting the {@link SecretkeyElement}.
  @return the
  @throws InvalidBackupCodeException in case the provided backup code is invalid.
  @throws IOException IO is dangerous.
  @throws PGPException PGP is brittle.