# Type of request: This is a ...
[ ] bug report
[x] feature request

# Detailed description
As a Developer,
I want to be able to simulate BadDigest and InvalidDigest errors,
So that I can test the error handling logic

## Expected behavior
https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
BadDigest: The Content-MD5 you specified did not match what we received.
InvalidDigest: The Content-MD5 you specified is not valid.

## Actual behavior
localstack returns InvalidDigest when MD5 does not match payload.


client = self.s3_client
        BUCKET_CORS_CONFIG = {
            'CORSRules': [{
                'AllowedOrigins': ['https://localhost:4200'],
                'AllowedMethods': ['GET', 'PUT'],
                'MaxAgeSeconds': 3000,
                'AllowedHeaders': ['*'],
            }]
        }
        client.create_bucket(Bucket='my-s3-bucket')
        client.put_bucket_cors(Bucket='my-s3-bucket', CORSConfiguration=BUCKET_CORS_CONFIG)
        
        url = client.generate_presigned_url(
            ClientMethod='put_object',
            Params={
                'Bucket': 'my-s3-bucket',
                'Key': '424f6bae-c48f-42d8-9e25-52046aecc64d/document.pdf',
                'ContentType': 'application/pdf',
                'ACL': 'bucket-owner-full-control'
            },
            ExpiresIn=3600
        )
        result = requests.put(url, data='something', verify=False,
                              headers={'Origin': 'https://localhost:4200'})
        self.assertEqual(result.status_code, 200)
        BUCKET_CORS_CONFIG = {