Packages

object DLCUtil

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DLCUtil
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def buildOracleSignatures(announcements: OrderedAnnouncements, attestments: Vector[OracleAttestmentTLV]): Vector[OracleSignatures]

    Builds a set of oracle signatures from given announcements and attestations.

    Builds a set of oracle signatures from given announcements and attestations. This method discards attestments that do not have a matching announcement. Those attestments are not included in the returned set of OracleSignatures

  6. def buildOracleSignaturesNaive(announcements: OrderedAnnouncements, attestments: Vector[OracleAttestmentTLV]): Vector[OracleSignatures]
  7. def calcContractId(offer: DLCOffer, acceptWithoutSigs: DLCAcceptWithoutSigs): ByteVector
  8. def calcContractId(offer: DLCOffer, accept: DLCAccept): ByteVector
  9. def calcDLCPubKeys(xpub: ExtPublicKey, chainType: HDChainType, keyIndex: Int, networkParameters: NetworkParameters, externalPayoutAddressOpt: Option[BitcoinAddress]): DLCPublicKeys

    Calculates a DLCPublicKeys from the wallet's BIP39KeyManager

  10. def checkOracleSignaturesAgainstContract(contractInfo: ContractInfo, oracleSigs: Vector[OracleSignatures]): Boolean

    Checks that the oracles signatures given to us are correct Things we need to check

    Checks that the oracles signatures given to us are correct Things we need to check

    1. We have all the oracle signatures 2. The oracle signatures are for one of the contracts in the ContractInfo
    See also

    https://github.com/bitcoin-s/bitcoin-s/issues/4032

  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  12. def computeContractId(fundingTx: Transaction, outputIdx: Int, tempContractId: Sha256Digest): ByteVector

    fundingTx

    the transaction that contains the DLC funding output

    outputIdx

    the index of the output

    tempContractId

    the temporary contractId in the offer message

    See also

    https://github.com/discreetlogcontracts/dlcspecs/blob/master/Protocol.md#definition-of-contract_id

  13. def computeContractId(fundingTxId: DoubleSha256DigestBE, outputIdx: Int, tempContractId: Sha256Digest): ByteVector

    fundingTxId

    the id of the transaction that contains the DLC funding output

    outputIdx

    the index of the output

    tempContractId

    the temporary contractId in the offer message

    See also

    https://github.com/discreetlogcontracts/dlcspecs/blob/master/Protocol.md#definition-of-contract_id

  14. def computeOutcome(isInitiator: Boolean, offerFundingKey: ECPublicKey, acceptFundingKey: ECPublicKey, contractInfo: ContractInfo, localAdaptorSigs: Vector[(ECPublicKey, ECAdaptorSignature)], cet: WitnessTransaction): Option[(SchnorrDigitalSignature, OracleOutcome)]
  15. def computeOutcome(completedSig: ECDigitalSignature, possibleAdaptorSigs: Vector[(ECPublicKey, ECAdaptorSignature)]): Option[(FieldElement, ECPublicKey)]

    Given a ECDigitalSignature we found on the blockchain, and the set of possible adaptor signatures we have stored locally in our wallet we reverse engineer the actual outcome our counterparty broadcast

  16. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  19. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. def matchOracleSignatures(announcements: Vector[OracleAnnouncementTLV], oracleSignatures: Vector[OracleSignatures]): Option[OracleSignatures]
  23. def matchOracleSignatures(contractInfo: SingleContractInfo, oracleSignatures: Vector[OracleSignatures]): Option[OracleSignatures]

    Matches a SingleContractInfo to its oracle's signatures

  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  28. def toString(): String
    Definition Classes
    AnyRef → Any
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped