Member-only story
The Magic of Schnorr and Fiat-Shamir … Meet NI-ZKPs
With Zero-Knowledge Proofs (ZKPs), I can prove I have knowledge of my data, without revealing it. This might relate to my password, my face biometrics, or even any digital data that I want to keep secret. So, let’s take an example of doing with the Schnorr methods and which implement a Fiat-Shamir approach. Our approach will be for Bob to register a secret (such as a password), and then create his own proof whenever required (such as logging into a system). Alice will then prove that he knows the secret, without Bob ever revealing it to her. As Bob generates his own proof, we define this as a Non-Interactive ZKP (NI-ZKP).
For the demo, I will use the Kryptology library for this and prove the knowledge of a text string. The demo is here:
https://asecuritysite.com/kryptology/ecc_zkp?b0=Testing%20123&a0=K256
Registering the secret
If we have a secret X, Bob first takes a hash of this:
X=Hash(x)
Bob then computes a statement (Y) of:
Y=X.G
and where G is the base point on the curve. This statement value can be registered with Alice, and Bob can now prove it with (C,S).
