[Xangle Digest]
※해당 컨텐츠는 외부에서 기발간 된 컨텐츠입니다. 컨텐츠에 대한 추가적인 주의사항은 본문 하단에서 확인해주세요.
작성자: 김하늘 (Blockchain at Yonsei 9기), 이건희 (디사이퍼 9기), 이혜연 (하이블록 1기), 임장혁 (블록체인 벨리 2기), 장기덕 (디사이퍼 6기), 추교현 (커그)
목차
Intro
이더리움의 개념과 스마트 컨트랙트
이더리움의 작동방식
이더리움과 비트코인의 차이점
이더리움 2.0
Outro
Intro
이더리움은 비트코인과 함께 대중들에게 가장 대표적으로 알려진 블록체인 프로젝트입니다. 이더리움을 사용하는 사람들은 분산된 환경에서 프로그램을 생성하고 실행할 수 있습니다. 이더리움이 각광을 받게 되었던 것은 비트코인과 비교해서 더욱 복잡한 프로그램을 쓸 수 있다는 점 때문이었습니다. 이더리움이 나오고 난 뒤로 여러 가지 응용 프로그램들이 이더리움에 기반해서 나왔고, 특히 2017년 ICO 붐과 함께 흥망성쇠를 거듭하면서 현재까지 이어지고 있습니다.
블록체인 산업의 발전에서 큰 축을 담당하는 이더리움을 이해하기 위해서 이번 글에서는 이더리움이 무엇인지, 이더리움은 어떻게 작동하는지, 이더리움과 비트코인의 차이점이 무엇인지, 이더리움 2.0은 어떤 것인지 알아보겠습니다.
이더리움의 개념과 스마트 컨트랙트
이더리움은 탈중앙화된 어플리케이션 플랫폼입니다. 비트코인 및 기타 암호화폐와 마찬가지로 이더리움은 암호화폐인 이더(ETH)를 전송할 수 있습니다. 그 외에도 훨씬 더 많은 기능을 수행할 수 있는데, 자신의 프로그램을 배포하고 다른 사용자가 만든 응용 프로그램과 상호 작용할 수 있습니다. 이더리움의 데이터를 쌓아두는 블록체인에 코드가 추가된 후에는 편집할 수 없으며, 모든 사용자가 볼 수 있으므로 사용자는 이를 감시할 수 있습니다.
프로그램은 스마트 컨트랙트로 구성되며, 암호화폐인 이더는 이를 실행하고 거래하는 기본 단위로 사용됩니다. 이더는 가치를 저장하고, 월드 컴퓨터(이더리움 네트워크는 누구나 그 위에 코드를 배포할 수 있고 이를 실행한다는 점에서 월드 컴퓨터라고 불리기도 합니다.)의 데이터를 사용하고 변경하는데 사용됩니다. 이더리움 상의 응용 프로그램은 가치가 전송되는 방식에 대한 조건을 설정할 수 있으며, 거래를 통제하는 코드를 스마트 컨트랙트라고 합니다.
간단히 말해서 이더리움의 기본 아이디어는 개발자가 중앙 집중식 서버에 존재하는 것이 아닌, 분산 네트워크에서 실행되는 코드를 만들고, 이를 누구나 때와 장소를 불문하고 실행할 수 있습니다.
이더리움의 작동방식
이더리움이 작동하는 방식을 이해하기 위해서는 상태 전환(State transition) 개념에 대해 이해하여야 합니다. 상태(state)의 경우, 주어진 특정한 시간에 모든 계정의 잔고와 스마트 컨트랙트의 상황을 사진을 찍듯이 포착해 별도의 파일로 저장, 보관하는 기술인 스냅샷으로서 확인할 수 있습니다. 즉, 특정 작업을 추가적으로 수행하면 상태가 업데이트됩니다. 또한 모든 노드가 자체 스냅샷을 업데이트하여 변경 내용을 반영합니다. 예시로 아래 그림은 이더리움 상태의 전환을 보여주는 자료입니다. 이는 앨리스에게 5ETH를 보내는 중에 표시된 트랜잭션 내역입니다.
이더리움에서 실행되는 스마트 컨트랙트는 (사용자 또는 다른 계약의) 트랜잭션에 의해 작동합니다. 사용자가 컨트랙트에 트랜잭션을 보내면 네트워크의 모든 노드가 스마트 컨트랙트 코드를 실행하고 출력을 기록합니다. 이러한 과정은 스마트 컨트랙트를 컴퓨터가 읽을 수 있는 명령으로 변환하는 이더리움 가상 머신(EVM)을 사용하여 이를 수행합니다. 이더리움은 기본적으로 분산 네트워크이기 때문에 누구나 같은 상태를 유지하는 것이 매우 중요합니다. 따라서 상태를 동일한 상태로 업데이트하기 위해서는 다양한 종류의 합의 알고리즘을 적용할 수 있습니다. ETH2.0의 첫 단계인 The Merge 업그레이드 이전의 합의 알고리즘은 작업 증명 알고리즘(PoW)으로, 비트코인과 마찬가지로 마이닝(채굴)을 통해 합의에 이루는 방식을 사용했습니다. 이더리움의 경우 현재 지분 증명 알고리즘(PoS)을 채택하여, 암호화폐를 보유하고 있는 지분율에 비례해 블록 생성 권한을 주는 방식으로의 전환을 완료하였습니다.
이더리움과 비트코인의 차이점
비트코인은 글로벌 디지털 현금 시스템을 만들기 위해 블록체인 기술과 재정적 인센티브에 의존하고 있습니다. 비트코인은 중앙 관계자 없이도 전 세계 사용자를 조정할 수 있도록 하는 몇 가지 주요 혁신을 도입했습니다. 각 참가자가 자신의 컴퓨터에서 비트코인 네트워크를 구성하는 프로그램을 실행하도록 함으로써 비트코인은 사용자가 신용이 없고 분산된 환경에서 금융 데이터베이스의 상태에 동의할 수 있도록 했습니다.
비트코인은 흔히 1세대 블록체인이라고 불립니다. 지나치게 복잡한 시스템으로 만들어지지 않았기 때문에 보안 측면에서 강점을 가지고 있습니다. 하지만 기본적으로 보안을 우선시하는 특성으로 인해, 비트코인 네트워크는 융통성이 적다는 단점이 있습니다. 실제로 비트코인 네트워크에서는 스크립트를 사용하여 네트워크 위에서 특정 행동을 실행하는 것이 극도로 제한되어 있으며, 기본적인 트랜잭션 이외의 응용 프로그램(dApp, Decentralized Application)을 수용하는 것이 매우 어렵습니다.
대조적으로 이더리움과 같은 2세대 블록체인은 더 많은 활동들이 네트워크 위에서 일어날 수 있도록 설계되어 있습니다. 금융 거래 외에도 이러한 플랫폼은 더 높은 수준의 프로그래밍 기능을 가능하게 합니다. 그 결과 이더리움은 프로그램 복잡도에 따라 수수료(Gas)를 청구하는 개념이 발생했으며, 개발자에게 그들의 코드를 실험하고 탈중앙화 애플리케이션(dApp)을 만들 수 있는 훨씬 더 많은 자유를 제공합니다.
이더리움은 2세대 블록체인의 첫 물결이었으며, 현재까지 가장 눈에 띄는 블록체인으로 남아있습니다. 이더리움은 비트코인과 유사한 점이 있으며 많은 동일한 기능을 수행할 수 있습니다. 그러나 내부적으로 둘은 매우 다르며 각각 고유한 장점이 있습니다.
이더리움 2.0
소위 말하는 이더리움 2.0은 이더리움이 보안성과 탈중앙성을 해치지 않고, 높은 수준의 확장성을 확보하는 걸 목표로 합니다. 즉, 비탈릭 부테린이 제시한 블록체인 트릴레마를 해결하는 데 필요한 개발 로드맵을 성공적으로 완료한 상태를 의미합니다.
이더리움 2.0이라는 용어는 완전히 새로운 메인넷이라는 오해를 불러일으킬 수 있습니다. 실제로는 이더리움은 하나의 메인넷이 개발 로드맵에 맞춰서 하나씩 발전하고 있습니다.
*여기서는 업그레이드를 강조하는 의미로 이더리움 2.0의 의미를 사용하겠습니다.
이더리움의 2.0, 그 첫 번째 단계인 ‘The Merge’는 2022년 9월 15일 완료되었습니다.
‘The Merge’는 이더리움의 합의 알고리즘을 앞서 살펴본 PoW에서 PoS로 변환하는 단계입니다. 이더리움은 개발 초기부터 PoS로의 전환을 염두에 두고 있었습니다. 이를 위해서 2020년 12월부터 PoS를 사용하는 ‘비콘 체인’을 만들어 테스트해왔습니다. PoS로 전환함에 따라 노드를 운영하기 위한 하드웨어의 요구 사항은 PoW 대비 상대적으로 줄어들었고, 노드 참여를 위한 최소 지분은 32 ETH로 책정되었습니다.
이렇게 될 경우 노드의 개수는 전과 대비해서 상당히 증가하게 되고, 증가한 노드 개수는 이후 적용될 샤딩 기술과 접목되어 확장성을 증가시킬 예정입니다. 원래 도입 예정이었던 샤딩 방식은 1개의 단일 체인에서 연산 및 데이터 저장을 수행했던 것을 최대 64개 체인(샤드)으로 분할해서 수행하려고 했습니다. 하지만 이 방식에선 샤드 체인 간 통신 등 어려운 부분이 존재했고, 이를 보완하기 위해 이더리움 네트워크를 64개의 샤드가 아닌 단일 체인으로 유지하되, 이더리움 네트워크 위의 롤업 네트워크들이 데이터 저장을 용이하게 할 수 있도록 하는 새로운 데이터 구조인 블롭(Blob)을 도입하는 댕크샤딩(Danksharding) 방식으로 바뀌었습니다.
이 업그레이드는 ‘The Surge’에서 이루어질 예정이며, 이외에도 ‘The Verge’ 등 3단계가 추가로 진행될 예정입니다. 각 단계는 병렬적으로 개발되고 있고, 단계별로 적용됩니다.
이더리움 2.0은 분산된 환경에서 여러 어플리케이션이 작동하는 플랫폼을 지향합니다. 이를 위해서 보안성과 탈중앙성을 유지, 개선하면서 궁극적으로는 현재보다 더 높은 확장성을 목표로 합니다. 궁극적으로 모든 개발 로드맵이 마무리된 시점에는 이더리움 위에서 누구나, 안정적이고 더 빠른 속도 새로운 프로젝트를 시작할 수 있게 될 것입니다.
Outro
앞서 살펴본 대로 이더리움은 비트코인 네트워크로부터 파생된 블록체인 기술을 단지 가치를 전송하는 데에만 사용하는 것을 넘어 코드가 작동할 수 있는 환경으로 발전하고자 하는 생각으로부터 출발했습니다. 분산된 컴퓨팅 환경에서 스마트 컨트랙트를 실행시킬 수 있는 이더리움의 출현은 ERC-20으로 대표되는 토큰, ERC-721로 대표되는 NFT와 같이 새로운 가치를 창출할 수 있는 시작점이 될 수 있었습니다. 나아가 사람들은 탈중앙화 어플리케이션 (dApp)을 통해 신뢰할 수 있는 제 3자의 존재(은행, 증권사, 거래소)가 없음에도 담보대출, 자산 거래, 옥션 등의 활동을 수행할 수 있다는 것을 보여줄 수 있는 토대가 되었습니다. 이더리움의 등장 이후 분산 컴퓨팅 환경에서 코드를 실행시킬 수 있는 다양한 네트워크들이 출현하였습니다. 대표적으로는 이오스, 솔라나, 폴카닷 등이 있으며 이들은 이더리움이 해결하고자 하는 블록체인의 트릴레마에 대하여 저마다의 방법으로 해결하고자 합니다. 이더리움은 현재도 블록체인 산업에 새로운 질문을 던지는 생태계로서 산업의 발전에 앞장서고 있습니다.
-> '이더리움이란?' 원문 보러가기