Research Article
TrustChain: A Privacy Preserving Blockchain with Edge Computing
Algorithm 1
ZKP with DH to Suppress Personal Information Exposure.
1: Trust Service selects two large random prime numbers p (Prime) and g (Generator) s.t. | |
ā256<p,g and communicate to both Alice and Bob. | |
2: Alice generates hash of her information and store in x=SHA256(Name, DoB, SSN). | |
3: Alice calculates k1=gx mod p and sends it to Bob. | |
4: Bob takes the hash of his request and store in y, s.t. 0<y<p. | |
5: Bob calculates k2=gy mod p and sends it to Alice. | |
6: Alice calculates the shared secret key, sk= (k2)xmod p. | |
7: Bob calculates the shared secret key, sk= (k1)ymod p. | |
8: Alice generates another random oracle v, s.t. 0<v<p. | |
9: Alice calculates her commitment, t= +. | |
10: Alice calculates the challenge, C=SHA256(g, sk, t). | |
11: Alice sends the response, r=(v.x ā C.x) mode p and challenge C to Bob. | |
12: Bob calculate the commitment, = gr. (k1)C +(k2) r. (sk)C and challenge =SHA256(g, sk, ). | |
13: If C=, Bob can satisfy that Alice has provided the requested information. |