Blob 트랜잭션이란 무엇인가

Ethereum의 EIP-4844에 도입된 트랜잭션 유형으로, 메인 트랜잭션 데이터와 별도로 데이터 블롭을 저장하여 트랜잭션 수수료를 줄이도록 설계되었습니다.

이더리움 개선 제안(EIP) 4844(프로토-댕크샤딩이라고도 함)를 통해 도입된 블롭 트랜잭션은 특히 레이어 2 확장 솔루션을 위한 트랜잭션 수수료를 줄이는 것을 목표로 하는 중요한 아키텍처 변화를 나타냅니다. 데이터를 이더리움 트랜잭션의 메인 트랜잭션 calldata에 직접 포함하는 기존 방식과 달리, 블롭 트랜잭션은 '블롭'이라는 별도의 온체인 데이터 구조를 사용합니다. 이 블롭은 게시 비용이 저렴하도록 설계되었으며 일반 트랜잭션 데이터와는 다른 가스 한도 및 가격 책정 메커니즘이 적용됩니다. 주요 동기는 롤업을 위한 데이터 가용성 비용을 낮추는 것입니다. 롤업은 트랜잭션을 오프체인으로 묶어 압축된 요약 또는 증명을 메인 이더리움 체인(레이어 1)에 게시합니다. 레이어 1에 이 데이터를 게시하는 비용이 주요 병목 현상입니다. EIP-4844는 롤업이 이 데이터를 블롭으로 분리하여 더 많은 양의 데이터를 더 저렴하게 게시할 수 있도록 새로운 트랜잭션 유형을 도입합니다. 이 블롭은 이더리움 가상 머신(EVM)에서 직접 처리되지 않고, 대신 KZG(Kalai-Shen-Goldwasser) 다항식 커밋먼트 체계를 통해 커밋됩니다. 이 커밋먼트는 블록 헤더에 포함되어 모든 노드가 전체 블롭 데이터를 영구적으로 다운로드하고 저장할 필요 없이 데이터 가용성을 보장합니다. 이 분리 및 전문적인 처리는 데이터 가용성과 관련된 가스 비용을 크게 줄여 롤업을 더 경제적으로 실행 가능하게 만들고 따라서 이더리움의 전반적인 확장성을 향상시킵니다.

        graph LR
  Center["Blob 트랜잭션이란 무엇인가"]:::main
  Rel_eip_4844["eip-4844"]:::related -.-> Center
  click Rel_eip_4844 "/terms/eip-4844"
  Rel_layer_2["layer-2"]:::related -.-> Center
  click Rel_layer_2 "/terms/layer-2"
  Rel_data_availability["data-availability"]:::related -.-> Center
  click Rel_data_availability "/terms/data-availability"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 지식 테스트

1 / 3

🧒 5살도 이해할 수 있게 설명

큰 소포(트랜잭션)를 보내는데, 포장지(데이터)를 모두 포함하는 데 많은 비용이 들었던 상황을 상상해 보세요. 블롭 트랜잭션을 사용하면 포장지를 별도로 훨씬 저렴하게 보낼 수 있어 전체 배송 비용이 훨씬 줄어듭니다.

🤓 Expert Deep Dive

EIP-4844는 '블롭'과 KZG 커밋먼트를 도입하여 이더리움의 데이터 가용성 전략을 근본적으로 변경합니다. 블롭은 블록에 첨부된 연속적인 데이터 청크로, 최대 크기와 calldata와는 별개의 별도 가스 한도가 있습니다. 중요한 것은 블롭은 EVM 계약 로직에서 직접 액세스할 수 없으며, 주요 목적은 데이터 가용성 검증입니다. 블롭 데이터에 대한 커밋먼트는 KZG 다항식 커밋먼트를 사용하여 달성되며, 여기서 블롭 데이터는 다항식의 계수를 나타내고 커밋먼트는 타원 곡선의 한 점입니다. 이를 통해 효율적인 증명 생성 및 검증이 가능합니다. 노드는 검증 목적으로 제한된 기간(예: 약 4096 블록 또는 약 27시간) 동안 블롭 데이터를 다운로드해야 하며, 그 후에는 상태 부풀림을 줄이기 위해 이를 삭제할 수 있습니다. 블롭 게시를 위한 가스 비용은 블롭 크기와 별도의 '블롭 가스 가격'에 따라 계산되며 calldata보다 훨씬 저렴합니다. 이 메커니즘은 블롭 공간이 여러 샤드로 확장되고 분산될 전체 댕크샤딩의 선행 단계입니다. 절충점에는 KZG 커밋먼트 체계의 복잡성과 노드를 위한 임시 저장 요구 사항이 포함되지만, 주요 이점은 롤업 데이터 게시 비용의 상당한 감소입니다.

📚 출처