private static void wordIndexesToEntropyWithCheckSum(final int[] wordIndexes, final byte[] entropyWithChecksum) { for (int i = 0, bi = 0; i < wordIndexes.length; i++, bi += 11) { ByteUtils.writeNext11(entropyWithChecksum, wordIndexes[i], bi); } }
private static int[] wordIndexes(byte[] entropy) { final int ent = entropy.length * 8; entropyLengthPreChecks(ent); final byte[] entropyWithChecksum = Arrays.copyOf(entropy, entropy.length + 1); entropyWithChecksum[entropy.length] = firstByteOfSha256(entropy); //checksum length final int cs = ent / 32; //mnemonic length final int ms = (ent + cs) / 11; //get the indexes into the word list final int[] wordIndexes = new int[ms]; for (int i = 0, wi = 0; wi < ms; i += 11, wi++) { wordIndexes[wi] = next11Bits(entropyWithChecksum, i); } return wordIndexes; }
@Test public void forCodeCoverageOnly_create() { //noinspection ObviousNullCheck assertNotNull(new ByteUtils()); }
private static int[] wordIndexes(byte[] entropy) { final int ent = entropy.length * 8; entropyLengthPreChecks(ent); final byte[] entropyWithChecksum = Arrays.copyOf(entropy, entropy.length + 1); entropyWithChecksum[entropy.length] = firstByteOfSha256(entropy); //checksum length final int cs = ent / 32; //mnemonic length final int ms = (ent + cs) / 11; //get the indexes into the word list final int[] wordIndexes = new int[ms]; for (int i = 0, wi = 0; wi < ms; i += 11, wi++) { wordIndexes[wi] = next11Bits(entropyWithChecksum, i); } return wordIndexes; }
private static void wordIndexesToEntropyWithCheckSum(final int[] wordIndexes, final byte[] entropyWithChecksum) { for (int i = 0, bi = 0; i < wordIndexes.length; i++, bi += 11) { ByteUtils.writeNext11(entropyWithChecksum, wordIndexes[i], bi); } }