관리 메뉴

평행우주 : world 1

[블록체인이론] 이더리움과 비트코인의 상태 전이 모델 본문

텃밭 1 : BlockChain/이론

[블록체인이론] 이더리움과 비트코인의 상태 전이 모델

parallelworlds 2022. 3. 28. 13:42

 

이더리움 상태 전이 모델

 

이더리움에서 모든 기본 단위는 어카운트다

모든 어카운트는 중복되지 않는 식별자로 특정 주소를 부여받는다

또한, 잔액이나 트랜잭션, 스마트 컨트랙트의 컴파일된 중간 코드처럼 필요한 데이터를 저장하기 위한 일련의 저장 공간들을 갖는다

이러한 모든 것을 어카운트 상태라 한다

따라서 이더리움 전체 상태는 전체 어카운트의 상태를 말한다

즉 이더리움 블록체인에 새로운 블록이 추가되면, 전체 어카운트의 상태도 변한다

모든 어카운트의 상태 정보는 블록과 블록 내에 연결된 머클 패트리시아 트리로 저장되고 관리된다

 

어카운트의 상태는 상태변이 함수에 의해 전이된다

상태변이 함수는 송금과 같은 트랜잭션이 될 수도 있고,

이더리움 가상 머신에서 실행되는 프로그램인 스마트 컨트랙트가 될 수도 있다

이러한 상태 변이 함수를 사용하여 어카운트에 있는 잔액을 송금하거나 

특정 조건이나 외부 입력에 따라 자동으로 어카운트의 특정 데이터를 바꾸는 것과 같이 적극적인 상태 전이를 수행할 수 있다

 

상태는 복수의 상태변이를 갖지 못하고, 단 하나의 상태 변이만을 갖는다

다시말해, 어카운트의 특정 시점의 한 상태는 상태변이 함수를 통해 단 하나의 상태로만 전이된다

블록체인은 단일한 상태변이 과정에 관련된 일련의 트랜잭션들과 상태 정보들을 하나의 블록으로 구성하고,

이 블록을 최초의 제네시스 블록에서부터 시간순으로 연결함으로써 단일한 상태를 유지한다

 

 

이더리움 단일 상태 전이

 

 

 

비트코인 상태 정보 모델

 

비트코인 역시 상태전이 모델을 기반으로 한다

그러나 이더리움과 달리 비트코인 상태 전이는 '사용되지 않고 남아 있는 비트코인'을 옮기는 상태 전이만 가능하다

비트코인은 사용자의 남아있는 비트코인 잔액을 상대에게 전송하여 전체 잔액을 변동하는 것만 가능하다

이에 반해 이더리움은 이더 잔액뿐만 아니라 스마트 컨트랙트를 통해 어카운트 내의 모든 상태 정보에 대한 조작이 가능하다

 

비트코인에서 상태는 UTXO(사용하지 않고 남은 비트코인)라 한다

UTXO는 비트코인 금액과 해당 코인 소유자의 비트코인 주소다

비트코인 주소는 암호화된 공개키다

 

 

비트코인 상태 전이 모델 예시

 

 

 

 

이런 근본적인 상태전이 모델의 차이로

비트코인 코어는 암호화폐 구현에 목적을 두고 개발되었고,

이더리움은 보다 범용적인 서비스를 구현하는 플랫폼으로 개발되었다

Comments