User Authentication
By using a force sensing device to receive the position and force input by the user and compare the password sequence with the stored ones, the security problem of unauthorized acquisition of passwords in the prior art is solved, and higher user authentication security is achieved.
Patent Information
- Application Number
- CN202411373116.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-09-29
- Filing Date
- 2024-09-29
- Publication Date
- 2025-04-01
AI Technical Summary
In the face of unauthorized access to passwords, existing user authentication technologies are difficult to ensure the true user input of passwords, and additional authentication steps may lead to the user authentication process being complicated and pose security risks.
By using a force sensing device to receive the input positions and forces of the user on the keyboard or touch screen, comparing the positions and forces of these inputs with the password sequence stored in the system, and if matched, an affirmative authentication indication is output. This method can be implemented using a force-sensitive keyboard or a virtual keyboard and can be enhanced by hashing or encryption.
Without adding user steps, the security of user authentication is improved, and unauthorized users can obtain access to user accounts or device functions by copying password characters, thereby enhancing password security.
Smart Images

Figure CN119740210A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to user authentication, and more particularly to user authentication using a force sensing device. The present disclosure also relates to a device for user authentication, a system comprising the device and a force sensor, a method for user authentication, and computer program code. Background Art
[0002] The user may be able to unlock access to the functionality of the device by providing some form of user authentication. Traditionally, this may be accomplished by entering a pin number or password. However, it may be challenging to ensure that the password has been entered by a genuine user of the system and not an unauthorized user who has obtained the password without authorization.
[0003] Ways to try and combat such unauthorized access include further authentication steps, such as using facial recognition or two-factor authentication, whereby the user is provided with an additional code and prompted to type that additional code along with the password. However, in addition to the disadvantage that the user authentication process becomes more complicated due to these additional steps, the additional steps themselves may also be problematic. For example, facial recognition may cause a user's device to be inadvertently unlocked by detecting the user's face, even if the user does not want their device to be unlocked. As another example, if the user's communications are being intercepted, an unauthorized user who has typed in a password may also be able to intercept the further code provided for two-factor authentication and still gain access.
[0004] The embodiments disclosed herein are directed to solving these problems in the art. Summary of the invention
[0005] Aspects and embodiments of the present invention provide an apparatus for user authentication, a system including the apparatus and a force sensor, a method for user authentication, and computer program code.
[0006] According to the present disclosure, there is provided an apparatus for user authentication, the apparatus being configured to: receive signaling indicating one or more user inputs in a sequence provided to a sensing surface of a force sensor, each user input in the sequence having an associated position and an associated force; compare the associated position and associated force of each user input in the sequence with a password position and password force of a password sequence, the password sequence being stored in a memory accessible to the apparatus; and output a positive authentication indication in response to the associated position and associated force of each user input in the sequence matching the corresponding password position and password force of the password sequence. Advantageously, both the position and force of the user input are part of the password, thereby increasing the security of the user authentication without requiring an additional authentication step.
[0007] Each of the associated positions may correspond to a corresponding key of a keyboard having an associated key value and configured to apply a force to the force sensor at the corresponding associated position, and wherein the password position of the password sequence corresponds to the associated password key value. Thus, the method may be performed using a force-sensitive keyboard or a virtual keyboard on a force-sensitive touch screen.
[0008] The apparatus may be further configured to output a negative authentication indication in response to determining that the associated position and associated force of each user input in the sequence do not match the corresponding password position and password force of the password sequence. Thus, if the user's attempt to obtain authorized access fails, the user is notified.
[0009] The password positions and password forces of a password sequence may be combined and hashed. The device may be configured to: hash the associated position and associated force of each user input in the sequence using the same hashing method used to hash the password positions and password forces of the password sequence; compare the hashed sequence with the hashed password sequence; and output a positive authentication indication in response to the hashed sequence matching the hashed password sequence. The associated position and associated force of each user input in the sequence may be hashed together to provide a single hashed sequence. Hashing the position data and force data of the password increases security and makes it more difficult for an unauthorized user to gain access to the user credentials. In some embodiments, the position data and force data of the password may be encrypted rather than hashed.
[0010] The associated force may fall within an associated force range in a plurality of predetermined force ranges. Each of the one or more password forces may be associated with a corresponding predetermined force range in a plurality of predetermined force ranges. The device may be configured to: compare the associated force with a plurality of predetermined force ranges; determine an associated force range in which the associated force in the plurality of predetermined force ranges falls; compare the associated force range of each user input in the sequence with a password force range of the password sequence, the password force range being one of the plurality of predetermined force ranges; and output a positive authentication indication in response to the associated position and associated force range of each user input in the sequence matching the corresponding password position and corresponding password force range of the password sequence. Thus, there are some windows of force that a user may utilize for typing input, thereby allowing the advantages of using force level as a password element to be achieved without requiring overly precise force input, thereby improving repeatability.
[0011] A plurality of predetermined force ranges may have corresponding upper and lower force limits, which are determined based on samples of user input provided to the sensing surface of the force sensor. The device may be configured to process received signaling using a trained AI model to determine an associated force, the signaling indicating one or more user inputs in a sequence having an associated position and an associated force. For example, the AI model may be trained using position input data and force input data from a particular user to determine a user usage signature characteristic of a unique way for the user to interact with an input device that is receiving position input data and force user input. The user usage signature may be stored and compared to a later password entry, and if the detected usage signature matches a stored usage signature for the user (e.g., above a predetermined match threshold), the user who enters the later password may be determined to be an authorized user.
[0012] The positive authentication indication may include one or more of: a visual indicator output to remind the user of the device that the typing sequence matches the stored password; an audio indicator output to remind the user of the device that the typing sequence matches the stored password; a tactile indicator output to remind the user of the device that the typing sequence matches the stored password; and a function to unlock the device associated with the stored password. Thus, the user is clearly informed that their password typing has been successful.
[0013] The device may be further configured to, in response to receiving each user input having an associated position and an associated force, output a force input indicator indicating the magnitude of the force applied. The force input indicator may include one or more of: a visual force indicator displayed on a display screen connected to the force sensing device; an audio force indicator output by an audio output device connected to the force sensing device; and a tactile force indicator output by a tactile output device connected to the force sensing device. Advantageously, informing the user of the force with which they applied the force input may help them to accurately type their password while still helping to prevent unauthorized users from seeing what the user's password is.
[0014] In one aspect, a system is provided, comprising: any device disclosed herein, and a force sensor configured to detect a position and force of a user input provided to a sensing surface of the force sensor, and transmit a signal to the device indicating one or more user inputs in a sequence provided to the sensing surface of the force sensor. Thus, the device and the force sensor together can be used to facilitate secure user access to a device.
[0015] The system may include at least one control module connected to the force sensor. The control module may be configured to convert an analog force signal received from the force sensor in response to a force applied to the force sensor into a digital force signal representing the force applied to the force sensor.
[0016] The system may include a plurality of keys forming a keyboard. Each key of the plurality of keys may be configured to apply a corresponding force to a force sensor at a position corresponding to the key when a force is applied to the key.
[0017] The system may include a display surface configured to display a virtual keyboard including a plurality of virtual keys. Each of the plurality of virtual keys may be configured to apply a corresponding force to a force sensor at a location corresponding to the virtual key when a force is applied to the virtual key. The system may form a keyboard device.
[0018] In one aspect, a method for user authentication is provided, the method comprising: receiving signaling indicating one or more user inputs in a sequence provided to a sensing surface of a force sensor, each user input in the sequence having an associated position and an associated force; comparing the associated position and associated force of each user input in the sequence with a password position and password force of a password sequence, the password sequence being stored in a device-accessible memory; and outputting a positive authentication indication in response to the associated position and associated force of each user input in the sequence matching the corresponding password position and password force of the password sequence.
[0019] In response to the associated position and associated force of each user input in the sequence matching the corresponding password position and password force of the password sequence, outputting a positive authentication indication may include unlocking a function of the device associated with the stored password.
[0020] In one aspect, a computer program code is provided, which when executed on a processor is configured to perform any method disclosed herein. In one aspect, a non-transitory computer readable medium is provided, which stores any computer program code herein. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Exemplary embodiments are further described below with reference to the accompanying drawings, in which:
[0022] Figure 1 Schematically illustrates a device for user authentication according to an embodiment disclosed herein;
[0023] Figure 2a shows an exemplary sequence of user input positions, and Figure 2b An exemplary sequence of corresponding user input forces for a user to enter a password according to an embodiment disclosed herein is shown;
[0024] Figure 3a An exemplary velocity-sensitive keyboard is shown, and Figure 3b schematically illustrates an exemplary velocity-sensitive keypad with key positions indicated according to embodiments disclosed herein;
[0025] Figure 4a and Figure 4b An example of hashing a sequence of user input positions and corresponding user input forces according to embodiments disclosed herein is shown;
[0026] Figure 5 A schematic diagram showing a force-resistance relationship of a force sensor having force regions indicated according to embodiments disclosed herein;
[0027] Figure 6 An exemplary system for user authentication according to embodiments disclosed herein is shown;
[0028] Figure 7 shows an exemplary workflow of user authentication according to embodiments disclosed herein; and
[0029] Figure 8 An exemplary method of user authentication according to the embodiments disclosed herein is shown. DETAILED DESCRIPTION
[0030] Force sensing technology can be used in electronic devices to allow input to the electronic device that depends on the amount of force applied to an input element (such as a key of a keyboard). For example, a lighter press on a key can cause a different input than a heavier press on the same key.
[0031] The user may be able to unlock access to the functionality of the device by providing some form of user authentication. Traditionally, this may be accomplished by entering a pin number or password. However, it may be challenging to ensure that the password has been entered by a genuine user of the system and not an unauthorized user who has obtained the password without authorization. Methods for trying and combating unauthorized use of passwords may complicate the user authentication process by requiring the entry of additional information, which may also fall into the hands of unauthorized users, may unnecessarily complicate authentication of the user, may require additional computing functionality or processing power (such as the use of facial recognition or fingerprint sensing, which requires additional hardware to perform imaging / sensing), and may still be cracked by more experienced unauthorized users.
[0032] Trying to identify how a user types a password by analyzing their typing cadence requires behavioral analysis of a large number of user typings, which is cumbersome and computationally resource intensive, and cannot be easily changed or adapted, for example if the user's physical abilities change over time and thus affect their typing cadence, or if the user simply wishes to change authentication credentials. Artificial intelligence methods that utilize triboelectric keystroke signaling using support vector machines to classify character input signals are computationally intensive, especially for low-power devices, and require training data for the support vector machine in order to be able to classify user input. Furthermore, these methods assume that the electrical signals generated by the user typing the characters of the password remain constant and will not be affected by inaccurate real-world factors such as temperature, durability, and humidity.
[0033] Embodiments disclosed herein are intended to overcome this problem by recognizing that a force-sensitive password entry device (such as a force enabled keyboard or a touch screen) can be used to allow a user to enter a password, wherein each character of the password has a corresponding character selection and a corresponding force factor. For example, a particular key can be pressed to provide a character of the password, and the force with which the key is pressed to provide the character can also be used to provide the force factor.
[0034] Therefore, the password is not a string of characters, but rather the password includes both the string of characters and the force used to type each of those characters. The user still types a password, and does not need to provide a different biometric input such as facial recognition or fingerprint sensing, nor does the user need to type a second password or perform an additional authentication process in the manner of two-factor authentication.
[0035] In addition, while a password could be misappropriated by an unauthorized user who observes the user typing the password and remembers the characters, or by an unauthorized user using a remote keylogger, the unauthorized user cannot discern the force used by the user to type the characters, and therefore cannot gain unauthorized access to the user's account or device functionality by copying the password characters because the force used to type the characters into the keys is unknown.
[0036] That is, the authentication methods disclosed herein are able to sense the force applied to a key as the user presses the key. Such methods do not add unnecessary steps for the user, since the user will simply type in a password. Instead of adding simulated (continuous) input recognition, some embodiments use a window / range of force levels such as "light," "medium," and "heavy" forces, thereby improving the repeatability of password typing and adapting to variations in user usage and external factors such as temperature. The methods disclosed herein do not require training by having the user type sample text, and since the additional information about the force level supplements the choice of characters in the password, relatively short passwords are still very secure.
[0037] Finally, using a force-sensitive keyboard to enter a password as disclosed herein can increase the level of security because the password must be entered using a force-sensitive input device, such as a force-sensitive keyboard that is physically attached to the system to which the user wants to gain access (i.e., an unauthorized user without a force-sensitive input device cannot provide the required authentication input).
[0038] Figure 1 An apparatus 100 configured for user authentication is schematically shown. The apparatus 100 is configured to receive signaling 102 indicating one or more user inputs in a sequence provided to a sensing surface of a force sensor. Each user input of the sequence has an associated position 104 and an associated force 106. That is, a user enters a passcode into a force sensitive device, and signaling representing the input 100 is received by the apparatus 100. The terms "passcode" and "password" are used interchangeably in this document and refer to a user's secret combination of characters with an associated character typing force for accessing some functionality of the device.
[0039] For example, a user's password may be six characters "ABC123" that are typed by the user pressing keys on a keyboard (real or virtual), and thus the positions of those keys are associated positions of the user's input for typing the password. The characters may each be pressed with a specific force, such as "A" with a light force, "B" with a medium force, "C" with a heavy force, "1" with a heavy force, "2" with a medium force, and "3" with a light force. Therefore, each position (e.g., a key position) has an associated force. In order to correctly type the password, the user needs to type a password that can be represented as six key entries each with an associated force by which the key will be pressed (A, light; B, medium; C, heavy; 1 heavy; 2 medium; 3 light).
[0040] The device 100 is configured to compare the associated position 104 and associated force 106 of each user input in the sequence with the password position 108 and password force 110 of the password sequence. The password sequence is stored in a memory 150 accessible by the device 100. In other words, the user's password is compared to the stored passwords 108, 110 for that user to see if the passwords match. In some embodiments, the memory 150 may be part of the device 100, and in other embodiments shown, the memory may be external to the device 100 and accessible by the device.
[0041] The apparatus 100 is configured to output a positive authentication indication 112 in response to the associated position 104 and associated force 106 of each user input in the sequence matching the corresponding password position 108 and corresponding password force 110 of the password sequence. Thus, if the user's password matches the stored password, there is some positive output, such as unlocking device functionality to allow access to files or applications, and / or providing an "unlock successful" indication.
[0042] For example, the positive authentication indication 112 can be a visual indicator output to remind the user of the device 100 that the typing sequence matches the stored password. The positive authentication indication can be a displayed message (e.g., "Access Granted"), such as the illumination of a light of an LED or the illumination of a portion of a display screen (such as a border of a display screen flashing green) to indicate that the password was successfully entered. For example, the positive authentication indication 112 can be an audio indicator output to remind the user of the device that the typing sequence matches the stored password, such as a ping or an audio message "unlocked". For example, the positive authentication indication 112 can be a tactile indicator output to remind the user of the device that the typing sequence matches the stored password, such as a vibrator of the handheld portion of the device beeping or beeping in a specific pattern to indicate successful authentication.
[0043] For example, the positive authentication indication 112 can be a function of unlocking a device associated with a stored password, unlocking functionality of a portable electronic device such as a portable electronic device so that it can be used, for example, to make a phone call or access the internet, or allowing access to applications running on the device, allowing access to a password entry portal (such as an online banking site or a booking application), or allowing access to use the device to view or use a password-protected file (e.g., to view a spreadsheet, image, or other document).
[0044] In some embodiments, the device 100 may be further configured to output a negative authentication indication 114 in response to determining that the associated position 104 and the associated force 106 of each user input in the sequence do not match the corresponding password position 108 and the password force 110 of the password sequence. The negative authentication indication may be an audible sound, a vibration, and / or a display indication such as a graying out of a display screen, a shaking effect that looks as if the display content of the display screen shakes left and right, or a message such as "denied" or "wrong password" indicating that the password entry failed.
[0045] Figure 2a shows an exemplary sequence of user input positions, and Figure 2b An exemplary sequence of corresponding user input forces for a user to enter a password is shown.
[0046] Figure 2a A sequence of user input positions 104 including four positions 104a-104d is shown. These positions may correspond to keys on a real or virtual keyboard or keypad, or in some embodiments, may correspond to areas of the touch-sensitive surface that are not distinguished into specific areas, such as individual keys. Figure 2b A sequence of user input forces 106 is shown including four applied forces 106a-106d. In some embodiments, the forces may correspond to a predefined force range.
[0047] For example, a user may be able to unlock a function of the device by providing a series of key presses with specific forces, such as, "P (light) - A (heavy) - S (medium) - S (heavy)", where position P is the first position 104a, position A is the second position 104b, position S is the third position 104c, and position S is also the fourth position 104d; and where force (light) is the first force 106a, force (heavy) is the second force 106b, force (medium) is the third force 106c, and force (heavy) is also the fourth position 106d. Another example may be "A (light) - 5 (heavy) - G (medium) - 2 (very light)". As another example, a user may be able to unlock a function of the device by providing input to the upper left corner of the touch-sensitive screen with a heavy press, then providing input to the bottom edge of the touch-sensitive screen with a light press, then providing input to the upper right corner of the touch-sensitive screen with a medium press, and then providing input in the same area with a light press, even if those areas are not marked as special "touch" areas. In some embodiments, the location may be a combination of differentiated areas (keys) and undifferentiated areas (eg, a corner, center, or edge of a touch-sensitive panel).
[0048] In some embodiments, the device 100 may be configured to output a force input indicator indicating the magnitude of the applied force in response to receiving each user input having an associated position and an associated force. The force input indicator may include a visual force indicator displayed on a display screen connected to the force sensing device. For example, if a user is pressing a key or area of a touch-sensitive surface, a visual indicator may be displayed to show how much force the user is applying to the key / area. The indicator may, for example, show one, two, or three bars in a stacked configuration to indicate a light force press, a medium force press, or a heavy force press, respectively. In some embodiments, there may be a color indicator, such as green for a light press, amber for a medium press, and red for a heavy press. The visual indicator may be a variable brightness indicator, in which a harder / stronger press causes the displayed light to be brighter. In some embodiments, this light may be displayed on the pressed key / position or its border. In some embodiments, the force input indicator may include an audio force indicator output by an audio output device connected to the force sensing apparatus (e.g., one, two, or three tones emitted in rapid succession depending on the force applied); and / or a tactile force indicator output by a tactile output device connected to the force sensing apparatus (e.g., providing a stronger vibration in response to a harder key press).
[0049] Figure 3a An example of a velocity sensitive keyboard 300 including a plurality of keys 302 is shown. Figure 3b An example of a force enabled keypad 310 is shown with key positions indicated. It will be appreciated that the following discussion regarding a keypad is applicable to other input devices capable of receiving input having associated positions and associated forces, such as keyboard 300 or a touch sensitive screen (force sensitive screen).
[0050] Figure 3b The keys 302a-302c of the keypad 310 in FIG. 1 are each located at a corresponding position, which in this illustration can be represented by an x value 304 and a y value 306. For example, the "2" key 302a is at position (x2, y4), and the "6" key 302c is at position (x3, y3). Each corresponding key also has an associated key value and a position (e.g., in this example, "2", "6"). Each key 302a-302c is configured to apply a force to a force sensor (e.g., a force-sensitive film under the key 302a-302c) at a corresponding associated position. A user who enters a password using the keys 302a-302c provides a force input to the key having the position value of the key in the password. The password position of the password sequence corresponds to an associated password key value and has an associated force, and the input is provided by the associated force.
[0051] Figure 4a and Figure 4bAn example of hashing a sequence of user input positions 402a-402c and corresponding user input forces 404a-404c is shown. The password positions 402a-402c and password forces 404a-404c of the password sequence can be combined into 406a-406c; 408 and hashed 410. The user input positions 402a-402c can be examples of the password "ACE", the position of the "A" key 402a, the position of the "C" key 402b, and the position of the "E" key 402c. For example, for the password "A (light force)-C (medium force)-E (heavy force)", the user input forces 404a-404c can be examples of the light force 404a of the "A" key, the medium force 404b of the "C" key, and the heavy force 404c of the "E" key. In some embodiments, the input must be made in the same sequence or order as the password stored in the memory. In some embodiments, there may be no set sequence, and the positions with associated forces may be typed in any order.
[0052] These embodiments use hashing, and encryption may also be used in other embodiments. The two methods are similar to some extent in that both allow for the storage of encoded versions of force and position data that cannot be easily understood to obtain the actual position data and force data therefrom. However, hashing is a one-way function, while encryption is a two-way process. In hashing, data (i.e., position data and force data) is mapped to a fixed length value. Once information is hashed (and therefore "hidden"), it cannot be restored back to obtain the original information. Encryption is a two-way function, whereby the encrypted / hidden information can be decrypted / recovered to obtain the original information. The use of a hash function ensures that the stored information cannot be processed (mathematically solved in the reverse direction) to obtain the original information. For example, the hash function for the password "ACE" may be "a83f45c762a8884890ff551893fd50ab31af758a", and the original password cannot be obtained from this hash alone. Therefore, a hash function will only give the same hash if the input information is the same. Once the hash is obtained using the position data and force data, the same hash can only be obtained if the position and force are the same. Once the hashed position and force range are hashed, no one can find out what the position and force are even if the stored hash is leaked / obtained.
[0053] Figure 4a The associated positions 402a-402c and associated forces 404a-404c of each user input in the sequence are shown combined into a series 408 of position-force inputs 406a-406c (e.g., a first input "A, light force" 406a, a second input "C, medium force" 406b, and a third input "E, heavy force" 406c). Position-Force Inputs (P,F) nThis sequence of 406a-406c is then combined into a single string 408, which is hashed to K(P,F) n 410. Figure 4b The associated positions 402a-402c and associated forces 404a-404c of each user input in the sequence are shown to be individually combined to provide a position string P n 412 and force string F n 414, which is combined into a series of position force inputs (P, F) n 408 and are then combined into a single string 408 which is hashed to K(P,F) n 410.
[0054] The device 100 may be configured to hash the associated positions 402a-402c and associated forces 404a-404c of each user input in the sequence using the same hashing method used to hash the password positions and password forces of the password sequence stored in the memory. The device 100 may then compare the hashed sequence 410 with the hashed password sequence stored in the memory. The device 100 may then output a positive authentication indication in response to the hashed sequence 410 matching the stored hashed password sequence. The associated positions 402a-402c and associated forces 404a-404c of each user input in the sequence may be hashed together to provide a single hashed sequence 410.
[0055] Figure 5 A schematic diagram of a force 504-resistance 506 relationship 502 for a force sensor with indicated force regions is shown. As the applied force increases, the resistance of the resistive force sensor decreases, and this change in resistance is detected and used to determine the applied force. A user may press a pressure sensitive key or other force touch input element (e.g., a touch sensitive screen), and the force with which the press is applied may vary over a continuous range. Therefore, in some embodiments, to aid in the reproducibility of password entry, the possible forces that may be registered by the force sensor may be divided into force ranges. If a force input is applied within the same force range as the force range recorded in the stored password, then it may be determined that the force entry is a match.
[0056] That is, rather than pairing a force or normalized force with a position (e.g., a character), a range of force levels may be paired with a position. It is unlikely that a user will be able to press with an exact amount of force at different times (even with a small tolerance factor, e.g., + / - 2% or 5%). Moreover, in some embodiments, electronic processing of force signals may not necessarily generate the same signal for the same applied force. Thus, using a selection of force ranges helps overcome the problem of reproducibility in force application.
[0057] In some embodiments, to determine the force zone, the user may press the key with different forces as indicated in the calibration step. A normalization of the forces that may be applied may be performed. In some embodiments, between the normalized values of 0 and 1, there may be a linear increase in the applied force. In other embodiments, between the normalized values of 0 and 1, there may be a non-linear distribution of applied forces. For example, if the application of force classified as "light" is easily reproducible over a smaller force range (e.g., variations over 20g), whereas the application of force classified as "heavy" has a larger force variation (e.g., variations over 60g), then the size of the force zone may be different to accommodate these differences in variation for a particular force level.
[0058] For example, a force range of 50g-100g may be used, and the first character of a stored password may be typed with a force of 60g within that range. When the user types the first character of a password to later access a function of the device, the force used is between 50g and 100g, which may be determined to match the stored password even if it is not exactly the same (e.g., it may be 80g or 90g, but still within the same range). Figure 5 In the example of , there are three non-overlapping force ranges 508a-508c, but in other embodiments, there may be more or fewer ranges. In other embodiments, there may be overlapping ranges (e.g., a first range of 50g to 120g and a second range of 100g to 200g).
[0059] Thus, the associated force of the user input may fall within an associated force range in the plurality of predetermined force ranges 508a-508c. Each of the one or more password forces may be associated with a corresponding predetermined force range in the plurality of predetermined force ranges 508a-508c. The device 100 may be configured to compare the associated force with the plurality of predetermined force ranges 508a-508c; determine the associated force range in which the associated force in the plurality of predetermined force ranges 508a-508c falls; compare the associated force range of each user input in the sequence with the password force range of the password sequence, which is one of the plurality of predetermined force ranges 508a-508c; and output a positive authentication indication in response to the associated position and associated force range of each user input in the sequence matching the corresponding password position and corresponding password force range of the password sequence.
[0060] In some embodiments, the plurality of predetermined force ranges 508a-508c have respective upper and lower force limits determined based on samples of user input provided to the sensing surface of the force sensor.
[0061] In some embodiments, the device 100 may be configured to process received signaling using a trained AI model to determine an associated force, the signaling indicating one or more user inputs in a sequence with an associated position and an associated force. For example, an AI algorithm may be trained to identify one or more users accessing a device by the way in which the one or more users operate the device (e.g., a particular typing pattern that is unique to them). A force-sensitive keyboard can help establish this unique fingerprint / pattern (which may be referred to as a "user's usage signature") by sensing the force, position, and / or movement used by the user when interacting with the keyboard. The user's unique usage signature can then provide a further level of authentication, even after the user successfully logs into the device, because it will be unique to the user and difficult or impossible to be imitated by others. For example, the determined force used by a user to press one or more input elements can be detected and fed to an AI model to determine the unique "force signature" with which the user presses the input element for future authentication of the user providing the same "force signature."
[0062] Figure 6 An exemplary system 600 for user authentication is shown. The system 600 includes any device 100 disclosed herein and a force sensor 650 configured to detect the position and force of a user input provided to a sensing surface of the force sensor and transmit signaling to the device 100 indicating one or more user inputs in a sequence provided to the sensing surface of the force sensor 650. The system 600 may include at least one control module 660 connected to the force sensor 650. The control module 660 may be configured to convert an analog force signal received from the force sensor 650 in response to a force applied to the force sensor into a digital force signal representing the force applied to the force sensor. The digital force signal may be provided to the device 100 for use in determining whether a password entered by a user matches a stored password.
[0063] The system 600 may include a plurality of keys 320 forming a keyboard 300. Each of the plurality of keys 320 may be configured to apply a corresponding force to a position of a force sensor 650 corresponding to the key when a force is applied to the key. This may be achieved, for example, by a force-sensitive film under the key that receives the force when the key is pressed. The system 600 may include a display surface 350 configured to display a virtual keyboard including a plurality of virtual keys. Each of the plurality of virtual keys may be configured to apply a corresponding force to a position of a force sensor 650 corresponding to the virtual key when a force is applied to the virtual key. In some embodiments, the system 600 may form a keyboard device 300 (i.e., the apparatus 100 and the force sensor 650 may be housed in a keyboard housing having the keys 320 and the force sensor 650, and / or in a virtual keyboard on a touch-sensitive display surface 350).
[0064] Figure 7An exemplary overall workflow 700 for user authentication is shown. Workflow 700 shows a force sensitive resistor (FSR) input device 702 (such as a keyboard) and a device (such as an operating system) running software 704. The FSR input device 702 can be used to perform a signal processing step 711, in which the input device is calibrated to receive a password including position information and force information. The software 704 running on the device can perform cryptography 713 to record the user's expected password and store it securely for future authentication, and perform authentication 715 to subsequently receive the input password and compare it with the encrypted stored password for the purpose of user identification and authentication. It will be understood that in other embodiments, different steps can be performed on different processing devices (e.g., software 704 can perform signal processing step 711). Although this embodiment involves a force sensitive resistor input device, other embodiments that can be used according to the present disclosure involve any input device configured to sense the position and force of a user input (e.g., a capacitive force sensor or a sensor capable of detecting changes in an electric field and / or magnetic field proximate to a sensing surface). The specific mechanics of how the force signal is detected (eg, via a force sensitive resistor) are not important to implementing the embodiments disclosed herein.
[0065] The signal processing step 711 as shown is performed to calibrate the input signal received from the user. As shown, in the signal acquisition step 706, the position and force signals are provided from the FSR input device 702. Subsequently, the signal is used for FSR calibration in step 708, the results of which are then normalized in step 710 and classified in step 712.
[0066] Calibration 708 may be performed by selecting a maximum force and a minimum force based on the capabilities of the force sensing resistor and associated electronics. For example, a minimum force of 80 g and a maximum force of 400 g may be detectable and used to set the lower and upper force limits that may be detected, respectively. Figure 5 As discussed, there may be multiple force regions within these two boundary values. Normalization 710 may be performed to, for example, set a force range between 0 and 1, where any force below or equal to a lower limit (e.g., 80 g) is 0, and any force above or equal to an upper limit (e.g., 400 g) is 1, and forces between these two values are values between 0 and 1.
[0067] In some embodiments, continuous values of normalized force data may be provided for processing. During key presses and releases, force data generated by a user pressing an input element, such as a force sensitive key, may be recorded. The peak value of the force signal may be selected and used as the input force with which the key was pressed. This is because it may be difficult to obtain a clear force signal if, for example, the user chooses to press the key very slowly, which may not provide a clear rise and fall in the applied force signal.
[0068] The cryptographic phase 713 receives a typed password 720 from a user and then hashes it. This password typing is performed by an authorized user for the purpose of initially setting password credentials for future authentication. The illustrated cryptographic method 713 includes using a hash algorithm 714 on the received password 720, which in this embodiment includes using a hash salt 716 to provide a hash string 718. The hash string 718 is provided to the authentication phase 715 along with a user identifier or username 722 as part of a user profile 724 that records identification information for a particular user.
[0069] An example of a hash that can be used is a "password-based key derivation function 2" (Pbkdf2), which uses a pseudo-random function to generate a salt of size 64 bytes and performs 350,000 hash iterations using SHA512 to produce a derived key of size 64. When a user types a password, it can be compared to the generated hash using Pbkdf2. In some embodiments, only the stored hash stored in the database can be compared to the hash of the typed password. The cryptographic hash function is a one-way function that cannot be easily reversed, thereby achieving resistance to rainbow table and dictionary attacks. Other examples of using different types of hash functions are also included in the present disclosure, as long as the password (position and force) is hashed in some way, the advantages of secure storage can be obtained. In some embodiments, the string 718 and the user identifier 722 together form a user profile 724, which is stored in a database 728. The user information 724, the hash salt 716, and the number of force zones can be saved in the database 728, such as in cloud storage, for future use against the typed password.
[0070] In some embodiments, encryption may be used in the same manner, rather than using hashing, to securely store position and force sequence information. However, while hashing is a one-way operation, encryption is a two-way operation, provided that a suitable key is available. In embodiments where it is not necessary to know what the positions and forces in the sequence actually are (and therefore not necessary to be able to recover those parameters by decrypting the encrypted parameters), hashing may provide a more secure approach, since, due to the hashing, there is no way to recover the original position and force inputs from storage.
[0071] Authentication step 715 shows the use of the authentication system after the calibration setup in step 711 and the user credential setup in step 713. In the authentication step 715, a user name and a hash string 718 representing a user password in a stored user profile 728 are received (e.g., by user input). If it is desired to gain access to some functions of the device by proving that they are an authorized user, the user can enter a password including position data and force data as discussed above, and these data are provided to the profile matching step 726. In the profile matching step 726, the user's stored profile can also be accessed from the profile database 728, which is received from the user profile as a stored user credential. If in the matching step 726, the details entered by the user match those stored for the user, then the authentication is successful in step 732, and additional functions can be unlocked or enabled, for example. If in the matching step 726, the details entered by the user do not match those stored for the user, then the authentication fails in step 730, and the user cannot gain access to the additional functions. In some embodiments, the device that the user is attempting to gain access to may be further locked and require the user to perform an additional special unlock before being able to access the device again.
[0072] Figure 8 An exemplary method 800 of user authentication is shown, the method comprising: receiving signaling 802 indicating one or more user inputs in a sequence provided to a sensing surface of a force sensor, each user input in the sequence having an associated position and an associated force; comparing 804 the associated position and associated force of each user input in the sequence to a password position and password force of a password sequence, the password sequence being stored in a memory accessible to a device; and in response to the associated position and associated force of each user input in the sequence matching the corresponding password position and password force of the password sequence, outputting a positive authentication indication 806. Comparing the associated position and associated force of each user input in the sequence to the password position and password force of the password sequence 804 may include: comparing 814 a hash of the associated position and associated force of each user input in the sequence to a hash of the password position and password force of the password sequence.
[0073] In response to the associated position and associated force of each user input in the sequence matching the corresponding password position and password force of the password sequence, outputting a positive authentication indication may include unlocking a function of device 808 associated with the stored password.
[0074] The method 800 may be performed by a computer program code which, when executed on a processor, is configured to perform the method. The computer program code may be stored on a non-transitory computer readable medium.
[0075] Throughout the specification and claims, the words "comprise" and "contain" and variations thereof mean "including but not limited to", and they are not intended to (and do not) exclude other components, integers or steps. Throughout the specification and claims, unless the context requires otherwise, the singular also includes the plural. In particular, where the indefinite article is used, the specification is to be understood as contemplating the plurality as well as the singular, unless the context requires otherwise.
[0076] Features, integers or characteristics described in conjunction with a particular aspect, embodiment or example of the invention will be understood to be applicable to any other aspect, embodiment or example described herein unless incompatible therewith. All features disclosed in this specification (including any accompanying claims, abstract and drawings) and / or all steps of any disclosed method or process may be combined in any combination, except for combinations where at least some of these features and / or steps are mutually exclusive. The invention is not limited to the details of any foregoing embodiments. The invention extends to any novel feature or any novel combination of features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel step or any novel combination of steps of any disclosed method or process.
[0077] It will be appreciated that various changes and modifications can be made to the present invention without departing from the scope of the application.
Claims
1. A device for user authentication, the device being configured to: receiving signaling indicating one or more user inputs in a sequence provided to a sensing surface of the force sensor, each user input in the sequence having an associated position and an associated force; comparing the associated position and the associated force of each user input in the sequence to a password position and a password force of a password sequence stored in a memory accessible to the device; and In response to the associated position and the associated force of each user input in the sequence matching a corresponding password position and a corresponding password force of the password sequence, a positive authentication indication is output.
2. The device according to claim 1, wherein: Each of the associated positions corresponds to a corresponding key of a keyboard, the corresponding key having an associated key value and configured to apply a force to the force sensor at the corresponding associated position, and wherein the password positions of the password sequence correspond to associated password key values.
3. An apparatus according to any preceding claim, wherein: The apparatus is further configured to output a negative authentication indication in response to determining that the associated position and the associated force of each user input in the sequence do not match a corresponding password position and a corresponding password force of the password sequence.
4. An apparatus according to any preceding claim, wherein: The password position and the password strength of the password sequence are combined and hashed, and the apparatus is configured to: hashing the associated position and the associated strength of each user input in the sequence using the same hashing method used to hash the password position and the password strength of the password sequence; comparing the hashed sequence with the hashed password sequence; and In response to the hashed sequence matching the hashed password sequence, the positive authentication indication is output.
5. The device according to claim 4, wherein: The associated position and the associated force of each user input in the sequence are hashed together to provide a single hashed sequence.
6. An apparatus according to any preceding claim, wherein: The associated force falls within an associated force range of a plurality of predetermined force ranges, and wherein each of the one or more command forces is associated with a corresponding predetermined force range of the plurality of predetermined force ranges; and the apparatus is configured to: comparing the associated force to the plurality of predetermined force ranges; determining an associated force range within which the associated force falls among the plurality of predetermined force ranges; comparing the associated force range of each user input in the sequence to a command force range for the command sequence, the command force range being one of the plurality of predetermined force ranges; and In response to the associated position and the associated force range of each user input in the sequence matching a corresponding password position and a corresponding password force range of the password sequence, a positive authentication indication is output.
7. The device according to claim 6, wherein: The plurality of predetermined force ranges have respective upper and lower force limits determined based on a sample of user input provided to the sensing surface of the force sensor.
8. The device according to claim 6 or 7, wherein: The device is configured to: Received signaling is processed using the trained AI model to determine the associated force, the signaling indicating one or more user inputs in the sequence having associated positions and associated forces.
9. An apparatus according to any preceding claim, wherein: The positive authentication indication includes one or more of the following: a visual indicator output to alert a user of the device that the entered sequence matches a stored password; an audio indicator output to alert a user of the device that the entered sequence matches a stored password; a tactile indicator output to alert a user of the device that the entered sequence matches a stored password; as well as Unlocking functionality of a device associated with the stored password.
10. An apparatus as claimed in any preceding claim, further configured to, in response to receiving each user input having an associated position and an associated force, output a force input indicator indicative of the magnitude of the force applied.
11. A system comprising: The device according to any one of claims 1 to 10; as well as A force sensor is configured to detect a position and a force of a user input provided to a sensing surface of the force sensor and transmit signaling to the device indicating one or more user inputs in a sequence provided to the sensing surface of the force sensor.
12. The system according to claim 11, comprising: At least one control module is connected to the force sensor, the control module being configured to convert an analog force signal received from the force sensor in response to a force applied to the force sensor into a digital force signal representative of the force applied to the force sensor.
13. A system according to claim 11 or claim 12, comprising: A plurality of keys of a keyboard are formed, wherein each of the plurality of keys is configured to apply a corresponding force to a position of the force sensor corresponding to the key when a force is applied to the key.
14. A system according to claim 11 or claim 12, comprising: The display surface is configured to display a virtual keyboard including a plurality of virtual keys, wherein each of the plurality of virtual keys is configured to apply a corresponding force to a position of the force sensor corresponding to the virtual key when a force is applied to the virtual key.
15. A system according to claim 12 or claim 13, wherein: The system forms a keyboard device.
16. A method for user authentication, the method comprising: receiving signaling indicating one or more user inputs in a sequence provided to a sensing surface of the force sensor, each user input in the sequence having an associated position and an associated force; comparing the associated position and the associated force of each user input in the sequence to a password position and a password force of a password sequence stored in a memory accessible to the device; and In response to the associated position and the associated force of each user input in the sequence matching the corresponding password position and the corresponding password force of the password sequence, a positive authentication indication is output.
17. The method for user authentication according to claim 16, wherein: In response to the associated position and the associated force of each user input in the sequence matching the corresponding password position and the corresponding password force of the password sequence, outputting the positive authentication indication includes: unlocking the function of the device associated with the stored password.
18. A computer program product comprising code which, when executed on a processor, is configured to perform the method according to claim 16 or claim 17.