def verify_authenticate(device, request, response, valid_facets=None): device = DeviceRegistration.wrap(device) request = SignRequest.wrap(request) response = SignResponse.wrap(response) _validate_client_data(response.clientData, request.challenge, "navigator.id.getAssertion", valid_facets) raw_response = RawAuthenticationResponse(device.appParam, response.clientParam, response.signatureData) raw_response.verify_signature(websafe_decode(device.publicKey)) return raw_response.counter_int, raw_response.user_presence
def verify_authenticate(devices, request_data, response, valid_facets=None): request_data = AuthenticateRequestData.wrap(request_data) response = SignResponse.wrap(response) sign_request = request_data.getAuthenticateRequest(response) device = next(d for d in devices if d.keyHandle == sign_request.keyHandle) return u2f_v2.verify_authenticate( device, sign_request, response, valid_facets )
def verify_authenticate(device, request, response, valid_facets=None): device = DeviceRegistration.wrap(device) request = SignRequest.wrap(request) response = SignResponse.wrap(response) _validate_client_data(response.clientData, request.challenge, "navigator.id.getAssertion", valid_facets) raw_response = RawAuthenticationResponse( device.appParam, response.clientParam, response.signatureData ) raw_response.verify_signature(websafe_decode(device.publicKey)) return raw_response.counter_int, raw_response.user_presence