Cryptocurrency wallet with risk attribution
A computerized system and method for securing a cryptocurrency wallet is provided. A transaction proposed by a user of a cryptocurrency wallet is intercepted and an address of counterparty is extracted from the transaction. If the address of the counterparty matches with an address in an allow list, a risk score is displayed for the proposed transaction. In response to displaying the risk score, an indication whether to submit or abort the proposed transaction may be received. If the indication is to submit the proposed transaction, the transaction is submitted. If the indication is to abort the proposed transaction, the transaction is aborted. In some examples, the indication to submit or abort the proposed transaction may be automatically generated based on machine learning from user behavior with earlier transactions with similar risk scores.
1 . A computerized method for securing a cryptocurrency wallet, the computerized method comprising:
intercepting, in real time and prior to submission to a blockchain endpoint, using an interface of an approved cryptocurrency wallet of a user, a proposed transaction initiated by the user to an unapproved cryptocurrency wallet;
extracting, from the proposed transaction, an address of a counterparty to which a payment is to be made from the approved cryptocurrency wallet;
performing a fuzzy matching comparison of the address of the counterparty with a plurality of addresses in an allow list, the plurality of addresses representing addresses allowed for transactions using the approved cryptocurrency wallet;
based on the fuzzy matching comparison, determining whether the address of the counterparty matches more than a threshold percentage of at least one of the plurality of addresses in the allow list;
upon determining that the address of the counterparty matches more than the threshold percentage of the at least one of the plurality of addresses in the allow list, transmitting the address of the counterparty to a risk service that performs an on-chain, real-time risk analysis to generate a risk score;
causing display of the risk score for the proposed transaction via a graphical user interface of the approved cryptocurrency wallet;
in response to the display of the risk score, receiving an indication whether to submit or abort the proposed transaction;
upon determining that the indication is to submit the proposed transaction, presenting, by transforming the graphical user interface of the approved cryptocurrency wallet in real-time before the payment associated with the proposed transaction, an alert that the risk score has been acknowledged; and
upon determining that the indication is to abort the proposed transaction, aborting the proposed transaction before consumption of blockchain processing resources by the blockchain endpoint.
2 . The computerized method of claim 1 , further comprising modifying the approved cryptocurrency wallet to include a risk attribution application, that includes the allow list.
3 . The computerized method of claim 2 , wherein the risk attribution application is provided by a first entity different from a second entity providing a cryptocurrency wallet application having the approved cryptocurrency wallet of the user.
4 . The computerized method of claim 3 , further comprising:
adding the interface into the cryptocurrency wallet application, wherein the interface is an application programming interface.
5 . The computerized method of claim 1 , further comprising:
collecting data on an interaction history of the user based on a plurality of risk scores, the collected data including an action taken by the user for at least a threshold percentage of the plurality of risk scores;
training an interaction model based on the collected data on the interaction history of the user; and
predicting, using the trained interaction model, an action for the displayed risk score, the action comprising automatically submitting or automatically aborting the proposed transaction.
6 . The computerized method of claim 1 , further comprising:
upon determining that the address of the counterparty does not match any of the plurality of addresses in the allow list, blocking the proposed transaction.
7 . The computerized method of claim 1 , wherein the allow list includes addresses that have been used for transactions in the past.
8 . The computerized method of claim 1 , wherein the allow list is created by a supervisor of an organization of which the user is a member.
9 . A system comprising:
a processor; and
a memory storing instructions that upon execution by the processor cause the processor to:
intercept, in real time and prior to submission to a blockchain endpoint, using an interface of an approved cryptocurrency wallet, a proposed transaction initiated by a user to an unapproved cryptocurrency wallet;
extract, from the proposed transaction, an address of a counterparty to which a payment is to be made from the approved cryptocurrency wallet;
perform a fuzzy matching comparison of the address of the counterparty with a plurality of addresses in an allow list, the plurality of addresses representing addresses allowed for transactions using the approved cryptocurrency wallet;
based on the fuzzy matching comparison, determine whether the address of the counterparty matches more than a threshold percentage of at least one of the plurality of addresses in the allow list;
upon determining that the address of the counterparty matches more than the threshold percentage of the at least one of the plurality of addresses in the allow list, transmit the address of the counterparty to a risk service that performs an on-chain, real-time risk analysis to generate a risk score;
cause display of the risk score for the proposed transaction via a graphical user interface of the approved cryptocurrency wallet;
in response to the display of the risk score, automatically receive an indication whether to submit or abort the proposed transaction;
upon determining that the indication is to submit the proposed transaction, present, by transforming the graphical user interface of the approved cryptocurrency wallet, an alert, in real-time before the payment associated with the proposed transaction, that the risk score has been acknowledged; and
upon determining that the indication is to abort the proposed transaction, automatically abort the proposed transaction without consumption of blockchain processing resources by the blockchain endpoint.
10 . The system of claim 9 , wherein the instructions upon execution by the processor further cause the processor to:
collect data on an interaction history of the user based on a plurality of risk scores associated with a plurality of transactions, the collected data including an action taken by the user for at least a threshold percentage of the plurality of risk scores;
train an interaction model based on the collected data on the interaction history of the user; and
predict, using the trained interaction model, an action for the displayed risk score, the action comprising automatically generating the alert or automatically aborting the proposed transaction.
11 . The system of claim 10 , wherein the instructions upon execution by the processor further cause the processor to:
send the alert associated with the proposed transaction to the user;
in response to the alert, receive a response to submit or abort the proposed transaction; and
update the trained interaction model based on the received response.
12 . The system of claim 11 , wherein the instructions upon execution by the processor further cause the processor to:
upon determining that the response is to submit the proposed transaction, cause the payment associated with the proposed transaction from the approved cryptocurrency wallet; and
upon determining that the response is to abort the proposed transaction, automatically abort the proposed transaction without the payment associated with the proposed transaction from the approved cryptocurrency wallet.
13 . The system of claim 9 , wherein the instructions upon execution by the processor further cause the processor to:
upon determining that the address of the counterparty does not match any of the plurality of addresses in the allow list, block the proposed transaction.
14 . The system of claim 9 , wherein the allow list includes addresses that have been used for transactions in the past.
15 . A computer storage medium storing instructions that upon execution by a processor cause the processor to:
intercept, in real time and prior to submission to a blockchain endpoint, using an interface of an approved cryptocurrency wallet, a proposed transaction initiated by a user to an unapproved cryptocurrency wallet;
extract, from the proposed transaction, an address of a counterparty to which a payment is to be made from the approved cryptocurrency wallet;
perform a fuzzy matching comparison of the address of the counterparty with a plurality of addresses in an allow list, the plurality of addresses representing addresses allowed for transactions using the approved cryptocurrency wallet;
based on the fuzzy matching comparison, determine whether the address of the counterparty matches more than a threshold percentage of at least one of the plurality of addresses in the allow list;
upon determining that the address of the counterparty matches more than the threshold percentage of the at least one of the plurality of addresses in the allow list, transmit the address of the counterparty to a risk service that performs an on-chain, real-time risk analysis to generate a risk score;
cause display of the risk score for the proposed transaction via a graphical user interface of the approved cryptocurrency wallet;
in response to the display of the risk score, automatically receive an indication whether to submit or abort the proposed transaction;
upon determining that the indication is to submit the proposed transaction, present, by transforming the graphical user interface of the approved cryptocurrency wallet, an alert, in real-time before the payment associated with the proposed transaction, that the risk score has been acknowledged; and
upon determining that the indication is to abort the proposed transaction, automatically abort the proposed transaction without consumption of blockchain processing resources by the blockchain endpoint.
16 . The computer storage medium of claim 15 , wherein the instructions upon execution by the processor further cause the processor to:
collect data on an interaction history of the user based on a plurality of risk scores associated with a plurality of transactions, the collected data including an action taken by the user for at least a threshold percentage of the plurality of risk scores;
train an interaction model based on the collected data on the interaction history of the user; and
predict, using the trained interaction model, an action for the displayed risk score, the action comprising automatically generating the alert or automatically aborting the proposed transaction.
17 . The computer storage medium of claim 16 , wherein the instructions upon execution by the processor further cause the processor to:
send the alert associated with the proposed transaction to the user;
in response to the alert, receive a response to submit or abort the proposed transaction; and
update the trained interaction model based on the received response.
18 . The computer storage medium of claim 17 , wherein the instructions upon execution by the processor further cause the processor to:
upon determining that the response is to submit the proposed transaction, cause the payment associated with the proposed transaction from the approved cryptocurrency wallet; and
upon determining that the response is to abort the proposed transaction, automatically abort the proposed transaction without the payment associated with the proposed transaction from the approved cryptocurrency wallet.
19 . The computer storage medium of claim 15 , wherein the instructions upon execution by the processor further cause the processor to:
present a plurality of icons associated with a plurality of alerts for a plurality of proposed transactions, the plurality of icons being arranged based on risk scores associated with the plurality of alerts; and
automatically rearrange the plurality of icons by including an icon associated with the alert for the proposed transaction, the rearrangement of the plurality of icons including the icon being based on the risk scores including the risk score associated with the alert.
20 . The computer storage medium of claim 15 , wherein the plurality of addresses in the allow list includes addresses that have been used for historical transactions before more than a predetermined time period.