A method for biometric identity confirmation of a subject having a pulse, said method comprising: during an initial training mode, acquiring pulse waveform data from a known subject; generating and storing subject characterization data for the known subject based at least in part on an exemplar created by synchronous averaging of pulse waveform data over multiple pulse cycles; and during a subsequent identity authentication mode, acquiring pulse waveform data from a test subject, and analyzing the pulse waveform data with the subject characterization data for the known subject to confirm (27, 28) whether the identity of the test subject matches the known subject; characterized in that: during the initial training mode, the synchronous averaging of pulse waveform data includes: (a) identifying trigger candidates for a start point of each pulse cycle, wherein the trigger candidates are derived at least in part from a second derivative of the pulse waveform data with respect to time; (b) analyzing a time delay between trigger candidates to discard asynchronous false trigger candidates and identify true trigger candidates (311 - 318); and (c) synchronously averaging the pulse waveform data for each pulse cycle using the true trigger candidates as start points for each pulse cycle. during an initial training mode, acquiring pulse waveform data from a known subject; generating and storing subject characterization data for the known subject based at least in part on an exemplar created by synchronous averaging of pulse waveform data over multiple pulse cycles; acquiring pulse waveform data from a known subject; generating and storing subject characterization data for the known subject based at least in part on an exemplar created by synchronous averaging of pulse waveform data over multiple pulse cycles; and during a subsequent identity authentication mode, acquiring pulse waveform data from a test subject, and analyzing the pulse waveform data with the subject characterization data for the known subject to confirm (27, 28) whether the identity of the test subject matches the known subject; characterized in that: during the initial training mode, the synchronous averaging of pulse waveform data includes: (a) identifying trigger candidates for a start point of each pulse cycle, wherein the trigger candidates are derived at least in part from a second derivative of the pulse waveform data with respect to time; (b) analyzing a time delay between trigger candidates to discard asynchronous false trigger candidates and identify true trigger candidates (311 - 318); and (c) synchronously averaging the pulse waveform data for each pulse cycle using the true trigger candidates as start points for each pulse cycle. acquiring pulse waveform data from a test subject, and analyzing the pulse waveform data with the subject characterization data for the known subject to confirm (27, 28) whether the identity of the test subject matches the known subject; characterized in that: during the initial training mode, the synchronous averaging of pulse waveform data includes: (a) identifying trigger candidates for a start point of each pulse cycle, wherein the trigger candidates are derived at least in part from a second derivative of the pulse waveform data with respect to time; (b) analyzing a time delay between trigger candidates to discard asynchronous false trigger candidates and identify true trigger candidates (311 - 318); and (c) synchronously averaging the pulse waveform data for each pulse cycle using the true trigger candidates as start points for each pulse cycle. (a) identifying trigger candidates for a start point of each pulse cycle, wherein the trigger candidates are derived at least in part from a second derivative of the pulse waveform data with respect to time; (b) analyzing a time delay between trigger candidates to discard asynchronous false trigger candidates and identify true trigger candidates (311 - 318); and (c) synchronously averaging the pulse waveform data for each pulse cycle using the true trigger candidates as start points for each pulse cycle.