이더리움은 거래에 기반을 둔 상태 머신이다. 상태 머신이란 일련의 입력을 읽고, 그 입력을 기반으로 새로운 상태로 전환하는 것을 의미한다.

상태라는 개념에 대한 이해가 굉장히 중요함!!!!

이더리움 상태 머신은 Genesis State에서 시작한다. 트랜잭션이 실행되면, 다음 상태로 전환하게 된다. 더 이상 트랜잭션이 들어오지 않은 마지막 상태가 이더리움의 현재 상태이다.

스크린샷 2022-11-28 오후 1.35.46.png

이더리움의 상태에는 수천개의 트랜잭션이 있다. 이 트랜잭션은 블록이라는 그룹으로 묶여 있으며, 블록은 직전에 만들어진 블록과 이어져 있다.

스크린샷 2022-11-28 오후 1.36.23.png

[EOA 와 CA]

EOA 와 CA 모두 잔액, 논스, 스토리지, 컨트랙트 코드로 구성되어 있다.

EOA의 주소는 상응하는 비밀키를 가지고 있지만, CA는 비밀키가 없다.

스크린샷 2022-11-28 오후 1.37.35.png

CA는 스스로 새로운 트랜잭션을 만들 수 없으며, CA는 EOA나 다른 CA에게서 받은 트랜잭션에 대한 응답에 대해서만 트랜잭션을 만들 수 있다.

즉, 이더리움에서 일어나는 모든 액션은 항상 EOA에서 만든 트랜잭션에서부터 시작된다.

[전역 상태]

이더리움의 전역 상태는 계정 주소와 계정 상태를 매핑한 것으로 구성되어 있다. 이 매핑은 머클 패트리샤 트리 형태로 저장되어 있다.