### Summary

I would like to use ansible.builtin.get_url to download a file and check it against a SHA3 512 checksum. It appears that [hashlib](https://docs.python.org/3/library/hashlib.html) supports SHA3 and even uses it by default as of Python 3.9.

### Issue Type

Bug Report

### Component Name

get_url

### Ansible Version

```console
2.15.0
```

### Additional Information

<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
- name: Retrieve the file
  ansible.builtin.get_url:
    url: "https://example.com/file"
    checksum: "sha3_512:{{ file_checksum }}"
    dest: "file"
  vars:
    file_checksum: '{{ lookup("file", "file.sha3_512").split()[0] }}'
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
''' return from the module, without error '''
        self.do_cleanup_files()
        self._return_formatted(kwargs)
        sys.exit(0)
    def fail_json(self, msg, **kwargs):
        ''' return from the module, with an error message '''
        kwargs['failed'] = True
        kwargs['msg'] = msg
        
        
        if 'exception' not in kwargs and sys.exc_info()[2] and (self._debug or self._verbosity >= 3):
            if PY2:
                
                kwargs['exception'] = 'WARNING: The below traceback may *not* be related to the actual failure.\n' +\
                                      ''.join(traceback.format_tb(sys.exc_info()[2]))
            else:
                kwargs['exception'] = ''.join(traceback.format_tb(sys.exc_info()[2]))
        self.do_cleanup_files()
        self._return_formatted(kwargs)
        sys.exit(1)
    def fail_on_missing_params(self, required_params=None):
        if not required_params:
            return
        try:
            check_missing_parameters(self.params, required_params)
        except TypeError as e:
            self.fail_json(msg=to_native(e))
    def digest_from_file(self, filename, algorithm):