CROSS-REFERENCES TO RELATED APPLICATIONS

This application is the US national stage of PCT/US2017/050519, filed Sep. 7, 2017, the disclosure of which is incorporated herein by reference in its entirety.

BACKGROUND

Users may implement an ever increasing number of functions on their communication devices. A communication device may now be used instead of other form factors to take actions. For example, a communication device may be provisioned with an account token to allow the user to securely perform transactions using the communication device, such as to make a purchase or to gain access to a secured area. The account token may represent sensitive data, and may be secure in that it hides and protects the sensitive data, such a credential, an account number, or an access code, that is needed to perform the transaction.

Because the account token may represent sensitive data and may allow a user to perform sensitive transactions, authentication may be required in order to provision the account token on the communication device. For example, device authentication may be performed to ensure that the communication device is a legitimate communication device capable of storing a provisioned account token. In another example, user authentication may be performed to ensure that the user of the communication device is an authorized user of the communication device and has permission to use the account token.

User authentication may require a user to, for example, enter a registered user name and password associated with a user account for each account token to be provisioned. Once the user name and password have been confirmed, the account token associated with that particular user account may be provisioned onto the communication device. In other words, for each account token desired to be provisioned on the communication device, a separate login process may be required. Thus, if multiple account tokens are needed on the communication device, multiple login processes may need to be performed. This may be time consuming and inefficient, and require the user to remember and correctly provide a potentially large amount of account data.

Embodiments of the invention address this and other problems, individually and collectively.

SUMMARY

According to some embodiments of the invention, a method is provided. The method comprises receiving, by a server computer, a signed key including a first public key signed by a first private key, wherein the first public key and the first private key are associated with a communication device of a user. The method further comprises transmitting, by the server computer, the first public key to one or more nodes on a blockchain. The one or more nodes generates a second public key and a second private key associated with the user of the communication device, digitally signs the first public key with the second private key to generate a digital signature, and records the digital signature on the one or more nodes of the blockchain. The method further comprises receiving, by the server computer, the digital signature from the one or more nodes of the blockchain. The method further comprises generating, by the server computer, a trust token using the digital signature. The method further comprises transmitting, by the server computer, the trust token to the communication device.

According to some embodiments of the invention, a method is provided. The method comprises receiving, by one or more nodes of a blockchain, a first public key from a first server computer. The public key is associated with a communication device of a user. The method further comprises generating, by the one or more nodes of the blockchain, a second public key and a second private key associated with the user of the communication device. The method further comprises signing, by the one or more nodes of the blockchain, the first public key with the second private key to generate a digital signature. The method further comprises recording, by the one or more nodes of the blockchain, the digital signature on the blockchain on the one or more nodes. The method further comprises transmitting, by the one or more nodes of the blockchain, the digital signature to the first server computer. The method further comprises receiving, by the one or more nodes, the digital signature from a second server computer in a request for a transaction. The method further comprises verifying, by the one or more nodes, the digital signature from the second server computer against the digital signature recorded at the one or more nodes. The method further comprises transmitting, by the one or more nodes, a verification of the digital signature to the second server computer, wherein the second server computer thereafter processes the request for the transaction.

According to some embodiments of the invention, a method is provided. The method comprises receiving input, on a communication device, corresponding to account data related to a user of the communication device. The method further comprises generating, by the communication device, a first public key and a first private key associated with the communication device. The method further comprises generating, by the communication device, a signed key including the first public key signed by the first private key. The method further comprises transmitting, by the communication device, the signed key to a first server computer, wherein the first server computer transmits the first public key to one or more nodes on a blockchain. The one or more nodes generate a second public key and a second private key associated with the user, digitally sign the first public key with the second private key to generate a digital signature, and record the digital signature to the one or more nodes on a blockchain. The method further comprises receiving, by the communication device, the digital signature. The method further comprises transmitting, by the communication device, the digital signature to a second server computer in a request for a transaction, wherein the second server computer thereafter receives a verification from the one or more nodes that the digital signature received from the communication device has been verified against the blockchain. The method further comprises processing, by the second server computer, the request for the transaction.

Embodiments of the invention are further directed to a server computer comprising a processor and a memory coupled to the processor. The memory can store instructions, executable by the processor, for implementing the methods described herein.

These and other embodiments of the invention are described in further detail below.

