Layer2(L2)의 탄생 그 서막은? (2탄)

레이어 2(Layer2)와 오프체인(Off chain)

by 불변하는 카린 Karin

22년 4월 1일 작성


안녕하세요. 돈은지(karin)입니다.

드디어 서막이 올랐습니다.


작년부터 올해 초까지 매우 핫했던(?) 레이어 2에 대해 어렵지만 즐겁게 공부한 내용을 올려보겠습니다.

재밌게 읽어봐 주세요.


Layer2은? ‘이더리움의 구매 대행’

'이더리움 메인넷 확장 문제를 해결'하기 위한 블록체인 네트워크 위 설계된 별도 레이어다.

즉, 스마트 컨트랙트 브리지로 L1과 연결된 실행(execution) 레이어다. 그래서 사이드 체인으로도 불린다. 또한 레이어 1처럼 별도 블록체인 네트워크를 운영하지 않는다. 그는 레이어 1 위에서 움직이는 확장형 네트워크로써 전적으로 레이어 1 노드 알고리즘에 의존하고 있다.


Layer2는 레이어마다 분담을 하는 ‘모듈형 블록(modular blockchain)’ 구조를 띤다.

현존하는 대부분의 레이어 2는 이더리움(스마트 컨트랙)의 처리 속도 개선을 위해 제작되었다.

스마트 컨트랙트 브리지로 L1과 연결된 실행(execution) 레이어

레이어 1의 보안성, 탕중앙성의 장점은 그대로 두고, ‘거래 처리량’만 증가시키는 방식

초당 처리 수(TPS)가 15로 한정된 이더리움 네트워크에서 L2를 사용할 경우, TPS가 수천에서 수만까지 증가할 수 있다.

L2는 이처럼 블록체인의 보안성과 데이터 가용성(탈중앙화)을 L1(레이어 1)에 맡기는 대신
최대한 빠르고 저렴하게 트랜잭션 실행을 목표함.


L2와 L1 구동원리 비교

레이어 1: 블록 생성과 합의, 거래 승인 같은 중요 절차는 1층에서 해결한다.

레이어 2: 나머지 ‘거래 처리’를 2층에서 전문으로 한다.


보안성과 탈중앙화를 기존 블록체인인 레이어 1에 위탁하는 대신에 최대한 빠르고 저렴하게 거래 처리를 할 수 있도록 돕는 것이 레이어 2이다. 거래 처리를 2층에서 하며, 업무 분담을 하기에 레이어 1 코인의 블록체인 업무량(?) 감소를 시켜준다는 효율이 발생한다.


Layer2 코인종류?

폴리곤(Polygon, 14위), 오미세고(OMG, 99위), 이뮤터블 X(IMX, 104위), 보바네트워크(BOBA,183위)가 존재한다. 참고로 폴리곤(Polygon)은 매틱 (MATIC)에서 이름을 바꾼 것이다. 그리고 폴리곤에서는 매틱(MATIC)을 가스비로 쓴다. 따라서 폴리곤 브리지를 통해 매틱을 폴리곤 메인넷으로 옮길 수 있다.


Layer2의 ‘확장법’은?

롤업(옵티미스틱 롤업, ZK롤업), 발리디움, 플라스마, 스테이트 채널, 사이드체인이 있다.

L2중 ‘ZK롤업’이 가장 유망하다. 볼리션이 ZK롤업 설루션의 표준이 되어가는 중이다.

이 단원에서는 양이 너무 방대하기 때문에 자세히 적지는 않겠다.


Layer2의 확장성(오프 체인)을 쓰는 프로젝트는?

이더 리움 2.0

Polygon (Matic Network, Ethereum용 레이어 2 스케일링)

Loopring (확장 가능한 zkRollup 교환 및 지불 프로토콜)

Harmony (이더리움을 위한 상호 운용 가능한 레이어 2 확장)

OMG 네트워크 (레이어 2 스케일링 설루션)

PolkaDot(샤딩 및 파라체인 기반)


온체인(on-chain) vs 오프체인(off-chain)

데이터 저장 방식(Data Storage)을 일컫는다.


1) 온체인: 모든 트랜젝션의 calldata (스마트 컨트랙트 호출, 토큰 거래, 디지털 서명 데이터를 저장하고 있는 위치)를 포함한 state data가 블록체인 안에 (온체인) 저장 및 기록되어 블록체인 상에서 데이터를 확인하며 검증이 가능한 것이 특징이다. 말 그대로 체인 위에 발생하는 트랜잭션. 그러나 해당 체인은 메인 블록체인인 단일 네트워크를 의미함.

예 : 비트코인, 이더리움은 ‘자체 네트워크를 구성’하는 블록체인 내에 발생해 블록에 기록되는 트랜잭션


2) 오프체인: 레이어 2의 방식. calldata 및 state data를 블록체인 외부(오프체인)에 처리 및 기록하는 방식이다. 메인 블록체인이 아닌 곳에서 발생하는 트랜잭션이다. 온체인 빼고 나머지로 여집합이다. 확장성 측면에서 더 우수하다는 장점이 있으나, 보안성이 떨어지고 중앙화된 방식이라는 단점 존재한다.

예 : 이더리움 네트워크의 입장에서 비트코인 네트워크에서 주고받는 트랜잭션은 오프체인 트랜잭션이다. 반대로 비트코인 네트워크의 입장에서는 이더리움 네트워크의 트랜잭션이 오프체인 트랜잭션이다. 즉 내가 아닌 다른 이의 거래는 오프 체인으로 정리할 수 있다.



왜 오프 체인 트랜잭션을 사용하는가?

1) 속도 문제 발생

트랜잭션 발생 후 해당 트랜잭션이 블록체인 네트워크에 전파, 확정되는데 꽤 오랜 시간이 걸린다.

따라서 빠른 처리가 필요한 서비스는 온체인에서 못하고 오프체인에서 처리를 해야만 하는 경우가 발생한다.


2) 보안 문제

블록체인에 업데이트되는 트랜잭션의 모든 내역은 공개 장부를 통해서 모든 사람에게 공개된다.

그런데 개인정보와 같은 비공개 정보가 담겨 있는 트랜잭션을 발생시켜야 할 때는 오프 체인으로 처리를 한다.


3) 비용과 확장성 문제

거래 검증 시 채굴자에게 지불비용이 발생한다. 따라서 초당 처리할 수 있는 트랜잭션의 수(TPS)가 너무 적다. 그래서 번번이 일어나는 소액결제와 같은 서비스를 현재 온체인에서 수행하게 된다면 송금액보다 수수료를 더 많이 지불해야 되는 문제가 따른다. 이렇게 온체인은 비용측면이 매우 비효율적이기 때문에 오프체인을 쓰는 방법이 유력하다.


Layer2의 엄마 Layer1과의 차이 정리


레이어 1과 레이어 2는 ‘확장성 문제를 개선’하겠다는 방향은 같다. But 방식이 다르다.


레이어 1은 블록체인 용량을 늘려(블록마다 크기 수정) 거래 처리량을 향상한다. 온체인 방식으로 하드포크가 필수다. (ex) 이더리움 런던 하드포크)

‘하드포크(hard fork)’란 블록체인 업그레이드 작업으로 기술적 문제를 개선할 때 활용한다.

특히 기존 블록체인에서 다른 블록체인으로 넘어가려 할 때 발생한다. 사실 이더리움도 이더리움 클래식에서 하드포크 체인분리로 발생했다.


반면 레이어 2는 일부 연산을 블록체인 밖에서 처리(오프체인)하는 방식으로 속도를 높인다. 100개의 거래를 블록체인 상 ‘10건 내의 거래로 간소화’하는 원리다.


맺음말

레이어 2의 확장 방법에 대체 더욱 구체적으로 쓰고 싶었으나 양이 방대해서 이 글에 다 못 담을 것 같았다.

다음 편은 이더리움 2.0과 PoS가 주제이다.

늘 글을 쓸 때 꽤 많은 참고 자료들과 댓글들이 내게 도움이 된다.

독자분들에게도 내 노력이 도움이 되었으면 좋겠네요.


이상 돈은 지였습니다.

읽어주셔서 감사합니다.




















작가의 이전글아주 오랜만의 글