What is UTXO?
What is UTXO?
Unspent Transaction Output(아직쓰지않은 디지털 화폐의 조각)의 약자
블록체인 시스템에서 소유권과 거래를 관리하는 방식
비트코인에서는 은행계좌처럼 잔액을 하나로 저장하지 않음
사용자의 모든UTXO를 합산해서 잔액을 계산함.
각 UTXO는, 특정 비트코인 금액(BTC)을 가짐 사용자의 공개키(public key)에 연결됨 사용자만 사용할 수 있음(private key로 서명)
예시)
현금 지갑:
- 친구가 10달러 지폐를 줬습니다 → 이게 당신의 UTXO
- 6달러짜리 커피를 사고
- 4달러 거스름돈을 받습니다
이 경우:
- 10달러는 “소비”된 것이고
- 커피숍에 6달러를 보내고
- 4달러는 새로운 UTXO로 남습니다
비트코인 거래 당신이 받은 것:
- 0.3 BTC (Alice로부터)
- 0.2 BTC (Bob으로부터)
→ 당신 지갑 총액: 0.5 BTC (UTXO 두 개)
당신이 송금:
- 0.4 BTC를 Charlie에게 전송
당신의 지갑은:
- 두 개의 UTXO를 Input으로 사용하고
- 새로운 UTXO를 Output으로 생성합니다:
- 0.4 BTC는 Charlie에게
- 0.1 BTC는 당신에게 잔돈(change) 으로 반환
왜 UTXO가 중요할까?
기능 | 이점 |
---|---|
🔐 불변성 | 모든 UTXO는 디지털 서명으로 보호됩니다 |
⚡ 빠른 검증 | UTXO만 있으면 트랜잭션 유효성 확인 가능 |
🚫 이중 지불 방지 | 사용된 UTXO는 다시 사용할 수 없음 |
🔏 개인정보 강화 | Input/Output을 다양하게 구성해 추적을 어렵게 함 |
UTXO 모델 🆚 계정(Account) 모델
항목 | UTXO (비트코인) | 계정 모델 (이더리움) |
---|---|---|
잔액 저장 | 여러 개의 UTXO 합산 | 하나의 총합 잔액 |
사용 방식 | UTXO를 소모하고 새로운 UTXO 생성 | 계좌 잔액을 직접 수정 |
개인정보성 | 상대적으로 높음 | 추적이 쉬움 |
유연성 | 복잡하지만 견고함 | 스마트컨트랙트에 적합 |
UTXO 모델에서 주의할 점
- UTXO는 부분 사용이 불가능합니다 → 항상 전액 사용 후, 필요한 경우 잔돈을 새로 받습니다.
- UTXO 개수가 많을수록 트랜잭션 크기가 커지고 수수료도 올라갈 수 있습니다.
…