Unstoppable Sequencing은 Spire와의 협업을 통해 개발되었으며, Spire의 블롭 공유 전문성을 활용하고 있습니다. @norswap , @donnoh , 이더리움(ETH) , Ilia Shirobokov , Julie , 그리고 Spire 팀에게 피드백을 주셔서 감사합니다.
소개
롤업 시퀀서는 엄청난 권한을 행사합니다. 어떤 트랜잭션을 어떤 순서로, 언제 포함할지 결정합니다. 롤업 시퀀서는 L2의 게이트키퍼입니다. 이 게이트키퍼가 실패하거나 사용자를 검열하면 어떻게 될까요?
일반적으로 사용자는 L1 트랜잭션을 생성하여 L2 트랜잭션을 생성하는 메커니즘인 "강제 포함"에 의존합니다. 그러나 강제 포함은 탈출구를 제공하지만, 일괄 처리가 아닌 개별 트랜잭션을 제출할 때 발생하는 L1 가스 비용으로 인해 롤업의 지속적인 운영을 지원하기에는 충분하지 않습니다.
해결책: 배칭을 비허가형(Permissionless) 누구나 경제적으로 사용할 수 있도록 합니다. L1이 활성화되어 있으면 시퀀서에 오류가 발생하거나 악성 코드가 있는 경우에도 롤업은 거의 정상 수준의 처리량으로 작동합니다. 이것이 바로 Unstoppable Sequencing입니다.
오늘날 강제적 포용이 실패하는 이유
강제 포함은 어떻게 이루어지나요?
옵티미즘(OP) 스택을 예로 들면, 프로세스는 다음과 같습니다.
사용자는
OptimismPortal2계약에서depositTransaction함수를 호출하고 수행하려는 L2 거래의 세부 정보를 지정합니다.포털 계약은 정직한 옵티미즘(OP) 스택 노드가 읽고 실제 이더리움 가상 머신(EVM) 거래로 변환하고 시퀀서가 다운될 때 L2 블록 에 삽입하는 이벤트를 방출합니다.
핵심은 각 L2 거래마다 별도의 L1 거래가 필요하다는 것입니다. 이러한 L1 거래에는 가장 간단한 경우 에도 최소 10만 가스 단위가 소모됩니다.
이제 롤업 시퀀서가 게시한 일괄 처리된 트랜잭션을 생각해 보겠습니다. 일괄 처리를 통해 시퀀서는 수백 또는 수천 개의 L2 트랜잭션을 단일 L1 트랜잭션에 담을 수 있습니다. 예를 들어, 이 L1 트랜잭션에서 Base는 384KB에 해당하는 롤업 트랜잭션을 게시했습니다 . 간단한 전송 트랜잭션은 약 100바이트이고, 탈중앙화 거래소(DEX) 스왑은 1KB에 가깝습니다. 즉, 일괄 처리를 통해 얻는 용량은 최소 100대 1입니다.
Base는 이 100배 용량 증가에 대해 L1 가스로 얼마를 지불했습니까? 단일 강제 포함 트랜잭션과 같은 가격입니다. 오늘날에는 혼잡이 없어서 블롭을 게시하는 것이 사실상 무료이기 때문입니다!
롤업 수요에 따라 블롭스페이스의 가격은 의심할 여지 없이 증가하겠지만, 롤업 데이터 가용성을 위한 수단이기 때문에 콜데이터나 계약 상호작용보다 항상 훨씬 저렴할 것입니다.
시퀀서가 실패하면 어떻게 되나요?
시퀀서가 오프라인 상태일 경우, 강제 포함이 유일한 옵션이 됩니다. 배칭을 통한 효율성 향상이 없다면 트랜잭션 포함 비용이 엄청나게 증가합니다. 사용자는 종료할 수밖에 없습니다.
강제적인 참여는 대량 탈퇴를 초래할 수 있지만, 막대한 비용을 치러야 합니다. 각 사용자는 다음을 수행해야 합니다.
- L2에서 출금을 시작하는 강제 거래에 대해 100k L1 가스를 지불합니다.
- L1을 확정하려면 L1 가스 20만 원 이상을 더 지불하세요.
사용자가 인출해야 하는 자산의 수와 인출을 시작하는 데 필요한 거래 횟수(예: 인출 전 대출 정산)에 따라 비용이 증가합니다. 마지막으로, 모든 사람이 동시에 인출을 시도하면 L1 가스 비용이 급등할 것입니다.
사용자당 인출할 L1 가스가 25만 개, 사용자 수가 1,000만 명, 가스 서지 가격이 100gwei, 이더리움(ETH) 가격이 4,000달러라고 가정할 때 총 출구 비용은 다음과 같습니다.
250k gas per user * 10M users * 100 gwei gas price / 1e18 * $4k ETH price = $1B USD
비용이 엄청나지만, 이 모델은 모든 가치 있는 자산을 L1으로 이체할 수 있다고 가정하기 때문에 여전히 낙관적입니다. 이는 기존 L1 표현을 사용하는 브리지 자산의 경우에는 사실일 수 있지만, 롤업 방식으로 발행된 자산의 경우 "동등한" L1 자산을 중심으로 사회적 합의 형성될지는 전혀 불분명합니다.
마지막으로, 모든 수수료가 지불되고 모든 사용자 자산이 안전하게 L1에 보관되면 어떻게 될까요? 사용자들은 L1에 머무를 수 없습니다. 너무 비싸니까요! 애초에 롤업을 사용했던 이유가 바로 이것입니다. 하지만 이미 대규모 이탈이라는 엄청난 가치 파괴 경험을 겪은 후, 같은 취약점을 가진 다른 롤업에 다시 입금할 것이라고 기대할 수 있을까요?
결론은 명확합니다. 이더리움 롤업 생태계가 생존하려면 롤업을 통해 중앙화된 시퀀서 없이도 체인이 작동할 수 있도록 하여 시퀀서 오류로 인한 대량 종료의 필요성을 제거해야 합니다.
솔루션: 롤업 경제의 민주화
중앙 집중식 시퀀서 없이 롤업을 작동시키려면 일반 사용자에게 중앙 집중식 시퀀싱 자체를 실행 가능하게 만드는 동일한 경제적 도구에 대한 액세스 권한을 제공해야 합니다.
시퀀서는 롤업 경제성을 실현하는 세 가지 중요한 장점을 가지고 있습니다.
배칭 : 여러 L2 트랜잭션을 하나의 L1 제출로 결합합니다. 이는 롤업의 근본적인 효율성 향상입니다.
블롭 액세스 : 계약 이벤트 발행 대신 블롭 스토리지를 사용합니다. 블롭은 롤업 데이터 가용성을 위해 특별히 설계되었으며, 앞으로도 이더리움에서 가장 효율적인 데이터 처리(DA) 벡터가 될 것입니다. 하지만 롤업 시퀀서처럼, 더 저렴한 경우 사용자는 콜데이터를 사용할 수 있어야 합니다.
규모의 경제 : 이더리움 프로토콜 규칙에 따르면, 블롭은 전부 아니면 전무(all-or-nothing) 방식입니다. 10KB의 블롭 공간만 구매할 수는 없습니다. 중앙 집중식 시퀀서는 블롭을 효율적으로 사용하기에 충분한 트랜잭션을 축적합니다. 개별 사용자는 이를 수행할 수 없으므로, 사용자가 블롭을 공유하고 사용하지 않는 공간에 대한 비용을 지불하지 않도록 하는 시퀀싱 방식이 필요합니다.
멈출 수 없는 시퀀싱 소개
Unstoppable Sequencing은 메인 시퀀서가 제대로 작동하지 않을 때 롤업 용량과 검열 저항성을 유지하는 데 필요한 분산형 배칭을 위한 프레임워크입니다.
술어
- 시퀀서 : 정렬된 L2 트랜잭션을 배치로 구축하는 엔터티입니다.
- 배처 : 이미 생성된 L2 트랜잭션 배치를 L1 트랜잭션에 게시하는 엔티티입니다. 시퀀서와 배처는 동일한 엔티티일 수 있지만, 배처는 블롭 공유를 처리하는 특수한 역할을 하도록 설계되었습니다.
- 롤업 노드 : L1 히스토리를 사용하여 롤업 상태를 결정론적으로 도출하는 소프트웨어입니다. "결정론적"이란 모든 정직한 롤업 노드가 동일한 L1 히스토리를 기반으로 동일한 상태를 도출한다는 것을 의미합니다.
- 롤업 합의 클라이언트 : L1 데이터에서 배치를 추출하고 트랜잭션 및 메타데이터 목록을 실행 클라이언트로 전송하여 블록을 구축하고 실행하는 소프트웨어입니다. 예:
op-node - 롤업 실행 클라이언트 : 블록을 실행하고 롤업 상태를 저장하는 소프트웨어. 예:
op-geth
여기서는 롤업이 옵티미즘(OP) 스택과 L1 자체에서 실행과 합의 분할한다고 가정하지만, 이는 설명에 필수적인 것은 아닙니다.
역할 및 권한
Unstoppable Sequencing은 허가형/중앙 집중형 시퀀서를 제거할 필요가 없습니다. 중앙 집중형 시퀀서는 보장된 블록 공간과 수수료를 요구하는 프리미엄 서비스(고가용성, 사전 확인, 다른 롤업과의 동기식 결합성)를 제공할 수 있습니다.
Unstoppable Sequencing 모델에는 두 가지 시퀀서 역할이 있습니다.
우선순위 시퀀서 : 모든 L1 블록 최대 하나의 우선순위 시퀀서가 있습니다. 이 시퀀서의 배치는 항상 L2 블록 의 시작 부분에 배치되며, 이 시퀀서는 L2 블록 공간의 롤업 구성 가능한 비율을 보장합니다.
비허가형(Permissionless) 시퀀서 : 나머지 모든 사람. 이들의 배치는 L2 블록 에서 우선순위 시퀀서의 배치 뒤에 위치하며, 블록 공간은 보장되지 않습니다. 우선순위 시퀀서가 소모하지 않은 모든 가스를 사용하기 때문입니다.
Unstoppable Sequencing 방식은 우선순위 시퀀서가 어떻게 선택되는지, 그리고 보장되는 L2 블록 가스의 비율이 무엇인지에 대해 무관합니다.
"순수" 기반 롤업은 우선순위 시퀀서를 필요로 하지 않을 수 있습니다. 다른 롤업은 우선순위 시퀀서를 가지고 있지만 블록 공간의 50%만 보장하여 일반 사용자와 동등한 위치에 놓일 수도 있습니다.
이러한 매개변수를 설정하는 데 "모든 경우에 적용되는" 단일 접근 방식은 없습니다. Unstoppable Sequencing은 매개변수 선택 범위 내에서 최대의 복원력을 보장하며, 무엇보다도 중요한 것은 어떤 매개변수를 선택하든 우선순위 시퀀서가 없는 경우에도 동일한 수준의 보호 기능을 제공한다는 것입니다.
통화 사례에서 배처의 역할은 전혀 비허가형(Permissionless) . 우선 순위 시퀀서나 비허가형(Permissionless) 시퀀서가 만든 배치를 누구나 게시할 수 있습니다.
일괄 형식(L1 데이터의 어느 곳에서나 스캔 가능)
Unstoppable Sequencing에서 배치는 Ethereum 콜데이터나 Blob 페이로드의 어느 곳에 나 삽입될 수 있는 바이트 문자열이며, (예를 들어) 특권 게시 주소로 필터링하지 않고도 각 Ethereum L1 트랜잭션을 개별적으로 스캔하여 발견됩니다.
왜 이렇게 자유로운 걸까요? 적격 DA 거래에 대한 제약으로 인해 블롭 공유가 제한됩니다. 예를 들어, 두 개의 롤업이 서로 다른 수신자에게 게시되어야 하는 경우 블롭을 공유할 수 없습니다. Unstoppable Sequencing은 모든 배치 프로토콜과의 호환성을 극대화하는 것을 목표로 하며, 배치를 찾기 위해 모든 곳을 뒤져야 하는 오버헤드를 감수하여 사용자의 효율성을 높입니다.
멈출 수 없는 배치는 36바이트 헤더와 RLP 인코딩된 트랜잭션(우선순위 배치의 경우 65바이트 서명)으로 구성됩니다.
[PROTOCOL_ID] [CHAIN_ID] [VERSION] [ROLE] [LENGTH] [RLP_TX_LIST] [SIG if ROLE=1] 프로토콜 ID (22바이트: 0x756e73746f707061626c652073657175656e63696e67 ): 16진수로 인코딩된 "unstoppable sequencing" 문자열입니다. 이 식별자를 통해 롤업 노드는 이 "마법" 바이트 문자열을 스캔하여 블롭 또는 호출 데이터의 어느 위치에 있는 배치든 감지할 수 있습니다.
체인 ID (8바이트): 배치 대상 체인을 식별합니다.
버전 (1바이트): 오늘의 버전 1입니다.
역할 (1바이트): 배치 유형을 구분합니다. 0 비허가형(Permissionless) 경우, 1 우선순위를 나타냅니다.
길이 (4바이트): RLP 거래 데이터의 바이트 수를 지정합니다.
RLP_TX_LIST : 표준 Ethereum RLP 목록으로 인코딩된 실제 거래입니다.
서명 (65바이트, 우선순위만 해당): [CHAIN_ID][VERSION][ROLE][RLP_TX_LIST] 포함하는 ECDSA 서명입니다. 이는 배치가 우선순위 시퀀서에서 발생했음을 증명합니다.
부분 블록("블록 조각")
Unstoppable Sequencing은 각 배치를 부분 L2 블록 으로 처리합니다. 동일한 L1 블록 에 있는 여러 배치는 하나의 L2 블록 으로 결합되므로 다음과 같습니다.
- 소규모 참가자는 블록 전체를 혼자서 채울 필요가 없습니다.
- 우리는 단 한 명의 전체 블록 제안자만이 "승리"하는 "완전한 무정부 상태"의 낭비적인 작업을 피합니다.
수수료는 어떻게 적용되나요?
직관적으로 각 시퀀서는 자신이 게시한 배치의 거래에서 수수료를 받아야 합니다. 이는 우선순위 시퀀서에서는 가능하지만, 비허가형(Permissionless) 시퀀서에서는 불가능합니다. L1 블록 제안자가 항상 자신의 배치 사본을 사용하여 시퀀서를 선행 실행할 수 있기 때문입니다.
이러한 방식은 L1 블록 제안자들이 우선순위 시퀀서에 심각한 장애가 발생할 경우 필요한 처리량을 제공할 수 있도록 롤업 시퀀싱에 투자하도록 유도합니다. 하지만 L1 제안자가 아니라면 비허가형(Permissionless) 배치를 게시할 유인은 무엇일까요?
프로토콜 수수료가 없더라도 비허가형(Permissionless) 시퀀서는 다음과 같은 이유로 동기를 부여받을 수 있습니다.
- 사용자와의 측면 거래 / 선불 약정
- 자체 트랜잭션이 포함되어야 하는 대규모 롤업 애플리케이션 운영
- MEV 또는 거래 주문으로 인한 기타 간접적 혜택
프로토콜에 대한 마지막 옵션 및 "향후 기능"은 사용자가 선호하는 시퀀서를 지정할 수 있도록 하는 것입니다. 시퀀서는 본인을 제외하고 유일하게 거래를 시퀀싱하고 수수료를 받을 수 있는 사람입니다.
배치에서 L2 상태를 결정론적으로 도출
이제 비허가형(Permissionless) 시퀀서의 관점에서 시작하여 결정론적 L2 블록 의 생성으로 끝나는 프로세스를 종단 간에 살펴보겠습니다.
1단계: 일괄 생성, 제출 및 Blob 공유
비허가형(Permissionless) 시퀀서는 표준 RPC 호출( eth_sendRawTransaction )을 통해 사용자 트랜잭션을 수집합니다. 시퀀서가 게시할 만큼 충분한 트랜잭션을 수집하면 다음을 수행합니다.
- Unstoppable Sequencing 배치 형식으로 래핑합니다.
- viem의 toBlobs 메서드를 사용하여 Blob 호환성을 위해 배치를 인코딩합니다(BLS 필드 모듈러스 제약 조건 처리)
이 시점에서 시퀀서는 트랜잭션 배치를 포함하는 블롭 트랜잭션을 L1에 제출할 준비가 되었습니다. 그러나 그렇게 하면 중앙에서 시퀀싱되는 거대한 롤업과 동일한 6개의 블롭 슬롯을 두고 경쟁하게 됩니다. 이는 경제적으로 실행 가능하지 않기 때문에 Unstoppable Sequencing은 블롭 공유를 염두에 두고 설계되었습니다.
블롭 공유에는 여러 시퀀서 간의 조정이 필요하므로 별도의 서비스로 제공하는 것이 합리적입니다.
저희는 Spire 와 협력하여 DA Builder 제품을 사용하여 이 프로토콜의 블롭 공유 기능을 개발했습니다. 저희는 Spire의 제품이 가장 성숙하다고 생각하며, Facet Chain의 Unstoppable Sequencing 구현에 이를 활용할 것입니다. 하지만 전반적인 접근 방식은 공급자에 구애받지 않으며, 호환되는 모든 애그리게이터가 작동합니다.
Spire와 같은 공유 서비스를 사용하려면 사용자는 L1에 제출하는 것과 동일한 블롭 트랜잭션을 Spire의 RPC 엔드포인트로 전송해야 합니다. Spire는 블롭을 디코딩하고, 다른 시퀀서의 데이터와 결합하여 새로운 블롭을 생성한 후 L1에 게시합니다.
Spire는 eth_sendBundle 과 같은 Flashbots RPC 메서드도 지원하여 시퀀서가 단일 사용자 트랜잭션을 수신하는 즉시 Spire에 배치를 제출하고, 수신하는 각 새 사용자 트랜잭션에 대해 동일한 L1 블록 대상으로 새 배치를 다시 제출할 수 있도록 합니다. 이를 통해 개별 시퀀서가 최적의 타이밍을 설정해야 하는 부담을 덜 수 있습니다.
참고: 블롭 집계 서비스를 사용해 도 블롭 경제성이 실행 불가능한 경우, 시퀀서는 항상 배치를 호출 데이터로 L1에 게시할 수 있습니다.
2단계: 검색 및 검증(노드가 모든 것을 스캔)
각 L1 블록 에 대해 노드는 순서대로 모든 L1 트랜잭션을 반복하고 다음을 검사합니다.
- tx의 호출 데이터, 그 다음
- 해당 tx에 첨부된 각 블롭(오름차순 블롭 인덱스)
각 바이트 스트림에서 Unstoppable PROTOCOL_ID 스캔하고, 일치하는 경우 고정 길이 헤더를 구문 분석하여 다음을 검증합니다.
-
CHAIN_ID롤업과 일치합니다. -
VERSION이 지원됩니다. -
RLP_TXS올바르게 디코딩되었습니다 - 우선 순위 배치(
ROLE=1)의 경우SIG롤업별 승인된 세트에 대해 검증합니다. - 모든 우선순위 배치의 모든 거래에 대한 가스 한도 합계가 롤업별 보장 가스 할당량을 초과하지 않도록 합니다.
형식이 잘못되었거나 일치하지 않는 배치는 무시됩니다. 유효한 배치는 다음 단계로 이동합니다.
3단계: 집계 및 주문
노드는 L1 블록 에서 모든 유효한 배치를 수집하고 다음 정렬 키를 사용하여 정렬합니다.
- 우선순위 ? 0 : 1
- L1 거래 지수
- calldata의 바이트 오프셋
- 블롭 인덱스
- blob의 바이트 오프셋
즉, 우선순위 배치가 먼저 오고, 트랜잭션에 calldata와 blob 배치가 모두 있는 경우 모든 calldata 배치가 blob 배치보다 먼저 옵니다.
각 배치는 구성 트랜잭션으로 "언래핑"되어 배치 내 순서를 유지하며, 기존의 단일 트랜잭션 강제 포함 트랜잭션이 추가됩니다. 요약하면 다음과 같습니다.
- 모든 우선 순위 배치 거래
- 모든 비허가형(Permissionless) 일괄 트랜잭션
- 예금/전통적인 강제거래
결과적으로 L2 트랜잭션의 결정론적 순서 목록이 생성되지만, 일부 트랜잭션이 유효하지 않을 수 있기 때문에 롤업 실행 클라이언트는 이 목록에서 L2 블록 구성하지 못할 수 있습니다.
이더리움에서 거래 "실패"는 두 가지 범주로 나뉩니다.
실패한 거래(블록 유효) : 계약 함수가 복귀되거나 거래에 가스가 부족해지면 해당 거래는 여전히 유효한 블록 에 포함될 수 있습니다.
유효하지 않은 트랜잭션(블록-유효하지 않음) : 특정 트랜잭션 오류로 인해 전체 블록 무효화되어 실행 클라이언트가 해당 블록을 거부합니다. 예:
- 가스 비용을 충당할 계좌 잔액이 부족합니다.
- 잘못된 논스 값
- 크기 제한을 초과하는 계약 배포
기존의 단일 당사자 블록 생성 방식에서는 블록 생성자 제출 전에 모든 유효하지 않은 거래를 제거할 수 있습니다. 그러나 이러한 방식은 Unstoppable Sequencing 시스템에서 여러 당사자의 배치를 결합하는 경우에는 적합하지 않습니다.
4단계: 실행 및 필터링
해결책은 노드가 이전 단계에서 만든 L2 거래의 정렬된 목록에서 블록을 무효화하는 거래를 "필터링"하는 것입니다.
그러나 롤업 합의 클라이언트에서 유효하지 않은 거래를 식별하는 작업은 "정적으로" 수행할 수 있는 작업이 아닙니다. 거래의 유효성은 블록 의 이전 거래를 실행한 결과에 따라 달라질 수 있기 때문입니다.
이러한 이유로 Unstoppable Sequencing은 필터링을 활성화하기 위해 실행 클라이언트 수정이 필요합니다. 프로세스는 다음과 같습니다.
합의 클라이언트는 일반적인
engine_forkchoiceUpdated호출을 통해 실행 클라이언트로 트랜잭션을 전송합니다.실행 클라이언트는 이러한 트랜잭션을 사용하여 L2 블록 구축하기 시작하며, 한 번에 하나씩 순서대로 실행합니다.
실행 클라이언트가 잘못된 트랜잭션을 만나면 오류로 인해 프로세스를 중단하는 대신, 해당 트랜잭션을 건너뛰고 목록의 다음 트랜잭션으로 이동합니다.
제한 사항 및 상충 관계
비허가형(Permissionless) 시퀀서는 불확실성에 직면합니다
우선순위 시퀀서는 예측 가능한 순서와 보장된 가스 할당을 받습니다. 비허가형(Permissionless) 시퀀서는 최종 실행 순서를 알 수 없습니다. 비허가형(Permissionless) 배치의 트랜잭션이 가스 구매를 시도할 때 L2 블록 가득 차면 필터링됩니다.
공격자는 특정 비허가형(Permissionless) 시퀀서보다 먼저 여러 배치를 제출하여 블록 에서 제외하는 방식으로 이 메커니즘을 악용할 수 있습니다. 그러나 지속적인 스팸은 L2의 블록 기반 수수료가 증가함에 따라 공격자에게 상당한 비용을 발생시킵니다.
배치의 일부 또는 모든 트랜잭션이 L2 블록 에 포함되지 않으면 프로토콜 관점에서 해당 트랜잭션은 손실됩니다. 즉, 시퀀서가 트랜잭션을 다른 L2 블록 에 포함시키려면 새 트랜잭션으로 배치를 다시 L1 블록에 게시해야 합니다.
비용 효율성이 더 높지만 더 복잡한 "향후 기능"은 롤업 노드가 필터링된 거래의 "메모리 풀"을 유지하고 향후 L2 블록에 다시 제출하지 않고도 자동으로 포함하는 것입니다.
사전 확인 및 동기적 구성성
일부 고급 기능을 사용하려면 거래 결과를 안정적으로 시뮬레이션할 수 있는 기능이 필요합니다.
- 사전 확인 : 사용자는 L1 포함 전에 거래 실행에 대한 보장을 원합니다.
- 동기적 구성성 : 크로스체인 호출에는 결정론적 시뮬레이션이 필요합니다.
이러한 서비스는 첫 번째 배치를 게시한 사람, 즉 활성화된 우선순위 시퀀서나 우선순위 시퀀서가 없는 경우 L1 제안자에 의해서만 안정적으로 제공될 수 있습니다.
이를 통해 자연스러운 업무 분업이 이루어집니다. 우선순위 시퀀서는 프리미엄 서비스와 보장을 제공하는 반면, 비허가형(Permissionless) 배칭은 체인이 검열에 강하고 어떠한 조건에서도 작동할 수 있도록 보장합니다.
스팸은 어떻게 되나요?
비허가형(Permissionless) 시스템은 스팸을 유발합니다. 공격자는 여러 블롭에 걸쳐 수천 개의 유효하지 않은 트랜잭션을 게시하여 노드가 가비지 데이터를 처리하도록 강제할 수 있습니다. Unstoppable Sequencing이 이를 처리할 수 있을까요?
블록 당 6개의 블롭이라는 현재 제한은 12초 블록 당 최대 ~7,500개의 스팸 거래를 의미하는데, 이는 오늘날의 하드웨어에서 처리 가능한 수준입니다.
블롭스페이스가 커짐에 따라 이는 과제가 될 수 있지만, 이 과제를 해결하려면 허가가 필요 없고 회복력이 있어야 합니다.
결론
L2는 배칭 기반으로 구축됩니다. 기존의 강제 포함 방식은 개별 트랜잭션으로 돌아가기 때문에 이 모델을 손상시켜 시퀀서 장애 발생 시 정상적인 운영을 유지할 수 없게 만듭니다.
Unstoppable Sequencing은 배칭을 비허가형(Permissionless) 구현하여 이 문제를 해결합니다. 즉, 누구나 L1 데이터 어디에나 임베드된 배치를 생성하고 게시할 수 있으며, 블롭 공유를 통해 비용을 분담합니다. 이러한 접근 방식은 복잡성을 증가시키지만, L2 데이터가 검열, 장애 및 공격으로부터 안전하게 보호될 수 있도록 보장합니다. 누군가 L1 어딘가에 배치를 게시할 수 있는 한, 체인은 계속 작동합니다.



