code: protected String signAndBase64Encode(String data, String key,
              SigningAlgorithm algorithm) throws SdkClientException {
          return signAndBase64Encode(data.getBytes(UTF8), key, algorithm);
      }
docs: Computes an RFC 2104-compliant HMAC signature and returns the result as a
  Base64 encoded string.