I think the hash algorithm should actually be passed to the constructor for these. e.g.

```
signature_algorithm = ECDSA(hashes.SHA256())
v = key.verifier(signature, signature_algorithm, backend)
v.update(b"foo")
v.verify()
```