Abstract: The present disclosure provides a method for maintaining an authentication session using wrist wearable sensors where the conventional methods fails to perform. Initially, the present disclosure receives a plurality of (PPG) signal segments collected during an active authentication session from a user. A plurality of morphological features are further extracted from the plurality of PPG signal segments using a pulse morphology feature extraction technique only if the wrist wearable sensor is worn by the user and the signal quality is good. After computing the plurality of morphological features, a majority voting score is computed for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of morphological features using a pretrained Machine Learning (ML) classifier. Finally, the user is identified as a genuine user or an adversary based on the majority voting score and a personalization threshold.
DESC:FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
METHOD AND SYSTEM FOR MAINTAINING AN AUTHENTICATION SESSION USING WRIST WEARABLE SENSORS
Applicant:
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th Floor,
Nariman Point, Mumbai 400021,
Maharashtra, India
The following specification particularly describes the invention and the manner in which it is to be performed.
CROSS-REFERENCE TO RELATED APPLICATIONS AND PRIORITY
The present application claims priority from Indian provisional patent application no. 202121023783, filed on May 28, 2021. The entire contents of the aforementioned application are incorporated herein by reference.
TECHNICAL FIELD
The disclosure herein generally relates to the field of signal processing and, more particularly, to a method and system for maintaining an authentication session using wrist wearable sensors.
BACKGROUND
Wearable devices such as smart watches and fitness trackers are packed with a plethora of sensors like Photoplethysmography (PPG) sensors and are increasingly gaining acceptance in healthcare solutions. More recently, these devices are also being used as a security token to perform payments, such as Fitbit pay, as well as regarded as a trusted device to perform actions like automatically unlocking smartphones. While authentication mechanisms are necessary, it is also necessary to constantly validate the wearer within this authenticated session. This step will prevent any potential misuse of these devices post authentication.
Conventional methods are using PPG information to determine the identity of the person wearing the device. Further, the conventional methods are machine learning based and evaluating the identity of the person using the limited dataset of known users is prone to false positives. Further, to operate under a controlled lab environment where signals from the same recording session are used for both enrollment and testing is another challenge. In real world environment, Equal Error Rate (EER) rises quickly when the time interval between enrollment and testing stage increases. EER is a biometric performance metric which is used to measure performance of verification tasks. Hence there is a need in developing a system which uses PPG information for seamlessly maintaining an already authenticated session.
SUMMARY
Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method for maintaining an authentication session using wrist wearable sensors is provided. The method includes receiving, by one or more hardware processors, a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user, wherein the active authentication session is initiated after a successful initial authentication of the user, wherein each of the plurality of PPG signal segments comprises a plurality of pulses. Further, the method includes identifying, by the one or more hardware processors, whether the wearable device is worn by the user, using a pretrained wearable device removal detector, wherein an on wrist value is set to one if the wearable device is worn by the user and zero otherwise. Furthermore, the method includes identifying, by the one or more hardware processors, a value indicating a signal quality of the received PPG signal using a frequency domain analysis, wherein the value of the signal quality is set to one if the received PPG signal is having a quality greater than a predefined signal quality threshold and zero otherwise. Furthermore, the method includes computing, by the one or more hardware processors, a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the value of the signal quality are set to one. Furthermore, the method includes selecting, by the one or more hardware processors, a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique. Furthermore, the method includes computing, by the one or more hardware processors, a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of significant features using a pretrained ML classifier. Finally, the method includes identifying, by the one or more hardware processors, the user as one of, a) a genuine user, and b) an adversary, based on the majority voting score and a personalization threshold, wherein the user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
In another aspect, a system for maintaining an authentication session using wrist wearable sensors is provided. The system includes at least one memory storing programmed instructions, one or more Input /Output (I/O) interfaces, and one or more hardware processors operatively coupled to the at least one memory, wherein the one or more hardware processors are configured by the programmed instructions to receive a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user, wherein the active authentication session is initiated after a successful initial authentication of the user, wherein each of the plurality of PPG signal segments comprises a plurality of pulses. Further, the one or more hardware processors are configured by the programmed instructions to identify whether the wearable device is worn by the user, using a pretrained wearable device removal detector, wherein an on wrist value is set to one if the wearable device is worn by the user and zero otherwise. Furthermore, the one or more hardware processors are configured by the programmed instructions to identify a value indicating a signal quality of the received PPG signal using a frequency domain analysis, wherein the value of the signal quality is set to one if the received PPG signal is having a quality greater than a predefined signal quality threshold and zero otherwise. Furthermore, the one or more hardware processors are configured by the programmed instructions to compute a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the value of the signal quality are set to one. Furthermore, the one or more hardware processors are configured by the programmed instructions to select a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique. Furthermore, the one or more hardware processors are configured by the programmed instructions to compute a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of significant features using a pretrained ML classifier. Finally, the one or more hardware processors are configured by the programmed instructions to identify the user as one of, a) a genuine user, and b) an adversary, based on the majority voting score and a personalization threshold, wherein the user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
In yet another aspect, a computer program product including a non-transitory computer-readable medium having embodied therein a computer program for maintaining an authentication session using wrist wearable sensors is provided. The computer readable program, when executed on a computing device, causes the computing device to receive a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user, wherein the active authentication session is initiated after a successful initial authentication of the user, wherein each of the plurality of PPG signal segments comprises a plurality of pulses. Further, the computer readable program, when executed on a computing device, causes the computing device to identify whether the wearable device is worn by the user, using a pretrained wearable device removal detector, wherein an on wrist value is set to one if the wearable device is worn by the user and zero otherwise. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to identify a value indicating a signal quality of the received PPG signal using a frequency domain analysis, wherein the value of the signal quality is set to one if the received PPG signal is having a quality greater than a predefined signal quality threshold and zero otherwise. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to compute a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the value of the signal quality are set to one. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to select a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique. Furthermore, the computer readable program, when executed on a computing device, causes the computing device to compute a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of significant features using a pretrained ML classifier. Finally, the computer readable program, when executed on a computing device, causes the computing device to identify the user as one of, a) a genuine user, and b) an adversary, based on the majority voting score and a personalization threshold, wherein the user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
FIG. 1 is a functional block diagram of a system for maintaining an authentication session using wrist wearable sensors, in accordance with some embodiments of the present disclosure.
FIG. 2 is an exemplary flow diagram illustrating a method for maintaining an authentication session using wrist wearable sensors, implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
FIG. 3 is a functional flow diagram for pretraining a wearable device removal detector for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
FIG. 4 is a functional flow diagram for training the ML classifier for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
FIG. 5 is a functional flow diagram for computing personalization threshold for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
FIG. 6 is an example functional architecture for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
FIG. 7 is an example application block diagram for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure.
DETAILED DESCRIPTION OF EMBODIMENTS
Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the spirit and scope of the disclosed embodiments.
Embodiments herein provide a method and system for maintaining an authentication session using wrist wearable sensors for continued authentication. The present disclosure prevents any potential misuse of the wrist wearable devices post authentication by constantly validating the user within an authentication session. Initially the system receives a plurality of Photoplethysmography (PPG) signal segments corresponding to a predefined window size from a PPG sensor. The PPG sensor is communicatively connected to a wrist wearable device worn by a user and wherein each of the plurality of PPG signal segments includes a plurality of pulses. Further, it is identified whether the wearable device is worn by the user, using a pretrained wearable device removal detector. Further, the quality of the received PPG signal is checked using a frequency domain analysis. A plurality of morphological features are further extracted from the plurality of PPG signal segments using a pulse morphology feature extraction technique only if the wrist wearable sensor is worn by the user and the signal quality is good. After computing the plurality of morphological features, a majority voting score is computed for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of morphological features using a pretrained Machine Learning (ML) classifier. Finally, the user is identified as a genuine user or an adversary, based on the majority voting score and a personalization threshold.
Referring now to the drawings, and more particularly to FIGS. 1 through 7, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
FIG. 1 is a functional block diagram of a system 100 for maintaining an authentication session using wrist wearable sensors, according to some embodiments of the present disclosure. The system 100 includes or is otherwise in communication with hardware processors 102, at least one memory such as a memory 104, an I/O interface 112. The hardware processors 102, memory 104, and the Input /Output (I/O) interface 112 may be coupled by a system bus such as a system bus 108 or a similar mechanism. In an embodiment, the hardware processors 102 can be one or more hardware processors.
The I/O interface 112 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface 112 may include a variety of software and hardware interfaces, for example, interfaces for peripheral device(s), such as a keyboard, a mouse, an external memory, a printer and the like. Further, the I/O interface 112 may enable the system 100 to communicate with other devices, such as web servers, and external databases.
The I/O interface 112 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, local area network (LAN), cable, etc., and wireless networks, such as Wireless LAN (WLAN), cellular, or satellite. For the purpose, the I/O interface 112 may include one or more ports for connecting several computing systems with one another or to another server computer. The I/O interface 112 may include one or more ports for connecting several devices to one another or to another server.
The one or more hardware processors 102 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, node machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the one or more hardware processors 102 is configured to fetch and execute computer-readable instructions stored in the memory 104.
The memory 104 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an embodiment, the memory 104 includes a plurality of modules 106. The memory 104 also includes a data repository (or repository) 110 for storing data processed, received, and generated by the plurality of modules 106.
The plurality of modules 106 include programs or coded instructions that supplement applications or functions performed by the system 100 for maintaining an authentication session using wrist wearable sensors. The plurality of modules 106, amongst other things, can include routines, programs, objects, components, and data structures, which performs particular tasks or implement particular abstract data types. The plurality of modules 106 may also be used as, signal processor(s), node machine(s), logic circuitries, and/or any other device or component that manipulates signals based on operational instructions. Further, the plurality of modules 106 can be used by hardware, by computer-readable instructions executed by the one or more hardware processors 102, or by a combination thereof. The plurality of modules 106 can include various sub-modules (not shown). The plurality of modules 106 may include computer-readable instructions that supplement applications or functions performed by the system 100 for maintaining an authentication session using wrist wearable sensors. In an embodiment, plurality of modules 106 includes a wearable device removal detector module (shown in FIG. 6), a signal quality checking module (shown in FIG. 6), a morphological feature extraction module (shown in FIG. 6), a majority voting module (shown in FIG. 6) and a prediction module (shown in FIG. 6).
The data repository (or repository) 110 may include a plurality of abstracted piece of code for refinement and data that is processed, received, or generated as a result of the execution of the plurality of modules in the module(s) 106.
Although the data repository 110 is shown internal to the system 100, it will be noted that, in alternate embodiments, the data repository 110 can also be implemented external to the system 100, where the data repository 110 may be stored within a database (repository 110) communicatively coupled to the system 100. The data contained within such external database may be periodically updated. For example, new data may be added into the database (not shown in FIG. 1) and/or existing data may be modified and/or non-useful data may be deleted from the database. In one example, the data may be stored in an external system, such as a Lightweight Directory Access Protocol (LDAP) directory and a Relational Database Management System (RDBMS).
FIG. 2 is an exemplary flow diagram illustrating a method 200 for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1 according to some embodiments of the present disclosure. In an embodiment, the system 100 includes one or more data storage devices or the memory 104 operatively coupled to the one or more hardware processor(s) 102 and is configured to store instructions for execution of steps of the method 200 by the one or more hardware processors 102. The steps of the method 200 of the present disclosure will now be explained with reference to the components or blocks of the system 100 as depicted in FIG. 1 and the steps of flow diagram as depicted in FIG. 2. The method 200 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 200 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communication network. The order in which the method 200 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 200, or an alternative method. Furthermore, the method 200 can be implemented in any suitable hardware, software, firmware, or combination thereof.
At step 202 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to receive a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user. The active authentication session is initiated after a successful initial authentication of the user. Each of the plurality of PPG signal segments comprises a plurality of pulses. The plurality of PPG signal segments are received based on a predefined window size. At step 204 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to identify whether the wearable device is worn by the user using a pretrained wearable device removal detector. An on wrist value is set to one if the wearable device is worn by the user and zero otherwise.
FIG. 3 is a functional flow diagram 300 for pretraining the wearable device removal detector for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure. Now referring to FIG 3, the method 300 includes a pulse extraction module 302, a normalization module 304, a statistical feature extraction module 306 and a training module 308. The pulse extraction module 302 receives a first PPG signal and a second signal from the PPG sensor communicatively connected to the wrist wearable device worn by the user. The first PPG signal is obtained from the wearable device removed from the wrist of the user. The second PPG signal is obtained from the wearable device worn by the user. Further, a first set of pulses and the second set of pulses corresponding to the first PPG signal and the second PPG signal using a pulse extraction technique. The normalization module 304 normalizes the first set of pulses and the second set of pulses using the normalization technique. For example, the normalization technique used here is a min-max normalization technique. In the min-max normalization technique, a minimum value gets transformed into zero and a maximum value gets transformed into 1. The statistical feature extraction module 306 extracts a first set of statistical features and the second set of statistical features from the corresponding first PPG signal and the second PPG signal using a plurality of statistical feature extraction techniques. For example, the plurality of statistical feature extraction techniques used here are median, standard deviation, length, minimum value, maximum value, 25th percentile, 75th percentile of Peaks, Troughs, Peak-to-Peak interval, Trough-to-Trough interval, area under pulses, kurtosis, skewness, average rise times and the like. The training module 308 trains the wearable device removal detector based on the first set of statistical features and the second set of statistical features.
At step 206 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to identifying a value indicating a signal quality of the received PPG signal using a frequency domain analysis. The value of signal quality is set to one if the received PPG signal is having quality greater than a predefined signal quality threshold and zero otherwise. The frequency domain analysis considers the components corresponding to cardio and pulmonary components in the frequency spectrum of the PPG signal to assess the quality of the signal. The frequency domain analysis is used to extract a plurality of frequency domain features from the PPG signal. Initially, the PPG signal is annotated by an annotation technique. The annotated signal is passed through a Chebyshev filter to obtain a plurality of frequency bands corresponding to the PPG signal. The plurality of frequency bands includes the cardio frequency band and the pulmonary frequency band. For example, the cardio frequency range is 0.6 to 2 Hz and the pulmonary frequency range is 0.2 to 0.6 Hz. The filtered plurality of frequency bands are then compared with an optimal threshold to predict whether the PPG signal is having good or bad quality. The plurality of frequency bands above the optimal threshold are considered as having good quality.
At step 208 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to compute a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the signal quality value are set to one. For example, the pulse morphology extraction technique computes each of the plurality of morphological features using the corresponding formula.
In an embodiment, the plurality of morphological features includes a systolic peak amplitude, a rise time to systolic peak, a dicrotic notch amplitude, a time taken to reach the dicrotic notch amplitude, a diastolic peak amplitude, a time taken to reach the diastolic peak amplitude, a ratio between the systolic peak amplitude and the diastolic peak amplitude, a ratio between the rise time to systolic peak and the time taken to reach the diastolic peak amplitude, a ratio between the rise time to systolic peak and a total pulse width, a slope from starting of pulse to systolic peak, a slope from systolic to diastolic peak and a slope from diastolic peak to end of the pulse.
In an embodiment, the systolic peak amplitude distinguishes the end of systole and beginning of diastole. The rise time to systolic peak is the elapsed time between the start of a cycle and the time of the pulse maximum. The dicrotic notch amplitude is a point where a second derivative of the PPG signal is a local maximum. The dicrotic notch occurs before the diastolic peak. The time taken to reach the dicrotic notch amplitude is the elapsed time between the start of a cycle and the time of the dicrotic notch amplitude. The time taken to reach the diastolic peak amplitude, the elapsed time between the start of a cycle and the time of the diastolic peak amplitude.
Further, at step 210 the one or more hardware processors 102 are configured by the programmed instructions to select a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique. The MIC is a statistical technique to measure a strength of linear and non-linear associations between two variables. In an embodiment, the plurality of significant features are the dicrotic notch amplitude, the ration between the rise time to systolic peak and the time taken to reach the diastolic peak amplitude and the ratio between the rise time to systolic peak and a total pulse width.
At step 212 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to compute a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of morphological features using a pretrained ML classifier. In an embodiment, the ML based classifier used here is a Tree Bagger classifier. Similar other classifiers are also used in other embodiments.
For example, the method for computing majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of morphological features using the pretrained ML classifier is explained here. Each pulse associated with each PPG segments is taken for majority voting. Here, each pulse is given as input to the pretrained ML classifier and the pretrained ML classifier classifies it as either genuine or adversary. Similarly each pulse associated with each of the plurality of PPG signal segments are classified as either genuine or adversary. For example, if there are 5 pulses in each PPG segment and the number of PPG segments is 3, then the output of the pretrained ML classifier is [{1,0,1,1,0}, {1,0,0,0,0}, {1,0,1,0,0}]. Here, the value ‘1’ indicates that the user is genuine and the value ‘0’ indicates that the user is not genuine. Here, the majority voting is for “adversary user” since the number of zeros are more. The majority voting score is 6. In another example, if the output of the pretrained ML classifier is [{1,0,1,1,0}, {1,1,1,0,1}, {1,0,1,0,0}], the majority voting is for “genuine user” and the majority voting score is 9.
FIG. 4 is a functional flow diagram 400 for training the ML classifier for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure. Now referring to FIG. 4, the method 400 includes use of a morphological feature extraction module 402 and a training module 404. The morphological feature extraction module 402 further includes a motion artifacts removal module 406, a PPG signal segmentation module 408, a pulse extraction module 410, a normalization module 412 and a feature extraction module 414. Initially, a plurality of raw PPG signal segments corresponding to the predefined window size from a PPG sensor are received by the motion artifacts removal module 406 of the morphological feature extraction module 402. The PPG sensor is communicatively connected to the wrist wearable device worn by the user. Further, the motion artifacts removal module 406 obtains a plurality of clean PPG signal segments by removing motion artifacts. For example, the motion artifacts corrupting the PPG signal can occur due to movement of wrist or upper body or fingers in the hand wearing the wearable device. Further, there can be muscle artifacts too, which are involuntarily actions produced by body.
Further, the PPG signal segmentation module 408 segments the plurality of clean PPG signals into a plurality of training PPG segments P_t and a plurality of personalization block PPG segments P_v. In an embodiment, the training PPG segment P_t and a personalization block segment P_v of the PPG signal. In an embodiment, the training segment P_t is of 20 minutes length and the personalization block segment P_v of the PPG signal is of 10 minutes length. Further, the pulse extraction module 410 extracts a systolic peak and a diastolic peak from the plurality of training PPG segments by a pulse extraction technique. Further, the normalization module 412 obtains a normalized systolic peak and a normalized diastolic peak based on the extracted corresponding systolic peak and the diastolic peak using a normalization technique. For example, the normalization technique used here considers each individual pulse as a vector of amplitude values. If the pulse is of length 40 values, each value is divided by the sum of all these 40 values to get the pulse normalized. Further, the feature extraction module 414 extracts the plurality of morphological features based on the normalized systolic peak and the normalized diastolic peak using the pulse morphology feature extraction technique. The pulse morphology extraction technique computes the plurality of morphological features using the corresponding formula. Finally, the training module 404 trains the ML classifier based on the plurality of morphological features. The ML classifier includes a random forest classifier and a Tree Bagger classifier.
At step 214 of the method 200, the one or more hardware processors 102 are configured by the programmed instructions to identify the user as a genuine user or an adversary based on the majority voting score and a personalization threshold. The user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
FIG. 5 is a functional flow diagram 500 for computing personalization threshold for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure. Now referring to FIG. 5, the method 500 includes a pulse extraction module 502, a prediction module 504, a counter 506 and a personalization threshold computation module 508. Initially, the pulse extraction module 502 receives the plurality of personalization block segments of the PPG signal. The prediction module 504 predicting each of the plurality of personalization block PPG segments using the trained ML classifier. The prediction result is one of, a genuine user or an adversary user. The counter module 506 obtains a count of instances where the ML classifier predicted the genuine user and the personalization threshold computation module 508 computes the personalization threshold V_th based on the count and a number of personalization block segments of the PPG signal or the total number of windows. The formula for computing the personalization threshold is given in equation (1). In another embodiment, a threshold V_r is computed based on the count which confirmed the adversary user and the total number of windows where V_th+ V_r=1.
V_th=count*W/600 ………………………………(1)
where, V_th is the personalization threshold, W is the window size and 600 is the time interval. For example, if the PPG signal is obtained for 10 minutes, it is converted into seconds to get 600.
FIG. 6 is an example overall architecture 600 for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure. Now referring to FIG. 6, the overall architecture 600 includes a wearable device removal detector module 602, a quality checker module 604, a morphological feature extraction module 606, a majority voting module 608 and a prediction module 610. The wearable device removal detector module 602 receives ‘w’ seconds of PPG signal (P_w) in real time. Here ‘w’ is the predefined window size. The window size can be varied based on the user need. The wearable device removal detector module 602 identifies whether the wearable device is worn by the user using the pretrained wearable device removal detector. The on wrist value is set to one if the wearable device is worn by the user and zero otherwise. The quality checker module 604 identifies the quality value of the received PPG signal using the frequency domain analysis. The signal quality value is set to one if the received PPG signal is having quality and zero otherwise. The morphological feature extraction module 606 extracts the plurality of morphological features from the plurality of PPG signal segments if the on wrist value and the signal quality value are set to one using the pulse morphology feature extraction technique. The majority voting module 608 computes the majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of morphological features using the pretrained ML classifier. Finally, the prediction module 610 identifies the user as one of, the genuine user and the adversary based on the majority voting score and the personalization threshold. The user is identified as the genuine user if the majority voting score is greater than the personalization threshold. If the quality of the PPG signal is not good or if the wearable device is not worn by the user, the current PPG signal window (segment) is ignored and the next PPG window is checked by the module 612 and the above said process is continued.
FIG. 7 is an example application block diagram 700 or use case for the processor implemented method for maintaining an authentication session using wrist wearable sensors implemented by the system of FIG. 1, in accordance with some embodiments of the present disclosure. Now referring to FIG. 7, application block diagram 700 includes a global adversary bank 702 which includes a first set of PPG signals corresponding to a plurality of population which are not subjects. Further, the application includes a second set of PPG signals 704 associated with ‘N’ number of adversary users mutually exclusive from the global adversary bank. The application includes a plurality of models 710A through 710N (system 100) trained using the corresponding PPG signals associated with the ‘N’ number of adversary users. The application further includes the model 708 (system 100) trained using the PPG signal corresponding to a user under test. A first majority vote is obtained from the first model 708 (system 100) corresponding to the user under test. Further, a plurality of majority votes corresponding to each of the plurality of models 710A through 710N are obtained from the majority voting module 714. Further the first majority vote obtained from the first model 708 and a complement of each of the plurality of majority votes obtained from each of the plurality of models 710A through 710N are provided as input to the majority voting module 716. The majority voting module 716 provides a final voting to decide whether the user is genuine or adversary. For example, if the prediction from the model 708 for the user1 is genuine, then a prediction value is equal to 1. Simultaneously, if the prediction from the adversary models 710A to 710N are predicting adversary users, then the prediction values obtained from the adversary models 710A to 710N are all set to one. Then the prediction values of the plurality of adversary models are complemented (made to zero). Further, the prediction values from the model 708 and the complemented prediction values from the plurality of adversary models 710A to 710N are provided as input to the decision making module 716. For example, if there are 5 adversary models, then the input to the decision making module 716 is [1, 0, 0, 0, 0 ,0]. Here, the user1 predicted using the model 708 is identified as genuine by taking OR operation.
In another example, if the prediction from the model 708 for the user1 is adversary, then a prediction value = 0. Simultaneously, if the prediction from the adversary models 710A to 710N are predicting adversary users, then the prediction values obtained from the adversary models 710A to 710N are all set to one. Then the prediction values of the plurality of adversary models are complemented (made to zero). Further, the prediction values from the model 708 and the complemented prediction values from the plurality of adversary models 710A to 710N are provided as input to the decision making module 716. For example, if there are 5 adversary models, then the input to the decision making module 716 is [0, 0, 0, 0, 0 ,0]. Here, the user1 predicted using the model 708 is identified as adversary.
Experimental Results:
In an experimental setup of the embodiments of the present disclosure, two cases were made namely A and B. For case A, 13 users were grouped as global adversary bank and 10 users as local adversary bank, 9 subjects were used individually for training one at a time and testing against all the other 8 including themselves. Similar arrangement was done for Case B as well, by grouping 14 subjects as global adversary, 10 as local adversary, and 8 subjects were used for training and testing. The system 100 was trained on 45 minutes of data and testing done on 1/3/5 minutes of data (majority voting done with window size 10 seconds) to get the results. On an average the results obtained for Case A were: Precision = 0.47, Recall = 1, Accuracy = 0.876, and for Case B were: Precision = 0.46 , Recall = 0.75 , Accuracy = 0.859.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
The embodiments of present disclosure herein address the unresolved problem of maintaining an authentication session using wrist wearable sensors. Here, a majority voting technique and a unique personalization threshold are used for identifying the user as genuine or adversary. The majority voting technique is performed using the pretrained ML technique and the unique personalization threshold is computed based on window size.
It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein such computer-readable storage means contain program-code means for implementation of one or more steps of the method when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g. using a plurality of CPUs, GPUs and edge computing devices.
The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various modules described herein may be implemented in other modules or combinations of other modules. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. Also, the words “comprising,” “having,” “containing,” and “including,” and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms “a,” “an,” and “the” include plural references unless the context clearly dictates otherwise. Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e. non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.
,CLAIMS:
1. A processor implemented method (200), the method comprising:
receiving (202), by one or more hardware processors, a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user, wherein the active authentication session is initiated after a successful initial authentication of the user, wherein each of the plurality of PPG signal segments comprises a plurality of pulses;
identifying (204), by the one or more hardware processors, whether the wearable device is worn by the user, using a pretrained wearable device removal detector, wherein an on wrist value is set to one if the wearable device is worn by the user and zero otherwise;
identifying (206), by the one or more hardware processors, a value indicating a signal quality of the received PPG signal using a frequency domain analysis, wherein the value of the signal quality is set to one if the received PPG signal is having a quality greater than a predefined signal quality threshold and zero otherwise;
computing (208), by the one or more hardware processors, a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the value of the signal quality are set to one;
selecting (210), by the one or more hardware processors, a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique;
computing (212), by the one or more hardware processors, a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of significant features using a pretrained ML classifier; and
identifying (214), by the one or more hardware processors, the user as one of, a) a genuine user, and b) an adversary, based on the majority voting score and a personalization threshold, wherein the user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
2. The method as claimed in claim 1, wherein the plurality of PPG signal segments are received based on a predefined window size.
3. The method as claimed in claim 1, wherein pretraining the ML classifier comprises:
receiving a plurality of raw PPG signal segments corresponding to the predefined window size from a PPG sensor, wherein the PPG sensor is communicatively connected to the wrist wearable device worn by the user;
extracting a plurality of morphological features from each of the plurality of raw PPG signal segments using the pulse morphology feature extraction technique, by;
obtaining a plurality of clean PPG signal segments by removing motion artifacts;
segmenting the plurality of clean PPG signal segments into a plurality of training PPG segments and a plurality of personalization block PPG segments;
extracting a systolic peak and a diastolic peak from the plurality of training PPG segments using a pulse extraction technique;
obtaining a normalized systolic peak and a normalized diastolic peak based on the extracted corresponding systolic peak and the diastolic peak using a normalization technique; and
extracting the plurality of morphological features based on the normalized systolic peak and the normalized diastolic peak using the pulse morphology feature extraction technique; and
training the ML classifier based on the plurality of morphological features.
4. The method as claimed in claim 3, wherein the personalization threshold is computed based on a plurality of personalization block segments of the PPG signal using a pretrained ML classifier, comprises:
receiving the plurality of personalization block segments of the PPG signal;
predicting each of the plurality of personalization block segments of the PPG signal using the trained ML classifier, wherein the prediction result is one of, a genuine user or an adversary user;
obtaining a count of instances where the ML classifier predicted the genuine user; and
computing the personalization threshold based on the obtained count of instances and a number of personalization block segments of the PPG signal.
5. The method as claimed in claim 1, wherein pretraining the wearable device removal detector comprises:
receiving a first PPG signal and a second PPG signal from the PPG sensor communicatively connected to the wrist wearable device worn by the user, wherein the first PPG signal is obtained from the wearable device removed from the wrist of the user and the second PPG signal is obtained from the wearable device worn by the user;
extracting a first set of pulses and the second set of pulses corresponding to the first PPG signal and the second PPG signal using a pulse extraction technique;
normalizing the first set of pulses and the second set of pulses using the normalization technique;
extracting a first set of statistical features and the second set of statistical features from the corresponding first PPG signal and the second PPG signal using a statistical feature extraction technique; and
training the wearable device removal detector based on the first set of statistical features and the second set of statistical features.
6. The method as claimed in claim 1, wherein the frequency domain analysis considers the components corresponding to cardio and pulmonary components in the frequency spectrum of the PPG signal to assess the quality of the signal.
7. The method as claimed in claim 1, wherein the pulse morphology extraction technique computes each of the plurality of morphological features using the corresponding formula.
8. The method as claimed in claim 1, wherein the MIC measures a strength of linear and non-linear associations between two variables.
9. A system (100) comprising:
at least one memory (104) storing programmed instructions; one or more Input /Output (I/O) interfaces (112); and one or more hardware processors (102) operatively coupled to the at least one memory (104), wherein the one or more hardware processors (102) are configured by the programmed instructions to:
receive a plurality of Photoplethysmography (PPG) signal segments collected during an active authentication session from a user using one or more PPG sensors communicatively connected to a wrist wearable device of the user, wherein the active authentication session is initiated after a successful initial authentication of the user, wherein each of the plurality of PPG signal segments comprises a plurality of pulses;
identify whether the wearable device is worn by the user, using a pretrained wearable device removal detector, wherein an on wrist value is set to one if the wearable device is worn by the user and zero otherwise;
identify a value indicating a signal quality of the received PPG signal using a frequency domain analysis, wherein the value of the signal quality is set to one if the received PPG signal is having a quality greater than a predefined signal quality threshold and zero otherwise;
compute a plurality of morphological features from the plurality of PPG signal segments, using a pulse morphology feature extraction technique, if the on wrist value and the value of the signal quality are set to one;
select a plurality of significant features from the plurality of morphological features using a Maximal Information Coefficient (MIC) technique;
compute a majority voting score for each of the plurality of pulses corresponding to each of the plurality of the PPG signal segments based on the plurality of significant features using a pretrained ML classifier; and
identify the user as one of, a) a genuine user, and b) an adversary, based on the majority voting score and a personalization threshold, wherein the user is identified as the genuine user if the majority voting score is greater than the personalization threshold.
10. The system of claim 9, wherein the plurality of PPG signal segments are received based on a predefined window size.
11. The system of claim 9, wherein pretraining the ML classifier comprises:
receiving a plurality of raw PPG signal segments corresponding to the predefined window size from a PPG sensor, wherein the PPG sensor is communicatively connected to the wrist wearable device worn by the user;
extracting a plurality of morphological features from each of the plurality of raw PPG signal segments using the pulse morphology feature extraction technique, by;
obtaining a plurality of clean PPG signal segments by removing motion artifacts;
segmenting the plurality of clean PPG signal segments into a plurality of training PPG segments and a plurality of personalization block PPG segments;
extracting a systolic peak and a diastolic peak from the plurality of training PPG segments using a pulse extraction technique;
obtaining a normalized systolic peak and a normalized diastolic peak based on the extracted corresponding systolic peak and the diastolic peak using a normalization technique; and
extracting the plurality of morphological features based on the normalized systolic peak and the normalized diastolic peak using the pulse morphology feature extraction technique; and
training the ML classifier based on the plurality of morphological features.
12. The system of claim 11, wherein the personalization threshold is computed based on a plurality of personalization block segments of the PPG signal using a pretrained ML classifier, comprises:
receiving the plurality of personalization block segments of the PPG signal;
predicting each of the plurality of personalization block segments of the PPG signal using the trained ML classifier, wherein the prediction result is one of, a genuine user or an adversary user;
obtaining a count of instances where the ML classifier predicted the genuine user; and
computing the personalization threshold based on the obtained count of instances and a number of personalization block segments of the PPG signal.
13. The system of claim 9, wherein pretraining the wearable device removal detector comprises:
receiving a first PPG signal and a second PPG signal from the PPG sensor communicatively connected to the wrist wearable device worn by the user, wherein the first PPG signal is obtained from the wearable device removed from the wrist of the user and the second PPG signal is obtained from the wearable device worn by the user;
extracting a first set of pulses and the second set of pulses corresponding to the first PPG signal and the second PPG signal using a pulse extraction technique;
normalizing the first set of pulses and the second set of pulses using the normalization technique;
extracting a first set of statistical features and the second set of statistical features from the corresponding first PPG signal and the second PPG signal using a statistical feature extraction technique; and
training the wearable device removal detector based on the first set of statistical features and the second set of statistical features.
14. The system of claim 9, wherein the frequency domain analysis considers the components corresponding to cardio and pulmonary components in the frequency spectrum of the PPG signal to assess the quality of the signal.
15. The system of claim 9, wherein the pulse morphology extraction technique computes each of the plurality of morphological features using the corresponding formula.
16. The system of claim 9, wherein the MIC measures a strength of linear and non-linear associations between two variables.
| # | Name | Date |
|---|---|---|
| 1 | 202121023783-STATEMENT OF UNDERTAKING (FORM 3) [28-05-2021(online)].pdf | 2021-05-28 |
| 2 | 202121023783-PROVISIONAL SPECIFICATION [28-05-2021(online)].pdf | 2021-05-28 |
| 3 | 202121023783-FORM 1 [28-05-2021(online)].pdf | 2021-05-28 |
| 4 | 202121023783-DRAWINGS [28-05-2021(online)].pdf | 2021-05-28 |
| 5 | 202121023783-DECLARATION OF INVENTORSHIP (FORM 5) [28-05-2021(online)].pdf | 2021-05-28 |
| 6 | 202121023783-Proof of Right [05-07-2021(online)].pdf | 2021-07-05 |
| 7 | 202121023783-FORM-26 [13-10-2021(online)].pdf | 2021-10-13 |
| 8 | 202121023783-FORM 3 [31-12-2021(online)].pdf | 2021-12-31 |
| 9 | 202121023783-FORM 18 [31-12-2021(online)].pdf | 2021-12-31 |
| 10 | 202121023783-ENDORSEMENT BY INVENTORS [31-12-2021(online)].pdf | 2021-12-31 |
| 11 | 202121023783-DRAWING [31-12-2021(online)].pdf | 2021-12-31 |
| 12 | 202121023783-COMPLETE SPECIFICATION [31-12-2021(online)].pdf | 2021-12-31 |
| 13 | Abstract1.jpg | 2022-04-09 |