SYSTEMS, METHODS, AND PROTOCOLS FOR ZERO KNOWLEDGE PROOF USER AUTHENTICATION
Systems and methods for performing zero knowledge proofs to prove a user's possession of secret data and/or biometric data without exposing such data. The methods can include receiving a certificate signing request and biometric data associated with a user; creating a stable key based at least in part on the biometric data; creating a private key based at least in part on the stable key; transmitting the private key to the user device for local storage thereon; creating a public key based at least in part on the private key; and forwarding the certificate signing request to an issuer.
1 . A method comprising:
receiving a certificate signing request from a user device associated with a user;
receiving, from the user device, biometric data associated with the user;
creating a stable key based at least in part on the biometric data;
creating a private key based at least in part on the stable key;
transmitting the private key to the user device for local storage thereon;
creating a public key based at least in part on the private key; and
forwarding the certificate signing request to an issuer.
2 . The method of claim 1 , further comprising receiving additional user-related data.
3 . The method of claim 2 , wherein the additional user-related data comprises data indicative of an identification document associated with the user.
4 . The method of claim 3 , wherein the issuer is an identity service provider.
5 . The method of claim 4 , wherein creating the private key comprises:
creating a derived key based at least in part on the stable key; and
creating the private key based at least in part on the derived key.
6 . The method of claim 1 , wherein the issuer is an attribute service provider.
7 . The method of claim 6 , further comprising receiving additional user-related data comprising an age-indicating image of the user.
8 . A system comprising:
one or more processors; and
memory having instructions stored thereon that, when executed by the one or more processors, cause the system to:
receive a certificate signing request from a user device associated with a user;
receive, from the user device, biometric data associated with the user;
create a stable key based at least in part on the biometric data;
create a private key based at least in part on the stable key;
transmit the private key to the user device for local storage thereon;
create a public key based at least in part on the private key; and
forward the certificate signing request to an issuer.
9 . The system of claim 8 , wherein the instructions, when executed by the one or more processors, further cause the system to receive additional user-related data.
10 . The system of claim 9 , wherein the additional user-related data comprises data indicative of an identification document associated with the user.
11 . The system of claim 10 , wherein the issuer is an identity service provider.
12 . The system of claim 11 , wherein creating the private key comprises:
creating a derived key based at least in part on the stable key; and
creating the private key based at least in part on the derived key.
13 . The system of claim 8 , wherein the issuer is an attribute service provider.
14 . The system of claim 13 , wherein the instructions, when executed by the one or more processors, further cause the system to receive additional user-related data comprising an age-indicating image of the user.
15 . A non-transitory, computer-readable medium having instructions stored thereon that, when executed by one or more processors of a system, cause the system to:
receive a certificate signing request from a user device associated with a user;
receive, from the user device, biometric data associated with the user;
create a stable key based at least in part on the biometric data;
create a private key based at least in part on the stable key;
transmit the private key to the user device for local storage thereon;
create a public key based at least in part on the private key; and
forward the certificate signing request to an issuer.
16 . The non-transitory, computer-readable medium of claim 15 , wherein the instructions, when executed by the one or more processors, further cause the system to receive additional user-related data.
17 . The non-transitory, computer-readable medium of claim 16 , wherein the additional user-related data comprises data indicative of an identification document.
18 . The method of claim 3 , wherein the issuer is an identity service provider.
19 . The non-transitory, computer-readable medium of claim 17 , wherein creating the private key comprises:
creating a derived key based at least in part on the stable key; and
creating the private key based at least in part on the derived key.
20 . The non-transitory, computer-readable medium of claim 15 , wherein:
the issuer is an attribute service provider; and
the instructions, when executed by the one or more processors, further cause the system to receive additional user-related data comprising an age-indicating image of the user.