1. eth.pendingTransactions은 처리해야할 트랜잭션 목록을 의미함
2. account0에서 account1로 1 이더를 전송하기
다음 커맨드로 1 이더를 전송합니다.
from : 트랜잭션을 보내는 계정 주소
to : 수신자 계정 주소
value: 전송할 금액
data: 전송할 메시지
web.toHex: 인자로 주어진 16진수 값으로 변환한다. 문자열은 UTF-8로 표현
3. "eth.pendingTransactions"를 확인해보기
4. 이더를 전송받은 account1의 잔액을 확인합니다. 테스트를 하면서 여러 번 보내서 원래 이더 365개에서 371개까지 늘었습니다.
5. 가장 최근의 Transaction은 다음 커맨드로 확인 가능합니다.
eth.getTransaction("0xa60f77f8ea648ff5a8a27314c774171b50f0037a4f9cff829b6c1ba79e663b0e")
//eth.getTransaction("트랜잭션 해시값")
6. 위에서 확인한 트랜잭션에서 블록번호를 가지고 다음과 같이 조회도 가능합니다.
블록넘버를 이용해 다음 커맨드로 트랜잭션도 조회가능합니다.
eth.getTransactionFromBlock(507)
//eth.getTransactionFromBlock(조회할 블록넘버)
eth.accounts[0]의 이더 잔고를 확인해보면 트랜잭션 수수료가 빠져나가지 않은 것을 확인할 수 있습니다.
왜 수수료가 출금되지 않았을까요? 사실은 송금 수수료가 출금되고 트랜잭션을 담은 블록의 채굴자에게 돌아갑니다. 따라서 송금을 한 뒤 수수료가 원래 채굴자인 account0에게 갔기 때문에 송금수수료가 출금되지 않은 것처럼 보인 것이죠.
3-1 정의
가스란 말 그대로 연료를 의미하며 이더리움 네트워크 서비스를 사용하는데 지불하는 수수료 개념입니다.
가스비는 이더리움 채굴자들이 채굴에 대한 보상으로 가져갑니다. 가스는 트랜잭션을 생성하는 사용자가 직접 설정할 수 있습니다.
3-2 가스비 계산하기
기본적으로 가스비는 다음과 같이 계산합니다.
Gas Fee (가스비) = Gas Price(가스 가격) X Gas Limit (가스 한도)
3-3 가스가격
가스비는 트랜잭션을 실행할 때 Opcode 연산단위로 소모되고 이 연산단위별로 소모되는 가스의 양은 미리 정해져있음, 가스 가격은 이더의 하위단위인 Gwei(기가웨이)를 사용하고 1,000,000,000 Gwei(10억 기가웨이) = 1ETH 이다.
3-4 가스 한도
가스비 책정시 최대로 소모할 가스의 수를 정하는데 이것이 가스한도
EVM (Ethereum Virtual Machine) (0) | 2023.02.06 |
---|---|
Ethereum(이더리움) (0) | 2023.02.06 |
로컬에서 두개의 노드 연결 (PoW 버전 geth) (0) | 2023.02.04 |
Geth 계정 생성과 채굴 (PoW버전의 geth) (0) | 2023.02.04 |
Docker로 우분투 실행하고 Geth 설치하기 (0) | 2023.01.30 |