밑바닥부터 시작하는 비트코인
194
3
번 항목은 결합된 스크립트가 유효한지 확인합니다. 대부분의 트랜잭션에서 이것은 해제 스
크립트에 있는 (하나 이상의 ) 서명이 유효한지 확인하는 것입니다.
위 항목을 하나하나 살펴보겠습니다.
7.1.1
입력 비트코인 존재 확인
이중 지불을 방지하기 위해 노드는 각 입력이 가리키는 비트코인이 존재하고 사용 가능한지 확
인합니다. 모든 풀 노드는 자신이 관리하고 있는
UTXO
집합을 들여다보는 것으로 확인 가능
합니다 (
5
장 참고 ). 트랜잭션 자체로부터 이중 지불 여부를 알아낼 수는 없습니다. 마치 개인
수표만으로는 은행 잔고 이상으로 발행됐는지 여부를 알 수 없는 것과 마찬가지입니다. 확인할
수 있는 유일한 방법은 전체 트랜잭션 집합으로부터 계산된
UTXO
집합을 뒤져보는 방법밖에
없습니다.
비트코인에서 입력이 가리키는
UTXO
를 추적하면 이중 지불 여부를 확인할 수 있습니다. 만
약 입력이 가리키는
UTXO
가 집합에 있으면 그 트랜잭션 입력의 비트코인은 존재하고 이중
지불되지 않은 것입니다. 또한 트랜잭션이 검증되면 트랜잭션 입력이 가리키는 모든
UTXO
를
집합에서 제거합니다. 전체 블록체인을 가지고 있지 않은 라이트 노드는 이중 지불 여부 확인
을 포함해서 많은 정보를 다른 풀 노드에 의존해야 합니다.
풀 노드는 쉽게 입력에 적힌 이중 지불 여부를 확인할 수 있지만 라이트 노드는 이런 정보를 외
부에서 가져와야 합니다.
7.1.2
입력과 출력 비트코인 합계 확인
노드는 또한 입력 비트코인의 합이 출력 비트코인의 ...