Vitalik:블록체인의 극단적인 단순함을 유지하고 이더리움의 합의 과부하를 피하세요
작성자:Vitalik Buterin
편집:Web3 대항해
이더리움 네트워크의 합의 메커니즘은 현재 가장 안전한 암호 경제 시스템 중 하나입니다. 가치 1800만 ETH(약 340억 달러)의 검증 노드는 6.4분마다 하나의 블록을 확인하며, 이러한 검증 노드는 중복성을 보장하기 위해 다양한 프로토콜 구현을 운영합니다. 암호 경제 합의에 문제가 발생하면, 버그나 의도적인 51% 공격에 관계없이 수천 명의 개발자와 더 많은 사용자로 구성된 대규모 커뮤니티가 이를 면밀히 모니터링하여 체인이 올바르게 복구되도록 합니다. 체인이 복구되면 프로토콜 규칙은 공격자가 심각한 처벌을 받을 수 있도록 보장합니다.
수년 동안, 이더리움 검증 노드 집합을 활용하거나 이더리움 사회 합의를 다른 목적을 위해 이용하자는 많은 아이디어(주로 사고 실험 단계에서)가 제안되었습니다:
궁극적인 오라클: 사용자가 ETH를 전송하여 사실의 진실을 나타내는 투표를 할 수 있는 제안을 제시하며, SchellingCoin 메커니즘을 채택합니다: 다수의 답변에 투표한 사람은 소수의 답변에 투표한 ETH의 비율을 받을 수 있습니다.
이 설명은 계속해서 다음과 같이 설명합니다: "따라서 원칙적으로 이것은 대칭적인 게임입니다. 대칭을 깨는 것은 a) 진실이 조정된 자연 점이라는 것과, 더 중요한 것은 b) 진실에 베팅하는 사람들이 패배할 경우 이더리움을 분기하겠다고 위협할 수 있다는 것입니다."
재스테이킹: 많은 프로토콜(예: EigenLayer)이 사용하는 기술 세트로, 이더리움의 보유자는 다른 프로토콜에서 예치금으로 자신의 지분을 동시에 사용할 수 있습니다. 특정 경우, 다른 프로토콜의 규칙을 위반하면 그들의 예치금도 처벌받습니다. 다른 경우에는 프로토콜 내 인센티브가 없으며, 지분은 단지 투표에만 사용됩니다.
L1 주도 L2 프로젝트 복구: L2에 버그가 발생하면 L1이 분기하여 이를 복구할 수 있다는 제안이 여러 번 있었습니다. 최근의 예는 L1 소프트 포크를 사용하여 L2의 실패를 복구하는 설계입니다.
이 글의 목적은 제가 이러한 기술 중 일부가 생태계에 높은 시스템 위험을 초래할 것이라고 생각하는 이유를 자세히 설명하는 것입니다. 이러한 제안은 일반적으로 좋은 의도로 제안되므로, 목표는 개인이나 프로젝트에 초점을 맞추는 것이 아니라 기술에 초점을 맞추는 것입니다. 본문에서 방어하고자 하는 일반 원칙은 다음과 같습니다: 검증자가 스테이킹한 ETH의 이중 사용에는 일부 위험이 있지만 기본적으로 수용 가능하며, 이더리움 사회 합의를 "모집"하여 귀하의 애플리케이션 목적에 서비스하는 시도는 바람직하지 않습니다.
검증자 재사용(저위험)과 사회 합의 과부하(고위험) 간의 구별 예시
- 앨리스는 웹3 소셜 네트워크를 만들었으며, 당신이 활성 이더리움 검증자의 키를 암호화하여 제어하고 있다는 것을 증명할 수 있다면 자동으로 "검증" 상태를 얻습니다. 저위험.
- 밥은 암호화하여 열 개의 활성 이더리움 검증자의 키를 제어하고 있음을 증명하여 특정 법적 요구 사항을 충족할 수 있는 충분한 재산이 있음을 입증합니다. 저위험.
- 찰리는 쌍둥이 소수 추측을 반박했다고 주장하며, p와 p+2가 모두 소수인 최대 p를 알고 있다고 주장합니다. 그는 자신의 스테이킹 인출 주소를 스마트 계약으로 변경하여, 누구나 q > p라는 주장과 함께 q와 q+2가 모두 소수임을 증명하는 SNARK 증명을 제출할 수 있습니다. 누군가 유효한 주장을 제기하면 밥의 검증자는 강제로 탈퇴하고 제출자는 밥의 남은 ETH를 받습니다. 저위험.
- 도지코인은 지분 증명으로 전환하기로 결정하고, 보안 풀의 규모를 늘리기 위해 이더리움 보유자가 "이중 스테이킹"을 하여 자신의 검증자 집합에 참여할 수 있도록 허용합니다. 이를 위해 이더리움 보유자는 자신의 스테이킹 인출 주소를 스마트 계약으로 변경해야 하며, 누구나 도지코인의 스테이킹 규칙을 위반했음을 증명하는 증명을 제출할 수 있습니다. 누군가 이러한 증명을 제출하면 보유자의 검증자는 강제로 탈퇴하고, 그들의 남은 ETH는 DOGE를 구매하고 소각하는 데 사용됩니다. 저위험.
- eCash는 도지코인과 동일한 일을 했지만, 프로젝트 리더는 추가로 발표했습니다: 참여하는 ETH 검증자가 eCash의 거래를 검열하기 위해 공모한다면, 이더리움 커뮤니티는 하드 포크를 통해 이러한 검증자를 제거할 것이라고 기대합니다. 그들은 이러한 검증자가 악의적이고 신뢰할 수 없다는 것이 입증되었기 때문에 이더리움이 그렇게 할 것이라고 믿습니다. 고위험.
- 프레드는 ETH/USD 가격 오라클을 만들었으며, 이 오라클은 이더리움 검증자가 참여하고 투표하도록 허용하여 작동합니다. 인센티브는 없습니다. 저위험.
- 조지는 ETH/USD 가격 오라클을 만들었으며, 이 오라클은 ETH 보유자가 참여하고 투표하도록 허용하여 작동합니다. 게으름과 잠재적인 뇌물 수수를 방지하기 위해, 그들은 중위수 답변의 1% 범위 내에서 참여자에게 중위수 1% 답변의 참여자에게 1%의 ETH를 지급하는 인센티브 메커니즘을 추가했습니다. "누군가 모든 참여자에게 뇌물을 제공하여 모든 사람이 잘못된 답변을 제출하게 된다면, 정직한 사람은 1000만 ETH를 잃게 될 것입니다. 어떻게 할까요?"라는 질문에 조지는 대답했습니다: "그렇다면 이더리움은 나쁜 참여자의 자금을 제거해야 할 것입니다." 고위험.
- 조지는 중간 위험에 대한 답변을 피했습니다(이 프로젝트가 그러한 분기를 시도하려는 인센티브를 생성할 수 있기 때문에, 공식적인 격려가 없더라도 분기를 시도할 가능성이 있습니다).
- 조지는 대답했습니다: "그렇다면 공격자가 이겼고, 우리는 이 오라클을 사용하는 것을 포기할 것입니다." 중간 저위험(완전히 "저위험"은 아니며, 이 메커니즘이 실제로 51% 공격에서 자신의 자산을 보호하기 위해 독립적으로 분기를 주장할 수 있는 행동자를 생성하기 때문입니다).
- 헤르미온느는 성공적인 2층을 만들었으며, 그녀의 2층이 가장 크기 때문에 가장 안전하다고 주장합니다. 왜냐하면 자금이 도난당하는 오류가 발생할 경우 손실이 너무 커서 커뮤니티는 사용자 자금을 복구하기 위해 분기할 수밖에 없기 때문입니다. 고위험.
당신이 프로토콜을 설계하고 있다면, 모든 것이 완전히 무너져도 손실이 당신의 프로토콜에 참여하고 사용하는 검증자와 사용자에게 제한된다면, 이는 저위험입니다. 반면에, 당신이 더 넓은 이더리움 생태계 사회 합의를 도입하여 분기나 재구성을 통해 문제를 해결하려 한다면, 이는 고위험이며, 우리는 이러한 기대를 창출하려는 모든 시도를 강력히 저항해야 한다고 생각합니다.
중간 지대의 경우는 저위험 범주에서 시작하지만, 참가자에게 더 높은 위험 범주로 미끄러질 동기를 부여하는 경우입니다. SchellingCoin식 기술, 특히 다수파에서 이탈할 경우 중대한 처벌이 있는 메커니즘은 주요한 예입니다.
그렇다면, 이더리움 합의를 과도하게 이용하는 데 어떤 문제가 있을까요?
가정해 보겠습니다. 지금이 2025년이고, 기존 옵션에 실망한 한 무리의 사람들이 검증자가 매시간 투표하여 가격을 결정하는 새로운 ETH/USD 가격 오라클을 만들기로 결정했습니다. 검증자가 투표하면 그들은 시스템에서 수수료의 일부를 무조건 보상으로 받습니다. 그러나 곧 참여자들은 게을러지기 시작합니다: 그들은 중앙화된 API에 연결하고, 이러한 API가 네트워크 공격을 받을 때 그들은 나가거나 잘못된 값을 보고하기 시작합니다. 이 문제를 해결하기 위해 그들은 인센티브 메커니즘을 도입합니다: 오라클은 일주일 전의 가격에 대해서도 투표하며, 당신의(실시간 또는 회고적) 투표가 중위수 투표와 1% 이상 차이가 나면 심각한 처벌을 받게 됩니다. 처벌금은 "정확한" 투표를 한 사람들에게 지급됩니다.
1년 이내에 90% 이상의 검증자가 참여하게 됩니다. 누군가 묻습니다: "리도(Lido)가 다른 몇몇 큰 스테이커와 연합하여 투표에 대해 51% 공격을 감행하고, 모든 비공격자에게서 중대한 처벌을 추출하여 가짜 ETH/USD 가격 값을 강제로 통과시킨다면 어떻게 될까요?" 이 시점에서 오라클의 지지자들은 이 계획에 깊이 투자하고 있으며, 그들은 대답합니다: "만약 그런 일이 실제로 발생한다면, 이더리움은 반드시 분기하여 나쁜 사람들을 쫓아낼 것입니다."
처음에 이 계획은 ETH/USD에 국한되어 있었고, 매우 안정적으로 보였습니다. 그러나 시간이 지나면서 다른 지수들도 추가되었습니다: ETH/EUR, ETH/CNY, 마지막으로 G20 모든 국가의 환율.
그러나 2034년, 일이 잘못되기 시작합니다. 브라질에서 예상치 못한 심각한 정치 위기가 발생하여 선거 논란이 일어났습니다. 한 정당이 수도와 75%의 영토를 장악했지만, 다른 정당은 북부 지역을 통제하고 있었습니다. 주요 서방 미디어는 북부 정당이 명백히 합법적인 승자라고 생각했으며, 그들의 행동이 합법적이라고 주장했습니다. 반면 남부 정당의 행동은 불법적이라고 주장했습니다(그리고 그들은 파시스트입니다). 그러나 인도와 중국의 공식 소식통, 그리고 엘론 머스크는 남부 정당이 실제로 대부분의 영토를 통제하고 있다고 생각하며, 국제 사회는 세계 경찰 역할을 하려 하지 말고 이 결과를 받아들여야 한다고 주장했습니다.
이 시점에서 브라질은 CBDC를 보유하고 있었으며, 이는 두 개의 분기로 나뉘었습니다: (북부의) BRL-N과 (남부의) BRL-S. 오라클 투표 시, 60%의 이더리움 스테이커가 ETH/BRL-S 환율을 제공했습니다. 대부분의 커뮤니티 리더와 기업은 스테이커가 파시스트에게 비열하게 굴복했다고 비난하며, ETH/BRL-N 환율을 제공하는 "좋은 검증자"만 포함하여 체인에 하드 포크를 제안했습니다. 그들은 소셜 미디어 버블에서 그들이 분명히 승리할 것이라고 믿었습니다. 그러나 일단 분기가 발생하면, BRL-S 쪽의 힘이 예상외로 강력했습니다. 그들이 예상한 압도적인 승리는 사실상 거의 50-50의 커뮤니티 분열로 이어졌습니다.
이 시점에서 양측은 각각 두 개의 독립된 우주에서 두 개의 체인을 가지고 있으며, 사실상 다시 합쳐질 수 없습니다. 이더리움은 국가와 지정학적 영향에서 벗어나기 위해 만들어진 글로벌 무허가 플랫폼이었지만, G20 회원국 중 어느 한 나라에서 예상치 못한 심각한 내부 문제가 발생하여 둘로 나뉘게 되었습니다.
이것은 훌륭한 공상 과학 이야기이며, 심지어 좋은 영화로 만들 수 있습니다. 하지만 우리는 실제로 무엇을 배울 수 있을까요?
블록체인의 "순수성"은 순수한 수학 구조로서 순수한 수학적 사물에 대한 합의를 이루려는 의미에서 큰 장점입니다. 블록체인이 외부 세계를 "걸어"하려고 할 때, 외부 세계의 갈등이 블록체인에 영향을 미치기 시작합니다. 충분히 극단적인 정치적 사건이 발생하면, 사실상 위의 이야기가 지난 10년 동안 여러 주요(>2500만 인구) 국가에서 실제로 발생한 사건을 모방한 것임을 고려할 때, 심지어 통화 오라클조차도 커뮤니티를 찢을 수 있습니다.
다음은 몇 가지 가능한 시나리오입니다:
오라클이 추적하는 통화(심지어 달러일 수도 있음)가 단순히 초인플레이션이 발생하여 시장이 특정 시점에서 명확한 시장 가격이 없는 상태로 붕괴됩니다.
이더리움이 가격 오라클을 다른 암호화폐에 추가한다면, 위의 이야기와 같은 논란의 여지가 있는 분열은 가정이 아닙니다: 이는 이미 발생한 일이며, 비트코인과 이더리움 자체의 역사도 포함됩니다.
엄격한 자본 통제를 시행하면, 두 통화 간의 어느 가격을 합법적인 시장 가격으로 보고할 것인지가 정치적 문제가 될 것입니다.
하지만 더 중요한 것은, 저는 Schelling 울타리가 존재한다고 생각합니다: 블록체인이 현실 세계의 가격 지수를 프로토콜 특성의 한 층으로 삼기 시작하면, 현실 세계 정보를 점점 더 많이 해석하는 데 굴복하기 쉽습니다. 가격 지수를 도입하는 것도 블록체인의 법적 공격 면을 확대합니다: 그것은 단순히 중립적인 기술 플랫폼이 아니라, 더 명백하게 금융 도구가 됩니다.
가격 지수 외에 다른 위험은 무엇인가요?
이더리움 합의의 "책임"의 어떤 확장도 검증자를 운영하는 비용, 복잡성 및 위험을 증가시킵니다. 검증자는 인력을 투입하여 주의를 기울이고, 추가 소프트웨어를 실행하고 업데이트하여 도입된 다른 프로토콜에 따라 올바르게 행동하도록 해야 합니다. 다른 커뮤니티는 이더리움 커뮤니티에 그들의 분쟁 해결 요구를 외부화할 수 있는 능력을 얻었습니다. 검증자와 전체 이더리움 커뮤니티는 더 많은 결정을 내려야 하며, 각 결정은 커뮤니티 분열로 이어질 위험이 있습니다. 분열이 없더라도, 이러한 압력을 피하려는 욕망은 의사 결정을 중앙화된 실체로 외부화하는 추가 인센티브를 창출할 수 있습니다.
분열의 가능성은 또한 나쁜 "너무 커서 무너질 수 없는" 메커니즘을 크게 강화할 수 있습니다. 이더리움에는 너무 많은 2층 및 애플리케이션 레이어 프로젝트가 있어, 이더리움 사회 합의가 이러한 모든 문제를 해결하기 위해 분기하는 것은 비현실적입니다. 따라서 더 큰 프로젝트는 불가피하게 더 큰 구조적 구제를 받을 기회를 가지게 됩니다. 이는 다시 말해 대형 프로젝트가 구덩이를 얻는 결과를 초래합니다: 당신은 Arbitrum이나 Optimism에 당신의 코인을 두고, 문제가 생기면 이더리움이 분기하여 상황을 구제할 것이라고 믿는 것이 좋습니까, 아니면 Taiko에 두고, 그 규모가 작고(비서구적이어서 핵심 개발자 커뮤니티와의 사회적 연결이 적어) L1 지원 구제 가능성이 적은 것이 좋습니까?
하지만, 결함은 위험이며, 우리는 더 나은 오라클이 필요합니다. 그렇다면 우리는 무엇을 해야 할까요?
이 문제를 해결하는 최선의 방법은 상황에 따라 다르며, 다양한 문제들이 본질적으로 매우 다르기 때문입니다. 몇 가지 해결책은 다음과 같습니다:
가격 오라클: 완전한 암호 경제가 아닌 분산형 오라클이거나, 검증자 투표에 기반한 오라클로, 그들의 긴급 복구 전략이 L1 합의에 의존하지 않는 다른 방법(또는 두 가지의 조합)을 명확히 약속합니다. 예를 들어, 가격 오라클은 투표 참여자의 부패 속도가 느리다는 신뢰 가정에 의존할 수 있으며, 따라서 사용자는 공격에 대해 미리 경고하고 오라클에 의존하는 시스템에서 탈퇴할 수 있습니다. 이러한 오라클은 프로토콜 인스턴스가 사용을 중단할 경우(예: 오라클 실패 및 커뮤니티가 다른 버전으로 분기하는 경우) 참여자가 보상을 받지 않도록 의도적으로 긴 지연 후에 보상을 지급할 수 있습니다.
가격보다 더 주관적인 사실에 대한 더 복잡한 진리 오라클: 비완전한 암호 경제 DAO에 기반한 어떤 분산형 법원 시스템.
Layer2 프로토콜:
단기적으로, 부분적으로 훈련된 바퀴에 의존(이 게시물에서 이를 1단계라고 부릅니다).
중기적으로, 여러 증명 시스템에 의존합니다. 신뢰할 수 있는 하드웨어(예: SGX)를 포함할 수 있습니다; 저는 SGX와 유사한 시스템을 안전한 유일한 보증으로 삼는 것을 강력히 반대하지만, 3 선택 2 시스템의 일원으로서 그들은 가치가 있을 수 있습니다.
장기적으로, "EVM 검증"과 같은 복잡한 기능이 궁극적으로 프로토콜에 통합되기를 희망합니다.
크로스 체인 브리지: 오라클과 유사한 논리지만, 브리지에 대한 의존도를 최소화합니다: 그들의 출처 체인에서 자산을 보유하고, 원자 교환 프로토콜을 사용하여 서로 다른 체인 간에 가치를 전송합니다.
이더리움 검증자 집합을 사용하여 다른 체인을 보호합니다: 위의 예시 목록에서(더 안전한) 도지코인 방법이 부족한 이유 중 하나는, 51%의 종결성 반전 공격을 방지하지만 51%의 검열 공격을 방지하지 못하기 때문입니다. 그러나 이미 이더리움의 검증자에 의존하고 있다면, 가능한 방향은 독립적인 체인을 관리하려는 시도를 중단하고, 이더리움을 앵커로 하는 유효한 검증 시스템이 되는 것입니다. 체인이 이러한 변화를 한다면, 종결성 반전 공격에 대한 보호는 이더리움만큼 강력해질 것이며, 99%의 검열 공격을 방지할 수 있습니다(반면 이전에는 49%였습니다).
결론
블록체인 커뮤니티의 사회 합의는 취약한 것입니다. 업그레이드가 필요하고, 결함이 존재하며, 51% 공격이 항상 발생할 수 있기 때문에 사회 합의는 필요하지만, 그렇게 높은 체인 분열 위험이 있기 때문에 성숙한 커뮤니티에서는 신중하게 사용해야 합니다. 블록체인의 핵심 기능을 확장하려는 자연스러운 충동이 있지만, 블록체인의 핵심은 가장 큰 경제적 권한과 가장 많은 커뮤니티 관찰자를 보유하고 있기 때문에, 이러한 모든 확장은 핵심 자체를 더욱 취약하게 만듭니다.
우리는 애플리케이션 레이어 프로젝트가 블록체인 합의의 "범위"를 증가시킬 수 있는 행동을 취하는 것을 경계해야 하며, 이러한 행동이 핵심 이더리움 프로토콜 규칙을 검증하는 것이 아닌 경우에는 더욱 그렇습니다. 애플리케이션 레이어 프로젝트가 이러한 전략을 시도하는 것은 매우 자연스러운 일이지만, 이러한 아이디어는 종종 위험을 인식하지 못한 채 발생하며, 그 결과는 커뮤니티 전체의 목표와 극도로 불일치할 수 있습니다. 이러한 과정은 제한 원칙이 없으며, 시간이 지남에 따라 블록체인 커뮤니티가 "책임"을 점점 더 많이 가지게 되어 매년 높은 위험의 분열과 어떤 사실상의 관료 기관이 체인에 대한 최종 통제권을 가지는 불편한 선택으로 밀어넣을 수 있습니다.
우리는 체인의 극소주의를 유지하고, 미끄러지지 않는 것처럼 보이는 재스테이킹의 용도를 지원하며, 이더리움 합의의 역할을 확대하고, 개발자가 그들의 안전 목표를 달성하기 위한 다른 전략을 찾도록 도와야 합니다.