Để tạo một giao dịch chuyển tiền trong mạng ethereum private, chúng ta có thể thực hiện các bước sau:
- Tạo sẵn 1 tài khoản với mật khẩu tuỳ ý, ví dụ <code>123</code>
Khởi tạo 1 mạng private với genesis block và tài khoản vừa tạo kiểu thế này:
{
"config": {
"chainID" : 10,
"homesteadBlock": 0,
"eip150Block": 0,
"eip155Block": 0,
"eip158Block": 0
},
"difficulty": "1",
"gasLimit": "9999999",
"nonce": "0xdeadbeefdeadbeef",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"alloc": {
"0x2b6fe850895f7656453bd282f6ffb0146b2e0ec3": {
"balance": "30000"
}
}
}
- Tạo 1 tài khoản mới: <code>personal.newAccount()</code>
- Liệt kê danh sách tài khoản: <code>personal.listAccounts</code>
- Kiểm tra coin trong tài khoản: <code>eth.getBalance(eth.accounts[0])</code>
Start miner:
miner.setEtherbase(eth.accounts[0])
miner.start()
- Unlock account có tiền: <code>personal.unlockAccount(eth.accounts[0])</code>
- Tạo transaction: <code>var tx = {from: eth.accounts[0], to: eth.accounts[1], value: 100}</code>
- Send transaction: <code>personal.sendTransaction(tx, "123")</code>
- Kiểm tra tài khoản nhận được tiền chưa: <code>eth.getBalance(eth.accounts[1])</code>
Kết quả chúng ta có:
> personal.sendTransaction(tx, "123")
"0xa7af127928c90250b6fcfbd93f79502e0131b8aea4a2bba2cfbbe92e573914df"
> eth.getBalance(eth.accounts[1])
100