Third-party tools that are compatible with the S3 compatible API typically calculate request signatures automatically. Some of these tools can also be used to generate presigned URLs.
If you’re writing your own application, you can use an AWS SDK to calculate request signatures. For information about these SDKs, see: http://docs.aws.amazon.com/AmazonS3/latest/dev/AuthUsingAcctOrUserCredentials.html
For detailed information on calculating signatures for AWS authentication, see: http://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html