Schnorr identification protocol over Curve25519
Schnorr identification is a simple protocol that lets a verifier verify the identity of a prover and is secure against eavesdropping attacks under the discrete logarithm assumption.
What is an identity? Given a cyclic group $G$ of prime order $q$ with generator $g \in G$, an identity is given by the public key of a key pair owned by the prover, which is generated as follows:
secret key is a random element $\alpha \in \mathbb{Z}_{q}$ public key is the group element $u = g^{\alpha} \in G$ How does it work?