【发布时间】:2018-03-09 20:26:32
【问题描述】:
我正在尝试为混合 BitcoinJ 和 Web3j 的以太坊创建一个确定性钱包。使用BitcoinJ 生成确定性密钥,使用Web3j 生成以太坊凭证。但是Web3j凭证生成的地址却不如预期。
String seedCode = "yard impulse luxury drive today throw farm pepper survey wreck glass federal";
// BitcoinJ
DeterministicSeed seed = new DeterministicSeed(seedCode, null, "", 1409478661L);
DeterministicKeyChain chain = DeterministicKeyChain.builder().seed(seed).build();
DeterministicKey key = chain.getKey(KeyPurpose.RECEIVE_FUNDS);
BigInteger privKey = key.getPrivKey();
// Web3j
Credentials credentials = Credentials.create(privKey.toString(16));
System.out.println("Address: " + credentials.getAddress());
输出:0x2c4186d0422d0462a48c92cd559cbc30f528855b
预期:0x72445fcFdEB1Fff79496D7Ce66089d663Ff90E26
代码中的误解在哪里?
【问题讨论】:
标签: java cryptography ethereum bitcoinj