El protocolo Schnorr es un algoritmo de firma electrónica basado en la criptografía de curva elíptica (ECC). Se utiliza en Bitcoin para derivar una clave pública a partir de una clave privada y para firmar una transacción con una clave privada. En Bitcoin, al igual que ECDSA, Schnorr se basa en el uso de la curva elíptica secp256k1, caracterizada por la ecuación: $y^2 = x^3 + 7$. El protocolo de firma Schnorr está implementado en el protocolo Bitcoin desde noviembre de 2021 con la activación de la actualización Taproot.