본문으로 건너뛰기

이더리움 프로토콜은 EIP-4844를 통한 블롭 트랜잭션 도입 이후 가장 중요한 확장성 업그레이드를 진행하고 있습니다. 푸사카 업그레이드의 일환으로, PeerDAS는 블롭 데이터를 처리하는 새로운 방법을 도입하여 레이어 2 (l2)를 위한 데이터 가용성(DA) 용량을 대략 10배 증가시킵니다.

블롭 확장성 로드맵 자세히 보기 (opens in a new tab)

확장성

이더리움의 비전은 전 세계 누구나 사용할 수 있는 중립적이고 안전하며 탈중앙화된 플랫폼이 되는 것입니다. 네트워크 사용량이 증가함에 따라, 이는 네트워크의 확장성, 보안, 탈중앙화라는 트릴레마의 균형을 맞추는 것을 요구합니다. 이더리움이 현재 설계 내에서 네트워크가 처리하는 데이터를 단순히 늘리기만 한다면, 이더리움이 탈중앙화를 위해 의존하는 노드에 과부하를 줄 위험이 있습니다. 확장성을 위해서는 트레이드오프를 최소화하는 엄격한 메커니즘 설계가 필요합니다.

이 목표를 달성하기 위한 전략 중 하나는 모든 트랜잭션을 메인넷에서 처리하는 대신, 다양한 레이어 2 (l2) 확장 솔루션 생태계를 허용하는 것입니다. 또는 롤업은 자체적인 별도의 체인에서 트랜잭션을 처리하고 검증 및 보안을 위해 이더리움을 사용합니다. 보안에 중요한 커밋먼트만 게시하고 페이로드를 압축하면 레이어 2 (l2)가 이더리움의 DA 용량을 더 효율적으로 사용할 수 있습니다. 결과적으로 레이어 1 (l1)은 보안 보장을 훼손하지 않으면서 더 적은 데이터를 전송하고, 레이어 2 (l2)는 더 낮은 가스 비용으로 더 많은 사용자를 온보딩합니다. 초기에 레이어 2 (l2)는 일반 트랜잭션에서 데이터를 calldata 형태로 게시했는데, 이는 가스를 두고 레이어 1 (l1) 트랜잭션과 경쟁해야 했으며 대규모 데이터 가용성에는 비실용적이었습니다.

프로토 댕크샤딩

레이어 2 (l2) 확장을 향한 첫 번째 주요 단계는 프로토 댕크샤딩(EIP-4844)을 도입한 덴쿤 업그레이드였습니다. 이 업그레이드는 롤업을 위해 블롭이라는 새롭고 특화된 데이터 유형을 만들었습니다. 블롭(binary large objects)은 EVM 실행이 필요하지 않고 노드가 제한된 시간 동안만 저장하는 임의 데이터의 일시적인 조각입니다. 이러한 더 효율적인 처리를 통해 레이어 2 (l2)는 이더리움에 더 많은 데이터를 게시하고 훨씬 더 확장할 수 있었습니다.

확장성에 있어 이미 강력한 이점을 가지고 있음에도 불구하고, 블롭을 사용하는 것은 최종 목표의 일부일 뿐입니다. 현재 프로토콜에서는 네트워크의 모든 노드가 여전히 모든 블롭을 다운로드해야 합니다. 개별 노드에 요구되는 대역폭이 병목 현상이 되며, 다운로드해야 하는 데이터의 양은 블롭 수가 많아질수록 직접적으로 증가합니다.

이더리움은 탈중앙화와 타협하지 않으며, 대역폭은 가장 민감한 조절 장치 중 하나입니다. 비용을 지불할 수 있는 사람이라면 누구나 강력한 컴퓨팅을 널리 이용할 수 있음에도 불구하고, 대역폭 요구 사항을 신중하게 조정하지 않으면 선진국의 대도시(독일 (opens in a new tab), 벨기에 (opens in a new tab), 호주 (opens in a new tab) 또는 미국 (opens in a new tab) 등)에서조차 업로드 대역폭 제한 (opens in a new tab)으로 인해 노드가 데이터 센터에서만 실행되도록 제한될 수 있습니다.

블롭이 증가함에 따라 노드 운영자는 점점 더 높은 대역폭과 디스크 공간을 요구받게 됩니다. 블롭의 크기와 수량은 이러한 제약에 의해 제한됩니다. 각 블롭은 최대 128kb의 데이터를 전달할 수 있으며 블록당 평균 6개의 블롭이 있습니다. 이는 블롭을 훨씬 더 효율적인 방식으로 사용하는 미래 설계를 향한 첫걸음에 불과했습니다.

데이터 가용성 샘플링

데이터 가용성은 체인을 독립적으로 검증하는 데 필요한 모든 데이터에 모든 네트워크 참여자가 접근할 수 있다는 보장입니다. 이는 데이터가 완전히 게시되었으며 체인의 새로운 상태나 들어오는 트랜잭션을 신뢰 없이 검증하는 데 사용될 수 있음을 보장합니다.

이더리움 블롭은 레이어 2 (l2)의 보안을 보장하는 강력한 데이터 가용성 보장을 제공합니다. 이를 위해 이더리움 노드는 블롭 전체를 다운로드하고 저장해야 합니다. 하지만 네트워크에 블롭을 더 효율적으로 분배하여 이러한 한계를 피할 수 있다면 어떨까요?

데이터를 저장하고 가용성을 보장하는 다른 접근 방식은 **데이터 가용성 샘플링(DAS)**입니다. 이더리움을 실행하는 모든 컴퓨터가 모든 단일 블롭을 완전히 저장하는 대신, DAS는 탈중앙화된 분업을 도입합니다. 더 작고 관리하기 쉬운 작업을 전체 노드 네트워크에 분산시켜 데이터를 처리하는 부담을 줄입니다. 블롭은 여러 조각으로 나뉘며, 각 노드는 모든 노드에 걸쳐 균일하게 무작위로 분배하는 메커니즘을 사용하여 몇 개의 조각만 다운로드합니다.

이로 인해 데이터의 가용성과 무결성을 증명해야 하는 새로운 문제가 발생합니다. 개별 노드가 작은 조각만 보유하고 있을 때 네트워크는 데이터가 사용 가능하고 모두 정확하다는 것을 어떻게 보장할 수 있을까요? 악의적인 노드가 가짜 데이터를 제공하여 강력한 데이터 가용성 보장을 쉽게 깨뜨릴 수 있습니다! 바로 이 부분에서 암호학이 도움을 줍니다.

데이터의 무결성을 보장하기 위해 EIP-4844는 이미 KZG 커밋먼트와 함께 구현되었습니다. 이는 네트워크에 새로운 블롭이 추가될 때 생성되는 암호학적 증명입니다. 각 블록에는 작은 증명이 포함되며, 노드는 수신된 블롭이 블록의 KZG 커밋먼트와 일치하는지 검증할 수 있습니다.

DAS는 이를 기반으로 구축되어 데이터가 정확하고 사용 가능함을 보장하는 메커니즘입니다. 샘플링은 노드가 데이터의 작은 부분만 쿼리하고 이를 커밋먼트와 대조하여 검증하는 프로세스입니다. KZG는 다항식 커밋먼트 체계이므로 다항식 곡선 위의 어떤 단일 지점도 검증할 수 있습니다. 다항식의 몇 개 지점만 확인함으로써 샘플링을 수행하는 클라이언트는 데이터가 사용 가능하다는 강력한 확률적 보장을 얻을 수 있습니다.

PeerDAS

PeerDAS(EIP-7594) (opens in a new tab)는 이더리움에 DAS 메커니즘을 구현하는 구체적인 제안으로, 아마도 머지 이후 가장 큰 업그레이드가 될 것입니다. PeerDAS는 블롭 데이터를 확장하여 열(column)로 나누고 그 하위 집합을 노드에 분배하도록 설계되었습니다.

이더리움은 이를 달성하기 위해 기발한 수학을 차용합니다. 즉, 블롭 데이터에 리드-솔로몬(Reed-Solomon) 방식의 이레이저 코딩을 적용합니다. 블롭 데이터는 계수가 데이터를 인코딩하는 다항식으로 표현되며, 그런 다음 추가 지점에서 해당 다항식을 평가하여 확장된 블롭을 생성하고 평가 횟수를 두 배로 늘립니다. 이렇게 추가된 중복성은 이레이저 복구를 가능하게 합니다. 일부 평가가 누락되더라도 확장된 조각을 포함하여 전체 데이터의 절반 이상만 사용할 수 있다면 원본 블롭을 재구성할 수 있습니다.

Extended polynomial

실제로 이 다항식에는 수천 개의 계수가 있습니다. KZG 커밋먼트는 해시와 같이 모든 노드에 알려진 몇 바이트의 값입니다. 충분한 데이터 포인트를 보유한 모든 노드는 전체 블롭 데이터 세트를 효율적으로 재구성 (opens in a new tab)할 수 있습니다.

흥미로운 사실: DVD에도 동일한 코딩 기술이 사용되었습니다. DVD가 긁히더라도 다항식의 누락된 조각을 추가하는 리드-솔로몬 코딩 덕분에 플레이어는 여전히 DVD를 읽을 수 있었습니다.

역사적으로 블록이든 블롭이든 블록체인의 데이터는 모든 노드에 브로드캐스트되었습니다. PeerDAS의 분할 및 샘플링 접근 방식을 사용하면 더 이상 모든 것을 모든 사람에게 브로드캐스트할 필요가 없습니다. 푸사카 이후 합의 레이어 네트워킹은 가십 프로토콜 토픽/서브넷으로 구성됩니다. 블롭 열은 특정 서브넷에 할당되며, 각 노드는 미리 결정된 하위 집합을 구독하고 해당 조각만 보관합니다.

PeerDAS를 사용하면 확장된 블롭 데이터가 열(column)이라고 하는 128개의 조각으로 나뉩니다. 데이터는 노드가 구독하는 특정 서브넷의 전용 가십 프로토콜을 통해 이러한 노드에 분배됩니다. 네트워크의 각 일반 노드는 무작위로 선택된 최소 8개의 열 서브넷에 참여합니다. 128개 서브넷 중 8개에서만 데이터를 수신한다는 것은 이 기본 노드가 전체 데이터의 1/16만 수신한다는 것을 의미하지만, 데이터가 확장되었기 때문에 이는 원본 데이터의 1/8에 해당합니다.

이를 통해 현재의 "모두가 모든 것을 다운로드하는" 스키마의 8배에 달하는 새로운 이론적 확장 한계가 가능해집니다. 노드가 블롭 열을 제공하는 서로 다른 무작위 서브넷을 구독함에 따라, 데이터가 균일하게 분배되어 모든 데이터 조각이 네트워크 어딘가에 존재할 확률이 매우 높아집니다. 검증자를 실행하는 노드는 실행하는 각 검증자에 대해 더 많은 서브넷을 구독해야 합니다.

각 노드에는 무작위로 생성된 고유 ID가 있으며, 이는 일반적으로 연결을 위한 공개 ID 역할을 합니다. PeerDAS에서 이 숫자는 노드가 구독해야 하는 무작위 서브넷 세트를 결정하는 데 사용되어 모든 블롭 데이터의 균일한 무작위 분배를 가져옵니다.

노드가 원본 데이터를 성공적으로 재구성하면 복구된 열을 네트워크에 다시 재분배하여 데이터 공백을 적극적으로 복구하고 전반적인 시스템 복원력을 향상시킵니다. 합산 잔액이 4096 ETH 이상인 검증자에 연결된 노드는 슈퍼노드여야 하므로 모든 데이터 열 서브넷을 구독하고 모든 열을 보관해야 합니다. 이러한 슈퍼노드는 데이터 공백을 지속적으로 복구합니다. 프로토콜의 확률적 자가 복구 특성은 데이터의 일부만 보유하는 홈 운영자를 제한하지 않으면서 강력한 가용성 보장을 가능하게 합니다.

Nodes subscribing to columns distributed via subnets

위에서 설명한 샘플링 메커니즘 덕분에 블롭 데이터의 작은 하위 집합만 보유한 노드도 데이터 가용성을 확인할 수 있습니다. 이러한 가용성은 강제됩니다. 검증자는 새로운 포크 선택 규칙을 따라야 하며, 이는 데이터의 가용성을 검증한 후에만 블록을 수락하고 투표한다는 것을 의미합니다.

사용자(특히 레이어 2 (l2) 사용자)에게 미치는 직접적인 영향은 수수료 인하입니다. 롤업 데이터를 위한 공간이 8배 더 많아짐에 따라 체인에서의 사용자 작업은 시간이 지남에 따라 훨씬 더 저렴해집니다. 하지만 푸사카 이후 수수료가 낮아지려면 시간이 걸리며 BPO에 따라 달라집니다.

블롭 파라미터 전용(BPO)

네트워크는 이론적으로 8배 더 많은 블롭을 처리할 수 있게 되지만, 블롭 증가는 적절하게 테스트되고 단계적으로 안전하게 실행되어야 하는 변경 사항입니다. 테스트넷은 메인넷에 기능을 배포할 수 있는 충분한 확신을 제공하지만, 훨씬 더 많은 수의 블롭을 활성화하기 전에 p2p 네트워크의 안정성을 보장해야 합니다.

네트워크에 과부하를 주지 않으면서 블록당 목표 블롭 수를 점진적으로 늘리기 위해, 푸사카는 블롭 파라미터 전용(BPO) (opens in a new tab) 포크를 도입합니다. 광범위한 생태계 조정, 합의 및 소프트웨어 업데이트가 필요한 일반 포크와 달리, BPO(EIP-7892) (opens in a new tab)는 개입 없이 시간이 지남에 따라 최대 블롭 수를 늘리는 사전 프로그래밍된 업그레이드입니다.

이는 푸사카가 활성화되고 PeerDAS가 가동된 직후에는 블롭 수가 변경되지 않은 상태로 유지됨을 의미합니다. 개발자들이 메커니즘이 예상대로 작동하고 네트워크를 실행하는 노드에 악영향을 미치지 않는지 모니터링하는 동안, 블롭 수는 최대 48개에 도달할 때까지 몇 주마다 두 배로 증가하기 시작할 것입니다.

향후 방향

PeerDAS는 FullDAS 또는 댕크샤딩이라는 더 큰 확장성 비전을 향한 (opens in a new tab) 한 걸음에 불과합니다. PeerDAS는 각 블롭에 개별적으로 1D 이레이저 코딩을 사용하는 반면, 완전한 댕크샤딩은 블롭 데이터의 전체 행렬에 걸쳐 더 완전한 2D 이레이저 코딩 체계를 사용할 것입니다. 데이터를 2차원으로 확장하면 훨씬 더 강력한 중복성 속성과 더 효율적인 재구성 및 검증이 가능해집니다. FullDAS를 실현하려면 추가 연구와 함께 상당한 네트워크 및 프로토콜 최적화가 필요합니다.

더 읽어보기

페이지 최근 업데이트: 2026년 6월 6일