protected ICredentials SanitizeCredentials(ICredentials credentials)
        {
            String accessKeyId = credentials.GetAccessKeyId();
            String secretKey   = credentials.GetSecretKey();

            if (secretKey != null)
            {
                secretKey = secretKey.Trim();
            }

            if (accessKeyId != null)
            {
                accessKeyId = accessKeyId.Trim();
            }

            return(new BasicCredentials(accessKeyId, secretKey));
        }
        private string BuildAuthorizationHeader <T>(IRequest <T> request, byte[] signature, ICredentials credentials, SignerRequestParams <T> signerParams)
        {
            var signingCredentials = credentials.GetAccessKeyId() + "/" + signerParams.GetScope();
            var credential         = "Credential=" + signingCredentials;
            var signerHeaders      = "SignedHeaders=" + this.GetSignedHeadersString(request);
            var signatureHeader    = "Signature=" + BinaryUtils.ToHex(signature);
            var authHeaderBuilder  = new StringBuilder();

            authHeaderBuilder.Append("SDK-HMAC-SHA256")
            .Append(" ")
            .Append(credential)
            .Append(", ")
            .Append(signerHeaders)
            .Append(", ")
            .Append(signatureHeader);
            return(authHeaderBuilder.ToString());
        }