# Schnorr Signature
## Metadata
**Status**:: #x
**Zettel**:: #zettel/fleeting
**Created**:: [[2024-03-06]]
**URL**:: [wikipedia.org](https://en.wikipedia.org/wiki/Schnorr_signature)
## Synopsis
The signature scheme was constructed by applying the [[Fiat–Shamir Transformation]] to Schnorr's identification protocol.
### Key Generation
- Choose a private key $x$
- The public key is $y=g^x$
### Signing
To sign a message $M$:
- Choose a random $k$
- Let $r = g^k$
- Let $e = H(r \parallel M)$
- Hashing r to avoid extracting k from s.
- Let $s = k - xe$
- k: random key
- x: private key
- e: message digest
The signature is the pair $(s, e)$.
### Verifying
Given $M, y, s, e$:
- Let $r_v = g^sy^e$
- Let $e_v = H(r_v \parallel M)$
- Test whether $e_v = e$
### Proof
$
r_v = g^sy^e = g^{k-xe}g^{xe}=g^k=r
$
## References
### Answers from Perplexity
To learn about Schnorr signatures, you can start by understanding the basic principles and algorithms involved. The Wikipedia page on Schnorr signatures provides a concise overview of the scheme and its security properties[^1]. Additionally, you can explore other resources that delve into specific aspects of Schnorr signatures, such as their use in signcryption schemes[^3], their resilience in multi-party cryptographic protocols[^4], and their subliminal-free properties[^5]. For a more technical understanding, you may want to read papers that discuss the security of Schnorr signatures in various models, such as the algebraic group model[^7] and the use of honey encryption to protect secret keys[^9]. Finally, there are also applications of Schnorr signatures in blockchain and digital currency contexts[^8] and in Byzantine fault-tolerant systems[^10].
Citations:
[^1]: https://en.wikipedia.org/wiki/Schnorr_signature
[^2]: https://www.youtube.com/results?search_query=learn+schnorr+signature
[^3]: https://www.semanticscholar.org/paper/b0b48564357cb51d60d152776b5c47513ff7f50d
[^4]: https://www.semanticscholar.org/paper/b6c0e75e547ad6d3e392065b37e86e8c126e3961
[^5]: https://www.semanticscholar.org/paper/d58e5f95b75507e65280fac2de870d6853974b0a
[^6]: https://www.semanticscholar.org/paper/f4e2ec2dea1a05825881eb5867164436fd0447b7
[^7]: https://www.semanticscholar.org/paper/82eadad8244a1d2f743c26dcf3b9652a86cebb80
[^8]: https://www.semanticscholar.org/paper/ffa834cf14182f2a96ec64679032c73c14f2b2b0
[^9]: https://www.semanticscholar.org/paper/136bc4b5249600a8a609e0b040a2cfd083cc226c
[^10]: https://www.semanticscholar.org/paper/2770fb2a5757e32601d85d7a47e7daabe3aeb152