System and method for authenticating user identity
Advertisement targeting with a secure identity is described. A request pertaining to supplemental content targeted to an attribute of a user is posted from a requesting system to a blockchain. It is then determined that a user profile includes an attribute that matches with the attribute of the request via the blockchain. The supplemental content is then caused to be displayed in response to the determination that the user profile includes the attribute that matches with the attribute of the request and via a user interface of a device associated with a user associated with the user profile.
1. A computer-implemented method for advertisement targeting with a secure identity, the method comprising:
posting, from a requesting system to a blockchain, a request pertaining to supplemental content targeted to an attribute of a user;
determining, via the blockchain, that a user profile includes an attribute that matches with the attribute of the request; and
causing display, in response to the determination that the user profile includes the attribute that matches with the attribute of the request, and via a user interface of a device associated with a user associated with the user profile, of the supplemental content.
2. The method of claim 1 , wherein determining that the user profile includes the attribute that matches with the attribute of the request comprises performing, between the device associated with the user associated with the user profile and the requesting system, a zero-knowledge (ZK) proof.
3. The method of claim 2 , wherein the ZK proof is a zero-knowledge succinct non-interactive argument of knowledge (ZKSNARK).
4. The method of claim 1 , wherein the request is targeted to a plurality of attributes of the user, the user profile includes a plurality of attributes, and determining that the user profile includes the attribute that matches with the attribute of the request comprises determining that the plurality of attributes of the user profile match with the plurality of attributes of the request.
5. The method of claim 1 , wherein the user profile is encrypted.
6. The method of claim 5 , wherein the supplemental content is an advertisement.
7. The method of claim 1 , further comprising:
adding, to the blockchain, results of the matching of the attribute between the user profile and the request.
8. The method of claim 1 , wherein the request includes an amount of tokens to be held in escrow, the method further comprising:
transferring, in response to the determination that the user profile includes the attribute that matches with the attribute of the request, the amount of tokens to the user associated with the user profile.
9. The method of claim 1 , further comprising:
receiving additional user profile information; and
transferring, in response to receiving the additional user profile information, an amount of tokens to the user associated with the user profile.
10. The method of claim 1 , wherein posting the request comprises adding a transaction to the blockchain in sequence with other data broadcasted during a contemporary time window.
11. The method of claim 10 , wherein adding the transaction to the blockchain in sequence with other data broadcasted during the contemporary time window comprises adding the transaction to a new block or to an existing block of the blockchain.
12. The method of claim 1 , wherein the blockchain is a tamper-resistant ledger comprising a chronological ordering of a plurality of blocks.
13. A system comprising one or more processors and storage media storing instructions which, when executed by the one or more processors, cause:
posting, from a requesting system to a blockchain, a request pertaining to supplemental content targeted to an attribute of a user;
determining, via the blockchain, that a user profile includes an attribute that matches with the attribute of the request; and
causing display, in response to the determination that the user profile includes the attribute that matches with the attribute of the request, and via a user interface of a device associated with a user associated with the user profile, of the supplemental content.
14. The system of claim 13 , wherein the instructions when executed cause determining that the user profile includes the attribute that matches with the attribute of the request by performing, between the device associated with the user profile and the requesting system, a zero-knowledge (ZK) proof.
15. The system of claim 14 , wherein the ZK proof is a zero-knowledge succinct non-interactive argument of knowledge (ZKSNARK).
16. The system of claim 13 , wherein the request is targeted to a plurality of attributes of the user, the user profile includes a plurality of attributes, and the instructions when executed cause determining that the user profile includes the attribute that matches with the attribute of the request by determining that the plurality of attributes of the user profile match with the plurality of attributes of the request.
17. The system of claim 13 , the storage media stores further instructions which when executed cause:
adding, to the blockchain, results of the matching of the attribute between the user profile and the request.
18. The system of claim 13 , wherein the request includes an amount of tokens to be held in escrow, and the storage media stores further instructions which when executed cause:
transferring, in response to the determination that the user profile includes the attribute that matches with the attribute of the request, the amount of tokens to the user associated with the user profile.
19. The system of claim 13 , the storage media stores further instructions which when executed cause:
receiving additional user profile information; and
transferring, in response to receiving the additional user profile information, an amount of tokens to the user associated with the user profile.
20. The system of claim 13 , wherein the instructions when executed cause posting the request by adding a transaction to the blockchain in sequence with other data broadcasted during a contemporary time window.