code: @VisibleForTesting
      static String generateSignature(Credential signingCredential, String algorithmURI, String input) {
          try {
              final byte[] signature =
                      XMLSigningUtil.signWithURI(signingCredential, algorithmURI,
                                                 input.getBytes(StandardCharsets.UTF_8));
              return Base64.getEncoder().encodeToString(signature);
          } catch (SecurityException e) {
              throw new SamlException("failed to generate a signature", e);
          }
      }
docs: Generates a signature of the specified {@code input}.