Pay to Taproot uses x-only pubkeys. In Bitcoin, a private key _d_ is a scalar, and its corresponding public key _Q_ is the elliptic curve point found by multiplying _d_ with the generator _G_ of secp256k1: _Q = d×G_ For every x-coordinate on the secp256k1 curve (except the generator), there exist exactly two y-coordinates that are each other’s negations: _Q = d×G_ and _-Q = -d×G_ The authors of the Taproot proposal [noticed][1] that they could save a whole byte by dropping what essentially amounts to sign of the public key at [no loss of security][2] by introducing a new serialization format called _x-only pubkeys_. [1]: https://blog.blockstream.com/reducing-bitcoin-transaction-sizes-with-x-only-pubkeys/ [2]: https://bitcoin.stackexchange.com/questions/90118/why-is-no-security-lost-by-using-32-byte-public-keys-in-schnorr-signatures-inste