비트코인에 대해 공부하다보면 UTXO란 단어를 자주 보게됩니다. 오늘은 정확히 UTXO가 뭔지 알아보겠습니다.
UTXO란 Unspent Transaction Output의 약자입니다. 이해를 돕기 위해 예시를 들어 설명해보겠습니다.
현실세계에서 지갑에 현금 10만원을 가지고 있다고 가정해봅시다. 10만원짜리 수표 1장을 가지고 있을 수도 있지만 대부분 천원, 오천원, 만원, 오만원 등의 여러 조합으로 10만원이란 금액을 가지고 있을것입니다.
UTXO는 이렇게 낱개의 금액을 나타낸다고 보면 됩니다.
즉, 비트코인 지갑에서 1BTC를 가지고 있단 것은 1BTC짜리 1개의 UTXO를 가지고 있는 것일 수도 있지만
아마 대부분은 0.1BTC짜리 UTXO, 0.2짜리, 0.5짜리, 0.4552짜리 .... 이런식으로 여러개의 UTXO를 가지고 있는 것이고
비트코인 지갑은 사용자의 편의성을 위해 여러개의 UTXO들을 찾아서사용자 입장에서는 그냥 통합 되어있는 것으로 느낍니다.
또한, 현실세계에서 2만원짜리 물품을 5만원짜리 지폐로 구입하게되면 우선 5만원을 주고 3만원의 차액을 돌려받게 되지요?
비트코인에서도 마찬가지입니다. 0.5BTC만큼을 상대방에게 송금해야하는데 자신이 가지고 있는 UTXO들의 합이 정확히 0.5BTC가 되지 않는다면 0.5BTC보다 큰 UTXO들의 합을 전송하게되고 차액은 다시 자신의 지갑주소로 돌려받게 됩니다.
위 내용에서 추측할 수 있듯이 하나의 UTXO는 나누어질 수 없습니다. 즉, 0.5BTC에 해당하는 UTXO가 있다면 그것을 자신이 임의로
나눌 수는 없고 상대방에게 전송한후에 차액만큼만 다시 돌려받게 되는 것입니다.
이상 비트코인의 UTXO에 대해 알아보았습니다.
'Bitcoin' 카테고리의 다른 글
비트코인의 블록구조와 체이닝 (0) | 2021.03.17 |
---|---|
비트코인의 Bloom Filters (0) | 2021.03.16 |
비트코인의 SPV Nodes (0) | 2021.03.16 |
비트코인의 네트워크(새로운 노드가 추가되는 원리) (0) | 2021.03.15 |
비트코인의 Transaction fee (0) | 2021.03.14 |