L2에 대한 솔직한 대화
레이어 2란 무엇인가?
오늘날 레이어 2(L2)는 스케일링 솔루션의 성배 중 하나로 각광받고 있지만, 많은 사람들이 L2가 실제로는 각 L1 블록에 더 많은 트랜잭션을 맞추기 위해 데이터를 압축하는 데 사용되는 별도의 블록체인이라는 것을 깨닫지 못합니다. L2의 영향을 극대화하려면 L1 블록 공간의 최대 100%까지 L2용으로 사용할 수 있습니다. 그러나 근본적인 병목현상은 L1에서 전파되는 데이터양의 스케일링에 남아 있습니다. L2의 동일한 압축 및 트랜잭션 배칭은 훨씬 더 큰 블록에 적용된 동일한 % 성능 향상을 위해 Ethereum보다 훨씬 성능이 뛰어난 체인에 적용할 수 있습니다. 따라서 L2의 잠재력에 대한 대화는 L1 설계에 대한 대화이기도 합니다.
L1과 L2는 동일한 구성 요소를 공유하므로(둘 다 블록체인임), 각각의 원하는 속성과 성능을 달성하기 위해 올바른 기능을 최적화해야 합니다. L2와 그 영향을 이해하기 위해 L2가 수반하는 몇 가지 트레이드오프와 이것이 대중 채택의 핵심 요소인 사용자 및 개발자 경험에 미치는 영향을 살펴보겠습니다.
매초마다 이사 트럭이 집 앞에 정차해서 1초간 머물렀다가 떠나는 것을 상상해보세요. 그러면 다른 트럭이 그 자리를 차지하고 이 사이클이 계속 반복됩니다. 각 트럭을 모든 노드에 승인을 위해 제출되기 전에 데이터로 채워지는 블록으로 생각할 수 있습니다. 차세대 블록체인 설계자들은 1초 이내에 블록을 데이터로 채우는 소프트웨어를 작성하는 흥미로운 과제를 가지고 있습니다. 그런데 블록이 가득 차기 시작하면 어떻게 될까요? 여기서 레이어 2(L2)가 등장합니다.
L2는 베이스 레이어를 확장하고 보안 보장을 상속받는 별도의 블록체인으로, L1이 많은 트랜잭션을 하나로 배칭하거나 그룹화한 후 L1에 제출하여 더 적은 데이터를 사용하고 가스 수수료를 크게 줄임으로써 희소한 블록 공간을 더 효율적으로 사용할 수 있게 합니다.
L2들이 여러 시퀀서를 추가하여 계속해서 탈중앙화됨에 따라 그들 간의 정족수와 합의를 구축해야 하기 때문에 L2들은 실제로 별도의 블록체인이라는 점을 강조합니다.
실제로 L2들은 정족수로 인해 다른 모든 블록체인과 마찬가지로 자체적인 실행 환경, 데이터 전파, 합의 알고리즘, 그리고 잠재적으로 저장소를 갖고 있습니다.
L2들(일명 '롤업')의 역할을 설명하는 가장 간단한 방법은 아래 다이어그램에서 보여지듯이 데이터 압축 역할을 한다는 것입니다:

중요한 점은 L2들이 블록에 더 많은 데이터를 넣을 수 있게 해주지만 무제한의 블록 공간을 제공하지는 않는다는 것입니다. 다시 말해, L2가 데이터를 압축하고 L1 블록 공간의 100%가 L2에 사용된다면, 전체 블록 공간이 더 효율적으로 사용되지만 L1에서의 원시 데이터 양은 변하지 않습니다. 이 개념은 다양한 블록 크기가 500배로 압축되는 아래 예시로 설명됩니다
블록체인 A: 1.3MB 블록 * 500 = 효과적으로 650MB
블록체인 B: 100MB 블록 * 500 = 효과적으로 50,000MB 또는 50GB
블록체인 A와 B는 여전히 기본 레이어에서 각각 1.3MB와 100MB 블록을 전파하고 있습니다.
이 개념은 정말 강력합니다. 이 기술은 L2 위의 또 다른 레이어인 L3에서도 복제될 수 있으며, L2로 정산되고 최종적으로 L1으로 정산되는 추가적인 데이터 압축 레이어를 허용합니다. 하지만 이는 이 글에서 다룰 L2의 부정적인 측면들을 더욱 증폭시킬 뿐입니다.
L2들은 대중 채택에서 어떤 역할을 할까요?
L2가 그렇게 혁신적인 기술이고 기반 L1의 성능을 향상시킨다면, 모든 체인에 별도의 L2를 추가하고 끝내면 되지 않을까요? 실제로는 비용 없는 트레이드오프는 거의 없으며, L2도 예외가 아닙니다. 이 글에서는 대중 채택의 길에서 핵심적인 두 가지 요소인 사용자와 개발자 경험의 맥락에서 L2의 미묘한 차이들을 분석할 것입니다.
매끄러운 Web2 경험에 익숙한 수백만 또는 수십억 명의 사용자를 온보딩하려면, Web3의 문제점들이 추상화되어야 합니다. 영리한 엔지니어들의 이러한 추상화는 가장 기본적인 사용자층을 위해 구축된 매끄럽고 직관적인 레이어를 만들어냅니다. L2들의 장점에도 불구하고, L2는 마찰을 야기하고 사용자 경험을 분절시킵니다. 우리가 저항 지점을 완화해야 하는 시점에 오히려 이를 만들어내는 것입니다.
사용자 및 개발자 관점에서 L2의 단점들은 무엇일까요?
브리징은 번거롭고 위험합니다
'최종성'은 기본 레이어에서만 최종적입니다
높은 지연 시간은 좋지 않은 설계 및 UX와 같습니다
레이어들은 분열된 경험을 만듭니다
구성 가능성의 손실은 혁신의 복합 효과를 저해합니다
L2에서 거래하려면 먼저 다른 블록체인에서 Layer 2로 자금을 브리징해야 합니다. 브리징은 현재 모든 암호화폐 활동 중 가장 위험한 활동 중 하나로, Chainanalysis는 2022년에만 크로스체인 브리지 익스플로잇으로 약 20억 달러가 손실되었다고 보고했습니다. 브리지를 사용해 본 사람이라면 누구나 이것이 번거롭고 고통스러운 과정이라는 데 동의할 것입니다. 이는 보통 자금 도착까지 몇 분간 기다리고, 돈을 잃지 않기를 바라며, Metamask와 같은 비수탁형 지갑에 자금이 나타나도록 토큰 계정을 추가하는 과정(높은 수수료는 덤!)을 포함합니다.
이것만으로도 부족하다면, 최종적으로 원하는 코인이나 토큰을 얻기 위해 dex(탈중앙화 거래소)나 지갑의 스왑 기능을 사용하여 토큰을 언래핑하는 추가 단계가 종종 필요합니다. 간단히 말해, 이러한 다단계 프로세스는 많은 아쉬움을 남기며 확인이나 블록 익스플로러가 무엇인지 전혀 모르는 사람은 고사하고 암호화폐에 익숙한 Web3 사용자에게조차 설명하기 복잡합니다…
개발자 입장에서, L1에서 시작해 자산을 L2로 전송하고, 그곳에서 작업을 수행한 다음 다시 L1으로 정산되는 트랜잭션을 포함하는 컨트랙트를 작성하는 복잡성을 상상해보세요. 개발자와 사용자에게 이런 추가적인 복잡성은 다른 대안이 전혀 존재하지 않는 상황에서 최후의 수단으로만 사용되어야 하며, 일부가 제안하는 것처럼 대다수 트랜잭션의 표준 옵션이 되어서는 안 됩니다.
더욱이, 트랜잭션은 L1으로 정산되고 확인되기 전까지는 완전히 완료된 것으로 간주될 수 없습니다. Ethereum은 약 12초마다 블록을 생성하므로 L2 트랜잭션이 완료되는 데 12초 이상이 걸릴 수 있습니다. 중요하지 않거나 시간에 민감하지 않은 작업을 하는 많은 사용자들에게는 이런 완료 시간(TTF)이 허용 가능할 수 있습니다.
청산까지 몇 초 남지 않은 레버리지 트레이더가 제때 포지션을 청산하지 못하는 상황을 상상해보세요. 이는 한 체인을 다른 체인보다 선택하는 결정에 있어 게임을 좌우하는 요소가 될 수 있습니다. 다시 한번, 제품 및 애플리케이션 엔지니어들이 설계할 수 있는 범위와 확장성이 느린 완료성으로 인해 제약을 받습니다. 이는 의심할 여지없이 사용자들이 가장 예민하게 느끼는 사용자 경험의 한 측면입니다.
L2 사용의 또 다른 효과는 높은 지연시간으로, 이는 직접적으로 좋지 않은 사용자 경험과 연결됩니다. 낮은 네트워크 지연시간은 대중 채택에 있어 가장 중요합니다. 모든 액션이 완료되기 전에 체감되는 지연이나 '랙'이 있을 때, 어떻게 주류 대규모 멀티플레이어 게임이나 가상 경험과 경쟁할 수 있을까요? 더 빠르고 동기화된 경험이 상상할 수 있는 거의 모든 상황에서 더 좋습니다.
좋은 기술을 구축하는 것은 어렵지만, 지속 가능한 소셜 레이어를 구축하는 것은 더 큰 도전이 될 수 있습니다. 다양한 L2에 걸쳐 사용자 활동을 분산시키는 것이 건강한 생태계를 만드는 데 필요한 유기적인 커뮤니티 구축에 무엇을 의미할까요? L2들이 dApp, NFT 프로젝트, 그리고 그들의 커뮤니티 사이의 다리를 구축하는 대신 벽을 쌓고 있다면 어떨까요? 이런 효과는 무시되어서는 안 됩니다.
개발자들에게 있어, 완전히 분리된 블록체인으로서 L2는 L1에 대한 상위 의존성을 가집니다. 이는 기본 L1의 모든 변경사항이 L2에 반영되어야 함을 의미합니다. L1에서 사소한 업데이트가 푸시될 때마다 계속해서 코드를 디버깅하고 확인해야 하는 상황을 상상해보세요. 이는 지겹고 피곤해지며, 부주의한 실수의 가능성은 거의 무한합니다.
오컴의 면도날은 움직이는 부분이 가장 적은 가장 간단한 솔루션이 보통 최선이라고 규정하며, 블록체인도 예외가 아닙니다.
더 나아가, L1과 L2 간의 컴포저빌리티 손실이 기존 리소스를 빌딩 블록으로 활용하고 이를 고차 애플리케이션에 프로그래밍할 수 없는 개발자들에게 무엇을 의미할까요? L1과 L2 간의 컴포저빌리티 손실은 개발자 경험에 매우 해로우며, 이는 생태계의 혁신이 장기적으로 복합적으로 성장하는 데 막대한 2차 효과를 미칠 수 있습니다.