Packages

package blockchain

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed abstract class Base58Type extends AnyRef
  2. sealed abstract class BitcoinChainParams extends ChainParams
  3. sealed abstract class Block extends NetworkElement

    Created by chris on 5/19/16.

    Created by chris on 5/19/16. Represents a block in our blockchain Bitcoin Core implementation: https://github.com/bitcoin/bitcoin/blob/master/src/primitives/block.h#L73 Bitcoin Developer Reference link: https://bitcoin.org/en/developer-reference#serialized-blocks

  4. sealed trait BlockHeader extends NetworkElement

    Nodes collect new transactions into a block, hash them into a hash tree, and scan through nonce values to make the block's hash satisfy proof-of-work requirements.

    Nodes collect new transactions into a block, hash them into a hash tree, and scan through nonce values to make the block's hash satisfy proof-of-work requirements. When they solve the proof-of-work, they broadcast the block to everyone and the block is added to the block chain. The first transaction in the block is a special one that creates a new coin owned by the creator of the block.

    See also

    Bitcoin Developer reference: https://bitcoin.org/en/developer-reference#block-headers

    Bitcoin Core implementation: https://github.com/bitcoin/bitcoin/blob/master/src/primitives/block.h#L20

  5. sealed abstract class ChainParams extends AnyRef

    Created by chris on 5/22/16.

    Created by chris on 5/22/16. ChainParams defines various tweakable parameters of a given instance of the Bitcoin system. There are three: the main network on which people trade goods and services, the public test network which gets reset from time to time and a regression test mode which is intended for private networks only. It has minimal difficulty to ensure that blocks can be found instantly.

    See also

    Mimics this C++ interface in Bitcoin Core

  6. sealed abstract class MerkleBlock extends NetworkElement

    Created by chris on 8/7/16.

  7. sealed trait PartialMerkleTree extends AnyRef

    Created by chris on 8/7/16.

    Created by chris on 8/7/16. Represents a subset of known txids inside of a Block in a way that allows recovery of the txids & merkle root without having to store them all explicitly. See BIP37 for more details

    Encoding procedure: "Bitcoin.org: creating a merkleblock message" "Bitcoin Core: merkleblock.cpp" Traverse the tree in depth first order, storing a bit for each traversal. This bit signifies if the node is a parent of at least one matched leaf txid (or a matched leaf txid) itself. In case we are the leaf level, or this bit is 0, it's merkle node hash is stored and it's children are not explored any further. Otherwise no hash is stored, but we recurse all of this node's child branches.

    Decoding procedure: "Bitcoin.org: parsing a merkleblock message" "Bitcoin Core: merkleblock.cpp" The same depth first decoding procedure is performed, but we consume the bits and hashes that we used during encoding

  8. case class SigNetChainParams(signetChallenge: ScriptPubKey = ScriptPubKey.fromAsmHex( "512103ad5e0edad18cb1f0fc0d28a3d4f1f3e445640337489abb10404f2d1e086be430210359ef5021964fe22d6f8e05b2463c9540ce96883fe3b278760f048f5189f2e6c452ae" )) extends BitcoinChainParams with Product with Serializable

Value Members

  1. object Base58Type
  2. object Block extends Factory[Block]

    Companion object for creating Blocks

  3. object BlockHeader extends Factory[BlockHeader]

    Companion object used for creating BlockHeaders

  4. object MainNetChainParams extends BitcoinChainParams

    The Main Network parameters.

  5. object MerkleBlock extends Factory[MerkleBlock]
  6. object PartialMerkleTree
  7. object RegTestNetChainParams extends BitcoinChainParams
  8. object TestNetChainParams extends BitcoinChainParams

Ungrouped