Reverted commit https://github.com/ronf/asyncssh/commit/386432c9b698beb23ccb88b69f4023560b76750f --- b/asyncssh/crypto/chacha.py +++ a/asyncssh/crypto/chacha.py @@ -51,13 +51,18 @@ def poly1305(key, data, nonce): """Compute a Poly1305 tag for a block of data""" + poly = Poly1305(poly1305_key(key, nonce)) + poly.update(data) + return poly.finalize() - return Poly1305.generate_tag(poly1305_key(key, nonce), data) def poly1305_verify(key, data, nonce, tag): """Verify a Poly1305 tag for a block of data""" + poly = Poly1305(poly1305_key(key, nonce)) + try: + poly.update(data) + poly.verify(tag) - Poly1305.verify_tag(poly1305_key(key, nonce), data, tag) return True except InvalidSignature: return False --- b/setup.py +++ a/setup.py @@ -52,7 +52,7 @@ long_description = long_description, platforms = 'Any', python_requires = '>= 3.6', + install_requires = ['cryptography >= 2.7'], - install_requires = ['cryptography >= 2.8'], extras_require = { 'bcrypt': ['bcrypt >= 3.1.3'], 'gssapi': ['gssapi >= 1.2.0'],