요약
작업증명은 새 블록을 만들 때마다 많은 연산을 요구하는 방식입니다. 블록이 쌓일수록 과거 기록을 바꾸는 데 필요한 연산량이 늘어나, 기록을 고치려면 그 이후 모든 블록의 작업을 다시 해야 합니다. 비트코인의 보안은 이 재작업 비용이 얻을 수 있는 이익보다 크다는 데서 나옵니다.
작동 원리
채굴자는 블록 헤더의 SHA-256 해시값이 네트워크가 정한 목표값보다 작아질 때까지 계산을 반복합니다. 정답을 찾는 방법은 대입뿐이고 검증은 한 번의 계산으로 끝납니다. 각 블록은 이전 블록의 해시를 담고 있어 하나를 바꾸면 이후 블록이 모두 무효가 되고, 노드는 누적 작업량이 가장 큰 체인을 유효한 기록으로 따릅니다.
블록 N
이전 해시 a1…
블록 N+1
이전 해시 7c…
블록 N+2
이전 해시 e0…
블록 N+3
최신
누적 작업량
블록 N을 바꾸려면 블록 N부터 최신 블록까지의 작업을 다시 하고, 그동안 늘어나는 정직한 체인의 작업량도 따라잡아야 합니다.
다른 블록체인과의 비교
합의 방식에 따라 누가 기록을 통제할 수 있는지, 공격 비용이 무엇으로 정해지는지가 달라집니다.
| 구분 | 작업증명(비트코인) | 지분증명·허가형 체인 |
|---|---|---|
| 블록 생성 자격 | 연산 능력을 투입한 누구나 | 지분 보유자 또는 승인된 검증자 |
| 공격 비용 | 외부 자원(장비·전력) | 내부 자원(지분) 또는 검증자 담합 |
| 검증자 통제 | 특정 주체가 참여를 막기 어려움 | 운영 주체가 검증자를 정할 수 있음 |
| 최종성 | 확률적, 블록이 쌓일수록 강해짐 | 방식에 따라 확정적 최종성 제공 |
실제 활용
- 금융기관 입금 확인 정책
거래 금액과 위험도에 따라 필요한 확인 블록 수를 정합니다. - 공정추첨 시드
이벤트클럽은 작업증명으로 보호되는 미래 블록해시를 추첨 시드로 씁니다. - 기록 무결성 증명
문서 해시를 블록에 기록하면 그 시점 이후 변경 여부를 증명할 수 있습니다.
한계와 위험
- 전체 해시파워의 과반을 가진 주체는 최근 블록을 재구성할 수 있습니다.
- 최종성은 확률적입니다. 확인 블록 수가 적은 거래는 뒤집힐 가능성이 남습니다.
- 채굴 풀 집중도는 시기에 따라 달라지므로 지속적으로 확인해야 합니다.
- 작업증명은 기록의 순서와 불변성을 보호할 뿐, 기록된 내용이 사실인지는 보증하지 않습니다.