Class DeterministicKeyChain.Builder<T extends DeterministicKeyChain.Builder<T>>

java.lang.Object
org.bitcoinj.wallet.DeterministicKeyChain.Builder<T>
Enclosing class:
DeterministicKeyChain

public static class DeterministicKeyChain.Builder<T extends DeterministicKeyChain.Builder<T>> extends Object
  • Field Details

  • Constructor Details

    • Builder

      protected Builder()
  • Method Details

    • self

      protected T self()
    • entropy

      public T entropy(byte[] entropy, Instant creationTime)
      Creates a deterministic key chain starting from the given entropy. All keys yielded by this chain will be the same if the starting entropy is the same. You should provide the creation time for the chain: this lets us know from what part of the chain we can expect to see derived keys appear.
      Parameters:
      entropy - entropy to create the chain with
      creationTime - creation time for the chain
    • entropy

      @Deprecated public T entropy(byte[] entropy, long creationTimeSecs)
      Deprecated.
    • seed

      public T seed(DeterministicSeed seed)
      Creates a deterministic key chain starting from the given seed. All keys yielded by this chain will be the same if the starting seed is the same.
    • random

      public T random(SecureRandom random, int bits)
      Generates a new key chain with entropy selected randomly from the given SecureRandom object and of the requested size in bits. The derived seed is further protected with a user selected passphrase (see BIP 39).
      Parameters:
      random - the random number generator - use new SecureRandom().
      bits - The number of bits of entropy to use when generating entropy. Either 128 (default), 192 or 256.
    • random

      public T random(SecureRandom random)
      Generates a new key chain with 128 bits of entropy selected randomly from the given SecureRandom object. The derived seed is further protected with a user selected passphrase (see BIP 39).
      Parameters:
      random - the random number generator - use new SecureRandom().
    • watch

      public T watch(DeterministicKey accountKey)
      Creates a key chain that watches the given account key.
    • spend

      public T spend(DeterministicKey accountKey)
      Creates a key chain that can spend from the given account key.
    • outputScriptType

      public T outputScriptType(ScriptType outputScriptType)
    • passphrase

      public T passphrase(String passphrase)
      The passphrase to use with the generated mnemonic, or null if you would like to use the default empty string. Currently must be the empty string.
    • accountPath

      public T accountPath(List<ChildNumber> accountPath)
      Use an account path other than the default DeterministicKeyChain.ACCOUNT_ZERO_PATH.
    • build

      public DeterministicKeyChain build()
    • getPassphrase

      protected String getPassphrase()