| CPC G06F 21/32 (2013.01) [G06F 3/011 (2013.01); G06F 3/017 (2013.01)] | 20 Claims |

|
1. A computer implemented method comprising:
receiving, using one or more processors, a request for liveness determination;
responsive to the request, determining, using one or more processors, a set of potential liveness signal types, the set of potential liveness signal types determined to be detectable based on a set of sensors determined to be available to a user's client device;
generating, using the one or more processors and based on the determined set of potential liveness signal types, a first cue for presentation to the user via the client device, the first cue inducing a first action when the user is live, wherein the first cue includes a vibration of the client device;
obtaining, using the one or more processors, a first set of sensor data for a first time prior to the first cue;
obtaining, using the one or more processors, a second set of sensor data for a second time subsequent to the first cue and representing a user response to the first cue;
determining, using the one or more processors, a first user state based on the first set of sensor data;
determining, using the one or more processors, a second user state based on the second set of sensor data;
determining, using the one or more processors, a change of user state from the first user state to the second user state, wherein the change of user state includes one or more of:
the user turning the user's gaze to the client device responsive to the vibration,
the user entering into view of a camera sensor associated with the client device responsive to the vibration, and
a startle response from the user responsive to the vibration;
determining, using the one or more processors, a first liveness signal based on the change of user state in response to the first cue; and
responding, using the one or more processors, to the request based on the first liveness signal.
|