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

    • Field Detail

      • random

        protected java.security.SecureRandom random
      • bits

        protected int bits
      • passphrase

        protected java.lang.String passphrase
      • creationTimeSecs

        protected long creationTimeSecs
      • entropy

        protected byte[] entropy
      • isFollowing

        protected boolean isFollowing
      • accountPath

        protected HDPath accountPath
    • Constructor Detail

      • Builder

        protected Builder()
    • Method Detail

      • self

        protected T self()
      • entropy

        public T entropy​(byte[] entropy,
                         long creationTimeSecs)
        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 in seconds since the UNIX epoch for the seed: this lets us know from what part of the chain we can expect to see derived keys appear.
      • 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​(java.security.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​(java.security.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.
      • watchAndFollow

        public T watchAndFollow​(DeterministicKey accountKey)
        Creates a deterministic key chain with the given watch key and that follows some other keychain. In a married wallet following keychain represents "spouse". Watch key has to be an account key.
      • spend

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

        public T passphrase​(java.lang.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.
      • getPassphrase

        protected java.lang.String getPassphrase()