### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Now it is 127 characters:
https://github.com/localstack/localstack/blob/32a7946f878ace1a8bdd098bb3c9d53898424a78/localstack/services/sqs/provider.py#L435-L438

### Expected Behavior

The maximum length of MessageDeduplicationId is 128 characters. AWS docs:
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html#API_SendMessage_RequestSyntax

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    docker run localstack/localstack

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)

    awslocal s3 mb s3://mybucket


### Environment

```markdown
- OS:
- LocalStack:
```


### Anything else?

_No response_
if not self.cloudwatch_disabled:
            self._cloudwatch_publish_worker.stop()
            self._cloudwatch_dispatcher.shutdown()
def _create_message_attribute_hash(message_attributes) -> Optional[str]:
    
    if not isinstance(message_attributes, dict):
        return
    hash = hashlib.md5()
    for attrName in sorted(message_attributes.keys()):
        attr_value = message_attributes[attrName]
        
        MotoMessage.update_binary_length_and_value(hash, MotoMessage.utf8(attrName))
        
        MotoMessage.update_binary_length_and_value(hash, MotoMessage.utf8(attr_value["DataType"]))
        
        if attr_value.get("StringValue"):
            hash.update(bytearray([STRING_TYPE_FIELD_INDEX]))
            MotoMessage.update_binary_length_and_value(
                hash, MotoMessage.utf8(attr_value.get("StringValue"))
            )
        elif attr_value.get("BinaryValue"):
            hash.update(bytearray([BINARY_TYPE_FIELD_INDEX]))
            decoded_binary_value = attr_value.get("BinaryValue")
            MotoMessage.update_binary_length_and_value(hash, decoded_binary_value)
        
        
    return hash.hexdigest()
def resolve_queue_location(