Merge branch 'development' into eddsa
This commit is contained in:
@@ -22,7 +22,12 @@ RUN apt install -y libccid \
|
|||||||
cmake \
|
cmake \
|
||||||
libfuse-dev \
|
libfuse-dev \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
RUN pip3 install pytest pycvc cryptography pyscard fido2 inputimeout
|
RUN pip3 install pytest pycvc cryptography pyscard inputimeout
|
||||||
|
RUN git clone https://github.com/polhenarejos/python-fido2.git
|
||||||
|
WORKDIR /python-fido2
|
||||||
|
RUN git checkout development
|
||||||
|
RUN pip3 install .
|
||||||
|
WORKDIR /
|
||||||
RUN git clone https://github.com/frankmorgner/vsmartcard.git
|
RUN git clone https://github.com/frankmorgner/vsmartcard.git
|
||||||
WORKDIR /vsmartcard/virtualsmartcard
|
WORKDIR /vsmartcard/virtualsmartcard
|
||||||
RUN autoreconf --verbose --install
|
RUN autoreconf --verbose --install
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
|
|
||||||
from fido2.client import CtapError
|
from fido2.client import CtapError
|
||||||
from fido2.cose import ES256, ES384, ES512, EdDSA
|
from fido2.cose import ES256, ES384, ES512
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -18,8 +18,9 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
from fido2.utils import sha256
|
|
||||||
from fido2.client import CtapError
|
from fido2.client import CtapError
|
||||||
|
from fido2.cose import ES256, ES384, ES512
|
||||||
|
from utils import verify
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
def test_authenticate(device):
|
def test_authenticate(device):
|
||||||
@@ -47,6 +48,17 @@ def test_empty_allowList(device):
|
|||||||
device.doGA(allow_list=[])
|
device.doGA(allow_list=[])
|
||||||
assert e.value.code == CtapError.ERR.NO_CREDENTIALS
|
assert e.value.code == CtapError.ERR.NO_CREDENTIALS
|
||||||
|
|
||||||
|
@pytest.mark.parametrize(
|
||||||
|
"alg", [ES256.ALGORITHM, ES384.ALGORITHM, ES512.ALGORITHM]
|
||||||
|
)
|
||||||
|
def test_algorithms(device, info, alg):
|
||||||
|
if ({'alg': alg, 'type': 'public-key'} in info.algorithms):
|
||||||
|
MCRes = device.doMC(key_params=[{"alg": alg, "type": "public-key"}])
|
||||||
|
res = device.GA(allow_list=[
|
||||||
|
{"id": MCRes['res'].attestation_object.auth_data.credential_data.credential_id, "type": "public-key"}
|
||||||
|
])
|
||||||
|
verify(MCRes['res'].attestation_object, res['res'], res['req']['client_data_hash'])
|
||||||
|
|
||||||
def test_get_assertion_allow_list_filtering_and_buffering(device):
|
def test_get_assertion_allow_list_filtering_and_buffering(device):
|
||||||
""" Check that authenticator filters and stores items in allow list correctly """
|
""" Check that authenticator filters and stores items in allow list correctly """
|
||||||
allow_list = []
|
allow_list = []
|
||||||
@@ -124,7 +136,6 @@ def test_missing_rp(device):
|
|||||||
assert e.value.code == CtapError.ERR.MISSING_PARAMETER
|
assert e.value.code == CtapError.ERR.MISSING_PARAMETER
|
||||||
|
|
||||||
def test_bad_rp(device):
|
def test_bad_rp(device):
|
||||||
|
|
||||||
with pytest.raises(CtapError) as e:
|
with pytest.raises(CtapError) as e:
|
||||||
device.doGA(rp_id={"id": {"type": "wrong"}})
|
device.doGA(rp_id={"id": {"type": "wrong"}})
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user