使用java版本的web3j生成公私钥等信息
web3j的java版本支持直接通过java代码生成以太坊钱包的公私钥地址等信息,生成的地址信息存放于本地文件当中。同时,提供了针对该文件的读取等操作。
实例说明
创建maven项目并引入web3j的依赖。该依赖信息可根据web3j当前版本进行更新。
<dependency> <groupId>org.web3j</groupId> <artifactId>core</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>org.web3j</groupId> <artifactId>geth</artifactId> <version>3.2.0</version> </dependency>
生成地址并读取地址相关代码。
public class CreateTest1 { public static void main(String[] args) throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, NoSuchProviderException, CipherException, IOException { // 钱包存放路径 String walletFilePath = "/Users/zzs/develop/temp/address"; // 钱包密码 String password = ""; //生成钱包,对应目录下会创建对应的私钥文件。 String walletFileName = WalletUtils.generateNewWalletFile(password, new File(walletFilePath), false); // 加载指定位置的钱包 Credentials credentials = WalletUtils.loadCredentials(password, walletFilePath + "/" + walletFileName); String address = credentials.getAddress(); System.out.println("address:" + address); System.out.println("PrivateKey:" + credentials.getEcKeyPair().getPrivateKey()); System.out.println("PublicKey:" + credentials.getEcKeyPair().getPublicKey()); } }