Time-based function back-off
AssigneeRed Hat, Inc.
InventorsRobert Relyea, Robert B. Lord, Steven William Parkinson
Life of this patent
Estimating the term…
Abstract
An embodiment generally relates to a method of increasing user convenience. The method includes displaying a log-in user interface and receiving an authentication attempt in the log-in user interface. The method also includes determining a status of the authentication attempt and delaying a completion of an authentication attempt by a time-based function in response to a status being a failed authentication attempt.
Claims26
A method comprising:
- identifying a security token associated with a user;
- receiving an authentication attempt in a log-in user interface at a client machine, the authentication attempt comprising a credential associated with the security token;
- determining a time interval between the authentication attempt and a previous authentication attempt;
- comparing the time interval to a reset time limit;
- in response to the time interval being less than the reset time limit, maintaining, by the client machine, a number of authentication attempts in a counter;
- determining that the authentication attempt has failed;
- calculating, by a processing device of the client machine, using at least one of an exponential function or a linear function, a delay for accepting further authentication attempts associated with the security token in view of the number of authentication attempts;
- determining whether the calculated delay exceeds a limit value;
- reducing the calculated delay to the limit value in response to the calculated delay exceeding the limit value;
- adding a wait time specified by the security token to the calculated delay to calculate a total delay for accepting further authentication attempts
- detecting, by the client machine, a removal of the security token from the client machine;
- and
- in response to the removal, resetting, by the client machine, the number of authentication attempts in the counter.
A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform operations comprising:
- identifying a security token associated with a user;
- receiving an authentication attempt in a log-in user interface at a client machine, the authentication attempt comprising a credential associated with the security token;
- determining a time interval between the authentication attempt and a previous authentication attempt;
- comparing the time interval to a reset time limit;
- in response to the time interval being less than the reset time limit, maintaining, by the processing device of the client machine, a number of authentication attempts in a counter;
- determining by the processing device of the client machine that the authentication attempt has failed;
- calculating, by the processing device of the client machine, using at least one of an exponential function or a linear function, a delay for accepting further authentication attempts associated with the security token in view of the number of authentication attempts;
- determining whether the calculated delay exceeds a limit value;
- reducing the calculated delay to the limit value in response to the calculated delay exceeding the limit value;
- adding a wait time specified by the security token to the calculated delay to calculate a total delay for accepting further authentication attempts
- detecting, by the processing device of the client machine, a removal of the security token from the client machine;
- and
- in response to the removal, resetting, by the processing device of the client machine, the number of authentication attempts in the counter.
A system comprising:
- a server to provide application and data services to a plurality of users;
- and at least one client comprising a processing device and a memory to store a delay module to interface with the server, wherein the delay module to:
- identify a security token associated with a user of the plurality of users;
- monitor a number of authentication attempts by the user for the at least one client, each of the authentication attempts comprising a credential associated with the security token;
- determine a time interval between a current authentication attempt and a previous authentication attempt;
- compare the time interval to a reset time limit;
- in response to the time interval being less than the reset time limit, maintain the number of authentication attempts in a counter;
- calculate, using at least one of an exponential function or a linear function, a delay for accepting further authentication attempts associated with the security token, wherein the delay is calculated in view of the number of authentication attempts;
- determine whether the calculated delay exceeds a limit value;
- reduce the calculated delay to the limit value in response to the calculated delay exceeding the limit value;
- add a wait time specified by the security token to the calculated delay to calculate a total delay for accepting further authentication attempts
- detect a removal of the security token from the client machine;
- and
- in response to the removal, reset the number of authentication attempts in the counter.
An apparatus, comprising:
- a memory to store a delay module, to interface with an existing log-in process executing on a computing platform of a client machine, and a counter to maintain a number of failed authentication attempts;
- and
- a processing device, operatively coupled to the memory, the processing device to execute the delay module to:
- identify a security token associated with a user;
- determine a time interval between a current authentication attempt and a previous authentication attempt, the current authentication attempt and the previous authentication attempt each comprising a credential associated with the security token;
- compare the time interval to a reset time limit;
- in response to the time interval being less than the reset time limit, maintain the number of failed authentication attempts in the counter;
- monitor each authentication attempt to determine whether the authentication attempt has failed;
- calculate, using at least one of an exponential function or a linear function, a delay for further authentication attempts associated with the security token in view of the number of failed authentication attempts in response to the authentication having failed;
- determine whether the calculated delay exceeds a limit value;
- reduce the calculated delay to the limit value in response to the calculated delay exceeding the limit value;
- adding a wait time specified by the security token to the calculated delay to calculate a total delay for accepting further authentication attempts
- detect a removal of the security token from the client machine;
- and
- in response to the removal, reset the number of authentication attempts in the counter.
Dependencies are inferred from the claim text.