[가상화폐] 이더리움 트렌젝션의 실행

이더리움 트렌젝션은 어떻게 실행되는지 궁금하여 분석한 내용입니다.

아래 그림과 같이 이더리움 트렌젝션은 마이닝된 블록이 체인에 삽입될 때 실행됩니다.
블록에 포함된 트렌젝션을 루프안에서 Process함수로 처리하는데

  1. 기본 트렌젝션 비용인 Intrinsic가스(21000unit)을 소모합니다.
  2. 트렌젝션을 전송한 어카운트의 nonce를 1 증가시킵니다.
  3. 송/수신 계정의 이더리움 잔고를 업데이트합니다.
    3-1. 계약계정일 경우엔, contract코드를 실행하고
    3-2. 소모된 가스를 업데이트합니다.
  4. gas를 refund한 후에, 보상을 마이닝한 노드의 coin base에 추가합니다.
  5. 이후 state가 업데이트 되었기 때문에, State루트를 재계산하고
  6. 트렌젝션의 실행 결과를 나타내는 영수증을 생성합니다.
  7. 마지막으로 합의를 거친후 블록을 체인에 기록하게 됩니다.

이더리움이 State머신이라는 의미가 무었인지 이제 조금 알 것 같네요
트렌젝션마다 어카운트의 balance값이 변하기 때문이였네요.

어카운트가 변하면 , 어카운트를 포함하는 StateObject가 변하고
그것을 저장하는 State DB가 변하기 때문에
Storage trie를 새로 만드는 부분까지 확인할 수 있었습니다..

image.png

지극히 개인적으로 이더리움 주석 한글화 프로젝트를 진행하고 있습니다.
https://github.com/NAKsir-melody/go-ethereum

0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

블록체인 기술

번호 제목 글쓴이 날짜 조회수
101 정보 토큰 락업(Lock-up)은 스캠 ICO의 완전한 방지책일까? - (경제학으로 읽는 비트코인 이야기 - 7) icon Work4Block 06-28 5,300
100 정보 문과생, 블록체인업체에 취직하다 - (5) 블록체인 번역자들이 종종 범하는 실수 icon Work4Block 06-28 3,207
99 정보 문과생, 블록체인업체에 취직하다 - (4) "그집 아들, 다단계 회사 다닌다면서요?" icon Work4Block 06-28 3,318
98 가상화폐 문과생, 블록체인업체에 취직하기 - (3) 저도 블록체인 업계에서 일하고 싶어요! icon Work4Block 06-28 3,555
97 정보 문과생, 블록체인업체에 적응하기 - (2) 기자간담회 냐 밋업이냐? icon Work4Block 06-28 2,720
96 정보 문과생, 블록체인업체에 취직하다! - (1) icon Work4Block 06-28 2,998
95 가상화폐 고장난 웹2.0, 패러다임 전환의 시기 icon Work4Block 06-27 3,701
94 가상화폐 Qx, QDex 및 Qrypto라는 3 개의 새로운 프로젝트 icon Work4Block 06-26 3,375
93 가상화폐 [Ethereum] Ethernaut 풀이 - 3.Coin Flip icon Work4Block 06-25 3,001
92 가상화폐 [Ethereum] Ethernaut 풀이 - 2.Fallout icon Work4Block 06-25 3,953
91 가상화폐 [Ethereum] Ethernaut 풀이 - 1.Fallback icon Work4Block 06-25 3,294
90 가상화폐 Overall Analysis of IOTA (아이오타 포괄적 분석) icon Work4Block 06-22 3,047
89 가상화폐 [Ethereum] Ethernaut 풀이 - 0.Hello Ethenaut icon Work4Block 06-21 3,023
88 가상화폐 [Ethereum] Ethernaut 소개 icon Work4Block 06-21 3,914
87 정보 [개념 정리] 온 체인(Onchain), 오프 체인(Offchain)이 무엇인가? icon Work4Block 06-21 4,308
86 가상화폐 나의 이더리움 분석기 - 중간정리 - 2 icon Work4Block 06-21 3,653
85 가상화폐 이더리움이 go를 사용하는 이유(개인적인 생각) icon Work4Block 06-21 2,817
84 가상화폐 [Ethereum] Smart Contract 개발을 위한 환경 세팅 (Remix, Ganache) icon Work4Block 06-19 8,479
83 가상화폐 나의 이더리움 분석기 - 중간정리 - 1 icon Work4Block 06-19 5,779
82 가상화폐 이더리움 프로토콜 매니져로부터 insertChain함수 호출 까지(Fetcher) icon Work4Block 06-18 3,043