case class XOnlyPubKey(bytes: ByteVector) extends PublicKey with Product with Serializable
Represents the x-coordinate of an ECPublicKey, with undetermined y-coordinate parity
- Alphabetic
- By Inheritance
- XOnlyPubKey
- Serializable
- Product
- Equals
- PublicKey
- NetworkElement
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new XOnlyPubKey(bytes: ByteVector)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def byteSize: Long
The size of the NetworkElement in bytes.
The size of the NetworkElement in bytes.
- Definition Classes
- NetworkElement
- val bytes: ByteVector
The byte representation of the NetworkElement
The byte representation of the NetworkElement
- Definition Classes
- XOnlyPubKey → NetworkElement
- def bytesLE: ByteVector
The byte representation of the NetworkElement in little endian
The byte representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- def checkTapTweak(internal: XOnlyPubKey, merkleRootOpt: Option[Sha256Digest], parity: Boolean): Boolean
- merkleRootOpt
the merkle root of the tapscript tree, if empty means we have no scripts in the tapscript tree
- parity
the expected parity of the public key reproduced
- See also
https://github.com/bitcoin/bitcoin/blob/3340d46cd363e568ce842b2a9930e30902d150ca/src/pubkey.cpp#L227
https://github.com/bitcoin-core/secp256k1/blob/9a5a87e0f1276e0284446af1172056ea4693737f/src/modules/extrakeys/main_impl.h#L151
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def computeTapTweakHash(merkleRootOpt: Option[Sha256Digest]): Sha256Digest
- merkleRootOpt
if merkle root is empty we have no scripts. The actual tweak does not matter, but follow BIP341 here to
- See also
https://github.com/bitcoin/bitcoin/blob/5174a139c92c1238f9700d06e362dc628d81a0a9/src/pubkey.cpp#L216
- def coord: CurveCoordinate
- def createTapTweak(merkleRootOpt: Option[Sha256Digest]): (KeyParity, XOnlyPubKey)
- merkleRootOpt
if the merkle root is empty we have no scripts.
- See also
https://github.com/bitcoin/bitcoin/blob/bdb33ec51986570ea17406c83bad2c955ae23186/src/pubkey.cpp#L249
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hex: String
The hexadecimal representation of the NetworkElement
The hexadecimal representation of the NetworkElement
- Definition Classes
- NetworkElement
- def hexLE: String
The hexadecimal representation of the NetworkElement in little endian
The hexadecimal representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def publicKey: ECPublicKey
- def publicKey(parity: KeyParity): ECPublicKey
- def schnorrPublicKey: SchnorrPublicKey
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()