docs: void executeCommand() throws CertificateException {
          String exceptionMessage;
          Throwable cause = null;
  
          try {
              if (logger.isLoggable(Level.FINE)) {
                  logger.fine("Executing keytool command: " + this.toString());
              }
              Process proc = Runtime.getRuntime().exec(cmd.toArray(new String[cmd.size()]));
  
              if (logger.isLoggable(Level.FINE)) {
                  logger.fine("Waiting for keytool command process to complete...");
              }
              int exitCode = proc.waitFor();
              if (exitCode == 0) {
                  if (logger.isLoggable(Level.FINE)) {
                      logger.fine("keytool command process completed successfully");
                  }
                  return;
              } else {
                  if (logger.isLoggable(Level.FINE)) {
                      logger.fine("keytool command process failed to complete successfully (exit code: " + exitCode + ")");
                  }
                  exceptionMessage = getProcErrorOutput(proc);
              }
          } catch (IOException e) {
              if (logger.isLoggable(Level.FINE)) {
                  logger.fine("keytool command process execution resulted in IOException: " + e.getMessage());
              }
              exceptionMessage = e.getLocalizedMessage();
              cause = e;
          } catch (InterruptedException e) {
              if (logger.isLoggable(Level.FINE)) {
                  logger.fine("InterruptedException while waiting for keytool command process result: " + e.getMessage());
              }
              exceptionMessage = e.getLocalizedMessage();
              cause = e;
          }
  
          if (cause != null) {
              throw new CertificateException(exceptionMessage, cause);
          } else {
              throw new CertificateException(exceptionMessage);
          }
      }