본문 바로가기
재밌는 Tech.

₿ 비트코인 UTXO란? “잔액”이 아니라 “남은 동전 조각”으로 이해하면 끝

by 잡학&단어 2026. 2. 3.
반응형

비트코인을 처음 접하면 대부분 이렇게 생각합니다. “내 지갑에 0.5 BTC가 있다 = 은행 계좌처럼 잔액이 저장돼 있겠지?” 하지만 비트코인은 은행 계좌 방식이 아닙니다. 비트코인에는 ‘잔액’이라는 개념이 없고, 대신 UTXO(Unspent Transaction Output) 라는 독특한 구조를 사용합니다. 이 개념을 이해하면 아래 내용들이 한번에 정리 됩니다.

✔ 비트코인 거래 원리

✔ 수수료가 왜 달라지는지

✔ 지갑 잔액과 실제 전송의 차이

 


UTXO란 무엇인가? (한 문장 정의)

UTXO란 아직 사용되지 않은 비트코인 거래 결과물, 즉 ‘지금 내가 쓸 수 있는 코인 조각’입니다. 조금 더 쉽게 말하면 👉 비트코인 잔액 = 여러 개의 ‘안 쓴 코인 조각(UTXO)’을 모두 더한 값입니다. 지갑 앱은 이 조각들을 계산해서 숫자 하나로 보여줄 뿐, 실제로 블록체인에는 조각 단위로 기록돼 있습니다.

 


 

은행 계좌 vs 비트코인(UTXO 방식)의 결정적 차이

● 은행 계좌(잔액 모델)

  • 잔액: 1,000,000원
  • 입금 → 숫자 증가
  • 출금 → 숫자 감소
  • 중앙 서버가 관리

● 비트코인(UTXO 모델)

  • 잔액이라는 개념 없음
  • “미사용 거래 조각”들의 묶음
  • 거래할 때마다 조각이 사라지고 새로 생성됨
  • 전 세계 노드가 공동 검증

즉, 비트코인은 숫자를 수정하는 시스템이 아니라 ‘조각을 쓰고 새로 만드는 시스템’입니다.

 


 

UTXO를 현금 지갑으로 비유하면 바로 이해됩니다

현금 지갑에 다음과 같이 돈이 있다고 가정해보겠습니다.

  • 5만원권 1장
  • 1만원권 2장
  • 5천원권 1장

총액은 7만5천 원이지만, 실제 존재하는 건 ‘지폐와 동전 각각’ 입니다. 이때 1만원을 쓰려면 어떻게 할까요?

  • 5만원권을 내고
  • 거스름돈 4만원을 다시 받습니다

👉 비트코인도 정확히 이 방식입니다.

  • UTXO 하나는 쪼갤 수 없음
  • 반드시 통째로 사용
  • 남은 금액은 ‘거스름돈 UTXO’로 새로 생성

 


 

비트코인 거래는 이렇게 만들어집니다 (초간단)

비트코인 거래는 두 가지로 구성됩니다.

1️⃣ Input(입력)

  • 내가 보유한 UTXO들
  • “이 조각들을 이번 거래에서 쓰겠다”는 선언

2️⃣ Output(출력)

  • 상대방에게 보낼 금액
  • 내게 되돌아오는 거스름돈
  • (수수료는 입력 합계 – 출력 합계)

 

즉 거래 한 번이 일어날 때마다

❌ 기존 UTXO는 사라지고

⭕ 새로운 UTXO들이 생성됩니다.

 


 

UTXO가 중요한 이유 ① 이중지불을 막기 때문

비트코인에는 중앙은행이 없습니다. 그렇다면 “이 돈을 이미 썼는지” 어떻게 알까요?

UTXO 모델에서는 아주 단순합니다.

  • 이미 사용된 UTXO → 사용 불가
  • 미사용 UTXO → 사용 가능

이 구조 덕분에

✔ 위조가 어렵고

✔ 모든 노드가 쉽게 검증 가능하며

✔ 이중지불(Double Spending)이 원천적으로 차단됩니다.

 


 

UTXO가 중요한 이유 ② 수수료와 직접 연결됨

비트코인 수수료는 보내는 금액이 아니라 👉 거래 데이터 크기(바이트)에 따라 결정됩니다.

여기서 핵심은:

  • Input(UTXO)이 많을수록 거래 데이터가 커지고 수수료가 비싸질 수 있다는 점입니다.

예를 들어:

  • UTXO 1개 → 입력 1개 → 가벼운 거래
  • UTXO 30개 → 입력 30개 → 무거운 거래

그래서 UTXO가 잘게 쪼개져 있으면 나중에 보내기 더 비싸질 수 있습니다. (이걸 흔히 ‘UTXO 더스트 문제’라고 부릅니다)

 


 

UTXO가 중요한 이유 ③ 프라이버시와도 연결됨

여러 UTXO가 한 거래에서 함께 사용되면,블록체인 분석 관점에서는 “같은 사람이 소유했을 가능성”이 커집니다.

그래서 대부분의 지갑은:

  • 잔돈을 새 주소로 돌려주거나 자동으로 주소를 분리해 프라이버시를 보완합니다.

 


 

“잔액은 있는데 왜 전송이 안 되지?”의 진짜 이유

가끔 이런 경험을 합니다.

  • 지갑에는 BTC가 있는데 전송이 실패하거나 수수료가 비정상적으로 높게 나오는 경우

이 대부분의 원인은:

👉 사용 가능한 UTXO 조합이 애매하기 때문입니다. 잔액 숫자만 보면 이해가 안 되지만, UTXO 구조를 알면 아주 자연스러운 현상입니다.

 


 

정리: UTXO를 한 번에 이해하는 핵심 요약

  • 비트코인은 ‘잔액’을 저장하지 않는다
  • 자산은 ‘미사용 거래 조각(UTXO)’의 묶음이다
  • UTXO는 쪼갤 수 없고 통째로 사용된다
  • 남은 금액은 새 UTXO(거스름돈)로 생성된다
  • UTXO 개수는 수수료·프라이버시·사용성에 영향을 준다

 


 

✔ 한 줄 결론

비트코인 잔액은 숫자가 아니라, 아직 안 쓴 코인 조각들의 합이다. (즉, UTXO들의 합)

반응형