이더리움이란?

이더리움이란?

이더리움이란 노드, 암호학, P2P, 그리고 프로토콜에 기반하여 경제구조, 지배구조, 의사결정구조 등을 갖고 불특정 다수가 참여하는 네트워크이자 분산 데이터베이스 시스템이다.

또한, 이더리움은 튜링완전한 컴퓨터 프로그래밍 언어를 실행하는 블록체인 플랫폼이라 할 수 있다.

튜링완전 하단 것은 무한한 저장공간 상에서 컴퓨터 프로그래밍 언어로 알고리즘 구현이 가능해 이를 통해 문제를 해결할 수 있는 기계를 의미한다.

이더리움에서 실행 가능한 컴퓨터 프로그래밍 언어는 Solidity 라고 하며, 이 언어로 블록체인 네트워크 상에 배포되고 사용되는 Smart Contract 를 개발할 수 있다.

Smart Contract 를 활용하면 블록체인 네트워크 상에서 다양한 애플리케이션 플랫폼을 만들 수 있고, 다양한 유무형의 가치들을 토큰화해 중앙 기관 개입없이 이용 가능한 Defi 같은 탈중앙 서비스를 만들 수 있다.

이더리움에서 이루어지는 모든 거래(트랜잭션)들은 채굴자 라고하는 특수한 임무(채굴)를 수행하는 참여자들에 의해 처리된다.

이들이 임무에 참여하는 이유는 보상을 받을 수 있기 때문이며, 보상은 이더(ETH) 라는 가상자산이 지급된다.

채굴자 들은 자신의 컴퓨팅 파워를 소모해 다른 사람들이 전송한 트랜잭션 들을 블록 이라는 자료구조에 담아 네트워크에 전파한다.

이러한 블록 은 누구나 만들 수 있지만, 가장 먼저 만든 사람에게 보상을 주도록 합의(Consensus) 되어 있다.

작업 증명(Proof of Work)

작업 이라는 것은 채굴자 들이 자신의 컴퓨팅 자원을 소모하면서 유효한 블록 을 만들기 위해 들인 수고를 의미한다.

Ethash(x) <= Difficulty target

채굴자 들은 Difficulty target 보다 작거나 같은 x 를 찾는다. 이 때, x 를 구하는 해법이 없기 때문에 계속 여러 차례로 값을 넣어보고 조건에 맞는지 검사해야 한다.

x 를 구해야 모든 클라이언트에게 인정받는 블록 을 만들 수 있다.

블록(Block)

채굴자 들이 EtHash 에 의해 찾은 값은 블록 식별자로 사용된다. 이 블록 식별자를 블록 해시 라고 한다. 블록 해시블록 에 포함되는데, 블록 은 블록 헤더와 트랜잭션으로 구분된다.

  • 블록헤더 : 트랜잭션을 검증할 수 있는 정보들, 블록 용량, 보상계정 등의 값이 저장됨

  • 블록해시 : 블록헤더에 있는 값들을 해시하여 일정한 길이 256비트 값

채굴자 들은 블록헤더의 각 항목들과 Nonce 값을 변경해가면서 EtHash에 의해 블록해시 값을 계산한다.

여기서 블록해시 를 계산할 때 필요한 값들 중 하나는 이전 블록의 블록해시이다. 즉, 모든 블록들은 이전의 블록해시와 연결되어 있다고 볼 수 있다.

"블록체인은 데이터 위변조에 강하다. " 라는 말을 들어 본 적이 있을 것이다. 블록체인은 해시 함수의 특성을 갖고 있기 때문에, 어떤 블록의 블록해시를 변경하면 그 블록을 참조하는 모든 블록들의 블록해시를 순차적으로 바꿔야 하고, 그렇게 되면 작업증명을 다시 수행해야 하므로 유효한 블록으로 인정받을 수 없기 때문이다.

지분 증명(Proof of Stake)

이더리움 2.0작업 증명지분 증명으로 바꾸기 위해 단계별 전환을 하고 있다. 현재 그 첫 번째 단계인 비콘 체인 이 시작되었으며, 샤딩, eWasm 이 순차적으로 적용될 예정이다.

이더리움이 작업 증명에서 지분 증명으로 바꾸려 하는 이유는 환경 문제 가 크다. 작업 증명에서는 블록을 생성하기 위해 채굴을 해야 했으며, 채굴은 채굴자들의 컴퓨팅 자원을 소모해야 했다. 이는 엄청난 규모의 장비가 7일 내내 24시간(24/7) 돌아갈 필요가 있어 에너지 낭비가 큰데, 이 에너지를 유지하기 위해 화력 발전, 원자력 발전 같은 환경에 영향을 주는 시설을 오래토록 유지할 수 밖에 없었다.

지분 증명 이란 네트워크에서 발행되는 지분, 즉 암호화폐를 일정 수량 보유하면 컴퓨팅 파워 없이도 블록을 만들거나 검증할 수 있는 자격을 주겠다는 것이고, 검증 자격을 갖춘 사용자들을 채굴자 가 아닌 검증자 라고 한다.

이더리움 2.0의 단계

비콘 체인

지분 증명 전환의 첫 단계인 비콘 체인검증자 들이 블록을 검증하고 전파하는 서명 트랜잭션 을 저장한다.

샤딩

단일 블록체인에서 처리하던 트랜잭션들을 샤드 라고 하는 작은 단위의 네트워크로 나누어 처리한다.

트랜잭션을 나누어 처리해 처리 속도를 높이는 것이 목적이며, 샤드의 트랜잭션을 검증하는 것이 비콘 체인 이다.

eWasm

스마트 컨트랙트가 실행되는 환경인 EVMeWasm 이라 하는 웹어셈블리 기반의 실행 엔진으로 전환한다.

이더리움은 이를 통해 Solidity 뿐만 아니라 다른 프로그래밍 언어로 작성된 스마트 컨트랙트를 eWasm 으로 컴파일하여 확장성 높이려 한다.

Merge

이더리움은 현재 합의 방식 으로 작접 증명과 지분 증명을 사용하고 있는데, 이더리움 2.0로드맵 에서는 작업 증명의 조기 종료(Merge) 가 가능하다고 보고 있어, 기존에 채굴자 들이 하는 블록 생성을 지분 증명(PoS)을 사용하는 비콘 체인검증자 들이 대신하게 된다.

이더리움 클라이언트 개발자들은 공식적으로 이더리움 1.0이나 이더리움 2.0 이란 용어를 쓰지 않기로 합의 했다.
이더리움은 하나이고, 단지 비콘체인을 합의 계층, 현재 이더리움을 실행 계층으로 구분한다.
각각의 체인은 예전과 다름없이 동작하고 노드들끼리 서로 필요한 데이터만 주고 받는다.

좋은 웹페이지 즐겨찾기