WO2020176005A1 - Способ и система идентификации пользователя по клавиатурному почерку - Google Patents
Способ и система идентификации пользователя по клавиатурному почерку Download PDFInfo
- Publication number
- WO2020176005A1 WO2020176005A1 PCT/RU2019/000126 RU2019000126W WO2020176005A1 WO 2020176005 A1 WO2020176005 A1 WO 2020176005A1 RU 2019000126 W RU2019000126 W RU 2019000126W WO 2020176005 A1 WO2020176005 A1 WO 2020176005A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- credentials
- key
- keyboard
- keys
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/316—User authentication by observing the pattern of computer usage, e.g. typical user behaviour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Definitions
- the present technical solution relates to the field of computing, in particular, to a method and system for identifying a user in the manner of manipulating a computer keyboard.
- keyboard handwriting recognition has a number of advantages over other authentication methods. The fact is that no additional equipment is required to recognize the keyboard handwriting, as a result of which the cost of implementing such a system is low. In addition, keyboard handwriting monitoring can be performed continuously and invisibly to the user, without distracting his attention from the workflow.
- Keyboard handwriting is a manifestation of a number of physiological, psychological and other characteristics of a particular person, expressed while working on a computer keyboard in different time intervals between elementary actions (pressing and releasing keys).
- Human fingers are an extremely complex system with the ability to flexibly adapt to external circumstances; however, in different Under circumstances, the time required for a certain elementary action, for example, pressing a certain key, will be different and will depend on what other elementary actions had to be performed before and after this action.
- keyboards as a rule, have, albeit similar, but different physical parameters, such as the distance between adjacent keys, the height of the keyboard, its angle relative to the table, key stiffness, etc. Due to the above facts, the keyboard handwriting will be different not only for different people, but also for the same person who is typing text using different keyboards.
- the technical result consists in the automatic identification of the user by the keyboard handwriting.
- a computer-implemented method for identifying a user using a keyboard handwriting which consists in performing the steps at which, using a computing device: - register the user's credentials in the system;
- a user data set is formed, which is assigned an identifier associated with the corresponding user;
- the trained classifier is used to subsequently confirm the identity of the user entering the credentials when logging in to the user on whose data sets the classifier was trained.
- a threshold value is selected, the excess of which indicates the identity of the user entering the credentials to the user on whose data sets the classifier was trained.
- an unidentified user upon receiving a response from a trained classifier that is numerically less than a selected threshold value, an unidentified user is informed about access to the credentials of an unidentified user.
- the time intervals formed when non-character keys are pressed are additionally measured.
- the classifier is trained using the machine learning method.
- time slots with the smallest variance in the data sets of this user are considered stable features for each user.
- the selection algorithm is used to screen out a predetermined number of features with the highest variance in the data sets of the corresponding user.
- the claimed solution is also carried out by means of a user identification system by keyboard handwriting, containing:
- the claimed solution is part of a remote banking system.
- the claimed solution is part of a website, implying user authorization, for example, an online store.
- FIG. 1 illustrates a computer-implemented method for identifying a user by keyboard handwriting
- FIG. 2 illustrates the time intervals measured by the described method when entering data from the keyboard
- FIG. 3 illustrates non-limiting methods for conditionally dividing a computer keyboard into zones
- FIG. 4 illustrates an example of a general schematic of a computing device.
- the present invention is directed to providing a computer-implementable method and system for identifying a user by keyboard handwriting.
- the signal generated by any modern computer keyboard in response to pressing or releasing any single key uniquely identifies the pressed key. Moreover, the appearance of this signal does not depend on how hard the key was pressed, nor on how quickly it was pressed, nor on how long it was held down before releasing it, nor on other similar factors.
- the output signal of the keyboard on which a certain text is typed is a set of so-called scan codes
- each key is assigned at least two different scan codes:
- Scan codes are unique within a specific computer configuration; they are transmitted by the keyboard to the port regardless of the state of other input devices.
- the program processing the state of the keyboard port becomes aware of: (1) the moment of pressing, (2) the moment of releasing, (3) information about which particular key was pressed or released. Fixing a specific moment of pressing or releasing (timestamp) in this case can be implemented, for example, by accessing the data of the system clock.
- the new employee Before starting work on the computer, the new employee is given his credentials and instructed to enter the login and password 10-15 times in the user interface window.
- the number of required account entry iterations for each specific user can be different, since depends not only on the experience of a given user on the keyboard, but also on his "degree of familiarity" with a particular keyboard.
- the system implementing the described method is associated with a browser window in which the user must enter credentials, for example, a window of a remote banking system or an online store site that has the function of a personal account and imply authorization of buyers.
- the system implementing the described method receives the keystrokes of the computer keyboard, calculates and stores the necessary data, which will be described below.
- the claimed computer-implemented method of user identification by keyboard handwriting is implemented as follows: b At step (101), the user's credentials are pre-registered with the system. User credentials are username and password. It is an essential component of network security.
- an identifier corresponding to the credentials is assigned to the user.
- a user identifier in the claimed solution can be used as an arbitrary pseudonym ("Ivanov. II"), which does not match the login and entered by the user at the request of the system at the beginning of training, and a pseudo-random number, for example, a hash function of the value system time obtained at the moment of pressing the first key when entering the first password with an accuracy of 0.001 seconds.
- a specific user can be identified, for example, by his user id, i.e. a unique identifier assigned to each client by a system, for example, a remote banking system (RBS).
- a system for example, a remote banking system (RBS).
- RBS remote banking system
- the RB system having received the correct credentials and associating a specific user id with a given user session, can calculate any predefined hash function from it and transfer it to the system that implements the described method, namely the hash from the user id. not the user id itself. For the purpose of implementing this method, it does not matter what the user ID looks like; it is only important that it be consistently repeated in every session of this user.
- the classifier is trained to identify the user, while during training, credentials are entered into the system from the keyboard a predetermined number of times, and during each input:
- a user data set is formed, which is assigned an identifier associated with the corresponding user;
- the trained classifier is used to subsequently confirm the identity of the user entering the credentials at login to the user on whose datasets the classifier was trained.
- FIG. 2 shows a set of time intervals 200, which will be calculated by the described method when typing on the keyboard the sequence of keys L 202, 0204, G 206, I 208 and H 210.
- the time of pressing is recorded, for example, the time of pressing 212 keys L 202 or the time of pressing 216 keys O 204.
- the key release time is recorded, for example, the release time 214 of the L key 202 or the release time 218 of the O key 204.
- the holding time of each key in the pressed state is measured: the holding time in the pressed state 220 of the button L 202, the holding time in the pressed state 254 of the button O 204, the holding time in the pressed state 280 of the button ⁇ 206, the holding time in the pressed state 294 of the I key 208 and the holding time in the pressed state 299 of the H 210 key.
- the intervals are measured between the moment of pressing each key and each of the moments of pressing all other keys used by the user when entering credentials. This can be done as follows: the intervals 222, 226, 230 and 234 are measured between pressing 212 of the L 202 button and pressing the O 204, G 206, I 208 and H 210 keys, respectively. Intervals 256, 260 and 264 are measured between pressing 216 of the O 204 key and pressing the keys G 206, I 208 and H 210, respectively. The interval 222 between keystrokes L 202 and O 204 is not measured in this case, since it has already been measured earlier. Intervals 282 and 286 are measured between pressing the G 206 key and pressing the I 208 and N 210 keys, respectively. The interval 295 between keystrokes And 208 and H 210 is measured, and thus the total set of intervals between the moment of pressing each key and the moments of pressing all other keys is obtained.
- the intervals are measured between the moment of releasing each key and each of the moments of releasing all other keys used by the user when entering credentials. This can be done as follows: the intervals 240, 244, 248 and 252 are measured between the moment of releasing 214 of the L 202 key and the moments of releasing the O 204, G 206, I 208 and H 210 keys, respectively. The intervals 270, 274 and 278 are measured between the moment the keys O 204 are released 218 and the moments the keys G 206, I 208 and H 210 are released, respectively. The interval 240 between the moments of releasing the keys L 202 and O 204 is not measured, since it has already been measured earlier.
- Intervals 291 and 293 are measured between the moment of releasing the key ⁇ 206 and the moments of releasing the keys ⁇ 208 and ⁇ 210, respectively.
- the interval 298 between the moments of releasing the keys AND 208 and H 210 is measured, and thus the entire set of intervals between the moment of releasing each key and the moments of releasing all other keys is obtained.
- the intervals are measured between the moment of pressing each key and each of the moments of releasing all other keys used by the user when entering credentials. This can be done as follows: the intervals 224, 228, 232 and 236 are measured between the moment 212 of the L 202 key is pressed and the moments of releasing the O 204, G 206, I 208 and H 210 keys, respectively. Measure the intervals 258, 262 and 266 between key press 216
- the interval 238 between pressing the O 204 key and releasing the L 202 key is not measured in this case, since it has already been measured earlier.
- the intervals 284 and 288 are measured between pressing the G 206 key and the moments of releasing the I 208 and H 210 keys, respectively. Measure the interval 296 between pressing the I key 208 and the moment the H 210 key is released, and thus the entire set of intervals between the moment of pressing each key and the moments of releasing all other keys is obtained.
- the intervals are measured between the moment of releasing each key and each of the moments of pressing all other keys used by the user when entering credentials. This can be done as follows: the intervals 238, 242, 246 and 250 are measured between the moment of releasing 214 of the L 202 key and the moments of pressing the O 204, G 206, I 208 and H 210 keys, respectively. The intervals 268, 272 and 276 are measured between the moment the key O 204 is released 218 and the moments when the keys G 206, I 208 and H 210 are pressed, respectively. The interval 224 between the moment the O 204 key is released and the moment the L 202 key is pressed is not measured, since it has already been measured earlier.
- Intervals 290 and 292 are measured between the moment the G 206 key is released and the moments of pressing the I 208 and H 210 keys, respectively.
- the interval 297 is measured between the moment the key is released and 208 and the moment the key H 210 is pressed, and thus the total set of intervals between the moment of releasing each key and the moments of pressing all other keys is obtained.
- the measurement of the time interval means the calculation of the difference between the two marks of the system clock (timestamp), obtained upon receipt of the corresponding scan codes.
- a time value can be measured, for example, to the nearest 0.01 second and expressed in decimal, hexadecimal, or any other convenient format; the obtained values can, in particular, be stored in a special file of the data set of a particular user.
- the sequence number of the interval may not be recorded, because it follows from the place of the measured value among the other values of the set.
- time slots can be calculated and the resulting values stored is given below with reference to FIG. 2.
- the first key - this is L 202 - fix the first mark of the system clock.
- keys L 202 fix the second mark of the system clock, calculate the interval 220 between the first and second marks of the system clock and store the obtained value.
- keys O 204 fix the third mark of the system clock, calculate the time intervals 222 between the first and third marks of the system clock and 238 between the second and third marks of the system clock and store the obtained values.
- the time intervals are calculated: 224 between the first and fourth marks of the system clock, 240 between the second and fourth marks of the system clock, 254 between the third and fourth marks of the system clock and store the obtained values. Further calculations are performed in the same way.
- this can lead to the deletion of that part of the generated keyboard set, in the calculation of which this previous character was previously involved, and the continuation of the dialing calculation, starting from the next character after Backspace, which will be considered “instead of” the erroneously entered one.
- the Backspace scan code is ignored when calculating the set. If the user presses Backspace several times, then the corresponding part of the already calculated set can be deleted, up to its complete zeroing in case the number of Backspace presses was greater than or equal to the number of already entered characters.
- Del key deletes the character located to the right of the text cursor, in order to delete the last entered character with this key, the user first presses the “left arrow” service key, and only then Del.
- the Enter service key in authorization interfaces is often used to confirm the login and password entered in the text fields, i.e. performs the role of the command “Enter typed login and password”. For this reason, the receipt of the scan code of the Enter key, along with other signs, may serve as a signal to the system implementing the described method that the calculation of the current keyboard set should be completed, and the obtained values should be saved to a file.
- the subsystem At each successful login and password entry, the subsystem generates a user data set, which is assigned an identifier associated with the corresponding user. In addition, in cases where the user makes a mistake by entering incorrect credentials, the subsystem can ask him to re-enter the data, displaying an appropriate message.
- Each newly generated dataset is stored in the database.
- the most stable features are selected from the database using the selection algorithm, that is, such time intervals between various keyboard events that most often have close values.
- the algorithm for selecting the most stable features can be any generally known.
- a non-limiting example of such an algorithm is shown below.
- ⁇ K ⁇ (11 (1); 11 (2); 11 (3).
- ⁇ K1 ⁇ ⁇ 12 (1); 12 (2); 12 (3) .12 (K) ⁇ ;
- ⁇ K10 ⁇ ⁇ tl 0 (1); tl 0 (2); tl0 (3). tlO (K) ⁇ ;
- the value of the variance D is calculated for each set of “similar” features, ie. located at the same position within the ⁇ K ⁇ data set:
- D (2) D ( ⁇ tl (2); 12 (2); 13 (2); 14 (2) .... 110 (2) ⁇ );
- the variance D can be calculated as the variance of a random variable, or in any other generally known way.
- a certain predetermined number for example, 50 or 200
- features t (k) with the minimum variance is selected.
- the described example of the feature selection method is not limiting. Alternatively, any other known feature extraction method can be used:
- the classifier is trained to identify the user when entering credentials into the system. After that, the trained classifier is used to subsequently confirm the identity of the user who enters the credentials when entering the system to the user on whose data sets this classifier was trained.
- the technical implementation of the classifier can be any generally known; it can be implemented, for example, as Isolation Forest or as One Class SVM.
- a threshold value is selected, the excess of which indicates the identity of the user entering the credentials to the user on whose data sets the classifier was trained.
- the identified user upon receipt of the response of the trained classifier, numerically less than the selected threshold value, the identified user is informed about the access to the credentials of it.
- presses of non-character keys are additionally recorded.
- the classifier is trained using the machine learning method.
- time slots with the smallest variance in the data sets of this user are considered stable features for each user.
- the selection algorithm is used to screen out a predetermined number of features with the highest variance in the data sets of the corresponding user.
- a variant of the system that implements the described method is possible, in which the system is an integral part of a website, implying user authorization, for example, an online store or a portal of government services.
- the keyboard 300 is divided into a service key zone 302, a left alphanumeric zone 304, a middle alphanumeric zone 310, a right alphanumeric zone 312, a left 306 and right 314 modifier key zones, a space bar 308, a zone numeric keypad 318 and the service key zone of numeric keypad 316.
- the keypad 350 is divided into an upper zone 352, a middle zone 354, and a lower zone 356.
- the time intervals fixed for the keys from each pre-allocated typing zone before training the classifier additionally multiplied by a coefficient, also predetermined and assigned to this set zone.
- the key times for the upper zone 352 are multiplied by 10
- the key times for the middle zone 354 are left unchanged (multiplied by 1)
- the key times for the lower zone 356 are multiplied by 0.1.
- FIG. 4 a general diagram of a computer device (400) that provides data processing necessary to implement the claimed solution will be presented below.
- the device (400) contains components such as: one or more processors (401), at least one memory (402), data storage means (403), input / output interfaces (404), I / O means ( 405), networking tools (406).
- processors 401
- memory 402
- data storage means 403
- input / output interfaces 403
- I / O means 405
- networking tools 406
- the device processor (401) performs the basic computational operations required for the operation of the device (400) or the functionality of one or more of its components.
- the processor (401) executes the necessary machine-readable instructions contained in the main memory (402).
- Memory (402) is made in the form of RAM and contains the necessary program logic to provide the required functionality.
- the data storage medium (403) can be performed in the form of HDD, SSD disks, array raid, network storage, flash memory, optical information storage devices (CD, DVD, MD, Blue-Ray discs), etc.
- the means (403) allows performing long-term storage of various types of information, for example, the aforementioned files with user data sets, a database containing records of time intervals measured for each user, user identifiers, etc.
- Interfaces (404) are standard means for connecting and working with the server side, for example, USB, RS232, RJ45, LPT, COM, HDMI, PS / 2, Lightning, FireWire, etc.
- interfaces (404) depends on the specific implementation of the device (400), which can be a personal computer, mainframe, server cluster, thin client, smartphone, laptop, etc.
- a keyboard should be used.
- the hardware design of the keyboard can be any known: it can be either a built-in keyboard used on a laptop or netbook, or a separate device connected to a desktop computer, server or other computer device.
- the connection can be either wired, in which the connecting cable of the keyboard is connected to the PS / 2 or USB port located on the system unit of the desktop computer, or wireless, in which the keyboard exchanges data via a wireless communication channel, for example, a radio channel, with base station, which, in turn, is directly connected to the system unit, for example, to one of the USB ports.
- I / O data can also include: joystick, display (touchscreen display), projector, touchpad, mouse, trackball, light pen, speakers, microphone, etc.
- Networking means (406) are selected from a device that provides network reception and transmission of data, for example, Ethernet card, WLAN / Wi-Fi module, Bluetooth module, BLE module, NFC module, IrDa, RFID module, GSM modem, etc.
- the means (405) provide the organization of data exchange via a wired or wireless data transmission channel, for example, WAN, PAN, LAN (LAN), Intranet, Internet, WLAN, WMAN or GSM.
- the components of the device (400) are interfaced via a common data bus (410).
- a common data bus (410) In the present application materials, the preferred disclosure of the implementation of the claimed technical solution was presented, which should not be used as limiting other, particular embodiments of its implementation that do not go beyond the scope of the claimed scope of legal protection and are obvious to specialists in the relevant field of technology.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Social Psychology (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
Настоящее решение относится к способу и системе идентификации пользователя системы дистанционного банковского обслуживания по манере манипулировать компьютерной клавиатурой. В заявленном решении производится автоматическая идентификация пользователя по клавиатурному почерку с учетом всех возможных временных интервалов между всеми клавиатурными событиями, возникающими в ходе набора логина и пароля.
Description
СПОСОБ И СИСТЕМА ИДЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЯ ПО КЛАВИАТУРНОМУ
ПОЧЕРКУ
ОБЛАСТЬ ТЕХНИКИ
Настоящее техническое решение относится к области вычислительной техники, в частности, к способу и системе идентификации пользователя по манере манипулировать компьютерной клавиатурой.
УРОВЕНЬ ТЕХНИКИ
Задача защиты информации от несанкционированного доступа становится всё более актуальной. Наиболее достоверные результаты дает использование биометрических методов аутентификации.
К ним относятся следующие методы: S распознавание голоса;
распознавание лица;
распознавание радужной оболочки глаза;
S распознавание отпечатков пальцев;
- Кроме того, для каждого человека характерен собственный клавиатурный почерк (Keystroke Dynamics, keystroke biometrics, typing dynamics: https://en.wikipedia.org/wiki/Keystroke_dynamics). При этом использование распознавания клавиатурного почерка обладает рядом преимуществ перед другими методами аутентификации. Дело в том, что для распознавания клавиатурного почерка не требуется дополнительное оборудование, вследствие чего цена внедрения такой системы невысока. Кроме того, мониторинг клавиатурного почерка можно производить непрерывно и незаметно для пользователя, не отвлекая его внимания от рабочего процесса.
Клавиатурный почерк - это проявление ряда физиологических, психологических и иных характеристик конкретного человека, выражающееся во время работы на компьютерной клавиатуре в различных временных интервалах между элементарными действиями (нажатием и отпусканием клавиш).
Пальцы рук человека представляют собой чрезвычайно сложную систему, обладающую способностью гибко адаптироваться к внешним обстоятельствам; однако, в разных
обстоятельствах время, требуемое для некоего элементарного действия, например, нажатия определённой клавиши, будет различным и будет зависеть от того, какие другие элементарные действия необходимо было выполнить перед этим действием и после него.
С другой стороны, компьютерные клавиатуры, как правило, имеют хотя и похожие, но различающиеся физические параметры, такие как расстояния между соседними клавишами, высота клавиатуры, угол её наклона относительно стола, жёсткость клавиши и т.д. Вследствие перечисленных фактов клавиатурный почерк будет различным не только у разных людей, но и у одного и того же человека, набирающего текст при помощи разных клавиатур.
Из уровня техники широко известны решения, которые используют клавиатурный почерк для идентификаций пользователей, в части такие решения описаны в заявках: WO2011039371А1, опубл. 07.04.2011; GB2470579A, опубл. 01.12.2010; US9590986B2, 07.03.2017; W02017070600A1, 27.03.2017; US2015169854A1, 18.06.2015.
Кроме того, на текущем уровне техники известны решения, локально решающие вопросы проверки личности пользователя во время взаимодействия с клавиатурой; они раскрыты в следующих документах: ЕР2477136В1 и US2015169854A1.
Однако, известные из уровня техники решения, предназначенные для идентификации пользователей по клавиатурному почерку, имеют ограниченную функциональность: в данных решениях не рассчитываются все возможные временные интервалы между всеми клавиатурными событиями, возникающими в ходе набора логина и пароля.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Технической проблемой, на решение которой направлено заявленное техническое решение, является создание компьютерно-реализуемого способа и системы идентификации пользователя по клавиатурному почерку, которые охарактеризованы в независимых пунктах формулы. Дополнительные варианты реализации настоящего изобретения представлены в зависимых пунктах изобретения.
Технический результат заключается в автоматической идентификации пользователя по клавиатурному почерку.
В предпочтительном варианте реализации заявлен компьютерно-реализуемый способ идентификации пользователя по клавиатурному почерку, заключающийся в выполнении этапов, на которых с помощью вычислительного устройства:
- регистрируют учетные данные пользователя в системе;
- присваивают соответствующий учетным данным идентификатор пользователю;
- обучают классификатор идентифицировать пользователя, при этом во время обучения учетные данные вводятся в систему с клавиатуры заданное количество раз, и во время каждого ввода:
• Измеряют время удержания каждой клавиши в нажатом состоянии;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• При каждом вводе на основе измеренных временных интервалов формируют набор данных пользователя, которому присваивают идентификатор, ассоциированный с соответствующим пользователем;
• Сохраняют сформированные наборы данных, ассоциированные с соответствующим пользователем, в базе данных;
• Выбирают из базы данных с помощью алгоритма отбора наиболее устойчивые признаки;
• Обучают классификатор идентифицировать пользователя при вводе учетных данных в систему на основе отобранных наиболее устойчивых признаков;
- применяют обученный классификатор для последующего подтверждения идентичности пользователя, вводящего учетные данные при входе в систему, тому пользователю, на наборах данных которого был обучен классификатор.
В частном варианте после обучения классификатора выбирают пороговое значение, превышение которого свидетельствует об идентичности пользователя, вводящего учётные данные, тому пользователю, на наборах данных которого был обучен классификатор.
В другом частном варианте при получении ответа обученного классификатора, численно меньшего выбранного порогового значения, информируют о доступе к учётным данным неидентифицированного пользователя.
В другом частном варианте при наборе учетных данных дополнительно измеряют временные интервалы, образуемые при нажатии несимвольных клавиш, например, Shift или Tab.
В другом частном варианте обучают классификатор методом машинного обучения.
В другом частном варианте устойчивыми признаками для каждого пользователя считают временные интервалы, имеющие наименьшую дисперсию в наборах данных этого пользователя.
В другом частном варианте в качестве алгоритма отбора используют отсев заранее заданного количества признаков, имеющих наибольшую дисперсию в наборах данных соответствующего пользователя.
Заявленное решение также осуществляется за счет системы идентификации пользователя по клавиатурному почерку, содержащей:
- клавиатуру;
- блок регистрации учетных данных пользователя в системе;
- системные часы, выполненные с возможностью фиксации времени нажатия и времени отпускания клавиш клавиатуры;
- долговременную память, выполненную с возможностью хранения базы данных;
- вычислительное устройство, выполненное с возможностью выполнения описанного способа.
В одном из возможных вариантов реализации заявленное решение является частью системы дистанционного банковского обслуживания.
В другом из возможных вариантов реализации заявленное решение является частью веб- сайта, подразумевающего авторизацию пользователей, например, интернет-магазина.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:
Фиг. 1 иллюстрирует компьютерно-реализуемый способ идентификации пользователя по клавиатурному почерку;
Фиг. 2 иллюстрирует временные интервалы, измеряемые по описываемому способу при вводе данных с клавиатуры;
Фиг. 3 иллюстрирует неограничивающие способы условного разделения компьютерной клавиатуры на зоны;
Фиг. 4 иллюстрирует пример общей схемы компьютерного устройства.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.
Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.
Настоящее изобретение направлено на обеспечение компьютерно-реализуемого способа и системы идентификации пользователя по клавиатурному почерку.
Сигнал, формируемый любой современной компьютерной клавиатурой в ответ на нажатие или отпускание любой единичной клавиши, однозначно идентифицирует нажатую клавишу. Притом вид этого сигнала не зависит ни от того, с какой силой была нажата клавиша, ни от того, насколько быстро она была нажата, ни от того, долго ли её удерживали нажатой перед тем как отпустить, ни от других подобных факторов.
Выходной сигнал клавиатуры, на которой набирают некий текст, представляет собой набор так называемых скан-кодов
(https://ru. wikipedia. org/w/index. php?title=%D0%A 1%D0%B A%D0%B0%D0%BD- %D0%BA%D0%BE%D0%B4&oldid=98124315), последовательно передаваемых в цифровом (двоичном) виде через порт, к которому подключена клавиатура. Каждый из этих скан-кодов однозначно идентифицирует определённую клавишу и притом указывает, была ли соответствующая клавиша нажата или отпущена. Иными словами, каждой клавише поставлены в соответствие по меньшей мере два различных скан-кода:
• скан-код нажатия,
• скан-код отпускания.
Скан-коды уникальны в рамках конкретной конфигурации компьютера; они передаются клавиатурой в порт независимо от состояния остальных устройств ввода.
Вследствие этого, в связи с нажатием на компьютерной клавиатуре любой клавиши программе, обрабатывающей состояние порта клавиатуры, становятся известны: (1) момент нажатия, (2) момент отпускания, (3) информация о том, какая конкретно клавиша была нажата или отпущена. Фиксация конкретного момента нажатия или отпускания (timestamp) при этом может быть реализована, например, за счёт доступа программы к данным системных часов.
Перед началом работы на компьютере новому сотруднику сообщают его учётные данные и поручают 10-15 раз ввести логин и пароль в окне пользовательского интерфейса. Количество необходимых итераций ввода учетной записи для каждого конкретного пользователя может быть различным, т.к. зависит не только от опыта работы данного пользователя на клавиатуре, но и от «степени знакомства» его с конкретной клавиатурой.
В альтернативном варианте воплощения система, реализующая описываемый способ, ассоциирована с окном браузера, в котором пользователь должен вводить ввести учётные данные, например, окном системы дистанционного банковского обслуживания или сайта интернет-магазина, имеющего функцию личного кабинета и подразумевающего авторизацию покупателей. При этом система, реализующая описанный способ, получает нажатия клавиш компьютерной клавиатуры, вычисляет и сохраняет необходимые данные, которые будут описаны ниже.
Как представлено на Фиг. 1 , заявленный компьютерно-реализуемый способ идентификации пользователя по клавиатурному почерку (100) реализован следующим образом: б
На этапе (101) предварительно регистрируют учетные данные пользователя в системе. Учетные данные пользователя - это имя пользователя и пароль. Это важный компонент обеспечения сетевой безопасности.
Далее на этапе (102) присваивают соответствующий учетным данным идентификатор пользователю. В качестве идентификатора пользователя в заявленном решении может быть использован как произвольный псевдоним (“Иванов. И.И.”), не совпадающий с логином и введённый пользователем по запросу системы в начале обучения, так и псевдослучайное число, например, хэш-функция от значения системного времени, полученного в момент нажатия первой клавиши при введении первого пароля с точностью до 0.001 секунды.
В альтернативном варианте реализации идентификация конкретного пользователя может производиться, например, по его user id, т.е. уникальному идентификатору, присваиваемому каждому клиенту системой, например, системой дистанционного банковского обслуживания (ДБО).
С целью дополнительного снижения вероятности утери данных, система ДБО, получив правильные учётные данные и проассоциировав с данным пользовательским сеансом конкретный user id, может вычислять от него любую наперёд заданную хэш-функцию и передавать в систему, реализующую описанный способ, именно хэш от user id, а не сам user id. Для целей реализации данного способа неважно, как именно выглядит идентификатор пользователя, важно лишь, чтобы он стабильно повторялся в каждом сеансе работы этого пользователя.
На этапе (103) обучают классификатор идентифицировать пользователя, при этом во время обучения учетные данные вводятся в систему с клавиатуры заданное количество раз, и во время каждого ввода:
• Измеряют время удержания каждой клавиши в нажатом состоянии и фиксируют измеренные значения;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных, и фиксируют измеренные значения;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных, и фиксируют измеренные значения;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных, и фиксируют измеренные значения;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных, и фиксируют измеренные значения;
• При каждом вводе на основе измеренных временных интервалов формируют набор данных пользователя, которому присваивают идентификатор, ассоциированный с соответствующим пользователем;
• Сохраняют сформированные наборы данных, ассоциированные с соответствующим пользователем, в базе данных;
• Выбирают из базы данных с помощью алгоритма отбора наиболее устойчивые признаки;
• Обучают классификатор идентифицировать пользователя при вводе учетных данных в систему на основе отобранных наиболее устойчивых признаков.
На этапе (104) применяют обученный классификатор для последующего подтверждения идентичности пользователя, вводящего учетные данные при входе в систему, тому пользователю, на наборах данных которого был обучен классификатор.
Покажем, применительно к Фиг.2, на примере с вводом слова «ЛОГИН», как именно могут вычисляться временные интервалы, которые впоследствии используют в качестве признаков для обучения классификатора.
На Фиг. 2 показан набор временных интервалов 200, который будет вычислен по описываемому способу при наборе на клавиатуре последовательности клавиш Л 202, 0204, Г 206, И 208 и Н 210. Для каждой из этих клавиш при помощи системных часов фиксируется время нажатия, например, время нажатия 212 клавиши Л 202 или время нажатия 216 клавиши О 204. Также для каждой из этих клавиш при помощи системных часов фиксируется время отпускания клавиши, например, время отпускания 214 клавиши Л 202 или время отпускания 218 клавиши О 204.
Измеряют время удержания каждой клавиши в нажатом состоянии: время удержания в нажатом состоянии 220 клавиши Л 202, время удержания в нажатом состоянии 254 клавиши О 204, время удержания в нажатом состоянии 280 клавиши Г 206, время удержания в
нажатом состоянии 294 клавиши И 208 и время удержания в нажатом состоянии 299 клавиши Н 210.
Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных. Это может быть выполнено так: измеряют интервалы 222, 226, 230 и 234 между нажатием 212 клавиши Л 202 и нажатиями клавиш О 204, Г 206, И 208 и Н 210 соответственно. Измеряют интервалы 256, 260 и 264 между нажатием 216 клавиши О 204 и нажатиями клавиш Г 206, И 208 и Н 210 соответственно. Интервал 222 между нажатиями клавиш Л 202 и О 204 при этом не измеряют, поскольку он уже был измерен ранее. Измеряют интервалы 282 и 286 между нажатием клавиши Г 206 и нажатиями клавиш И 208 и Н 210 соответственно. Измеряют интервал 295 между нажатиями клавиш И 208 и Н 210, и получают таким образом полную совокупность интервалов между моментом нажатия каждой клавиши и моментами нажатия всех остальных клавиш.
Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных. Это может быть выполнено так: измеряют интервалы 240, 244, 248 и 252 между моментом отпускания 214 клавиши Л 202 и моментами отпускания клавиш О 204, Г 206, И 208 и Н 210 соответственно. Измеряют интервалы 270, 274 и 278 между моментом отпускания 218 клавиши О 204 и моментами отпускания клавиш Г 206, И 208 и Н 210 соответственно. Интервал 240 между моментами отпускания клавиш Л 202 и О 204 при этом не измеряют, поскольку он уже был измерен ранее. Измеряют интервалы 291 и 293 между моментом отпускания клавиши Г 206 и моментами отпускания клавиш И 208 и Н 210 соответственно. Измеряют интервал 298 между моментами отпускания клавиш И 208 и Н 210, и получают таким образом полную совокупность интервалов между моментом отпускания каждой клавиши и моментами отпускания всех остальных клавиш.
Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных. Это может быть выполнено так: измеряют интервалы 224, 228, 232 и 236 между моментом нажатия 212 клавиши Л 202 и моментами отпускания клавиш О 204, Г 206, И 208 и Н 210 соответственно. Измеряют интервалы 258, 262 и 266 между нажатием 216 клавиши
О 204 и моментами отпускания клавиш Г 206, И 208 и Н 210 соответственно. Интервал 238 между нажатием клавиши О 204 и отпусканием клавиши Л 202 при этом не измеряют, поскольку он уже был измерен ранее. Измеряют интервалы 284 и 288 между нажатием клавиши Г 206 и моментами отпускания клавиш И 208 и Н 210 соответственно. Измеряют
интервал 296 между нажатием клавиши И 208 и моментом отпускания клавиши Н 210, и получают таким образом полную совокупность интервалов между моментом нажатия каждой клавиши и моментами отпускания всех остальных клавиш.
Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных. Это может быть выполнено так: измеряют интервалы 238, 242, 246 и 250 между моментом отпускания 214 клавиши Л 202 и моментами нажатия клавиш О 204, Г 206, И 208 и Н 210 соответственно. Измеряют интервалы 268, 272 и 276 между моментом отпускания 218 клавиши О 204 и моментами нажатия клавиш Г 206, И 208 и Н 210 соответственно. Интервал 224 между моментом отпускания клавиши О 204 и моментом нажатия клавиши Л 202 при этом не измеряют, поскольку он уже был измерен ранее. Измеряют интервалы 290 и 292 между моментом отпускания клавиши Г 206 и моментами нажатия клавиш И 208 и Н 210 соответственно. Измеряют интервал 297 между моментом отпускания клавиши И 208 и моментом нажатия клавиши Н 210, и получают таким образом полную совокупность интервалов между моментом отпускания каждой клавиши и моментами нажатия всех остальных клавиш.
Под измерением временного интервала в данном случае подразумевается вычисление разности между двумя отметками системных часов (timestamp), полученными при поступлении соответствующих скан-кодов.
Значение времени может быть измерено, например, с точностью до 0.01 секунды и выражено в десятичном, шестнадцатеричном или любом другом удобном формате; полученные значения могут быть, в частности, сохранены в особом файле набора данных конкретного пользователя. Порядковый номер интервала может не записываться, т.к. он следует из места измеренного значения в ряду остальных значений набора.
Неограничивающий пример порядка, в котором могут рассчитываться временные интервалы и сохраняться полученные значения, приводится ниже применительно к Фиг.2.
В момент нажатия 212 первой клавиши - это Л 202 - фиксируют первую отметку системных часов. В момент отпускания 214 клавиши Л 202 фиксируют вторую отметку системных часов, рассчитывают интервал 220 между первой и второй отметками системных часов и сохраняют полученное значение. В момент нажатия 216 клавиши О 204 фиксируют третью отметку системных часов, рассчитывают временные интервалы 222 между первой и третьей отметками системных часов и 238 между второй и третьей отметками системных часов и сохраняют полученные значения. В момент отпускания 218 клавиши О 204 фиксируют
четвёртую отметку системных часов, рассчитывают временные интервалы: 224 между первой и четвёртой отметками системных часов, 240 между второй и четвёртой отметками системных часов, 254 между третьей и четвёртой отметками системных часов и сохраняют полученные значения. Дальнейшие вычисления производят аналогично.
Следует отметить, что при работе на клавиатуре некоторые пользователи иногда нажимают «следующую» клавишу раньше, чем отпустили «предыдущую». В этом случае, применительно к Фиг. 2, время нажатия второй клавиши 216 будет ближе к моменту начала набора 212, чем время отпускания первой клавиши 214. Эта особенность работы на клавиатуре окажет влияние только на величину соответствующих временных интервалов (220, 222, 238 и т.д.). Ни на общее количество временных интервалов, измеряемых для символов, составляющих логин и пароль, ни на функционирование системы, реализующей описываемый метод, подобная особенность пользователя не повлияет. Однако то обстоятельство, что измеряемые временные интервалы в этом случае будут иметь совершенно другие величины, нежели для пользователей с обычной манерой набора, позволяет говорить о большей надёжности идентификации по описываемому способу.
Помимо клавиш, соответствующих“осмысленным”, т.е. применимым при вводе логина и пароля символам, все компьютерные клавиатуры имеют ряд служебных клавиш. Некоторые из них, такие как клавиша Ctrl, не оказывают влияния на ввод символов в текстовое поле. Поэтому поступление скан-кодов таких клавиш в рамках описываемого метода может игнорироваться. В альтернативной реализации способа скан-коды неалфавитных клавиш могут обрабатываться аналогично скан-кодам клавиш, соответствующих символам.
Другие служебные клавиши, такие как Del или Backspace, всегда используются только в том случае, когда пользователь, набирая символы, допустил ошибку и хотел бы удалить только что введённый символ.
При этом, учитывая, что клавиша Backspace удаляет символ, находящийся левее текущей позиции текстового курсора, поступление скан-кода данной клавиши означает, что предыдущий символ был введён ошибочно.
В рамках реализации описываемого метода— это может приводить к удалению той части формируемого клавиатурного набора, в вычисление которой был ранее вовлечён этот предыдущий символ, и продолжение расчёта набора, начиная со следующего после Backspace символа, который будет рассматривается “вместо” ошибочно введённого. Собственно, скан-код Backspace при расчёте набора игнорируется.
Если пользователь нажимает Backspace несколько раз, то может удаляться соответствующая часть уже рассчитанного набора, вплоть до полного его обнуления в случае, если количество нажатий Backspace было больше или равно количеству уже введённых символов.
Поскольку клавиша Del удаляет символ, расположенный правее текстового курсора, для того, чтобы удалить этой клавишей последний введённый символ, пользователь сначала нажимает служебную клавишу“стрелка влево”, и лишь затем Del.
Поэтому поступление одного за другим скан-кодов клавиш “стрелка влево” и Del обрабатывается аналогично случаю с получением скан-кода Backspace. Собственно, скан- коды клавиш“стрелка влево” и Del при расчёте клавиатурного набора игнорируются. Комбинации скан-кодов вида “X нажатий “стрелки влево”, затем X нажатий Del” обрабатываются аналогично вышеописанной ситуации, когда X раз подряд нажата клавиша Backspace.
Служебная клавиша Enter в интерфейсах авторизации часто используется для подтверждения введённых в текстовые поля логина и пароля, т.е. выполняет роль команды “Ввести набранные логин и пароль”. По этой причине поступление скан-кода клавиши Enter может, наряду с другими признаками, служить для системы, реализующей описываемый способ, сигналом о том, что расчёт текущего клавиатурного набора следует завершить, а полученные значения— сохранить в файл.
При каждом удачном вводе логина и пароля подсистема формирует набор данных пользователя, которому присваивают идентификатор, ассоциированный с соответствующим пользователем. Кроме того, в случаях, когда пользователь допускает ошибку, вводя неверные учётные данные, подсистема может просить его повторить ввод данных, выводя соответствующее сообщение.
Каждый новый сформированный наборы данных сохраняют в базе данных. После чего выбирают из базы данных с помощью алгоритма отбора наиболее устойчивые признаки, то есть такие временные интервалы между различными клавиатурными событиями, которые чаще всего имеют близкие значения.
Алгоритм отбора наиболее устойчивых признаков может быть любым общеизвестным. Неограничивающий пример такого алгоритма приведён ниже. Допустим, имеется 10 наборов данных {К} одного пользователя, содержащих каждый одно и то же количество признаков t(k):
{К1} = (11(1); 11(2); 11(3) . И(К)};
{К1 } = {12(1); 12(2); 12(3) .12(К)};
{K10} = {tl 0(1); tl 0(2); tl0(3) . tlO(K)}; Вычисляют значение дисперсии D для каждого множества“одноимённых” признаков, т.е. находящихся на одной и той же позиции внутри набора данных {К} :
D(l) = D({tl(l); 12(1); 13(1); 14(1).... 110(1)});
D(2) = D({tl(2); 12(2); 13(2); 14(2).... 110(2)});
D(K) - D({tl(K); t2(K); t3(K); t4(K).... tlO(K)});
Дисперсия D может быть вычислена как дисперсия случайной величины, либо любым другим общеизвестным способом.
Затем отбирают некоторое наперёд заданное количество (например, 50 или 200) признаков t(k), обладающих минимальной дисперсией. Описанный пример способа отбора признаков не является ограничивающим. Альтернативно может использоваться любой другой известный способ выделения признаков:
https://ru.wikipedia.org/w/index.php?title=%D0%92%Dl%8B%D0%B4%D0%B5%D0%BB% D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%B8%D0%B7%D0%BD%D0 %B0%D0%BA%D0%BE%D0%B2&oldid=98135923
На основе отобранных наиболее устойчивых признаков обучают классификатор идентифицировать пользователя при вводе учетных данных в систему. После чего применяют обученный классификатор для последующего подтверждения идентичности пользователя, вводящего учетные данные при входе в систему, тому пользователю, на наборах данных которого был обучен этот классификатор.
Техническая реализация классификатора может быть любой общеизвестной; он может быть реализован, например, как Isolation Forest или как One Class SVM.
Ниже приведены дополнительные варианты реализации настоящего изобретения.
В частном варианте после обучения классификатора выбирают пороговое значение, превышение которого свидетельствует об идентичности пользователя, вводящего учётные данные, тому пользователю, на наборах данных которого был обучен классификатор.
В другом частном варианте при получении ответа обученного классификатора, численно меньшего выбранного порогового значения, информируют о доступе к учётным данным ней дентифицированного пользователя .
В другом частном варианте при наборе учетных данных дополнительно фиксируют нажатия несимвольных клавиш.
В другом частном варианте обучают классификатор методом машинного обучения.
В другом частном варианте устойчивыми признаками для каждого пользователя считают временные интервалы, имеющие наименьшую дисперсию в наборах данных этого пользователя.
В другом частном варианте в качестве алгоритма отбора используют отсев заранее заданного количества признаков, имеющих наибольшую дисперсию в наборах данных соответствующего пользователя.
Возможен такой вариант системы, реализующей описанный способ, при котором система является составной частью веб-сайта, подразумевающего авторизацию пользователей, например, интернет-магазина или портала государственных услуг.
Возможен также вариант реализации настоящего способа, при котором клавиатуру предварительно условно разделяют на две или более зон набора. Неограничивающие примеры такого разделения приведены на Фиг. 3.
Например, клавиатура 300 разделена на зону служебных клавиш 302, левую зону алфавитно-цифрового блока 304, среднюю зону алфавитно-цифрового блока 310, правую зону алфавитно-цифрового блока 312, левую 306 и правую 314 зоны клавиш- модификаторов, зону пробела 308, зону цифровой клавиатуры 318 и зону служебных клавиш цифровой клавиатуры 316.
Альтернативно, клавиатура 350 разделена на верхнюю зону 352, среднюю зону 354 и нижнюю зону 356.
В соответствии с данным вариантом реализации, временные интервалы, зафиксированные для клавиш из каждой заранее выделенной зоны набора, перед обучением классификатора
дополнительно умножают на коэффициент, также заданный заранее и поставленный в соответствие данной зоне набора.
Например, применительно к клавиатуре 350, временные интервалы для клавиш верхней зоны 352 умножают на 10, временные интервалы для клавиш средней зоны 354 оставляют без изменения (умножают на 1), и временные интервалы для клавиш нижней зоны 356 умножают на 0.1.
Возможна также реализация описываемого способа, используемая в ситуации, когда конкретная учётная запись (то есть логин и пароль) закреплены не за одним пользователем, а за определённой, заранее известной группой лиц. Например, учениками одного класса средней школы, студентами одной учебной группы и т.д. В такой реализации описываемого способа все лица, имеющие право пользоваться данной учётной записью, поочерёдно проходят обучение, как это было описано применительно к этапам 101 и 102, показанным на Фиг. 1. После того, как для всех были измерены и сохранены временные интервалы, как это было показано применительно к Фиг. 2, производят, используя любой общеизвестный способ выделения признаков, отбор признаков, а затем обучение классификатора. Обученный таким образом классификатор впоследствии используют для идентификации данной группы лиц. Решение классификатора в этом случае трактуют как вероятность того, что человек, вводящий учетные данные, принадлежит к данной группе лиц.
На Фиг. 4 далее будет представлена общая схема компьютерного устройства (400), обеспечивающего обработку данных, необходимую для реализации заявленного решения.
В общем случае устройство (400) содержит такие компоненты, как: один или более процессоров (401), по меньшей мере одну память (402), средство хранения данных (403), интерфейсы ввода/вывода (404), средство В/В (405), средства сетевого взаимодействия (406).
Процессор (401) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (400) или функциональности одного или более его компонентов. Процессор (401) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (402).
Память (402), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал.
Средство хранения данных (403) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD,
DVD, MD, Blue-Ray дисков) и т.п. Средство (403) позволяет выполнять долгосрочное хранение различного вида информации, например, вышеупомянутых файлов с наборами данных пользователей, базы данных, содержащих записи измеренных для каждого пользователя временных интервалов, идентификаторов пользователей и т.п.
Интерфейсы (404) представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п.
Выбор интерфейсов (404) зависит от конкретного исполнения устройства (400), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
В качестве средств В/В данных (405) в любом воплощении системы, реализующей описываемый способ, должна использоваться клавиатура. Аппаратное исполнение клавиатуры может быть любым известным: это может быть, как встроенная клавиатура, используемая на ноутбуке или нетбуке, так и обособленное устройство, подключенное к настольному компьютеру, серверу или иному компьютерному устройству. Подключение при этом может быть, как проводным, при котором соединительный кабель клавиатуры подключен к порту PS/2 или USB, расположенному на системном блоке настольного компьютера, так и беспроводным, при котором клавиатура осуществляет обмен данными по каналу беспроводной связи, например, радиоканалу, с базовой станцией, которая, в свою очередь, непосредственно подключена к системному блоку, например, к одному из USB- портов. Помимо клавиатуры, в составе средств В/В данных также может использоваться: джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
Средства сетевого взаимодействия (406) выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (405) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
Компоненты устройства (400) сопряжены посредством общей шины передачи данных (410).
В настоящих материалах заявки · было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.
Claims
1. Способ идентификации пользователя по клавиатурному почерку, заключающийся в выполнении этапов, на которых с помощью вычислительного устройства:
- регистрируют учетные данные пользователя в системе;
- присваивают соответствующий учетным данным идентификатор пользователю;
- обучают классификатор идентифицировать пользователя, при этом во время обучения учетные данные вводятся в систему с клавиатуры заданное количество раз, и во время каждого ввода:
• Измеряют время удержания каждой клавиши в нажатом состоянии;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом нажатия каждой клавиши и каждым из моментов отпускания всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• Измеряют интервалы между моментом отпускания каждой клавиши и каждым из моментов нажатия всех остальных клавиш, задействованных пользователем при вводе учетных данных;
• При каждом вводе на основе измеренных временных интервалов формируют набор данных пользователя, которому присваивают идентификатор, ассоциированный с соответствующим пользователем;
• Сохраняют сформированные наборы данных, ассоциированные с соответствующим пользователем, в базе данных;
• Выбирают из базы данных с помощью алгоритма отбора наиболее устойчивые признаки;
• Обучают классификатор идентифицировать пользователя при вводе учетных данных в систему на основе отобранных наиболее устойчивых признаков;
- применяют обученный классификатор для последующего подтверждения идентичности пользователя, вводящего учетные данные при входе в систему, тому пользователю, на наборах данных которого был обучен классификатор.
2. Способ по п. 1, характеризующийся тем, что после обучения классификатора выбирают пороговое значение, превышение которого свидетельствует об идентичности пользователя, вводящего учётные данные, тому пользователю, на наборах данных которого был обучен классификатор.
3. Способ по п. 2, характеризующийся тем, что при получении ответа обученного классификатора, численно меньшего выбранного порогового значения, информируют о доступе к учётным данным неидентифицированного пользователя.
4. Способ по п. ^ характеризующийся тем, что при наборе учетных данных дополнительно фиксируют нажатия несимвольных клавиш.
5. Способ по п.1, характеризующийся тем, что клавиатура предварительно разделена на зоны набора.
6. Способ по п. 5, характеризующийся тем, что временные интервалы, зафиксированные для клавиш из каждой зоны набора, дополнительно умножают на коэффициент, заданный заранее и поставленный в соответствие данной зоне набора.
7. Способ по п. 1, характеризующийся тем, что обучают классификатор методом машинного обучения.
8. Способ по п.1, характеризующийся тем, что устойчивыми признаками для каждого пользователя считают временные интервалы, имеющие наименьшую дисперсию в наборах данных этого пользователя.
9. Способ по п.1, характеризующийся тем, что в качестве алгоритма отбора используют отсев заранее заданного количества признаков, имеющих наибольшую дисперсию в наборах данных соответствующего пользователя.
10. Способ по п. 1, характеризующийся тем, что под идентификацией пользователя понимают идентификацию заранее установленной группы лиц, пользующихся одной и той же учётной записью.
11. Система идентификации пользователя по клавиатурному почерку, содержащая:
- клавиатуру;
- блок регистрации учетных данных пользователя в системе;
- системные часы, выполненные с возможностью фиксации времени нажатия и времени отпускания клавиш клавиатуры;
- долговременную память, выполненную с возможностью хранения базы данных;
- вычислительное устройство, выполненное с возможностью выполнения способа по любому из пп. 1-10.
12. Способ по п. 11, характеризующийся тем, что система идентификации пользователя по клавиатурному почерку является составной частью дистанционной системы банковского обслуживания.
13. Способ по п. 12, характеризующийся тем, что система идентификации пользователя является составной частью веб-сайта, подразумевающего авторизацию пользователей.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19917423.6A EP3842968B1 (en) | 2019-02-27 | 2019-02-27 | Method and system for identifying a user according to keystroke dynamics |
PCT/RU2019/000126 WO2020176005A1 (ru) | 2019-02-27 | 2019-02-27 | Способ и система идентификации пользователя по клавиатурному почерку |
SG11202101624WA SG11202101624WA (en) | 2019-02-27 | 2019-02-27 | Method and system for user identification by keystroke dynamics |
US17/171,078 US11934498B2 (en) | 2019-02-27 | 2021-02-09 | Method and system of user identification |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/RU2019/000126 WO2020176005A1 (ru) | 2019-02-27 | 2019-02-27 | Способ и система идентификации пользователя по клавиатурному почерку |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/171,078 Continuation US11934498B2 (en) | 2019-02-27 | 2021-02-09 | Method and system of user identification |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020176005A1 true WO2020176005A1 (ru) | 2020-09-03 |
Family
ID=72239648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/RU2019/000126 WO2020176005A1 (ru) | 2019-02-27 | 2019-02-27 | Способ и система идентификации пользователя по клавиатурному почерку |
Country Status (4)
Country | Link |
---|---|
US (1) | US11934498B2 (ru) |
EP (1) | EP3842968B1 (ru) |
SG (1) | SG11202101624WA (ru) |
WO (1) | WO2020176005A1 (ru) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11436310B1 (en) * | 2020-07-20 | 2022-09-06 | Two Six Labs, LLC | Biometric keystroke attribution |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2437100A (en) * | 2006-04-10 | 2007-10-17 | Univ Westminster | Biometric security system using keystroke dynamics of a user's login attempt |
KR20090022682A (ko) * | 2007-08-31 | 2009-03-04 | 주식회사 비원플러스 | 키스트로크 기반 행동 패턴 정보를 이용한 금융 거래서비스 제공 방법 및 시스템 |
KR100923179B1 (ko) * | 2007-08-16 | 2009-10-22 | 재단법인서울대학교산학협력재단 | 행동패턴 분석에 기초한 계정 공유 탐지 방법 및 시스템 |
GB2470579A (en) | 2009-05-27 | 2010-12-01 | Univ Abertay Dundee | A behavioural biometric security system using keystroke metrics |
WO2011039371A1 (de) | 2009-10-02 | 2011-04-07 | Psylock Gmbh | Kreuzweiser abgleich von tippverhalten zur authentifizierung und/oder identifizierung einer person |
US20130343616A1 (en) * | 2012-06-24 | 2013-12-26 | Neurologix Security Inc. | Biometrics based methods and systems for user authentication |
US20150169854A1 (en) | 2013-12-16 | 2015-06-18 | Iowa State University Research Foundation, Inc. | Capturing cognitive fingerprints from keystroke dynamics for active authentication |
US9590986B2 (en) | 2015-02-04 | 2017-03-07 | Aerendir Mobile Inc. | Local user authentication with neuro and neuro-mechanical fingerprints |
WO2017070600A1 (en) | 2015-10-21 | 2017-04-27 | Neurametrix, Inc. | System and method for authenticating a user through unique aspects of the user's keyboard of typing cadence data |
EP2477136B1 (en) | 2011-01-17 | 2018-04-11 | Deutsche Telekom AG | Method for continuously verifying user identity via keystroke dynamics |
KR20190018197A (ko) * | 2017-08-14 | 2019-02-22 | 인터리젠 주식회사 | 사용자 인증방법 및 장치 |
Family Cites Families (199)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7389351B2 (en) | 2001-03-15 | 2008-06-17 | Microsoft Corporation | System and method for identifying and establishing preferred modalities or channels for communications based on participants' preferences and contexts |
US7565692B1 (en) | 2000-05-30 | 2009-07-21 | At&T Wireless Services, Inc. | Floating intrusion detection platforms |
EP1338130B1 (en) | 2000-11-30 | 2006-11-02 | Lancope, Inc. | Flow-based detection of network intrusions |
US20020112048A1 (en) | 2000-12-11 | 2002-08-15 | Francois Gruyer | System and method for providing behavioral information of a user accessing on-line resources |
US7325252B2 (en) | 2001-05-18 | 2008-01-29 | Achilles Guard Inc. | Network security testing |
US20090138342A1 (en) | 2001-11-14 | 2009-05-28 | Retaildna, Llc | Method and system for providing an employee award using artificial intelligence |
US7225343B1 (en) | 2002-01-25 | 2007-05-29 | The Trustees Of Columbia University In The City Of New York | System and methods for adaptive model generation for detecting intrusions in computer systems |
US8132250B2 (en) | 2002-03-08 | 2012-03-06 | Mcafee, Inc. | Message profiling systems and methods |
EP1349081A1 (en) | 2002-03-28 | 2003-10-01 | LION Bioscience AG | Method and apparatus for querying relational databases |
US7496628B2 (en) | 2003-02-25 | 2009-02-24 | Susquehanna International Group, Llp | Electronic message filter |
US20040221171A1 (en) | 2003-05-02 | 2004-11-04 | Ahmed Ahmed Awad E. | Intrusion detector based on mouse dynamics analysis |
US8990928B1 (en) | 2003-12-11 | 2015-03-24 | Radix Holdings, Llc | URL salience |
US7392278B2 (en) | 2004-01-23 | 2008-06-24 | Microsoft Corporation | Building and using subwebs for focused search |
US8528086B1 (en) | 2004-04-01 | 2013-09-03 | Fireeye, Inc. | System and method of detecting computer worms |
US8539582B1 (en) | 2004-04-01 | 2013-09-17 | Fireeye, Inc. | Malware containment and security analysis on connection |
US8561177B1 (en) | 2004-04-01 | 2013-10-15 | Fireeye, Inc. | Systems and methods for detecting communication channels of bots |
US7953814B1 (en) | 2005-02-28 | 2011-05-31 | Mcafee, Inc. | Stopping and remediating outbound messaging abuse |
US8255532B2 (en) | 2004-09-13 | 2012-08-28 | Cisco Technology, Inc. | Metric-based monitoring and control of a limited resource |
US7540025B2 (en) | 2004-11-18 | 2009-05-26 | Cisco Technology, Inc. | Mitigating network attacks using automatic signature generation |
US8438400B2 (en) | 2005-01-11 | 2013-05-07 | Indigo Identityware, Inc. | Multiple user desktop graphical identification and authentication |
WO2006118968A2 (en) | 2005-04-29 | 2006-11-09 | Bharosa Inc. | System and method for fraud monitoring, detection, and tiered user authentication |
US20060253582A1 (en) | 2005-05-03 | 2006-11-09 | Dixon Christopher J | Indicating website reputations within search results |
US7877493B2 (en) | 2005-05-05 | 2011-01-25 | Ironport Systems, Inc. | Method of validating requests for sender reputation information |
US7609625B2 (en) | 2005-07-06 | 2009-10-27 | Fortinet, Inc. | Systems and methods for detecting and preventing flooding attacks in a network environment |
RU2333532C2 (ru) | 2005-07-07 | 2008-09-10 | Казанский государственный технический университет им. А.Н. Туполева | Способ формирования эталонных значений характеристики пользователя персонального компьютера |
US7730040B2 (en) | 2005-07-27 | 2010-06-01 | Microsoft Corporation | Feedback-driven malware detector |
US7707284B2 (en) | 2005-08-03 | 2010-04-27 | Novell, Inc. | System and method of searching for classifying user activity performed on a computer system |
US7631362B2 (en) | 2005-09-20 | 2009-12-08 | International Business Machines Corporation | Method and system for adaptive identity analysis, behavioral comparison, compliance, and application protection using usage information |
KR20070049514A (ko) | 2005-11-08 | 2007-05-11 | 한국정보보호진흥원 | 악성 코드 감시 시스템 및 이를 이용한 감시 방법 |
US8650080B2 (en) | 2006-04-10 | 2014-02-11 | International Business Machines Corporation | User-browser interaction-based fraud detection system |
US20070240230A1 (en) | 2006-04-10 | 2007-10-11 | O'connell Brian M | User-browser interaction analysis authentication system |
ATE540515T1 (de) | 2006-04-13 | 2012-01-15 | Art Of Defence Gmbh | Verfahren zur bereitstellung von webanwendungssicherheit |
US7984500B1 (en) | 2006-10-05 | 2011-07-19 | Amazon Technologies, Inc. | Detecting fraudulent activity by analysis of information requests |
US7865953B1 (en) | 2007-05-31 | 2011-01-04 | Trend Micro Inc. | Methods and arrangement for active malicious web pages discovery |
US8238669B2 (en) | 2007-08-22 | 2012-08-07 | Google Inc. | Detection and classification of matches between time-based media |
US7958555B1 (en) | 2007-09-28 | 2011-06-07 | Trend Micro Incorporated | Protecting computer users from online frauds |
US9779403B2 (en) | 2007-12-07 | 2017-10-03 | Jpmorgan Chase Bank, N.A. | Mobile fraud prevention system and method |
WO2009106998A1 (en) | 2008-02-28 | 2009-09-03 | Ipharro Media Gmbh | Frame sequence comparison in multimedia streams |
US8082187B2 (en) | 2008-05-07 | 2011-12-20 | AcademixDirect, Inc. | Method of generating a referral website URL using website listings in a cookie |
US8856937B1 (en) | 2008-06-27 | 2014-10-07 | Symantec Corporation | Methods and systems for identifying fraudulent websites |
US10027688B2 (en) | 2008-08-11 | 2018-07-17 | Damballa, Inc. | Method and system for detecting malicious and/or botnet-related domain names |
US8086480B2 (en) | 2008-09-25 | 2011-12-27 | Ebay Inc. | Methods and systems for activity-based recommendations |
US8606725B1 (en) | 2008-10-29 | 2013-12-10 | Emory University | Automatic client-side user-behavior analysis for inferring user intent |
US9177144B2 (en) | 2008-10-30 | 2015-11-03 | Mcafee, Inc. | Structural recognition of malicious code patterns |
US8850571B2 (en) | 2008-11-03 | 2014-09-30 | Fireeye, Inc. | Systems and methods for detecting malicious network content |
US8285830B1 (en) | 2009-01-06 | 2012-10-09 | Citizenhawk, Inc. | System and method for combating cybersquatting |
US8448245B2 (en) | 2009-01-17 | 2013-05-21 | Stopthehacker.com, Jaal LLC | Automated identification of phishing, phony and malicious web sites |
US8695091B2 (en) | 2009-02-11 | 2014-04-08 | Sophos Limited | Systems and methods for enforcing policies for proxy website detection using advertising account ID |
WO2010105184A2 (en) | 2009-03-13 | 2010-09-16 | Breach Security , Inc. | A method and apparatus for phishing and leeching vulnerability detection |
US8229219B1 (en) | 2009-08-06 | 2012-07-24 | Google Inc. | Full-length video fingerprinting |
US8600993B1 (en) | 2009-08-26 | 2013-12-03 | Google Inc. | Determining resource attributes from site address attributes |
US8396857B2 (en) | 2009-08-31 | 2013-03-12 | Accenture Global Services Limited | System to modify websites for organic search optimization |
EP2323046A1 (en) | 2009-10-16 | 2011-05-18 | Telefónica, S.A. | Method for detecting audio and video copy in multimedia streams |
US8625033B1 (en) | 2010-02-01 | 2014-01-07 | Google Inc. | Large-scale matching of audio and video |
US9501644B2 (en) | 2010-03-15 | 2016-11-22 | F-Secure Oyj | Malware protection |
US8612463B2 (en) | 2010-06-03 | 2013-12-17 | Palo Alto Research Center Incorporated | Identifying activities using a hybrid user-activity model |
US8260914B1 (en) | 2010-06-22 | 2012-09-04 | Narus, Inc. | Detecting DNS fast-flux anomalies |
RU2446459C1 (ru) | 2010-07-23 | 2012-03-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ проверки веб-ресурсов на наличие вредоносных компонент |
BR112013001925A2 (pt) | 2010-07-26 | 2017-06-13 | Yong Kim Ki | dispositivo de segurança integrado para controle de vírus de hacker |
US8924488B2 (en) | 2010-07-27 | 2014-12-30 | At&T Intellectual Property I, L.P. | Employing report ratios for intelligent mobile messaging classification and anti-spam defense |
KR101558715B1 (ko) | 2010-08-25 | 2015-10-07 | 룩아웃, 인코포레이티드 | 서버 결합된 멀웨어 방지를 위한 시스템 및 방법 |
EP2609537A1 (en) | 2010-08-26 | 2013-07-03 | Verisign, Inc. | Method and system for automatic detection and analysis of malware |
US8837769B2 (en) | 2010-10-06 | 2014-09-16 | Futurewei Technologies, Inc. | Video signature based on image hashing and shot detection |
US10262324B2 (en) | 2010-11-29 | 2019-04-16 | Biocatch Ltd. | System, device, and method of differentiating among users based on user-specific page navigation sequence |
US9626677B2 (en) | 2010-11-29 | 2017-04-18 | Biocatch Ltd. | Identification of computerized bots, and identification of automated cyber-attack modules |
US10949757B2 (en) | 2010-11-29 | 2021-03-16 | Biocatch Ltd. | System, device, and method of detecting user identity based on motor-control loop model |
US10621585B2 (en) | 2010-11-29 | 2020-04-14 | Biocatch Ltd. | Contextual mapping of web-pages, and generation of fraud-relatedness score-values |
US9690915B2 (en) | 2010-11-29 | 2017-06-27 | Biocatch Ltd. | Device, method, and system of detecting remote access users and differentiating among users |
IL209793A0 (en) * | 2010-12-06 | 2011-07-31 | Robert Moskovitch | A method for authentication and verification of user identity |
US8521667B2 (en) | 2010-12-15 | 2013-08-27 | Microsoft Corporation | Detection and categorization of malicious URLs |
CN102082792A (zh) | 2010-12-31 | 2011-06-01 | 成都市华为赛门铁克科技有限公司 | 钓鱼网页检测方法及设备 |
US8972412B1 (en) | 2011-01-31 | 2015-03-03 | Go Daddy Operating Company, LLC | Predicting improvement in website search engine rankings based upon website linking relationships |
US9275345B1 (en) | 2011-02-11 | 2016-03-01 | Allure Security Technology, Inc. | System level user behavior biometrics using feature extraction and modeling |
US8726376B2 (en) | 2011-03-11 | 2014-05-13 | Openet Telecom Ltd. | Methods, systems and devices for the detection and prevention of malware within a network |
US8402543B1 (en) | 2011-03-25 | 2013-03-19 | Narus, Inc. | Machine learning based botnet detection with dynamic adaptation |
RU107616U1 (ru) | 2011-03-28 | 2011-08-20 | Закрытое акционерное общество "Лаборатория Касперского" | Система быстрого анализа потока данных на наличие вредоносных объектов |
US9363278B2 (en) | 2011-05-11 | 2016-06-07 | At&T Mobility Ii Llc | Dynamic and selective response to cyber attack for telecommunications carrier networks |
US8151341B1 (en) | 2011-05-23 | 2012-04-03 | Kaspersky Lab Zao | System and method for reducing false positives during detection of network attacks |
US8555388B1 (en) | 2011-05-24 | 2013-10-08 | Palo Alto Networks, Inc. | Heuristic botnet detection |
CA2840992C (en) | 2011-07-08 | 2017-03-14 | Brad WARDMAN | Syntactical fingerprinting |
US20140173287A1 (en) | 2011-07-11 | 2014-06-19 | Takeshi Mizunuma | Identifier management method and system |
GB2493514B (en) | 2011-08-02 | 2015-04-08 | Qatar Foundation | Copy detection |
US8677472B1 (en) | 2011-09-27 | 2014-03-18 | Emc Corporation | Multi-point collection of behavioral data relating to a virtualized browsing session with a secure server |
US8645355B2 (en) | 2011-10-21 | 2014-02-04 | Google Inc. | Mapping Uniform Resource Locators of different indexes |
US8584235B2 (en) | 2011-11-02 | 2013-11-12 | Bitdefender IPR Management Ltd. | Fuzzy whitelisting anti-malware systems and methods |
US9519781B2 (en) | 2011-11-03 | 2016-12-13 | Cyphort Inc. | Systems and methods for virtualization and emulation assisted malware detection |
RU2487406C1 (ru) | 2011-11-24 | 2013-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ обнаружения вредоносных объектов, распространяемых через пиринговые сети |
US8660296B1 (en) | 2012-01-10 | 2014-02-25 | Google Inc. | Systems and methods for facilitating video fingerprinting using local descriptors |
US9185095B1 (en) | 2012-03-20 | 2015-11-10 | United Services Automobile Association (Usaa) | Behavioral profiling method and system to authenticate a user |
US9111090B2 (en) | 2012-04-02 | 2015-08-18 | Trusteer, Ltd. | Detection of phishing attempts |
RU2523114C2 (ru) | 2012-04-06 | 2014-07-20 | Закрытое акционерное общество "Лаборатория Касперского" | Способ анализа вредоносной активности в сети интернет, выявления вредоносных узлов сети и ближайших узлов-посредников |
US10304036B2 (en) | 2012-05-07 | 2019-05-28 | Nasdaq, Inc. | Social media profiling for one or more authors using one or more social media platforms |
RU2488880C1 (ru) | 2012-05-11 | 2013-07-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ адаптивной оптимизации проверки потока данных, передающихся по сети, на наличие угроз |
US9154517B2 (en) | 2012-06-19 | 2015-10-06 | AO Kaspersky Lab | System and method for preventing spread of malware in peer-to-peer network |
US9282117B2 (en) | 2012-07-24 | 2016-03-08 | Webroot Inc. | System and method to provide automatic classification of phishing sites |
RU2495486C1 (ru) | 2012-08-10 | 2013-10-10 | Закрытое акционерное общество "Лаборатория Касперского" | Способ анализа и выявления вредоносных промежуточных узлов в сети |
CN103685174B (zh) | 2012-09-07 | 2016-12-21 | 中国科学院计算机网络信息中心 | 一种不依赖样本的钓鱼网站检测方法 |
US9386030B2 (en) | 2012-09-18 | 2016-07-05 | Vencore Labs, Inc. | System and method for correlating historical attacks with diverse indicators to generate indicator profiles for detecting and predicting future network attacks |
US9215239B1 (en) | 2012-09-28 | 2015-12-15 | Palo Alto Networks, Inc. | Malware detection based on traffic analysis |
US10965775B2 (en) | 2012-11-20 | 2021-03-30 | Airbnb, Inc. | Discovering signature of electronic social networks |
RU2522019C1 (ru) | 2012-12-25 | 2014-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ обнаружения угроз в коде, исполняемом виртуальной машиной |
RU2530210C2 (ru) | 2012-12-25 | 2014-10-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ выявления вредоносных программ, препятствующих штатному взаимодействию пользователя с интерфейсом операционной системы |
RU2536664C2 (ru) | 2012-12-25 | 2014-12-27 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ автоматической модификации антивирусной базы данных |
RU129279U1 (ru) | 2013-01-09 | 2013-06-20 | ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "МФИ Софт" | Устройство обнаружения и защиты от аномальной активности на сети передачи данных |
US20160127402A1 (en) | 2014-11-04 | 2016-05-05 | Patternex, Inc. | Method and apparatus for identifying and detecting threats to an enterprise or e-commerce system |
US10425429B2 (en) | 2013-04-10 | 2019-09-24 | Gabriel Bassett | System and method for cyber security analysis and human behavior prediction |
CN105324786A (zh) | 2013-04-11 | 2016-02-10 | 布兰德席德有限公司 | 对品牌名称和域名进行保护的设备、***以及方法 |
GB201306628D0 (en) | 2013-04-11 | 2013-05-29 | F Secure Oyj | Detecting and marking client devices |
WO2014184711A2 (en) | 2013-05-13 | 2014-11-20 | Yandex Europe Ag | Method of and system for providing a client device with an automatic update of an ip address associated with a domain name |
US9357469B2 (en) | 2013-05-29 | 2016-05-31 | Rivada Networks, Llc | Methods and system for dynamic spectrum arbitrage with mobility management |
US9443075B2 (en) | 2013-06-27 | 2016-09-13 | The Mitre Corporation | Interception and policy application for malicious communications |
CN103368958A (zh) | 2013-07-05 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 一种网页检测方法、装置和*** |
RU2538292C1 (ru) | 2013-07-24 | 2015-01-10 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Способ обнаружения компьютерных атак на сетевую компьютерную систему |
KR102120823B1 (ko) | 2013-08-14 | 2020-06-09 | 삼성전자주식회사 | 비휘발성 메모리 장치의 독출 시퀀스 제어 방법 및 이를 수행하는 메모리 시스템 |
US9330258B1 (en) | 2013-09-30 | 2016-05-03 | Symantec Corporation | Systems and methods for identifying uniform resource locators that link to potentially malicious resources |
CN103491205B (zh) | 2013-09-30 | 2016-08-17 | 北京奇虎科技有限公司 | 一种基于视频搜索的关联资源地址的推送方法和装置 |
KR102197364B1 (ko) | 2013-10-21 | 2020-12-31 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 모바일 비디오 서치 기법 |
GB2520987B (en) | 2013-12-06 | 2016-06-01 | Cyberlytic Ltd | Using fuzzy logic to assign a risk level profile to a potential cyber threat |
IN2013CH05744A (ru) | 2013-12-12 | 2015-06-19 | Infosys Ltd | |
US20150363791A1 (en) | 2014-01-10 | 2015-12-17 | Hybrid Application Security Ltd. | Business action based fraud detection system and method |
US9262635B2 (en) | 2014-02-05 | 2016-02-16 | Fireeye, Inc. | Detection efficacy of virtual machine-based analysis with application specific events |
US9060018B1 (en) | 2014-02-05 | 2015-06-16 | Pivotal Software, Inc. | Finding command and control center computers by communication link tracking |
KR101514984B1 (ko) | 2014-03-03 | 2015-04-24 | (주)엠씨알시스템 | 홈페이지 악성코드 유포 탐지 시스템 및 방법 |
US9338181B1 (en) | 2014-03-05 | 2016-05-10 | Netflix, Inc. | Network security system with remediation based on value of attacked assets |
RU2543564C1 (ru) | 2014-03-20 | 2015-03-10 | Закрытое акционерное общество "Научно-производственное предприятие "Информационные технологии в бизнесе" | Система обнаружения и предотвращения вторжений на основе контроля доступа к ресурсам |
US9853997B2 (en) | 2014-04-14 | 2017-12-26 | Drexel University | Multi-channel change-point malware detection |
US9332022B1 (en) | 2014-07-07 | 2016-05-03 | Symantec Corporation | Systems and methods for detecting suspicious internet addresses |
US20160036837A1 (en) | 2014-08-04 | 2016-02-04 | Microsoft Corporation | Detecting attacks on data centers |
US9800592B2 (en) | 2014-08-04 | 2017-10-24 | Microsoft Technology Licensing, Llc | Data center architecture that supports attack detection and mitigation |
US9942250B2 (en) | 2014-08-06 | 2018-04-10 | Norse Networks, Inc. | Network appliance for dynamic protection from risky network activities |
KR101587161B1 (ko) | 2014-09-03 | 2016-01-20 | 한국전자통신연구원 | 실시간 네트워크 안티바이러스 수행 장치 및 방법 |
US9026840B1 (en) | 2014-09-09 | 2015-05-05 | Belkin International, Inc. | Coordinated and device-distributed detection of abnormal network device operation |
RU2589310C2 (ru) | 2014-09-30 | 2016-07-10 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ расчета интервала повторного определения категорий сетевого ресурса |
WO2016064919A1 (en) | 2014-10-21 | 2016-04-28 | Abramowitz Marc Lauren | Dynamic security rating for cyber insurance products |
US9945928B2 (en) | 2014-10-30 | 2018-04-17 | Bastille Networks, Inc. | Computational signal processing architectures for electromagnetic signature analysis |
JP6916112B2 (ja) | 2014-11-21 | 2021-08-11 | ブルヴェクター, インコーポレーテッドBluvector, Inc. | ネットワークデータ特性評価のシステムと方法 |
US10574675B2 (en) | 2014-12-05 | 2020-02-25 | T-Mobile Usa, Inc. | Similarity search for discovering multiple vector attacks |
US9367872B1 (en) | 2014-12-22 | 2016-06-14 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US9934376B1 (en) | 2014-12-29 | 2018-04-03 | Fireeye, Inc. | Malware detection appliance architecture |
US10230526B2 (en) | 2014-12-31 | 2019-03-12 | William Manning | Out-of-band validation of domain name system records |
US9712549B2 (en) | 2015-01-08 | 2017-07-18 | Imam Abdulrahman Bin Faisal University | System, apparatus, and method for detecting home anomalies |
CN104504307B (zh) | 2015-01-08 | 2017-09-29 | 北京大学 | 基于拷贝单元的音视频拷贝检测方法和装置 |
KR20160095856A (ko) | 2015-02-04 | 2016-08-12 | 한국전자통신연구원 | 새로운 공격 유형의 자동 탐지 및 공격 유형 모델 갱신을 통한 지능형 침입 탐지 시스템 및 방법 |
US11328307B2 (en) | 2015-02-24 | 2022-05-10 | OpSec Online, Ltd. | Brand abuse monitoring system with infringement detection engine and graphical user interface |
EP3065076A1 (en) | 2015-03-04 | 2016-09-07 | Secure-Nok AS | System and method for responding to a cyber-attack-related incident against an industrial control system |
US9253208B1 (en) | 2015-03-05 | 2016-02-02 | AO Kaspersky Lab | System and method for automated phishing detection rule evolution |
US9769201B2 (en) | 2015-03-06 | 2017-09-19 | Radware, Ltd. | System and method thereof for multi-tiered mitigation of cyber-attacks |
US9712553B2 (en) | 2015-03-27 | 2017-07-18 | The Boeing Company | System and method for developing a cyber-attack scenario |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US10382484B2 (en) | 2015-06-08 | 2019-08-13 | Illusive Networks Ltd. | Detecting attackers who target containerized clusters |
US9917852B1 (en) | 2015-06-29 | 2018-03-13 | Palo Alto Networks, Inc. | DGA behavior detection |
RU164629U1 (ru) | 2015-06-30 | 2016-09-10 | Акционерное общество "Институт точной механики и вычислительной техники имени С.А. Лебедева Российской академии наук" | Электронный модуль защиты от сетевых атак на базе сетевого процессора np-5 |
EP3125147B1 (en) | 2015-07-27 | 2020-06-03 | Swisscom AG | System and method for identifying a phishing website |
US20170032250A1 (en) | 2015-07-29 | 2017-02-02 | Ching-Ping Chang | Machine Status And User Behavior Analysis System |
US9456000B1 (en) | 2015-08-06 | 2016-09-27 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
CN106506435B (zh) | 2015-09-08 | 2019-08-06 | 中国电信股份有限公司 | 用于检测网络攻击的方法和防火墙*** |
WO2017049045A1 (en) | 2015-09-16 | 2017-03-23 | RiskIQ, Inc. | Using hash signatures of dom objects to identify website similarity |
KR101703446B1 (ko) | 2015-10-15 | 2017-02-06 | 숭실대학교산학협력단 | DoS 공격의 탐지가 가능한 네트워크 및 이의 제어 방법과, 상기 네트워크에 포함되는 게이트웨이 및 관리 서버 |
CN105429956B (zh) | 2015-11-02 | 2018-09-25 | 重庆大学 | 基于p2p动态云的恶意软件检测***及方法 |
US10200382B2 (en) | 2015-11-05 | 2019-02-05 | Radware, Ltd. | System and method for detecting abnormal traffic behavior using infinite decaying clusters |
US9894036B2 (en) | 2015-11-17 | 2018-02-13 | Cyber Adapt, Inc. | Cyber threat attenuation using multi-source threat data analysis |
RU2622870C2 (ru) | 2015-11-17 | 2017-06-20 | Общество с ограниченной ответственностью "САЙТСЕКЬЮР" | Система и способ оценки опасности веб-сайтов |
CN106709777A (zh) | 2015-11-18 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种订单聚类方法及装置,以及反恶意信息的方法及装置 |
RU2613535C1 (ru) | 2015-11-20 | 2017-03-16 | Илья Самуилович Рабинович | Способ обнаружения вредоносных программ и элементов |
US10594710B2 (en) | 2015-11-20 | 2020-03-17 | Webroot Inc. | Statistical analysis of network behavior using event vectors to identify behavioral anomalies using a composite score |
EP3373179B1 (en) | 2015-12-14 | 2019-08-07 | Mitsubishi Electric Corporation | Information processing device, information processing method, and information processing program |
US9723344B1 (en) | 2015-12-29 | 2017-08-01 | Google Inc. | Early detection of policy violating media |
US11069370B2 (en) | 2016-01-11 | 2021-07-20 | University Of Tennessee Research Foundation | Tampering detection and location identification of digital audio recordings |
RU2628192C2 (ru) | 2016-01-27 | 2017-08-15 | Акционерное общество "Творческо-производственное объединение "Центральная киностудия детских и юношеских фильмов им. М. Горького" | Устройство для семантической классификации и поиска в архивах оцифрованных киноматериалов |
US9900338B2 (en) | 2016-02-09 | 2018-02-20 | International Business Machines Corporation | Forecasting and classifying cyber-attacks using neural embeddings based on pattern of life data |
EP3424177B1 (en) | 2016-02-29 | 2021-10-13 | SecureKey Technologies Inc. | Systems and methods for distributed identity verification |
US10063572B2 (en) | 2016-03-28 | 2018-08-28 | Accenture Global Solutions Limited | Antivirus signature distribution with distributed ledger |
US10313382B2 (en) | 2016-03-29 | 2019-06-04 | The Mitre Corporation | System and method for visualizing and analyzing cyber-attacks using a graph model |
US10178107B2 (en) | 2016-04-06 | 2019-01-08 | Cisco Technology, Inc. | Detection of malicious domains using recurring patterns in domain names |
US10212145B2 (en) | 2016-04-06 | 2019-02-19 | Avaya Inc. | Methods and systems for creating and exchanging a device specific blockchain for device authentication |
CN105897714B (zh) | 2016-04-11 | 2018-11-09 | 天津大学 | 基于dns流量特征的僵尸网络检测方法 |
RU2625050C1 (ru) | 2016-04-25 | 2017-07-11 | Акционерное общество "Лаборатория Касперского" | Система и способ признания транзакций доверенными |
US11223598B2 (en) | 2016-05-03 | 2022-01-11 | Nokia Of America Corporation | Internet security |
US10685112B2 (en) | 2016-05-05 | 2020-06-16 | Cylance Inc. | Machine learning model for malware dynamic analysis |
RU2634211C1 (ru) | 2016-07-06 | 2017-10-24 | Общество с ограниченной ответственностью "Траст" | Способ и система анализа протоколов взаимодействия вредоносных программ с центрами управления и выявления компьютерных атак |
RU2636702C1 (ru) | 2016-07-07 | 2017-11-27 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и устройство для выбора сетевого ресурса в качестве источника содержимого для системы рекомендаций |
US20180012144A1 (en) | 2016-07-11 | 2018-01-11 | Qualcomm Innovation Center, Inc. | Incremental and speculative analysis of javascripts based on a multi-instance model for web security |
CN106131016B (zh) | 2016-07-13 | 2019-05-03 | 北京知道创宇信息技术有限公司 | 恶意url检测干预方法、***及装置 |
CN106202482B (zh) | 2016-07-18 | 2020-02-07 | 浪潮(北京)电子信息产业有限公司 | 一种基于用户行为分析的网站优化方法及*** |
US10212133B2 (en) | 2016-07-29 | 2019-02-19 | ShieldX Networks, Inc. | Accelerated pattern matching using pattern functions |
WO2018025157A1 (en) | 2016-07-31 | 2018-02-08 | Cymmetria, Inc. | Deploying deception campaigns using communication breadcrumbs |
RU2649793C2 (ru) | 2016-08-03 | 2018-04-04 | ООО "Группа АйБи" | Способ и система выявления удаленного подключения при работе на страницах веб-ресурса |
US10498761B2 (en) | 2016-08-23 | 2019-12-03 | Duo Security, Inc. | Method for identifying phishing websites and hindering associated activity |
CN106355450B (zh) | 2016-08-31 | 2020-04-24 | 深圳市联动精准科技有限公司 | 用户行为分析***和方法 |
RU172497U1 (ru) | 2016-10-20 | 2017-07-11 | Артем Константинович Вишневский | Биометрическое устройство разграничения доступа |
US10313352B2 (en) | 2016-10-26 | 2019-06-04 | International Business Machines Corporation | Phishing detection with machine learning |
WO2018095192A1 (zh) | 2016-11-23 | 2018-05-31 | 腾讯科技(深圳)有限公司 | 网站攻击的检测和防护方法及*** |
CN106713312A (zh) | 2016-12-21 | 2017-05-24 | 深圳市深信服电子科技有限公司 | 检测非法域名的方法及装置 |
RU2670030C2 (ru) | 2017-04-05 | 2018-10-17 | Общество С Ограниченной Ответственностью "Яндекс" | Способы и системы для определения нестандартной пользовательской активности |
US20190014149A1 (en) | 2017-07-06 | 2019-01-10 | Pixm | Phishing Detection Method And System |
CN107392456A (zh) | 2017-07-14 | 2017-11-24 | 武汉理工大学 | 一种融合互联网信息的多角度企业信用评估建模方法 |
RU2670906C9 (ru) | 2017-12-28 | 2018-12-12 | Общество С Ограниченной Ответственностью "Центр Разработки И Внедрения Инновационных Технологий" | Самонастраивающаяся интерактивная система, способ обмена сообщениями и/или звонками между пользователями различных веб-сайтов с использованием технологии клиент-сервер и считываемый компьютером носитель |
RU2681699C1 (ru) | 2018-02-13 | 2019-03-12 | Общество с ограниченной ответственностью "Траст" | Способ и сервер для поиска связанных сетевых ресурсов |
US11451532B2 (en) * | 2019-01-25 | 2022-09-20 | Dell Products L.P. | Behavioral biometrics and machine learning to secure website logins |
-
2019
- 2019-02-27 SG SG11202101624WA patent/SG11202101624WA/en unknown
- 2019-02-27 EP EP19917423.6A patent/EP3842968B1/en active Active
- 2019-02-27 WO PCT/RU2019/000126 patent/WO2020176005A1/ru unknown
-
2021
- 2021-02-09 US US17/171,078 patent/US11934498B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2437100A (en) * | 2006-04-10 | 2007-10-17 | Univ Westminster | Biometric security system using keystroke dynamics of a user's login attempt |
KR100923179B1 (ko) * | 2007-08-16 | 2009-10-22 | 재단법인서울대학교산학협력재단 | 행동패턴 분석에 기초한 계정 공유 탐지 방법 및 시스템 |
KR20090022682A (ko) * | 2007-08-31 | 2009-03-04 | 주식회사 비원플러스 | 키스트로크 기반 행동 패턴 정보를 이용한 금융 거래서비스 제공 방법 및 시스템 |
GB2470579A (en) | 2009-05-27 | 2010-12-01 | Univ Abertay Dundee | A behavioural biometric security system using keystroke metrics |
WO2011039371A1 (de) | 2009-10-02 | 2011-04-07 | Psylock Gmbh | Kreuzweiser abgleich von tippverhalten zur authentifizierung und/oder identifizierung einer person |
EP2477136B1 (en) | 2011-01-17 | 2018-04-11 | Deutsche Telekom AG | Method for continuously verifying user identity via keystroke dynamics |
US20130343616A1 (en) * | 2012-06-24 | 2013-12-26 | Neurologix Security Inc. | Biometrics based methods and systems for user authentication |
US20150169854A1 (en) | 2013-12-16 | 2015-06-18 | Iowa State University Research Foundation, Inc. | Capturing cognitive fingerprints from keystroke dynamics for active authentication |
US9590986B2 (en) | 2015-02-04 | 2017-03-07 | Aerendir Mobile Inc. | Local user authentication with neuro and neuro-mechanical fingerprints |
WO2017070600A1 (en) | 2015-10-21 | 2017-04-27 | Neurametrix, Inc. | System and method for authenticating a user through unique aspects of the user's keyboard of typing cadence data |
KR20190018197A (ko) * | 2017-08-14 | 2019-02-22 | 인터리젠 주식회사 | 사용자 인증방법 및 장치 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3842968A4 |
Also Published As
Publication number | Publication date |
---|---|
US11934498B2 (en) | 2024-03-19 |
US20210182369A1 (en) | 2021-06-17 |
EP3842968B1 (en) | 2024-04-24 |
SG11202101624WA (en) | 2021-03-30 |
EP3842968A4 (en) | 2022-03-16 |
EP3842968A1 (en) | 2021-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8766823B2 (en) | Keyboard configurations | |
US9600647B2 (en) | Multi-factor authentication | |
RU2533654C2 (ru) | Повышение биометрической защищенности системы | |
EP1472583B1 (en) | Method for supporting single sign on | |
US8997191B1 (en) | Gradual template generation | |
US20130326604A1 (en) | Rhythm-based authentication | |
US8549314B2 (en) | Password generation methods and systems | |
US11128613B2 (en) | Authentication based on visual memory | |
US20100146619A1 (en) | Electronic device and access control method thereof | |
JP2007018087A (ja) | 生体情報を用いたコード生成装置及びその方法 | |
CN108629174B (zh) | 字符串校验的方法及装置 | |
US20140136850A1 (en) | Password input system and method for inputting password | |
US20170249450A1 (en) | Device and Method for Authenticating a User | |
WO2020176005A1 (ru) | Способ и система идентификации пользователя по клавиатурному почерку | |
RU2801673C2 (ru) | Способ и система идентификации пользователя по клавиатурному почерку | |
Iapa et al. | Shared data set for free-text keystroke dynamics authentication algorithms | |
US11222101B1 (en) | User behavior analytics using keystroke analysis of pseudo-random character strings | |
US11429699B2 (en) | Systems and methods for authentication of a user based on free text | |
US20210067322A1 (en) | Keystroke dynamics anonimization | |
JP5356584B2 (ja) | 認証システム、認証方法、及びプログラム | |
CN110110517A (zh) | 判断日期型弱密码的方法 | |
US11888988B2 (en) | Two-factor authentication based on computation method to derive proxy password | |
Suruthi et al. | Efficient handwritten passwords to overcome spyware attacks | |
US20230057862A1 (en) | Fraud resistant passcode entry system | |
US11449597B2 (en) | Transposed passwords |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19917423 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019917423 Country of ref document: EP Effective date: 20210322 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |