블록체인/레벨 III · 네트워크/3.3 합의와 거버넌스/수업 1
나카모토 합의: 가장 많은 작업이 수행된 체인
목소리가 아닌 무게로 이기는 체인
준비물비트코인 백서 11절('계산')계산기 또는 스프레드시트
호기심
- 지도자나 투표 없이 수천 명의 낯선 사람들이 어떻게 하나의 역사에 합의할 수 있을까요?
- 블록을 하나 더 추가하면 왜 과거의 거래를 되돌리기가 더 어려워질까요?
- 두 체인이 10분 동안 동시에 존재하면 어떻게 될까요?
탐구
- 비트코인의 합의는 선거가 아닙니다. 고정된 구성원도, 리더도, 공식 투표도 없습니다. 모든 풀노드는 포괄적인 규칙 집합에 비추어 거래를 독립적으로 검증합니다. 채굴자들은 이렇게 검증된 유효한 거래들을 블록으로 묶을 때 작업증명을 수행하는데, 이는 타임스탬프 역할을 하는, 계산 비용이 많이 드는 퍼즐을 푸는 일입니다. 이 작업이 블록을 체인에 고정시켜, 블록은 변경하는 데 큰 비용이 드는 전 세계 공동 기록의 일부가 됩니다.
- 경쟁하는 두 체인이 나타나면 모든 노드는 간단한 규칙을 따릅니다. 바로 누적 작업증명이 가장 많은 체인을 채택하는 것입니다. 한 분기가 누적 작업량에서 앞서 나가면 다른 분기는 버려지고, 그 분기의 거래들은 승리한 분기에 이미 포함되어 있지 않은 한 멤풀로 돌아갑니다. 이 메커니즘은 시빌 공격을 무력화합니다. 그에 비례하는 연산력을 갖추지 못했다면 가짜 신원을 수천 개 만들어도 소용이 없습니다. 어떤 유효한 역사가 승리할지는 신원이 아니라 작업증명으로 측정되는 무게가 결정합니다.
- 합의는 절대적인 것이 아니라 확률적인 것입니다. 공격자가 정직한 체인을 추월하려면 해당 블록과 그 이후의 모든 블록에 대한 작업을 다시 해야 하므로, 거래는 그 위에 블록이 하나씩 쌓일 때마다 더 안전해집니다. 백서 11절은 이 위험을 계산합니다. 공격자가 해시파워 중 q의 비율을 장악하고 있을 때, z블록 뒤처진 상태에서 언젠가 따라잡을 확률은 z가 커질수록 지수적으로 감소합니다.
- 네트워크 해시레이트의 10%만 가진 공격자(q = 0.1)가 5번의 확인 아래 묻힌 거래를 되돌릴 확률은 0.1% 미만입니다. 이러한 수학적 감소가 상인과 거래소의 보안 모델이 됩니다. 몇 개의 블록이 폐기되고 다른 유효한 체인이 채택되는 짧은 재구성(리오그)은 정상적인 운영의 일부이며, 실패가 아니라 작업증명에 내재된 역동적인 경쟁을 보여 주는 것입니다.
- 6절은 인센티브가 합리적인 행위자들을 네트워크의 안정성에 부합하게 만든다고 주장합니다. 상당한 해시파워를 보유한 채굴자는 시스템을 공격하기보다 규칙을 따를 때 더 많은 이익을 얻는데, 그가 가진 코인의 가치가 네트워크의 신뢰성에 달려 있기 때문입니다. 그 신뢰를 무너뜨리면 바로 자신이 보유한 자산의 가치가 떨어집니다. 이러한 경제적 연계 덕분에 대형 참여자들은 합의를 흔들기보다 유지하는 데 이해관계를 갖게 됩니다.
- 백서의 계산을 직접 재현해 보십시오. 11절에는 짧은 C 프로그램과 표가 나와 있습니다. q = 0.1인 공격자가 5블록 뒤처진 상태에서 따라잡을 확률은 약 0.0009로 0.1% 미만입니다. q = 0.3이면 같은 5블록에서도 여전히 약 18%의 확률이 남으며, 위험을 0.1% 미만으로 낮추려면 훨씬 더 많은 확인이 필요합니다. 보안은 고정된 블록 수가 아니라 공격자가 동원할 수 있는 해시파워의 양에 달려 있습니다.
핵심 사실
- 나카모토 합의는 가장 많은 작업증명을 축적한 유효한 체인을 따릅니다.
- 고정된 회원이나 리더는 없으며, 누구나 언제든지 채굴하거나 떠날 수 있습니다.
- 해시파워가 10%인 공격자의 경우, 5블록 뒤처진 상태에서 따라잡을 확률은 0.1% 미만입니다.
- 짧은 재구성(리오그)은 작업증명 네트워크에서 정상적인 운영상의 현상입니다.
- 채굴자들은 보유한 코인의 가치가 네트워크에 대한 신뢰에 달려 있기 때문에 규칙을 준수할 경제적 인센티브를 갖습니다.
- 백서 11절은 거래 최종성(finality)에 대한 확률적 보안 모델을 정의합니다.
연습 아홉, 여섯, 셋, 하나
9모으기여러 당사자 간의 합의가 필요했던 9개의 역사적 또는 기술적 시스템을 나열하십시오. 분쟁 해결을 위해 중앙 권위, 투표, 또는 계산상의 가중치를 사용했는지도 함께 기재하십시오.
6묶기이 9개 시스템을 부정행위를 막은 방식에 따라 신뢰할 수 있는 제3자, 법적 강제, 평판 점수, 지분 기반 처벌, 다수결, 계산 비용의 6가지 범주로 분류하십시오.
3추리기6개 그룹을, 낯선 사람들이 서로의 의도를 신뢰하지 않고도 합의할 수 있게 해 주는 3가지 핵심 메커니즘으로 줄이십시오.
1결정화‘가장 많은 작업’이 ‘다수의 목소리’보다 더 견고한 합의 규칙인 이유를 설명하는 문장을 하나 작성하십시오.
팩트 체크
날짜, 수치 및 주장은 아래에 명시된 출처들을 통해 확인되었습니다.