레이어코인..? 레이어가 뭘까?

Junseo Kim / 김준서
CURG
Published in
13 min readDec 19, 2021

서론

이 글을 읽는 사람이라면 블록체인의 레이어에 대해 한번쯤은 들어봤을 것이다. 필자 본인에게도 다소 생소했던 개념이었던만큼, 본고에서는 초심자들도 이해할 수 있는 방식으로 블록체인의 레이어에 대해 설명해보고자 한다. 단순히 레이어가 무엇인지, 왜 어떤 블록체인(혹은 코인)은 레이어1으로 분류되고, 다른 것들은 레이어2로 분류되는지를 설명하기보다는 기초적인 지식부터 차근차근 설명해보고자 한다. 이 방식이 필자의 공부에도 많은 도움이 되었던 만큼, 여러분들에게도 조금이나마 도움이 되길 바란다.

블록체인의 확장성 (Blockchain Scalability)

블록체인의 확장성은 많아지는 사용자를 수용할 수 있는 정도이다. 사용자가 많아지면 당연히 한 블록에 담아내야하는 트랜잭션의 수가 많아지므로, 블록체인의 확장성은 해당 시스템의 처리율과 밀접한 연관이 있다. 다르게 말해서 블록체인의 확장성은 특정 블록체인이 1초당 처리할 수 있는 트랜잭션의 수(TPS; Transcation per Second)와 관련이 있으며, 이는 블록체인의 처리 속도에 대한 지표라고 이해할 수 있다.

보다 쉽게 얘기해보자. 블록체인은 장부(블록)에 거래내역(트랜잭션)을 기록하는 시스템이다. 거래하는 사람들이 많아지면, 거래가 잦아지므로 당연하게도 장부에 기록해야 하는 거래의 내역들이 많아진다. 즉 장부를 빠르게 작성하는 시스템일수록(TPS가 높을수록) 더 많은 사람(더 많은 거래)을 수용할 수 있을 것이다.

대표적인 블록체인인 비트코인은 약 7tps, 이더리움은 20tps, 이오스는 1,000tps 정도의 수치가 나오는 것으로 알려져 있다.

블록체인의 보안성 (Blockchain Security)

블록체인의 보안성은 여러 공격들에 대해 블록체인의 정보를 안전하게 지켜내는 것을 의미한다. 기밀성, 무결성, 가용성이 적용된 블록체인은 이론적으로 해킹이 불가능하지만, 아직 완벽한 보안 체계를 갖추고 있지는 못하다. 실제로 여러 유효한 공격들이 있으며, 다양한 각도에서 기술이 많이 보완되고 있다.

출처: cointelegraphy

두개의 PoW 블록체인이 동일한 수준의 탈중앙화를 가지고, 블록체인의 보안성을 블록체인의 해시 비율로 간주한다면, 해시율이 올라갈수록 확인 시간이 줄어들고, 보안이 강화되며 확장성이 높아진다. 간단히 요약하자면, 확장성은 보안성에 비례한다.

블록체인의 탈중앙화 (Blockchain Decentralization)

블록체인의 탈중앙화는 말 그대로 블록체인이 중앙화되지 않은 정도를 말한다. 거래를 정산하려면 네트워크가 먼저 유효성에 동의를 해야한다. 시스템에 많은 구성원이 있을 수록 계약에 시간이 오래 걸린다. 결과적으로 보안 매개변수가 동일할때, 확장성은 탈 중앙화에 반비례한다.

출처: cointelegraphy

블록체인 트릴레마 (Trilemma)

트릴레마는 세가지 옵션 중 각각 받아들이기 어려우거나 불리한 어려운 선택을 말한다. 흔히 말하는 ‘딜레마(dilemma)’가 두 가지 옵션을 모두 선택할 수 없는 난감한 상황을 말한다면, 틀리레마는 그 옵션의 종류가 하나 늘어난 상황을 일컫는 말이다.

블록체인의 트릴레마 (출처 : 해시넷)

블록체인의 틀릴레마는 확장성(scalability), 탈중앙화(dexentralization), 보안성(security)의 측면에서, 물리적인 한계로 네트워크가 주어진 시간에 최대 두 가지의 문제만 해결할 수 있다는 개념이다. 이는 물리적인 한계라고도 할 수 있는데, 사용자가 많아지면서 블록체인의 속도는 느려지지만, 이 처리 속도를 개선하는 데 있어서 가장 큰 두 가지 걸림돌이 바로 탈중앙화와 안정성(보안성)이라는 것이다.

대부분의 블록체인 네트워크는 굉장히 느리다 (실제로 DeFi 서비스를 이용해보면 블록체인 네트워크가 얼마나 느린지 체감할 수 있다). 문제는 이 ‘속도’가 거래가 많아지면 많아질수록 더 느려진다는 것인데, 현재 널리 쓰이고 있는 1세대 암호화폐 블록체인과 2세대 암호화폐 이더리움은 물론, 이를 해결하고자 등장한 3세대 블록체인인 이오스를 포함한 대부분의 블록체인들은 아직 이 트릴레마 문제를 겪고 있다.

결과적으로 블록체인은 세 가지 옵션을 모두 최적화 할 수 없으므로, 절충을 해야 한다. 탈중앙화와 보안에 초점을 맞추고 개발된 비트코인은 높은 탈중앙화와 보안을 갖췄음에도 확장성의 한계를 가졌다. 이더리움은 급증하는 사용자와 DeFi 서비스들로 확장성 문제를 겪고 있다. 실제로 이더리움의 수수료가 그 증거인데, 이더리움의 수수료는 2021년 11월 기준 200Gwei까지 올랐다(1Gwei는 10억분의 1 이더리움). 이오스는 위임지분증명(DPos) 합의 알고리즘을 통해 탈중앙화와 확장성 문제를 해결하고자 등장하였는데, 이를 위해 노드의 개수가 소수이며, 블록 생성 시간이 단축되고, 트랜잭션 속도가 높아지는 것은 결국 탈중앙화 가치를 벗어나게 할 수 있는 문제를 겪고 있다.

블록체인의 레이어

레이어(layer)를 직역하면 계층이라는 뜻이다. 블록체인은 5개의 레이어로 분류된다.

출처 : Cointelegragh

1. 하드웨어 인프라 레이어

블록체인은 분장상부를 계산, 검증 및 기록하는 P2P(peer-to-peer) 네트워크다. 노드는 P2P 네트워크의 컴퓨터이다. 노드는 트랜잭션을 검증하고, 블록으로 구성하고, 블록체인 네트워크에 저장한다. 합의에 도달하는 동안 노드는 블록을 블록체인 네트워크에 커밋하고, 로컬 저장소나 사본을 업데이트 한다. 하드웨어 인프라 레이어의 핵심은 이 노드들이라고 할 수 있다. 블록체인 네트워크의 핵심은 이러한 노드들이 분산되어가는 과정이다.

이더리움의 노드를 살펴보자. 누구나 컴퓨터만 있으면 이더리움 블록체인 네트워크에 참여할 수 있다. 노드는 Geth (Go 기반), Parity (Rust 기반), Pantheon (Java 기반) 같은 클라이언트를 실행할 수 있다. 노드(혹은 클라이언트)는 라이트노드(light node)혹은 풀노드(full node)일 수 있다. 라이트 노드는 캐시(chache) 저장하고, 풀노드는 데이터 셋을 저장한다. 이더리움 클라이언트가 실행하는 이더리움 가상 머신 (EVM; Etherium Virtual Machine)은 하드웨어 계층에, 하이퍼레저 패브릭은 인프라 계층에 속한다.

2. 데이터 레이어

앞서 여러번 언급했지만, 블록체인은 트랜잭션(거래내역)이 블록으로 배열되어 P2P 네트워크에 배치되는 분산된 대규모 복제 데이터베이스 (분산 원장 혹은 분산 장부)다. 모든 계정에 대한 정보는 이런 데이터베이스에 저장되어 있다. 네트워크는 많은 노드들로 구성되며, 합의를 거쳐야만 데이터를 수정할 수 있다. 블록체인의 데이터 구조는 포인터(pointer; 다른 블록의 위치를 나타내는 변수) 링크드리스트(linked-list; 블록이 연결된 형태의 자료구조)로 나타낼 수 있다. 각 블록에는 이전 블록의 해시, 타임스탬프, 논스(nonce), 블록 버젼 번호, 현대 난이도 목표 등의 정보와 함께 머클루트(Merkle route)의 해시가 포함된다. 제네시스 블록(Genesis Block; 제일 처음 생성된 블록)은 포인터를 포함하지 않는다.

블록체인 데이터의 구조 (출처 : Oracle Blockchain Quick Start Guide)

블록체인의 종류에 따라 블록에 저장되는 데이터는 달라진다. 하이퍼레저 패브릭의 블록에는 채널 정보가 포함되고, 비트코인에는 보내는 사람과 받는 사람등에 대한 데이터가 포함되는 것 처럼 말이다. 해시(Hash)는 특정 알고리즘(예를 들어 SHA256)을 통해 생성되는 고정된 길이의 값을 말한다. 해시는 블록을 식별하고 블록의 데이터가 변경되었는지 확인하는데 필요한 값이다. 앞서 말했듯 각 블록에는 이전 블록의 해시가 있으므로, 블록체인의 해시의 연결고리하고 할 수 있다.

3. 네트워크 레이어

네트워크 레이어는 P2P 레이어로 불리기도 하는데, 이는 노드 간 통신을 담당하는 레이어(계층)이다. 검색, 트랜잭션 공유, 블록 공유 등의 작업을 담당한다. 네트워크 레이어는 블록체인 네트워크가 상태를 유지하기 위해 서로 통신하고 동기화 할 수 있게 한다.

이더리움 블록체인의 트랜잭션 흐름에 대한 그림(출처 : Oracle Blockchain Quick Start Guide)

풀노드는 트랜잭션을 검증, 합의 규칙의 시행 보장 등을 담당하며, 라이트 노드는 블록체인의 헤더만 유지하고 트랜잭션을 보낼 수 있다.

4. 합의 레이어

합의레이어는 블록체인 플랫폼이 존재하기 위한 필수적인 요소이다. 합의헤이어는 모든 블록체인에서 가장 핵심이 되는 레이어인데, 블록의 유효성을 검사하고 블록생성을 요청하며, 모든 노드들이 동의하는지 확인하는 역할을 한다.

  • 합의 프로토콜은 분산된 P2P 네트워크에서 노드간 합의를 진행한다.
  • 합의는 모든 노드가 동기화된 상태로 유지한다.
  • 합의는 탈중앙화된 환경을 유지하도록 한다.
  • 합의는 단일 체인을 따르고, 그것이 무결함을 보장한다.
  • 합의는 트랜잭션 검증을 위해 노드가 따르는 규칙이다.
  • 합의 프로토콜은 복제하거나 모방하기가 설계상 어렵다.
  • P2P 네트워크의 신뢰성은 합의 프로토콜으로부터 나온다.
대표적인 합의 알고리즘 (출처 : Oracle Blockchain Quick Start Guide)

합의 방법은 블록체인마다 다른데, 비트코인과 이더리움의 경우 확률적 합의를 진행한다. 이는 다양한 참여자가 블록에 대해 서로 다른 견해를 가질 경우에도 원장(장부 혹은 데이터)의 일관성을 보장할 수 있다.

5. 애플리케이션 레이어

애플리케이션 레이어는 스마트컨트랙트, 체인코드, 그리고 디앱(dAPP; decentralized application)으로 구성된다. 최종 사용자가 블록체인 네트워크를 이용하는데 사용하는 모든 응용 프로그램은 모두 이 레이어에 있다. 이러한 프로그램들은 스크립트, API, UI, 프레임워크로 구성되며, 이 경우에 블록체인 네트워크는 API로 연결되어있는 백엔드 시스템이 된다. 스마트컨트랙트와 체인코드는 실행 레이어(execution layer)라는 하위 분류로 묶이기도 하는데 여기에는 규칙과 그 규칙을 담은 코드가 속한다.

레이어 0

블록체인 레이어0에는 블록체인을 유지하기 위한 구성 요소들이 포함된다. 즉, 블록체인 네트워크가 실제로 작동하도록 하는 기술이라고 할 수 있다. 레이어 0에는 레이어 1이 실행될 수 있도록 하는 인터넷과 하드웨어들이 포함된다.

레이어1

블록체인의 가장 핵심적인 레이어이다. 블록체인 네트워크의 기본 기능을 담당하는 합의, 프로그래밍 언어, 블록 생성 시간, 및 기타 규칙들이 이에 포함된다. 흔히 알고 있는 비트코인과 이더리움 등이 레이어1 블록체인의 대표적인 예이다. 블록체인 사용자가 증가하면서 레이어 1은 확장성의 한계를 맞닥뜨리고 있다. 많은 레이어1들이 채택하고 있는 PoW는 안전하지만 속도에 한계를 가진다. 네트워크에 참여하는 사람들이 많아질수록 더 많은 계산능력과 시간이 필요하여 블록체인에 부하가 늘어나고 있다. 이더리움의 경우 PoS를 채택하여 이와 같은 문제를 해결하고자 한다.

레이어1의 종류

  • 비트코인(BTC) : PoW를 사용. 채굴자에게만보상을 지급한다.
  • 이더리움(ETH) : PoW에서 PoS로 전환하는 단계이다. 현재는 채굴자에만보상을 지급한다.
  • 비트코인캐시 (BCH) : 비트코인에서 하드포크되었다. 블록의 크기가 커서 비트코인보다 속도가 빠르다.
  • 비트코인SV (BSV) : 비트코인의 본래 정신을 따르기 위해 비트코인 캐시에서 하드포크 되었다.
  • 카르다노/에이다 (ADA) : 회계와 컴퓨팅을 분리하고 있다. 이것은 카르다노 셰틀먼트 레이어(Cardano Settlement Layer, CSL, Cardano-SL)와 카르다노 컴퓨팅 레이어(Cardano Computing Layer, CCL, Cardano-CL)로 나뉜다.
  • 아발란체 (AVAX) : 이더리움 개발 툴킷 전체를 지원하면서도 수백만 명의 독립 검증자가 완전한 블록 생산자로 참여할 수 있으면서도 빠른 속도를 자랑한다.
  • 솔라나 (SOL) : PoS + PoH(Proof-of-History) 의 하이브리드 방식을 채택하여 굉장히 빠른 처리속도와 함께 높은 탈중앙화를 이루었다. 고성능 컴퓨터만이 노드가 될 수 있다.
  • 알고랜드 (ALGO) : 순수지분증명(PPoS; Pure Proof-of-Stake)을 적용해 굉장히 빠른 블록생성속도를 가진 코인이다. 모든 지갑 소유자에게 매 시간 보상을 지급한다.
  • 이오스 (EOS) : 블록 생성자들에게 한해서 (BP; Block Producer) 합의와 보상을 지급하기 때문에 중앙화의 위험을 안고 있다.

레이어2

기존 블록체인 시스템(메인넷)위에 얹히는 프레임워크로, 오프체인(off-chain)솔루션이라고도 한다. 주요 목표는 암호화폐 네트워크의 확장성 문제를 해결하는 것이며, 거래를 오프체인에서 처리하는 확장성 기술이라고 말하기도 한다. 여기서 오프체인이란 레이어1 블록체인 외부의 저장장소를 말한다. 레이어2는 노드 수와 시스템 처리량을 향상시키기 위해 레이어1과 함께 사용되는 것들이다. 외부 저장소에는 다양한 종류가 있으며, 사이드체인은 그 중에 하나다. 레이어2 (L2라고도 함)은 L1보다 빠른 속도를 가지고 있으며, 대부분의 토큰과 디앱들이 레이어 2에 속한다.

레이어 생태계 관련 이미지들

--

--