CKB Lianchuang Jan: L1 기아 문제는 무엇이며 L2 및 L1을 설계하는 방법

이 기사는 기계로 번역되었습니다
원문 표시

번역: 안개월 & 백정, 극客web3

이 글은 2019년 HBS Blockchain+Crypto Club Conference에서 Nervos의 공동 창립자 Jan이 한 연설 내용을 정리한 것입니다. 주제는 레이어2와 레이어1 간의 관계에 대한 것이며, 모듈형 블록체인이 올바른 방향이라고 명확히 제시했고, 블록체인 데이터 저장 메커니즘의 문제에 대해서도 언급했습니다. 또한 Jan은 레이어2의 부상이 레이어1을 기아 상태로 몰고 갈 경우 어떻게 해결할 것인지에 대한 흥미로운 주제를 제기했습니다.

레이어2와 모듈형 블록체인 내러티브를 가장 먼저 지지했던 팀 중 하나인 Nervos는 2018-2019년에 매우 선견지명이 있었습니다. 당시 이더리움 커뮤니티는 샤딩에 대한 비현실적인 환상을 가지고 있었고, 고성능 단일 체인 내러티브도 한창 유행하고 있었지만 아직 충분히 반박되지 않았습니다.

그러나 2024년 현재, 이더리움 레이어2에서 드러난 문제와 솔라나(Solana)와 같은 '고성능 퍼블릭 체인'의 탈중앙화 및 무신뢰 문제의 단점을 보면, Jan이 5년 전에 제시한 관점이 매우 선견지명이 있었다고 할 수 있습니다. '극客web3'는 레이어2에 대한 관심에서 출발하여 Jan의 강연을 문서화하여 여기에 게시합니다. Nervos, 이더리움, 비트코인 커뮤니티의 레이어2 애호가들의 학습과 토론을 환영합니다.

다음은 Jan의 강연 원문입니다.

레이어1과 레이어2의 정의

이것이 제가 L1과 L2(레이어2 네트워크)에 대해 정의한 것입니다.

먼저 강조하고 싶은 것은, Nervos는 단지 탈중앙화된 경제의 요구를 충족시키려는 블록체인 네트워크일 뿐, "모든 문제"를 해결하는 것은 아니라는 점입니다. 우리의 인식에 따르면, 레이어1과 레이어2의 차이는 합의의 강도에 있습니다. L1 네트워크는 가장 광범위한 합의, 즉 "글로벌 합의"를 가져야 합니다. 이러한 무허가 글로벌 합의를 통해 전 세계 누구나 L1의 합의 과정에 참여할 수 있으며, 결국 L1은 탈중앙화된 경제의 "앵커"가 될 수 있습니다. 이런 관점에서 우리는 L1을 "컨센서스 레이어"라고 부를 수 있습니다.

반면에 L2 네트워크의 합의 범위는 더 작습니다. 참여자는 특정 국가, 산업, 심지어 회사나 기관, 또는 매우 작은 커뮤니티에 국한될 수 있습니다. L2가 합의 범위를 포기하는 것은 대가이지만, 그 대신 더 높은 TPS, 더 낮은 지연 시간, 더 나은 확장성 등의 진보를 얻을 수 있습니다. 우리는 L2를 "프로토콜 레이어"라고 부를 수 있으며, L1과 L2는 일반적으로 크로스체인 브리지를 통해 연결됩니다.

강조해야 할 것은, 우리가 L2 네트워크를 구축하는 목적은 단순히 블록체인의 확장성 문제를 해결하기 위한 것만이 아니라, 계층형 아키텍처가 "모듈형 블록체인"을 가장 쉽게 실현할 수 있는 방법이기 때문입니다. 모듈형 블록체인이란 서로 다른 유형의 문제를 서로 다른 모듈에 배치하여 해결하는 것을 말합니다.

많은 사람들이 블록체인의 규제 및 감독 문제를 계속 논의하고 있습니다. 그렇다면 우리는 어떻게 비트코인이나 이더리움을 기존 규제 프레임워크에 포함시킬 수 있을까요? 계층형 아키텍처가 이 문제를 해결할 수 있는 한 가지 방법일 수 있습니다. 규제 요구 사항을 충족하는 비즈니스 로직을 레이어1 레벨에 직접 추가하면 탈중앙화와 중립성이 훼손될 수 있습니다. 따라서 규정 준수와 관련된 로직은 레이어2에서 별도로 구현할 수 있습니다.

레이어2는 특정 법규 또는 표준에 맞춰 맞춤형으로 구축될 수 있습니다. 예를 들어 허가 기반의 소규모 블록체인이나 상태 채널 네트워크 등을 만들 수 있습니다. 이렇게 하면 규정 준수를 달성하면서도 레이어1의 탈중앙화와 중립성에는 영향을 미치지 않습니다.

또한 우리는 계층형 아키텍처를 통해 보안과 사용자 경험 간의 충돌을 해결할 수 있습니다. 비유하자면, 개인 키 보안을 보장하려면 편의성을 어느 정도 포기해야 하듯이, 블록체인에서도 절대적인 보안을 원한다면 성능 등을 포기해야 합니다.

그러나 계층형 아키텍처를 사용하면 L1 네트워크에서 완전한 보안을 추구하고 L2 네트워크에서는 약간의 보안을 포기하여 더 나은 사용자 경험을 얻을 수 있습니다. 예를 들어 L2에서 상태 채널을 사용하여 네트워크 성능을 최적화하고 지연 시간을 줄일 수 있습니다. 따라서 레이어2의 설계는 결국 보안과 사용자 경험 간의 절충입니다.

위에서 언급한 내용은 자연스럽게 다음과 같은 질문을 이끌어 냅니다: 모든 블록체인이 레이어1로 사용될 수 있을까요?

답은 부정적입니다. 먼저 우리는 레이어1 네트워크의 탈중앙화와 보안이 가장 중요하다는 점을 명확히 해야 합니다. 이는 검열 저항성을 달성하기 위해 탈중앙화가 필요하기 때문입니다. 레이어1의 보안을 추구하는 근본적인 이유는 L1이 전체 블록체인 네트워크의 기반이자 암호 경제 시스템의 앵커이기 때문입니다.

이러한 평가 기준에 따르면, 비트코인과 이더리움은 단연 가장 전형적인 L1 네트워크이며, 이들은 매우 강력한 합의 범위를 가지고 있습니다. 이 두 가지를 제외하면 대부분의 블록체인은 L1 기준을 충족하지 못합니다. 합의 수준이 낮습니다. 예를 들어 EOS의 합의는 기준에 미치지 못하므로 단지 L2 네트워크로 충당될 수 있을 뿐이며, 그것도 자체 규칙만 적용됩니다.

현재 레이어1 네트워크의 문제점

레이어1의 정의를 명확히 한 후, 현존하는 일부 L1 네트워크에 세 가지 문제가 있다는 점을 지적하고자 합니다. 이러한 문제는 비트코인과 이더리움에서도 일정 부분 존재합니다:

1. 데이터 저장의 공유지 비극 문제

우리가 블록체인을 사용할 때는 일정 수수료를 지불해야 합니다. 그러나 비트코인의 경제 모델에서 수수료 구조는 계산 비용과 네트워크 대역폭 비용만 고려했을 뿐, 데이터 저장 비용은 성숙하게 고려하지 않았습니다.

예를 들어 사용자가 체인에 데이터를 저장할 때 단 한 번의 수수료만 지불하면 되지만, 저장 기간은 영구적입니다. 따라서 사람들은 저장 리소스를 남용하여 어떤 것이든 영구적으로 체인에 올릴 수 있습니다. 결국 전체 노드는 점점 더 높은 저장 비용을 부담해야 합니다. 이로 인해 네트워크에 참여하려는 모든 노드 운영자의 비용이 최대한 높아지게 됩니다.

예를 들어 어떤 블록체인의 상태/계정 데이터가 총 1TB를 초과한다면, 모든 사람이 완전한 상태와 거래 내역을 쉽게 동기화할 수는 없습니다. 이 경우 완전한 상태를 동기화할 수 있다고 해도 해당 거래 내역을 직접 검증하기는 어려워, 블록체인의 무신뢰성이 약화될 수 있습니다. 그러나 무신뢰성은 블록체인의 핵심 가치입니다.

이더리움 재단은 이러한 문제를 인식하고 EIP-103에서 저장 임대 제도를 도입했지만, 우리는 이것이 최적의 해결책은 아니라고 생각합니다.

Nervos에서는 새로운 상태 모델인 "Cell"을 제안했는데, 이는 UTXO의 확장으로 볼 수 있습니다. 비트코인 UTXO 상태에서는 비트코인 잔액만 저장할 수 있지만, Cell에서는 모든 유형의 데이터를 저장할 수 있으며, 비트코인 UTXO의 amount와 integer value를 "Capacity"라는 개념으로 일반화하여 Cell의 최대 저장 용량을 나타냅니다.

이러한 방식으로 CKB에서 원시 자산의 양과 상태 크기를 연결했습니다. 각 Cell이 점유할 수 있는 공간은 용량 제한을 초과할 수 없으므로 총 데이터 양이 일정 범위 내에 유지됩니다.

또한 우리는 적절한 토큰 인플레이션 비율을 통해 상태 데이터 크기가 노드 운영자에게 방해가 되지 않도록 보장합니다. 누구나 CKB 네트워

여전히 CKB를 예로 들면, SoV 사용자는 기본 자산인 CKB 토큰을 가치 저장 수단으로 사용하고, Utility 사용자는 셀을 사용하여 상태를 저장합니다. SoV 사용자는 CKB 토큰 인플레이션으로 인한 가치 희석을 배제하지만, Utility 사용자는 상태 저장 비용을 지불해야 하며, 이 비용은 데이터 저장 기간과 점유 공간에 비례합니다.

우리는 고정 인플레이션률을 만들기 위해 네트워크에서 새로운 CKB 토큰을 계속 발행하고 이를 마이너에게 지급할 것입니다. 이는 Utility 사용자가 보유한 토큰 가치를 희석시키는 것과 같습니다(이것이 CKB 경제 모델의 세 가지 발행 모드 중 하나인 "2차 발행"이며, 매년 13.44억 개의 CKB 토큰이 고정적으로 발행됩니다. 자세한 내용은 "Stable++ 해석: RGB++ Layer 첫 번째 스테이블 코인 프로토콜 공식 출시" 문서를 참조하세요).

이 과정에서 SoV 사용자의 자산도 희석되므로, 우리는 그들에게 일정한 보조금을 지급하여 인플레이션 손실을 상쇄할 것입니다(이것이 후에 NervosDAO 배당의 목적입니다). 즉, CKB 인플레이션으로 인한 수익은 실제로 Utility 사용자가 부담하게 됩니다. 곧 CKB 토큰 경제학 백서를 발행할 것이며, 관련 문제가 자세히 설명될 것입니다.

이러한 토큰 경제학 설계를 기반으로, CKB 체인에 거래 활동이 전혀 없더라도 마이너는 보상을 받을 수 있으므로, 우리는 어떤 "가치 저장 레이어" 또는 Layer2와도 호환될 수 있습니다. 요약하면, 우리는 의도적인 고정 인플레이션을 통해 Layer1 기아 문제를 해결했습니다.

3. 암호 원시 기능의 부족

사용자는 Schnorr, BLS 등 다양한 암호화 방식이나 서명 알고리즘을 사용하기 위해 다양한 암호 원시 기능이 필요합니다.

Layer1 블록체인이 되려면 Layer2와의 상호운용성을 고려해야 합니다. 이더리움 커뮤니티에서는 ZK 또는 Plasma를 사용하여 Layer2를 구현하는 것을 제안했지만, Layer1에 ZK 관련 원시 기능이 없다면 어떻게 검증할 수 있습니까?

또한 Layer1은 다른 Layer1 간 상호운용성도 고려해야 합니다. 이더리움을 예로 들면, 이더리움 팀에게 Blake2b 해시 함수를 EVM 호환 연산 코드로 사전 컴파일하도록 요청했습니다. 이 제안의 목적은 Zcash와 이더리움 간 브리지를 만들어 사용자가 두 체인 간에 거래할 수 있게 하는 것입니다. 이 제안은 2년 전에 제기되었지만 아직 구현되지 않았는데, 그 이유는 해당 암호 원시 기능이 부족하기 때문이며, 이는 Layer1 발전에 심각한 장애가 되고 있습니다.

이 문제를 해결하기 위해 CKB는 매우 추상적인 가상 머신인 CKB-VM을 구축했는데, 이는 비트코인 가상 머신 및 EVM과 완전히 다릅니다. 예를 들어, 비트코인에는 secp256k1 서명을 확인하는 전용 OP_CHECKSIG 연산 코드가 있습니다. 그러나 CKB-VM에서는 secp256k1 서명이 특별 처리되지 않으며, 사용자 정의 스크립트 또는 스마트 계약으로 확인할 수 있습니다.

CKB도 secp256k1을 기본 서명 알고리즘으로 사용하지만, 이는 CKB-VM 내에서 실행되며 하드 코딩된 암호 원시 기능이 아닙니다.

CKB가 가상 머신을 구축한 이유는 EVM 등 다른 가상 머신에서 암호 원시 기능을 실행하는 것이 매우 느리기 때문에 이를 개선하기 위해서입니다. EVM에서 단일 secp256k1 서명 검증에 약 9ms가 소요되지만, 동일한 알고리즘을 CKB-VM에서 실행하면 약 1ms만 소요되어 거의 10배 빠릅니다.

따라서 CKB-VM의 가치는 사용자가 여기에서 암호 원시 기능을 사용자 정의할 수 있고, 대부분의 기능이 CKB-VM과 호환되는 것입니다. 이는 CKB-VM이 RISC-V 명령어 세트를 사용하기 때문에 GCC(GNU Compiler Collection)로 컴파일된 모든 언어를 CKB에서 실행할 수 있기 때문입니다.

또한 CKB-VM의 높은 호환성은 CKB의 보안을 향상시킵니다. 개발자들이 말하듯이 "자신만의 암호 알고리즘을 구현하지 마세요. 항상 잘못될 것입니다." 자체 정의 암호 알고리즘은 예측할 수 없는 보안 위험을 초래할 수 있습니다.

요약하면, CKB 네트워크는 다양한 방법으로 제가 제기한 L1 네트워크의 세 가지 문제를 해결했기 때문에 CKB를 합격적인 Layer1 네트워크라고 할 수 있습니다.

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
즐겨찾기에 추가
1
코멘트