Signature verification fails because some HTTP server frameworks convert header parameter names to title case.
Problem description
Signature authentication fails when you use the HttpEndpoint interface of Simple Message Queue (formerly MNS).
Problem cause
Some HTTP server frameworks convert header parameter names to title case (for example, x-mns-message-id becomes X-Mns-Message-Id), which invalidates the signature.

Solutions
Convert all HTTP header parameter names to lowercase before verifying the signature.