블록체인/레벨 VII · 진화/7.1 이더리움: 세계 컴퓨터/수업 1
이더리움: 프로그래밍 가능성의 힘과 대가
튜링의 함정: 원장이 어떤 프로그램이든 실행할 수 있을 때 무슨 일이 일어나는가
준비물BIP-341(탭루트) 사본이더리움 백서(2014년)BitVM 논문 (2023)
호기심
- 임의의 코드를 실행할 수 있는 능력은 왜 필연적으로 도난에 노출되는 영역을 넓힐까요?
- 한 커뮤니티는 해킹을 되돌리기 위해 어떻게 자체 체인을 포크했으며, 비트코인은 왜 그 선례를 거부했을까요?
- 비트코인이 무거운 연산을 직접 실행하지 않고도 검증하는 정확한 메커니즘은 무엇일까요?
탐구
- 이더리움은 2015년 7월에 비트코인과는 다른 목표를 가지고 출시되었습니다. 그 목표란 바로 범용적인 프로그래밍 기능입니다. 비트코인의 스크립트는 특정하고 검증 가능한 금융 거래를 위해 설계된 반면, 이더리움은 튜링 완전한 가상 머신(EVM)을 도입했습니다. 이 덕분에 개발자들은 체인 상에서 어떤 종류의 프로그램이든 직접 작성하고 배포할 수 있게 되었습니다. 그 결과, 비트코인의 제한된 스크립트 환경에서는 불가능했던 다양한 토큰, 탈중앙화 금융 프로토콜, 그리고 대체 불가능한 토큰들이 폭발적으로 등장하게 되었습니다.
- 범용 연산 능력에는 대가가 따랐습니다. 2016년 6월, The DAO 스마트 컨트랙트의 재귀 버그로 인해 공격자가 모금된 자금의 약 3분의 1을 빼돌릴 수 있었습니다. 이더리움 커뮤니티는 위기에 직면했습니다. 코드를 작성된 그대로 실행되게 둘 것인가('코드가 곧 법'), 아니면 개입할 것인가? 커뮤니티는 개입을 선택하여, 비정상적 상태 변경(irregular state change)으로 도난당한 자금을 환불 컨트랙트로 옮기는 하드포크를 실행했습니다. 이 결정으로 체인은 이더리움과 이더리움 클래식으로 분리되었고, 사회적 합의가 불변의 코드보다 우선할 수 있음이 증명되었습니다.
- DAO 사건은 구조적 취약점을 드러냈습니다. 표현력이 커질수록 공격 표면도 넓어진다는 것입니다. 이후 프로그래밍 가능한 체인에서 발생한 도난 사건 대부분은 암호학적 결함이 아니라, 남겨둔 관리자 키, 업그레이드 가능한 컨트랙트 로직, 또는 단순한 코딩 오류에서 비롯되었습니다. 체인이 어떤 프로그램이든 실행할 수 있게 허용하면, 새로운 기능 하나하나가 악용될 수 있는 복잡성을 더합니다. 보안의 부담은 프로토콜 설계자에게서 엄격한 감사 역량이 부족할 수 있는 수천 명의 개별 개발자에게로 넘어갑니다.
- 그러한 공격 표면에 대한 해답 하나는 언어 자체의 내부에서 나왔습니다. 페이스북이 이후 폐기된 리브라(이후 디엠) 프로젝트를 위해 만든 Move는 토큰을 자원(resource)으로 취급합니다. 즉, 타입 시스템이 프로그램에서 복사하거나 몰래 버리는 것을 허용하지 않는 값이므로, 중복 집계나 자금 유실과 관련된 버그 유형 전체가 실제 운영 환경에서 실패하는 대신 컴파일 단계에서 걸러집니다. 2022년 디엠이 중단되자, 디엠 출신 엔지니어들은 Move를 새로운 체인으로 가져갔습니다. 에이버리 칭과 모 샤이크가 설립한 Aptos는 2022년 10월 17일, 트랜잭션을 낙관적으로 실행한 뒤 어떤 트랜잭션들이 같은 데이터에 접근했는지 사후에 확인해 해당 트랜잭션만 재실행하는 병렬 실행 엔진 Block-STM과 함께 메인넷을 출시했습니다. 엔지니어링은 최첨단이었지만, 출시는 그렇지 못했습니다. 거래소들은 APT 토큰의 분배 내역이 공개되기도 전에 이를 상장했고, 공개된 수치에서는 공급량의 약 절반이 투자자, 핵심 기여자, 재단에 배정된 것으로 나타났으며, 초기 온체인 활동은 광고된 처리량에 크게 못 미쳤고, 팀은 "더 잘할 수 있었을 것"이라고 인정했습니다. 또 다른 디엠 출신 엔지니어 그룹이 만든 Sui도 2023년에 자체 Move 기반 메인넷을 출시했습니다. 교훈은 양쪽 모두에 해당합니다. 더 안전한 언어는 공격 표면을 좁혀주지만, 홀더가 내부를 들여다볼 수 없는 출시를 기술이 구해주지는 못합니다.
- 비트코인의 대응 방식은 전면적인 복제가 아닌 선택적 도입이었습니다. 범용 연산 대신, 비트코인은 구체적이고 감사 가능한 기능들을 통합했습니다. 2021년 11월에 활성화된 탭루트는 프라이버시와 효율성을 유지하면서도 복잡한 지출 조건을 가능하게 하는 스크립트 트리를 도입했습니다. 또한 지갑들은 서명자 간에 거래를 전달하기 위한 표준 형식인 PSBT(부분 서명된 비트코인 거래)를 채택했습니다. 이러한 추가 기능들은 버그 있는 코드 하나가 전체 네트워크를 위협할 수 있는 범용 가상 머신을 도입하지 않으면서도 기능성을 향상시킵니다.
- 단순한 스크립트로 처리할 수 없는 무거운 연산에 대해서는 BitVM 방식이 해결책을 제시합니다. 2023년 로빈 리누스가 제안한 BitVM은 무거운 연산을 오프체인에 둡니다. 분쟁이 생긴 단계만 비트코인에서 확인되며, 그것도 누군가 이의를 제기할 때에만 이루어집니다. 이 방식은 비트코인의 가벼운 기반 레이어를 유지하면서도 고급 애플리케이션을 가능하게 하며, 핵심 프로토콜이 단순하고 검증 가능하게 유지되고 범용 스마트 컨트랙트 환경에서 나타나는 연쇄적 실패에 저항할 수 있도록 합니다.
- 트레이드오프는 명확합니다. 이더리움은 보안의 복잡성과 업그레이드 위험을 감수하고 유연성을 우선시하며, 비트코인은 연산을 제한함으로써 안정성과 명시성을 우선시합니다. 체인에 새로운 기능을 추가할 때의 판단 기준은 그 기능이 악용될 수 있는 숨겨진 상태나 관리자 권한을 만들어내는지 여부입니다. 신뢰할 수 있는 제3자나 복잡한 사회적 합의에 따른 포크에 의존하지 않고 단순하고 투명한 규칙만으로 검증할 수 없는 기능이라면, 그것은 내재적 위험을 안고 있습니다. 이 구분이 현재 두 주요 체인 간의 아키텍처상 분기를 규정합니다.
핵심 사실
- 이더리움 메인넷은 튜링 완전 가상 머신을 탑재하여 2015년 7월에 출시되었습니다.
- DAO 해킹은 2016년 6월에 발생했으며, 이로 인해 체인이 분리되는 하드포크가 일어났습니다.
- 비트코인에서는 2021년 11월(블록 709,632)에 스크립트 트리를 도입하며 탭루트가 활성화되었습니다.
- 대부분의 스마트 컨트랙트 도난 사건은 암호학적 결함이 아니라, 남겨둔 관리자 키나 코딩 버그에서 비롯됩니다.
- 페이스북의 리브라/디엠 프로젝트에서 유래한 Move는 토큰을 복사하거나 버릴 수 없는 자원으로 모델링합니다. Aptos는 2022년 10월 17일 Block-STM 병렬 실행을 갖춘 Move 기반 메인넷을 출시했습니다.
- BitVM은 오프체인 연산과 온체인 분쟁 해결을 결합하여 가벼운 기반 레이어를 유지할 수 있게 합니다.
- PSBT는 책임 소재가 명확한 다자간 거래 서명 워크플로를 가능하게 합니다.
연습 아홉, 여섯, 셋, 하나
9모으기스마트 컨트랙트 기능 또는 프로토콜 9가지를 나열하세요. 각각이 범용 연산, 특정 스크립트 로직, 외부 오라클 중 무엇에 의존하는지 적으세요.
6묶기9개를 각각이 만들어내는 공격 표면에 따라 6개 그룹으로 묶으세요.
3추리기6개를, 범용 연산이 시스템적 위험을 키우는 3가지 주요 이유로 압축하세요.
1결정화안전한 기능과 위험한 기능 사이의 경계를 어디에 그을지, 그리고 그 이유는 무엇인지 1문장으로 쓰세요.
팩트 체크
날짜, 수치 및 주장은 아래에 명시된 출처들을 통해 확인되었습니다.
- V. Buterin, Ethereum: A Next-Generation Smart Contract and Decentralized Application Platform (2014)
- P. Wuille, J. Nick & A. Towns, BIP-341: Taproot (2020)
- R. Linus, 'BitVM: Compute Anything on Bitcoin' (2023)
- Contemporary reporting on The DAO hack (June 2016)
- Aptos Foundation, Aptos Tokenomics Overview (2022)
- R. Gelashvili et al., "Block-STM: Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing" (2022)
- Contemporary reporting on the Aptos mainnet launch and tokenomics (CoinDesk/Yahoo Finance, October 2022)