
밑바닥부터 시작하는 비트코인
274
지갑에서 누군가에게 비트코인을 보내는 경우 비트코인이 보내졌는지는 수신자가 확인합니다.
일단 트랜잭션이 충분히 깊숙하게 블록체인에 포함되었다면 수신자는 미리 약속된 상품이나
서비스를 제공합니다. 트랜잭션을 상대방에게 보낸 사람은 이후 약속된 상품이나 서비스를 받
을 때까지 기다리는 것 외에는 할 일이 없습니다.
그러나 비트코인을 받는 경우에는 딜레마가 있습니다. 네트워크에 연결되어 있고 전체 블록체
인을 갖고 있다면 트랜잭션이 깊숙하게 블록체인에 포함되는 시점을 알 수 있습니다. 그 시점
에서 상대방에게 약속한 상품이나 서비스를 제공하면 됩니다. 그러나 휴대폰처럼 전체 블록체
인이 없는 경우에는 어떻게 해야 할까요?
정답은
9
장에서 본 블록 헤더의 머클루트에 있습니다.
10
장에서 보았듯이 블록 헤더는 내려받
을 수 있고 수신된 블록 헤더가 비트코인 합의 규칙을 만족하는지 확인할 수 있습니다. 여기서
는 특정 트랜잭션이 특정 블록에 있다는 증거를 찾고자 합니다. 블록 헤더를 완성하기 위해서
는 작업증명을 찾는 에너지가 소모됩니다. 따라서 어떤 트랜잭션이 그 블록 헤더를 가진 블록
에 포함됐다면 최소한 그 만큼의 에너지가 트랜잭션의 존재를 위해 소모됐다고 볼 수 있습니
다. 즉, 특정 트랜잭션의 블록 포함증명을 속이는 비용은 적어도 블록의 ...