이더리움의 소프트 웨어 업그레이드는 오래 전에 이뤄졌어야 한다. 그 이유는 잠시 뒤 설명하겠다. 먼저 소프트 웨어 업그레이드가 어떻게 이뤄지는지 잠시 살펴보자.
하드포크는 기본적으로 소프트웨어 업그레이드다.
왜 우리는 현재 갖고 있는 것을 그냥 고수하고 업그레이드를 하지 않으면 안 되는 것일까? MS 워드의 낡은 버전을 사용하는 오래 된 랩탑 컴퓨터라면 가능할 것이다. 하지만 암호화폐에서 소프트웨어 업데이트는 버그 치유, 새로운 위협에 대처하는 보안 강화, 그리고 새로운 특성 추가를 위해 필수적이다.
더욱이 모든 암호화폐들은 분산원장을 바탕으로 존재한다. 암호화폐는 네트워크 전체를 업그레이드 해야 하는 공유된 소프트웨어로 가동되는 공유된 데이터베이스라고 정의할 수 있다.
그 결과 …
암호화폐 업그레이드는 정말로 매우 까다로울 수 있다
네트워크상의 모든 단일 트랜잭션은 전 세계에 흩어져 있는 수천, 때로는 수만개의 컴퓨터들에 의해 독립적으로 확인되어야 한다.
여기에서 큰 문제가 발생한다. 확인에 관한 모든 규칙은 소프트웨어에 기록된다. 업그레이드도 마찬가지다. 모든 참가자들(또는 최소한 절대 다수가) 새로운 버전을 받아들여 그들의 컴퓨터에 설치해야 한다.
만일 참가자들이 그렇게 하지 않는다면? 일부 이상한 결과들이 나올 수 있다. 이런 시나리오를 생각해보자.
암호화폐의 두 가지 소프트웨어 버전이 인터넷을 떠돌아 다닌다. 어떤 사람들은 옛날 버전, 다른 사람들은 새 버전을 갖게 된다.
당신의 컴퓨터를 확인해 보자. 컴퓨터는 당신 계좌에 1만ETH의 잔고가 있다고 알려줄 것이다. 그러나 다른 소프트웨어 버전은 당신의 ETH 잔고가 제로라고 말할 것이다.
당신이 어떤 상인에게 1000ETH를 보냈다고 가정하자. 실제로 당신 컴퓨터 상의 원장은 금액이 전액 지불됐음을 가리킬 것이다. 그러나 상인이 갖고 있는 원장 내용은 다르다. 그는 “당신 계좌의 잔고 부족” 때문에 1ETH도 받지 못했다고 주장한다.
수 많은 구입자와 판매자들이 비슷한 이슈에 직면하게 된다. 그 결과 혼란이 지배하게 된다.
혼란을 피하려면 암호화폐 업그레이드는 엄격한 절차를 따라야 한다
여기 최소한으로 요구되는 절차가 있다.
첫째, 하드포크는 실행되기 한참 전에 발표되어야 한다.
둘째, 서로 다른 암호화폐 네트워크마다 업그레이드 절차도 다르기 때문에 개발자들은 하드포크가 정확히 언제 발생할 것인지, 그리고 그들이 언제 어디에서 무엇을 해야 하는지 정확히 알아야 한다.
셋째, 네트워크의 모든 참여자들은 새로운 규칙이 발효되기 한참 전에 컴퓨터를 업그레이드 해야 한다.
넷째, 새로운 버전이 발효되면 개발자들은 결함이 없는지 아주 세심하게 모든 것을 모니터 해야 한다.
이더리움은 왜 하드포크를 필요로 하는가
이더리움은 많은 도전에 직면해 있다. 그러나 그 중에서도 현재 가장 큰 문제는 확장이다.
이용 가능한 데이터에 따르면 이더리움 네트워크는 주 7일, 하루 24시간 최대 용량으로 가동된다. 매일 매일 교통 혼잡 때문에 약 4 ~ 5만 트랜잭션의 처리가 불가능한 상태다. 이는 이더리움 네트워크가 만족시킬 수 없는 초과 수요를 일깨워준다.
이더리움은 수천개 앱의 본거지다. 이더리움은 비트코인보다 훨씬 복잡하다. 때문에 이더리움은 업그레이드를 절실히 필요로 할 뿐 아니라 이더리움이 요구하는 변화는 소프트 포크로는 감당하기에 너무 복잡하다.
이더리움 커뮤니티가 앞으로 취할 수 있는 유일한 현실적인 길은 하드포크다. 그리고 하드포크에는 위험이, 어쩌면 큰 위험이 따른다.
이더리움 네트워크 연산 능력의 큰 몫을 불과 5 채굴자들이 통제하고 있지만 이더리움 네트워크에서 실제 작업을 하는 노드의 숫자는 총 9101개다. 네트워크 분열의 위험을 피하려면 소프트웨어 업그레이드가 이뤄지기 전에 이들 노드 전부가 새로운 소프트웨어 버전으로 업그레이드 해야 한다.
모든 사람들의 동의를 끌어내는 것은 고양이 무리를 치는 것만큼 어렵다는 것이 문제다.
[글 = 후안 빌라베르데: Weiss Ratings Editor] 번역/정리 = 장도선 뉴욕 특파원