기존 블록 체인의 단점 : 이더 리움

4 번째 게시물 Themelio의 근거에 대한 시리즈

(Eric (Yuhao Dong)) (2020 년 8 월 31 일)

내생 적 신뢰를 가진 분산 컴퓨터

2015 년 Ethereum이 처음 출시되었을 때 비트 코인과 근본적으로 다른 블록 체인을 목표로했습니다. 단일 응용 프로그램을 구현하는 대신 Ethereum은 내생 적으로 신뢰할 수있는 응용 프로그램 또는 “dApp”(분산 형 응용 프로그램)을위한 운영 체제와 동등한 것을 목표로합니다. 이 기능은 블록 체인에 포함 된 프로그램을위한 Turing-complete 언어 (EVM) 또는 블록 체인 내에서 임의의 상태에 액세스하고 저장할 수있는 “스마트 계약”에 의해 구동됩니다. Ethereum은 사실상 누구나 신뢰할 수있는 “월드 컴퓨터”입니다.

그후 몇 년 동안 와 같은 새로운 암호 화폐를 포함하여 다양한 Ethereum 앱이 개발되었습니다. Dai , Augur 와 같은 분산 형 베팅 플랫폼, 크립토 키티와 같은 가상 수집품까지. 가장 흥미롭게도 온 체인 탈 중앙화 금융 (DeFi) 생태계가 생겨 났으며, 네트워크 연결을 가진 모든 사람이 점점 더 유동적 인 자본 시장에 접근 할 수있게되었습니다. 이러한 모든 애플리케이션의 보안은 이더 리움이 제공하는 내생적인 신뢰에 달려 있습니다.

안타깝게도이 신뢰는 다소 잘못되었습니다. Ethereum의 내생 적 신뢰는 비트 코인과 비교할 때 유사하거나 더 나쁜 문제로 어려움을 겪습니다.

복잡성은 신뢰를 손상시킵니다

백서 제작자 Vitalik Buterin은 “모든 일반 프로그래머가 구현할 수있는”간단한 스마트 계약 언어 (EVM)를 기반으로 “기능이없는” “간단한”플랫폼이라는 Ethereum의 비전을 분명히했습니다. 그러나 오늘날 이더 리움은 거의 백만 줄의 코드를 참조로 구현 한 매우 복잡한 시스템입니다. 이러한 복잡성은 지속적인 유지 관리와 빈번한 변경을 요구합니다. 그러나 블록 체인의 합의를 깨는 프로토콜 업데이트 (또는 “하드 포크”)는 외부 프로토콜 개발자의 신뢰를 내생 적 신뢰로 대체하는 것을 의미합니다. 2020 년 8 월 현재 다음 표에는 Ethereum 프로토콜이 “하드 포크”될 때마다 나열됩니다.

위에서 입증했듯이 복잡한 dApp 운영 체제의 이더 리움 모델은 내생 적 신뢰를 자주 우회해야합니다.

더욱 놀랍게도 이더 리움의 개발자와 커뮤니티에는 강력한 내생 적 신뢰의 중요성에 대한 믿음. 사실 이더 리움의 핵심 개발자 인 Vlad Zamfir는“Szabo의 법칙”에 반대하는 (잘 알려진 블로그 게시물)을 저술했습니다. 이는 중대한 논란의 여지가없는 한 블록 체인을 업그레이드해서는 안된다는 아이디어입니다. 같은 게시물에서 Zamfir는 또한 블록 체인에 대한 외부 개입이 “암호화 법”의 합법적 인 형태라고 주장합니다.

당연히 프로토콜 복잡성과 내생 적 신뢰에 대한 사회적 무관심의 조합은 다음과 같은 심각한 위반을 초래했습니다. 생태계를 크게 혼란시킨 내생 적 신뢰. 이에 대한 가장 잘 알려진 예는 2016 년의 “DAO 구제 금융”입니다.

사례 연구 : DAO 구제 금융

2016 년 6 월 17 일, 스마트 계약 전원 공급의 취약성 당시 가장 인기있는 이더 리움 애플리케이션 중 하나였던 DAO가 악의적으로 악용되었습니다. 공격자는 계약에서 전례없는 360 만 ETH (현존하는 모든 ETH의 거의 5 \%)를 훔쳤습니다.

이더 리움 커뮤니티는 공격에 대해 무엇을해야하는지에 대한 열띤 논쟁을 벌였습니다. 결국, 온 체인 코인 투표는 2016 년 7 월 15 일에 촉박하게 진행되었습니다. 87 \%는 DAO에서 공격을 되돌리고 투자자에게 상환하기 위해 하드 포크에 찬성했지만 모든 미결제 ETH의 5.5 \%만이 투표. 4 일 후 하드 포크를 실행하는 새로운 버전의 이더 리움이 출시되었습니다.

이 논쟁의 여지가 많은이 DAO 포크는 중요한 블록 체인 보안 속성 인 불변성을 완전히 뒤집 었습니다. Ethereum 커뮤니티의 일부는 Ethereum의 원래 거래 내역을 계속 인식하여 Ethereum Classic으로 알려진 별도의 블록 체인을 형성했습니다. 비트 코인의 2017 년 비트 코인 및 비트 코인 캐시 포크와 마찬가지로 사용자는 결국 신뢰할 수있는 포크를 대역 외에서 결정해야하는 반면, 애플리케이션 개발자는 갑자기 두 개로 갈라지는 애플리케이션 아래의 바닥에 대처해야했습니다.