Package org.bitcoinj.crypto
Class MnemonicCode
- java.lang.Object
 - 
- org.bitcoinj.crypto.MnemonicCode
 
 
- 
public class MnemonicCode extends java.lang.ObjectA MnemonicCode object may be used to convert between binary seed values and lists of words per the BIP 39 specification 
- 
- 
Field Summary
Fields Modifier and Type Field Description static java.time.InstantBIP39_STANDARDISATION_TIMEUNIX time for when the BIP39 standard was finalised.static intBIP39_STANDARDISATION_TIME_SECSDeprecated.static MnemonicCodeINSTANCE 
- 
Constructor Summary
Constructors Constructor Description MnemonicCode()Initialise from the included word list.MnemonicCode(java.io.InputStream wordstream, java.lang.String wordListDigest)Creates an MnemonicCode object, initializing with words read from the supplied input stream. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheck(java.util.List<java.lang.String> words)Check to see if a mnemonic word list is valid.java.util.List<java.lang.String>getWordList()Gets the word list this code uses.byte[]toEntropy(java.util.List<java.lang.String> words)Convert mnemonic word list to original entropy value.java.util.List<java.lang.String>toMnemonic(byte[] entropy)Convert entropy data to mnemonic word list.static byte[]toSeed(java.util.List<java.lang.String> words, java.lang.String passphrase)Convert mnemonic word list to seed. 
 - 
 
- 
- 
Field Detail
- 
BIP39_STANDARDISATION_TIME
public static final java.time.Instant BIP39_STANDARDISATION_TIME
UNIX time for when the BIP39 standard was finalised. This can be used as a default seed birthday. 
- 
BIP39_STANDARDISATION_TIME_SECS
@Deprecated public static final int BIP39_STANDARDISATION_TIME_SECS
Deprecated. 
- 
INSTANCE
public static MnemonicCode INSTANCE
 
 - 
 
- 
Constructor Detail
- 
MnemonicCode
public MnemonicCode() throws java.io.IOExceptionInitialise from the included word list. Won't work on Android.- Throws:
 java.io.IOException
 
- 
MnemonicCode
public MnemonicCode(java.io.InputStream wordstream, java.lang.String wordListDigest) throws java.io.IOException, java.lang.IllegalArgumentExceptionCreates an MnemonicCode object, initializing with words read from the supplied input stream. If a wordListDigest is supplied the digest of the words will be checked.- Parameters:
 wordstream- input stream of 2048 line-seperated wordswordListDigest- hex-encoded Sha256 digest to check against- Throws:
 java.io.IOException- if there was a problem reading the steamjava.lang.IllegalArgumentException- if list size is not 2048 or digest mismatch
 
 - 
 
- 
Method Detail
- 
getWordList
public java.util.List<java.lang.String> getWordList()
Gets the word list this code uses.- Returns:
 - unmodifiable word list
 
 
- 
toSeed
public static byte[] toSeed(java.util.List<java.lang.String> words, java.lang.String passphrase)Convert mnemonic word list to seed. 
- 
toEntropy
public byte[] toEntropy(java.util.List<java.lang.String> words) throws MnemonicException.MnemonicLengthException, MnemonicException.MnemonicWordException, MnemonicException.MnemonicChecksumExceptionConvert mnemonic word list to original entropy value. 
- 
toMnemonic
public java.util.List<java.lang.String> toMnemonic(byte[] entropy)
Convert entropy data to mnemonic word list.- Parameters:
 entropy- entropy bits, length must be a multiple of 32 bits
 
- 
check
public void check(java.util.List<java.lang.String> words) throws MnemonicExceptionCheck to see if a mnemonic word list is valid.- Throws:
 MnemonicException
 
 - 
 
 -