Authenticating based on behavioral transactional patterns
Aspects described herein may allow for authenticating a user by generating a customized set of authentication questions based on patterns that are automatically detected and extracted from user data. The user data may include transaction data collected over a period of time. By automatically detecting user patterns that correspond to user behavior over a period of time, an authentication system may be able to generate information that is recognizable to an authentic user but difficult to guess or circumvent for any other user.
1. A method comprising:
receiving, from a user device, a request for access to an account associated with a user;
retrieving transaction data for the account, wherein the transaction data indicates a plurality of transactions;
generating, based on the transaction data, for each transaction of the plurality of transactions, machine learning inputs;
providing the machine learning inputs to a machine learning algorithm to yield one or more machine learning outputs;
generating, based on the one or more machine learning outputs, a spending pattern associated with the user;
determining a deviation between:
the spending pattern associated with the user, and
a spending pattern for an average user;
generating, based on the deviation, a question to authenticate the user;
receiving, from the user device, a response to the question; and
providing, to the user device and based on the response to the question, access to the account.
2. The method of claim 1 , wherein the generated machine learning inputs comprise one or more of:
a time of the transaction;
a location of the transaction;
a day of the transaction;
an amount of the transaction;
a merchant associated with the transaction; or
a type of the merchant associated with the transaction.
3. The method of claim 2 , wherein the spending pattern indicates at least one typical user behavior corresponding to at least one of one or more clusters of transactions.
4. The method of claim 1 , wherein the spending pattern indicates one or more of:
a time period during which a user typically makes a particular type of transaction;
a particular merchant that a user typically transacts with;
a particular type of merchant that a user typically transacts with;
a time period during which a user typically does not transact with any merchant; or
a time at which a user typically begins or ends an activity.
5. The method of claim 1 , wherein the question indicates a merchant or a type of merchant, and wherein the response to the question indicates a first time period during which the user typically transacts with the merchant or the type of merchant.
6. The method of claim 1 , wherein the response to the question indicates a merchant.
7. The method of claim 1 , wherein the question indicates a time period, wherein the response to the question indicates a first merchant that the user typically transacts with during the time period.
8. The method of claim 1 , wherein the response to the question comprises a selection of one of a plurality of merchants.
9. The method of claim 1 , further comprising:
generating, for the user, a fake spending pattern that does not overlap with the spending pattern for the user; and
generating a second question based on the fake spending pattern,
wherein the providing of access to the account is further based on a user response to the second question.
10. The method of claim 1 , wherein the deviation of the spending pattern corresponds to a difference in time between a type of purchases made by the user and a corresponding type of purchases made by the average user.
11. A computing device comprising:
one or more processors; and
memory storing instructions that, when executed by the one or more processors, cause the computing device to:
receive, from a user device, a request for access to an account associated with a user;
retrieve transaction data for the account, wherein the transaction data indicates a plurality of transactions;
generate, based on the transaction data, for each transaction of the plurality of transactions, machine learning inputs;
provide the machine learning inputs to a machine learning algorithm to yield one or more machine learning outputs;
generate, based on the one or more machine learning outputs, a spending pattern associated with the user;
determine a deviation between:
the spending pattern associated with the user, and
a spending pattern for an average user;
generate, based on the deviation, a question to authenticate the user;
receive, from the user device, a response to the question; and
provide, to the user device and based on the response to the question, access to the account.
12. The computing device of claim 11 , wherein the generated machine learning inputs comprise one or more of:
a time of the transaction;
a location of the transaction;
a day of the transaction;
an amount of the transaction;
a merchant associated with the transaction; or
a type of the merchant associated with the transaction.
13. The computing device of claim 11 , wherein the spending pattern indicates one or more of:
a time period during which a user typically makes a particular type of transaction;
a particular merchant that a user typically transacts with;
a particular type of merchant that a user typically transacts with;
a time period during which a user typically does not transact with any merchant; or
a time at which a user typically begins or ends an activity.
14. The computing device of claim 11 , wherein the question indicates a merchant or a type of merchant, and wherein the response to the question indicates a first time period during which the user typically transacts with the merchant or the type of merchant.
15. The computing device of claim 11 , wherein the question indicates a time period, wherein the response to the question indicates a first merchant that the user typically transacts with during the time period.
16. One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause a computing device to:
receive, from a user device, a request for access to an account associated with a user;
retrieve transaction data for the account, wherein the transaction data indicates a plurality of transactions;
generate, based on the transaction data, for each transaction of the plurality of transactions, machine learning inputs;
provide the machine learning inputs to a machine learning algorithm to yield one or more machine learning outputs;
generate, based on the one or more machine learning outputs, a spending pattern associated with the user;
determine a deviation between:
the spending pattern associated with the user, and
a spending pattern for an average user;
generate, based on the deviation, a question to authenticate the user;
receive, from the user device, a response to the question; and
provide, to the user device and based on the response to the question, access to the account.
17. The one or more non-transitory computer-readable media of claim 16 , wherein the generated machine learning inputs comprise one or more of:
a time of the transaction;
a location of the transaction;
a day of the transaction;
an amount of the transaction;
a merchant associated with the transaction; or
a type of the merchant associated with the transaction.
18. The one or more non-transitory computer-readable media of claim 16 , wherein the spending pattern indicates one or more of:
a time period during which a user typically makes a particular type of transaction;
a particular merchant that a user typically transacts with;
a particular type of merchant that a user typically transacts with;
a time period during which a user typically does not transact with any merchant; or
a time at which a user typically begins or ends an activity.
19. The one or more non-transitory computer-readable media of claim 16 , wherein the question indicates a merchant or a type of merchant, and wherein the response to the question indicates a first time period during which the user typically transacts with the merchant or the type of merchant.
20. The one or more non-transitory computer-readable media of claim 16 , wherein the question indicates a time period, wherein the response to the question indicates a first merchant that the user typically transacts with during the time period.