Techniques to control applets for contactless cards
Various embodiments are generally directed to techniques provide and control applets for transaction cards. More specifically, embodiments discussed here include permitting or denying applets of transaction cards based on whether they are enabled or disabled. Embodiments may also include enabling and disable applets for transaction cards.
1 . A non-transitory computer-readable storage medium storing computer-readable program code executable by a processor, wherein execution of the computer-readable program code causes the processor to:
receive, via a network interface, from a computing device, a communication to disable an applet stored on a contactless card, the communication comprising a counter value that is stored by the contactless card, encrypted data, and an applet identifier to identify the applet, the encrypted data comprising a combination of one or more blocks of random data and enciphered data, wherein the counter value is associated with the applet, wherein the computing device comprises one of a client device, an automatic teller machine (ATM), or a web-based application of a personal computer;
decrypt the encrypted data to determine the enciphered data;
validate the counter value based on the enciphered data;
determine a second counter value associated with the applet, the second counter value stored in a data store comprising a plurality of counter values, each respective counter value associated with a respective one of a plurality of applets, wherein the plurality of applets includes the applet, wherein the data store is communicatively coupled with the processor;
set the second counter value in the data store to a value to disable the applet for the contactless card; and
send a second communication to the one of the client device, the ATM, or the web-based application to indicate the applet is disabled.
2 . The computer-readable storage medium of claim 1 , the processor to set the value of the second counter value in the data store to a null value to disable the applet.
3 . The computer-readable storage medium of claim 1 , the processor to set the value of the second counter value in the data store to a number greater than the counter value received in the communication to disable the applet.
4 . The computer-readable storage medium of claim 1 , the processor to set the value of the second counter value in the data store to a specified value to disable the applet.
5 . The computer-readable storage medium of claim 1 , the processor to receive in the communication an identifier to identify an account associated with the contactless card, perform a lookup in the data store based on the identifier to determine the second counter value associated with the applet, and retrieve the second counter value from the plurality of counter values stored in the data store.
6 . The computer-readable storage medium of claim 1 , the processor to determine the applet is enabled for the contactless card prior to setting the second counter value to a null value, a number greater than the counter value, or a specified value to disable the applet.
7 . The computer-readable storage medium of claim 6 , the processor to determine the counter value matches the second counter value based on a comparison to determine the applet is enabled.
8 . The computer-readable storage medium of claim 6 , the processor to determine the counter value is greater than the second counter value based on a comparison to determine the applet is enabled, wherein the plurality of counter values are initially set at a time of manufacture.
9 . A non-transitory computer-readable storage medium storing computer-readable program code executable by a processor, wherein execution of the computer-readable program code causes the processor to:
receive, via a network interface, from a computing device, a communication to enable an applet stored on a contactless card, the communication comprising a counter value stored on the contactless card, encrypted data, and an applet identifier to identify the applet, the encrypted data comprising a combination of a random number and encoded data wherein the counter value is associated with the applet, wherein the computing device comprises one of a client device, an automatic teller machine (ATM), or a web-based application of a personal computer;
decrypt the encrypted data to determine the encoded data;
validate the counter value based on the encoded data;
determine a second counter value associated with the applet, the second counter value stored in a data store comprising a plurality of counter values, each respective counter value associated with a respective one of a plurality of applets, wherein the plurality of applets includes the applet, wherein the data store is communicatively coupled with the processor;
set the second counter value in the data store to a value to enable the applet for the contactless card; and
send a second communication to the one of the client device, the ATM, or the web-based application to indicate the applet is enabled.
10 . The computer-readable storage medium of claim 9 , the processor to set the value of the second counter value in the data store to the counter value to enable the applet.
11 . The computer-readable storage medium of claim 9 , the processor to set the value of the second counter value in the data store to a number less than the counter value received in the communication to enable the applet.
12 . The computer-readable storage medium of claim 9 , the processor to receive in the communication an identifier to identify an account associated with the contactless card, perform a lookup in the data store based on the identifier to determine the second counter value associated with the applet, and retrieve the second counter value from the plurality of counter values stored in the data store.
13 . The computer-readable storage medium of claim 9 , the processor to determine the applet is disabled for the contactless card prior to setting the value to the counter value, or a number less than the counter value to enable the applet.
14 . The computer-readable storage medium of claim 13 , the processor to determine the second counter value is set to a null value to determine the applet is disabled.
15 . The computer-readable storage medium of claim 13 , the processor to determine the counter value is less than the second counter value or greater than the second counter value to determine whether the applet is enabled.
16 . A method, comprising:
receiving, by a server, from a mobile device, a communication to enable an applet for use to perform transactions, the applet stored and executable on a contactless card, the communication comprising a counter value stored on the contactless card, an encoded encrypted data, and an applet identifier to identify the applet, the encoded encrypted data comprising an encoded combination of a random number and encrypted data, wherein the counter value is associated with the applet, wherein the mobile device comprises one of a client device, an automatic teller machine (ATM), or a web-based application of a personal computer;
decrypting the encoded encrypted data to determine the encrypted data;
validating the counter value based on the encrypted data;
determining, by the server, a corresponding counter value associated with the applet based on information received in the communication, the corresponding counter value stored in a data store, wherein the data store is communicatively coupled with the server;
setting, by the server, the corresponding counter value in the data store to a value to enable the applet for the contactless card; and
send a second communication to the one of the client device, the ATM, or the web-based application to indicate the applet is enabled.
17 . The method of claim 16 , comprising determining the corresponding counter value is set to a null value to determine the applet is disabled.
18 . The method of claim 16 , comprising determining the counter value is less than the corresponding counter value or greater than the corresponding counter value to determine whether the applet is enabled.
19 . The method of claim 16 , comprising setting the value of the corresponding counter value in the data store to the counter value to enable the applet.
20 . The method of claim 16 , comprising setting the value of the corresponding counter value in the data store to a number less than the counter value received in the communication to enable the applet.