Yubico / python-fido2

Provides library functionality for FIDO 2.0, including communication with a device over USB.
BSD 2-Clause "Simplified" License
432 stars 109 forks source link

Test failure in test_EdDSA_parse_verify #53

Closed kbabioch closed 5 years ago

kbabioch commented 5 years ago

I'm building this package in our build system. Versions up until 0.5.0 were working fine, but with the latest 0.6.0 release, one test case is failing:

======================================================================
[   67s] FAIL: test_EdDSA_parse_verify (test.test_cose.TestCoseKey)
[   67s] ----------------------------------------------------------------------
[   67s] Traceback (most recent call last):
[   67s]   File "/home/abuild/rpmbuild/BUILD/fido2-0.6.0/test/test_cose.py", line 84, in test_EdDSA_parse_verify
[   67s]     self.assertIsInstance(key, EdDSA)
[   67s] AssertionError: {1: 1, 3: -8, -1: 6, -2: '\xee\x9b!\x804\x05\xd3\xcfE`\x1eX\xb6\xf4\xc0n\xa98b\xde\x87\xd3\xaf\x90<Xp\xa5\x01n\x86\xf5'} is not an instance of <class 'fido2.cose.EdDSA'>

Not sure what is at fault here (library version, etc.). The full build log can be found here.

On another distribution (openSUSE Factory / Tumbleweed) this works just fine, but libraries versions are newer, etc.: https://build.opensuse.org/package/live_build_log/openSUSE:Factory/python-fido2/standard/x86_64

Please let me know what additional information you need.

dainnilsson commented 5 years ago

This is probably due to the cryptography and/or OpenSSL version being too low for EdDSA support. We should probably add a check for this and skip the test if that's the case.