본문 바로가기
BlockChain/theory

[BlockChain] 비트코인-UTXO 알아보기

by BEJM 2022. 5. 11.

UTXO

UTXO(Unspent Transaction Outputs)는 미사용 트랜잭션 출력 값을 뜻합니다. 비트코인은 계정이나 잔고가 없습니다. 이에 블록체인에 UTXO(기록된 소비되지 않은 출력 값)을 통해 거래의 유효성을 검사하여 코인의 존재 여부를 확인합니다. 즉 코인은 지갑에 저장되는 것이 아니고 UTXO에 저장되며, UTXO를 통해 코인의 존재 여부를 확인할 수 있습니다.

 

트랜잭션 구조

Tx, Input, Output 구조

  • 트랜잭션 버전(Transaction Version)
    트랜잭션 버전은 네트워크에서 트랜잭션의 유형을 지정하는 버전 번호입니다. 트랜잭션은 버전 별로 그 구조와 규칙이 조금씩 다릅니다. 따라서 노드는 트랜잭션을 읽을 때는 버전 번호를 확인하고 트랜잭션을 어떻게 읽어야 하는지 파악할 수 있습니다.

  • 잠금 시간(Lock Time)
    마지막 데이터는 잠금 시간(Lock Time)으로, 트랜잭션을 블록체인에 바로 포함시킬 수 있는지, 아니면 지정된 시간이 지나면 포함시킬 수 있는지를 지정합니다.
  • 입력(Inputs)
    트랜잭션 버전과 잠금 시간 사이에는 입력과 출력 목록이 들어옵니다.

    트랜잭션 입력은 포인터(Pointer)와 해제키(Unlocking key)가 들어있습니다. 포인터는 이전 트랜잭션 출력을 가리킵니다. 그리고 키는 포인터로 가리키고 있는 이전 출력을 해제하는 데 사용됩니다.
  • 출력(Outputs)
    트랜잭션 버전과 잠금 시간 사이에는 입력과 출력 목록이 들어옵니다.
    트랜잭션 출력은 잠금(Lock)과 값(Value)으로 구성되어 있습니다. 출력은 기본적으로 잠겨있으며, 입력에는 잠금을 해제할 수 있는 키(Key)가 들어있습니다. 값은 출력 내에 잠겨있는 사토시의 양을 의미합니다.

※ 사토시 : 비트코인의 단위로 1사토시는 1비트코인을 1억 등분한 것을 뜻합니다.

 

 

댓글