Packages

package crypto

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package words

Type Members

  1. sealed abstract class BIP39Seed extends NetworkElement with MaskedToString
  2. sealed abstract class BaseTxSigComponent extends TxSigComponent

    The TxSigComponent used to evaluate the the original Satoshi transaction digest algorithm.

    The TxSigComponent used to evaluate the the original Satoshi transaction digest algorithm. Basically this is every spk that is not a WitnessScriptPubKey EXCEPT in the case of a P2SH(witness script) ScriptPubKey

  3. case class ChainCode(bytes: ByteVector) extends NetworkElement with Product with Serializable
  4. sealed abstract class ExtKey extends NetworkElement

    Represents an extended key as defined by BIP32 https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

  5. sealed abstract class ExtKeyPrivVersion extends ExtKeyVersion
  6. sealed abstract class ExtKeyPubVersion extends ExtKeyVersion
  7. sealed abstract class ExtKeyVersion extends NetworkElement
  8. sealed abstract class ExtPrivateKey extends ExtKey with ExtSign with MaskedToString
  9. case class ExtPrivateKeyHardened(version: ExtKeyPrivVersion, depth: UInt8, fingerprint: ByteVector, childNum: UInt32, chainCode: ChainCode, key: ECPrivateKey) extends ExtPrivateKey with Product with Serializable
  10. sealed abstract class ExtPublicKey extends ExtKey
  11. trait ExtSign extends Sign

    A signing interface for ExtKey

  12. sealed abstract class MnemonicCode extends SeqWrapper[String] with MaskedToString

    A mnemonic code conforming to BIP39.

    A mnemonic code conforming to BIP39. BIP39 mnemonic codes consist of a varying number of words (most often English, possible with other languages as well) that can be used to generate an ExtPrivateKey which again can be the root of a BIP32 HD wallet.

  13. sealed abstract class P2SHTxSigComponent extends BaseTxSigComponent
  14. sealed trait SignatureValidationError extends TransactionSignatureCheckerResult

    Indicates that there was an error when evaluating the signature of a transaction

  15. trait TransactionSignatureChecker extends BitcoinSLogger

    Created by chris on 2/16/16.

    Created by chris on 2/16/16. Responsible for checking digital signatures on inputs against their respective public keys

  16. sealed trait TransactionSignatureCheckerResult extends AnyRef

    The result type returned by checking a signature

  17. sealed abstract class TransactionSignatureCreator extends AnyRef

    Created by chris on 7/21/16.

  18. sealed abstract class TransactionSignatureSerializer extends BitcoinSLogger

    Created by chris on 2/16/16.

    Created by chris on 2/16/16. Wrapper that serializes like Transaction, but with the modifications required for the signature hash done https://github.com/bitcoin/bitcoin/blob/93c85d458ac3e2c496c1a053e1f5925f55e29100/src/script/interpreter.cpp#L1016-L1105 bitcoinj version of this https://github.com/bitcoinj/bitcoinj/blob/master/core/src/main/java/org/bitcoinj/core/Transaction.java#L924-L1008

  19. sealed abstract class TxSigComponent extends AnyRef

    Created by chris on 4/6/16.

    Created by chris on 4/6/16. Represents a transaction whose input is being checked against the spending conditions of a ScriptPubKey

  20. sealed trait WitnessTxSigComponent extends TxSigComponent

    The TxSigComponent used to represent all the components necessarily for BIP143.

    The TxSigComponent used to represent all the components necessarily for BIP143. Examples of these ScriptPubKey's are P2WPKHWitnessSPKV0, P2WSHWitnessSPKV0, and P2SH(witness script)

  21. sealed abstract class WitnessTxSigComponentP2SH extends P2SHTxSigComponent with WitnessTxSigComponent

    This represents checking the WitnessTransaction against a P2SH(P2WSH) or P2SH(P2WPKH) scriptPubKey

  22. sealed abstract class WitnessTxSigComponentRaw extends TxSigComponent with WitnessTxSigComponent

    This represents checking the WitnessTransaction against a P2WPKHWitnessSPKV0 or a P2WSHWitnessSPKV0

  23. sealed abstract class WitnessTxSigComponentRebuilt extends TxSigComponent

    This represents a 'rebuilt' ScriptPubKey that was constructed from WitnessScriptPubKey After the ScriptPubKey is rebuilt, we need to use that rebuilt scriptpubkey to evaluate the ScriptSignature See BIP141 for more info on rebuilding P2WSH and P2WPKH scriptpubkeys

Value Members

  1. object BIP39Seed extends Factory[BIP39Seed]

    See also

    BIP32

  2. object BaseTxSigComponent
  3. object ChainCode extends Factory[ChainCode] with Serializable
  4. object ECPrivateKeyUtil
  5. object ExtKey extends Factory[ExtKey] with StringFactory[ExtKey]
  6. object ExtKeyVersion

    See also

    SLIP132 for a list of registered HD version bytes

  7. object ExtPrivateKey extends Factory[ExtPrivateKey] with StringFactory[ExtPrivateKey]
  8. object ExtPrivateKeyHardened extends Factory[ExtPrivateKeyHardened] with StringFactory[ExtPrivateKeyHardened] with Serializable
  9. object ExtPublicKey extends Factory[ExtPublicKey] with StringFactory[ExtPublicKey]
  10. object MnemonicCode

    See also

    BIP39

  11. object P2SHTxSigComponent
  12. case object SignatureValidationErrorHashType extends SignatureValidationError with Product with Serializable

    Fails the script if the hash type is not defined on a digital signature

  13. case object SignatureValidationErrorHighSValue extends SignatureValidationError with Product with Serializable

    This indicates that the digital signature did not have a Low S value as per BIP62 https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki#Low_S_values_in_signatures

  14. case object SignatureValidationErrorIncorrectSignatures extends SignatureValidationError with Product with Serializable

    Signature validation failed because there were not enough correct signatures for the transaction we were given

  15. case object SignatureValidationErrorNotStrictDerEncoding extends SignatureValidationError with Product with Serializable

    Signature validation failed because a signature was not encoded per the BIP66 rules https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki#specification

  16. case object SignatureValidationErrorNullFail extends SignatureValidationError with Product with Serializable

    Fails the script if a an invalid signature is not an empty byte vector See BIP146 https://github.com/bitcoin/bips/blob/master/bip-0146.mediawiki#nullfail

  17. case object SignatureValidationErrorPubKeyEncoding extends SignatureValidationError with Product with Serializable

    This indicates that the public key was not encoded correctly according to this function https://github.com/bitcoin/bitcoin/blob/528472111b4965b1a99c4bcf08ac5ec93d87f10f/src/script/interpreter.cpp#L214-L223

  18. case object SignatureValidationErrorSignatureCount extends SignatureValidationError with Product with Serializable

    This indicates that the signature validation failed because we have more signatures left to check than public keys remaining to check them against see https://github.com/bitcoin/bitcoin/blob/master/src/script/interpreter.cpp#L914-915

  19. case object SignatureValidationErrorWitnessPubKeyType extends SignatureValidationError with Product with Serializable

    Fails the script if the given public key was not compressed and the org.bitcoins.core.script.flag.ScriptVerifyWitnessPubKeyType flag was set

  20. case object SignatureValidationSuccess extends TransactionSignatureCheckerResult with Product with Serializable

    Represents the case that the signatures checked inside of the transaction were all validly encoded as per the script verify flag & that the signatures were valid when checked against the public keys

  21. object TransactionSignatureChecker extends TransactionSignatureChecker
  22. object TransactionSignatureCreator extends TransactionSignatureCreator
  23. object TransactionSignatureSerializer extends TransactionSignatureSerializer
  24. object TxSigComponent
  25. object WitnessTxSigComponent
  26. object WitnessTxSigComponentP2SH
  27. object WitnessTxSigComponentRaw
  28. object WitnessTxSigComponentRebuilt

Ungrouped