2015년 애플리케이션이 작동할 수 있는 최초의 블록체인으로 등장한 이더리움이 2.0버전으로 진화를 앞두고 있다.
비탈릭 부테린 이더리움 창립자는 지난달 31일 체코 프라하에서 열린 이더리움 연례 기술 컨퍼런스 '데브콘4' 행사에서 이더리움 2.0을 세레니티로 명명하고 "세레니티는 실질적인 의미에서 세계의 컴퓨터(World Computer)"라고 소개했다.
세레니티는 '평온한 상태'를 의미하는 단어다.
세계의 컴퓨터는 이더리움이 등장했을 때부터 지향해 온 비전이다. 이더리움 네트워크가 분산된 컴퓨터(노드)들이 연결된 거대한 컴퓨터와 같기 때문이다.
하지만, 현재 이더리움 네트워크가 초당처리할 수있는 트랜잭션(TPS)은 14건에 불과하다. 세계의 컴퓨터라고 하기엔 너무 뒤쳐진 성능이다.
부테린은 세레니티로 업그레이드되면 이더리움 네트워크의 TPS는 지금의 1천배 이상 증가할 것이라고 예상했다. 그렇게 되면, 현재 14TPS에서 1만4천TPS로 성능이 껑충 뛰게 된다. 부테린이 세레니티를 '실질적인 의미'의 세계 컴퓨터라고 얘기한 이유다.
세레니티는 탈중앙성과 보안성을 훼손하지 않으면서 확장성 문제를 풀고자 했다. 확장성, 탈중앙성, 보안성은 3개의 요소가 얽혀 하나를 이루려면 나머지 두가지 목표를 이룰 수 없는 일명 '트릴레마(Trillemma)' 상황에 놓인 난제다.
즉, 이더리움1.0이 가진 탈중앙성, 보안성을 유지·발전하면서, 확장성은 크게 늘리는 과정이 세레니티로 가는 여정이다.
세레니티는 이런 목표를 달성하기 위해 지분증명방식(PoS)으로 합의알고리즘 변화(캐스퍼), 데이터 처리방식의 변화(샤딩), 프로그램 작동 환경인 버추얼머신의 변화(eWASM.이와즘) 등 근본적이고 구조적 변화를 동시 다발적으로 진행한다.
부테린은 세레니티 출시가 먼 미래 얘기가 아니라는 점을 강조했다. 그는 "우리는 지난 4년간 이 작업을 진척시켜 왔고 (출시까지) 마일스톤은 정말로 멀지 않았다"며 "세레니티로 가는 배가 항해 중"이라고 말했다.
■체인 나눠 트릴레마 풀었다
이더리움 진영은 한 개 체인 안에서 탈중앙성과 보안성을 훼손하지 않으면서 확장성 문제를 풀수 없다고 보고, 체인을 나누는 전략을 택했다.
메인 체인은 여전히 합의알고리즘으로 작업증명(PoW) 방식을 채택해 탈중앙과 보안을 중점적으로 담당한다. 새로운 체인에는 합의알고리즘을 PoS로 바꾸는 '캐스퍼'와 소그룹(샤드)들이 각기 다른 데이터를 처리하도록 일감을 나눠주는 '샤딩' 등 성능 개선에 초점을 맞춤 솔루션이 투입된다. 그리고, 새로운 체인은 메인체인에 연결해 보안성을 의존하도록 했다.
구조적으로 살펴보면, '메인체인(PoW체인)' '비콘체인(PoS체인)' '샤드체인(샤딩 솔루션 적용)'까지 총 3개의 레이어(층위)가 존재한다. PoW체인에 일정한 이더를 예치하면, PoS 비콘체인에 들어와서 검증 노드 자격을 얻고, 각 샤드에 랜덤하게 배치돼 트랜잭션을 처리하는 구조다.
■캐스퍼는 무엇
합의알고리즘을 PoS방식으로 바꿔야 한다는 논의는 꾸준히 제기됐다. 컴퓨팅 파워가 많은 사람이 블록을 생성하고, 보상으로 코인을 받는 'PoW방식'은 전력 낭비가 심하고, 네트워크가 일부 채굴자에 의해 좌지우지될 가능성이 있기 때문이다.
'PoS방식'는 지분이 있는(코인이 있는) 사람이 블록을 생성할 권한을 얻는다. 메인체인과 샤드체인 사이에 위치한 비콘체인에 PoS 알고리즘이 적용된다. 지금까지 확정된 스펙에 따르면, PoW체인에 32이더(ETH)를 예치한 노드는 '비콘체인'으로 들어와서서 검증자 자격을 얻게 된다. 비콘체인은 이 검증자들은 '샤드체인'에 배치하는 역할도 한다.
세레니티에서는 하이브리드 방식이 아닌 완전한 PoS 체계를 구축한다. 부테린은 데브콘 발표에 "하이브리드 캐스퍼가 아니라 순도 100% 캐스퍼가 적용될 것"이라고 강조했다.
■샤딩은 무엇
샤딩은 확장성을 높이는 솔루션으로 도입됐다. 블록체인은 네트워크 내 모든 노드가 동일한 데이터를 공유해야 하는 구조이기 때문에, 전체 네트워크 성능이 단일 노드 성능으로 제한된다는 한계를 가지고 있다.
지금 이더리움 네트워크의 TPS는 14건~20건 수준이다. 크립토키티(고양이 캐릭터 수집 게임) 같이 한개 애플리케이션이 갑자기 인기를 얻으면, 전체 이더리움 수수료가 급증하고 네트워크가 마비될 수있는 위험을 안고 있다.
샤딩은 노드들을 그룹(샤드)으로 묶고, 각 그룹 마다 서로 다른 트랜잭션을 처리하게해, 확장성을 높이는 방법이다. 샤드 하나 하나는 일종의 체인이라고 볼 수 있다.
하지만, 샤드에는 검증 노드의 숫자가 한정될 수 밖에 없다. 예컨대 전체 네트워크에 1만개의 검증 노드가 있다면, 각 샤드에는 100개 정도의 검증 노드가 있는 식이다. 노드가 줄어들면 보안성이 약해진다.
이런 문제를 해결하기 위해 비콘체인이 각 샤드에 검증 노드를 랜덤하게 배치하도록 했다. 샤드를 구성하는 노드가 계속 바뀌기 때문에 보안 문제와, 노드 간 담합문제를 제거할 수 있다.
■"세레니티 개발, 4개 단계로 나눠 달성"
부테린은 세레네티가 0부터 3까지 총 4번의 단계를 거쳐 론칭된다고 설명했다.
0단계는 PoS 비콘 체인을 탑재한 초기 버전이다. 비콘체인이 기존 이더리움과 함께 존재하며, 검증노드를 참여시킬 수 있는지 테스트한다. "테스트넷과 메인넷 사이 중간에 위치한다"는 설명이다.
1단계는 제한된 기능만 가능한 단순한 세레니티 버전이다. 샤드에 데이터 저장이 가능하지만, 샤드에서 다른 샤드로 스마트컨트랙트나 이더를 송금할 수 없는 없다.
2단계는 샤드 간 커뮤니케이션이 가능한 '확장된 세레니티' 버전이다. 샤드 간 송금, 메시지 전송이 가능하다. 또 이와즘이라는 새로운 가상머신도 도입된다.
3단계는 마지막 점검 단계로, 기능을 일부 조정하고 최적화하는 단계다.
부테린은 출시된 세레니티의 성능이 "완전 PoS 합의알고리즘을 가지며 동기화 확정 시간은 6초에서 18초에 가능하고, 확장성도 1천배 향상될 것"이라고 강조했다.
부테린은 세레니티 출시가 그리 멀지 않았다는 점을 강조했다.
관련기사
- "이더리움은 외산 메인넷이 아니다"2018.11.09
- 이더리움 망에서 비트코인 쓴다2018.11.09
- 부테린, 블록체인 한계 넘을 아이디어 공개2018.11.09
- 삼성SDS, 해운물류에 블록체인 기술 써 보니...2018.11.09
세레니티 출시를 위해 즉각적으로 실행해 해야 하는 작업에 대해서 "프로토콜 사양 안정화, 테스트와 개발, 클라이언트 테스트넷 실행, 보안 감사, 출시 순서로 이뤄질 것"이라고 설명하며 "우리는 지난 4년간 이 작업을 진척시켜 왔고 (출시까지) 마일스톤은 정말로 멀지 않았다"고 강조했다.
또, 클로징 키노트에서 "친구들이여! 세레니티로 가는 배가 항해 중이다"라고 말하며 세레니티에 대한 기대감을 고조시켰다.