web3j创建以太坊账号(不产生文件)

web3j官方指导文件中给出的创建账户的方法会产生一个json文件,在实际的业务中,每个账户的产生都会产生一个相关文件会带来很多的不便。

使用以下代码可以不用产生文件,并且可以直接导入MetaMask使用,

public void createAccount() {
    try {
        ECKeyPair ecKeyPair = Keys.createEcKeyPair();
        BigInteger privateKeyInDec = ecKeyPair.getPrivateKey();
        String privateKey = privateKeyInDec.toString(16);
        WalletFile aWallet = Wallet.createLight(Constants.pass, ecKeyPair);
        String address = aWallet.getAddress();
        if (address.startsWith("0x")) {
            address = address.substring(2).toLowerCase();
        } else {
            address = address.toLowerCase();
        }
        address = "0x" + address;
        System.out.println("地址:" + address);
        System.out.println("秘钥:" + privateKey);
    } catch (InvalidAlgorithmParameterException |
            CipherException | NoSuchProviderException | NoSuchAlgorithmException e) {
        System.out.println(e.getCause().toString());
    }
}

你可能感兴趣的:(区块链)