ETH 钱包开发
2024年12月23日大约 1 分钟
ETH 钱包开发
账户生成
- 公钥私钥
const randomAccount = web3.eth.accounts.wallet.create(1);
- 助记词
const { Wallet } = require('ethers');
// 创建随机钱包并输出助记词和地址
const randomWallet = Wallet.createRandom();
console.log('助记词:', randomWallet.mnemonic.phrase);
console.log('地址:', randomWallet.address);
console.log('私钥:', randomWallet.privateKey);
助记词: brisk light news girl gold arrest tomato spare chimney around twist change
地址: 0xA6BF9BDCA11D9c0955892ba3E87a832827253694
私钥: 0xee60c1b32a5a16dfc49c2efedc8d0e7014d2a1fc4b4e5594e1ca1639260796ae
交易信息
- 获取资金
const address = "0xfb0bc05F1aC61a566E70890e0e000E66F147ae66";
web3.eth
.getBalance(address)
.then((balance) => {
console.log("Balance:", web3.utils.fromWei(balance, "ether"), "ETH");
})
.catch((err) => {
console.error(err);
});
- 发送交易
async function sendTransaction() {
const fromAddress = "0xfb0bc05F1aC61a566E70890e0e000E66F147ae66";
const privateKey = "";
// 获取当前交易计数 (nonce)
const nonce = await web3.eth.getTransactionCount(fromAddress, "latest");
// 设置交易参数
const tx = {
from: fromAddress,
to: "0x9Ae9119e614BEdffbd0B66756Cf2F4F4CFdb7ca9",
value: web3.utils.toWei("0.1", "ether"), // 发送 0.1 ETH
gas: 21000, // 用于简单的 ETH 转账
gasPrice: await web3.eth.getGasPrice(), // 获取当前网络的 gas 价格
nonce: nonce,
};
// 签名交易
const signedTx = await web3.eth.accounts.signTransaction(tx, privateKey);
// 发送已签名的交易
web3.eth
.sendSignedTransaction(signedTx.rawTransaction)
.on("receipt", (receipt) => {
console.log("交易成功:", receipt);
})
.on("error", (err) => {
console.error("交易失败:", err);
});
}
账户恢复
- 私钥恢复
const accountFromPrivateKey =
web3.eth.accounts.privateKeyToAccount("privateKey");
- 助记词恢复
// 引入 ethers.js 库
const { Wallet } = require("ethers");
// 助记词(通常由 12 或 24 个单词组成)
const mnemonic =
"brisk light news girl gold arrest tomato spare chimney around twist change";
// 使用助记词恢复钱包
const wallet = Wallet.fromPhrase(mnemonic);
// 输出钱包的地址和私钥
console.log("地址:", wallet.address);
console.log("私钥:", wallet.privateKey);
地址: 0xa6bf9bdca11d9c0955892ba3e87a832827253694;
私钥: 0xee60c1b32a5a16dfc49c2efedc8d0e7014d2a1fc4b4e5594e1ca1639260796ae;

思 维 教程: