간소화된 결제 검증
결제 검증은 전체 네트워크 노드를 구동하지 않고도 가능합니다. 사용자는 자신이 가장 긴 작업증명 체인을 가지고 있다고 확신할 때까지 네트워크 노드를 조회하여, 가장 긴 체인의 블록 헤더 사본을 유지하고, 해당 거래가 타임스탬프가 찍힌 블록과 연결된 머클 브랜치를 얻기만 하면 됩니다. 그는 자신의 거래를 직접 검증할 수는 없지만, 거래를 체인 내의 위치에 연결함으로써 네트워크 노드가 그 거래를 수락했다는 것을 확인할 수 있으며, 그 이후에 추가된 블록들은 네트워크가 해당 거래를 더 확실히 수락했다는 것을 추가로 증명해줍니다.
Block Header (Block Hash): 블록 헤더(블록 해시)
Prev Hash: 이전 블록 해시
Nonce: 임시 값
Merkle Root: 머클 루트
Hash[N]: 해시[N]
Tx[N](Transaction[N]): 거래[N]
Merkle Branch for Tx3: 거래3에 대한 머클 브랜치
따라서 네트워크를 정직한 노드들이 통제하고 있는 한 검증은 신뢰할 수 있지만, 네트워크가 공격자에 의해 과도하게 통제될 경우 더 취약해집니다. 네트워크 노드가 거래를 스스로 검증할 수는 있지만, 단순화된 방법은 공격자가 네트워크를 지속적으로 과도하게 통제하는 한, 공격자가 조작한 거래에 속을 수 있습니다. 이를 방어하기 위한 한 가지 전략은 네트워크 노드가 유효하지 않은 블록을 탐지했을 때 경고를 수락하여, 사용자의 소프트웨어가 전체 블록과 경고된 거래를 다운로드 받아 불일치를 확인하도록 하는 것입니다. 빈번한 결제를 받는 비즈니스는 보다 독립적인 보안과 더 빠른 검증을 위해 자체 노드를 운영하는 것을 여전히 원할 것입니다.