trident-java离线创建BOchang助记词的子账户
private final static ImmutableList<ChildNumber> BIP44_ETH_ACCOUNT_ZERO_PATH =
ImmutableList.of(new ChildNumber(44, true), new ChildNumber(195, true),
ChildNumber.ZERO_HARDENED, ChildNumber.ZERO);
@Test
void activateaccount() {
String[] strs = {"concert", "general", "fruit", "ask", "wood", "random", "sign",
"hill", "powder", "cactus", "faint", "toss"};
List<String> strsToList1= Arrays.asList(strs);
try {
System.out.println(strsToList1);
byte[] seed = MnemonicCode.toSeed(strsToList1, "");
DeterministicKey masterPrivateKey = HDKeyDerivation.createMasterPrivateKey(seed);
DeterministicHierarchy deterministicHierarchy = new DeterministicHierarchy(masterPrivateKey);
DeterministicKey deterministicKey = deterministicHierarchy
.deriveChild(BIP44_ETH_ACCOUNT_ZERO_PATH, false, true, new ChildNumber(1));
byte[] byte2 = deterministicKey.getPrivKeyBytes();
SECP256K1.PrivateKey privateKey= SECP256K1.PrivateKey.create(Bytes32.wrap(byte2));
SECP256K1.KeyPair keyPair2= SECP256K1.KeyPair.create(privateKey);
KeyPair keyPair1=new KeyPair(keyPair2);
System.out.println(keyPair1.toPrivateKey());
System.out.println(keyPair1.toHexAddress());
System.out.println(keyPair1.toBase58CheckAddress());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
