
Morph: EIP-4844 zkEVM 및 집계 증명 통합 솔루션
글: Morph

배경
EIP-4844는 EVM 실행을 통해 액세스할 수 없는 대량의 데이터를 포함하지만, 해당 트랜잭션의 커밋먼트는 접근 가능한 새로운 유형의 트랜잭션인 'Blob 전달 트랜잭션(Blob-carrying transaction)'을 제안한다. 이러한 트랜잭션은 샤딩(sharding) 방식에서 사용하는 형식과 완전히 호환되도록 설계되었다.
'Blob'이란 BLS12-381 스칼라 필드에 속한 4096개의 유한체 원소로 구성된 벡터이다. 수학적으로 이 4096개의 유한체 원소는 차수 4095의 다항식 p(x)로 보간될 수 있으며, wi에서의 값은 정확히 i번째 유한체 원소가 된다.
또한 Blob 커밋먼트는 KZG 커밋먼트 방식으로 계산되며, 대응하는 검증 방법을 통해 검증할 수 있다.
EIP-4844에서 소개된 일부 상수:

EIP-4844는 롤업(Rollup) 과정에서 매우 중요한 역할을 한다. 기존 롤업에서 Rollup 데이터를 트랜잭션 calldata에 저장하던 것과 달리, EIP-4844는 submitter가 데이터를 blob에 넣기를 희망한다. 이 방식은 데이터 가용성을 보장하면서도 과도한 calldata 사용으로 인한 체인상 비용을 줄일 수 있다. 롤업은 충분한 시간 동안 데이터를 사용 가능하게 유지하여 정직한 운영자가 상태 검증을 수행할 수 있도록 해야 하지만, 해당 데이터가 영구적으로 체인에 존재할 필요는 없다. ZK 롤업은 거래 또는 상태에 대해 두 가지 커밋먼트를 제공한다: Blob 커밋먼트와 zk 증명이다.
EIP-4844 KZG 커밋먼트의 등가 증명
현 단계의 제로지식 증명 회로 구현에서는 BLS12-381 타원곡선 기반의 쌍선형 연산자(bilinear pairing) 검증과 같은 복잡한 비네이티브 유한체 연산을 지원하지 않기 때문에, 다항식의 도전점(challenge point)에서의 일치성과 커밋먼트의 유한성 간의 등가 관계를 이용하여 Blob 커밋먼트 검증을 임의의 도전점에서의 값 일치성 검증으로 변환한다.
EIP-4844의 일치성 증명은 다음 세 부분으로 구성된다:
-
회로를 통해 Blob 내 트랜잭션 원문과 Blob의 유한체 원소 간의 일치성을 증명한다.
-
회로를 통해 유한체 원소로 인코딩된 다항식이 도전점 x에서 y 값을 갖는다는 것을 증명한다.
-
프리컴파일된 스마트 계약을 통해 커밋먼트 c, 도전값 x 및 다항식 값 y 간의 관계를 증명한다.
트랜잭션 원문과 Blob의 일치성 검증
먼저 Blob 내 트랜잭션 원문과 Blob의 유한체 원소 간의 대응 관계를 증명하는 회로를 설계한다. 이 회로의 입력은 트랜잭션 원문과 4096개의 유한체 원소이며, 제약 조건은 인코딩 계산 로직을 따르고, 트랜잭션 원문을 Blob에 인코딩하는 방식은 다음과 같다:
-
입력 데이터 중 31바이트를 32바이트로 인코딩하여 하나의 bls12-381 스칼라 필드 원소로 만든다. 이때 인코딩된 데이터는 스칼라 필드 모듈러스 범위를 초과하지 않는다. 이후 blob 분할 검증 방식을 지원하기 위해 배치(batch) 내 입력 데이터(트랜잭션 원문 정보)를 chunk 단위로 나눈다.
-
각 chunk의 blob 인코딩 시, 해당 chunk 입력 데이터 길이를 첫 번째 31바이트 중 앞 4바이트에 저장하고, chunk 입력 데이터 조각의 앞 27바이트 데이터를 나머지 27바이트에 인코딩한다. 이를 통해 chunk 분할 blob의 첫 번째 유한체 원소를 구성한다(총 32바이트로, 첫 번째 바이트는 0, 두 번째부터 네 번째 바이트까지는 해당 chunk 입력 데이터 길이를 나타내며, 나머지 27바이트는 데이터의 앞 27바이트를 저장).
-
해당 chunk의 나머지 입력 데이터를 31바이트씩 나누어 32바이트 공간에 저장하며, 마지막 데이터가 31바이트 미만일 경우 끝부분을 0으로 채운다.
이러한 인코딩 방식은 배치 길이(batch length)를 여러 청크 길이(chunk length)로 나누어 각 청크 분할 blob 요소에 저장함으로써 후속의 집계 가능(aggregatable) 방안 설계에 더욱 유리하다.

Blob 다항식 평가 검증
이 회로는 Blob로부터 도출된 다항식 p(x)가 임의의 점(Challenge Point) x에서 y 값을 갖는지를 검증한다. 이를 통해 직접적으로 blob 커밋먼트를 검증할 수 없는 EIP-4844 Blob 검증을 도전점 x, 다항식 값 y 및 다항식 커밋먼트 c의 일관성 검증으로 전환한다. 이 회로의 입력은 4096개의 유한체 원소와 도전점 x이며, 출력은 다항식 계산 결과 y이다.
Blob 다항식 평가 논리는 주로 Barycentric 평가 공식을 사용하며, 4096개의 유한체 원소로 구성된 Blob의 경우 다음과 같다:

평가 공식은 다음과 같다:

Blob 커밋먼트와 값의 일관성 검증
이 단계 이전에 Blob과 그 커밋먼트 간의 일관성 검사는 이미 도전점 x, 함수값 y 및 Blob 커밋먼트의 일관성 검사로 전환되었다. EIP-4844의 지원 하에 스마트 계약은 Blob의 커밋먼트를 취득할 수 있으므로, 이 부분의 검증은 체인 상의 스마트 계약이 직접 수행할 수 있다. 아래에서는 이전 단계의 회로 평가 결과를 집계 최적화하는 방법을 논의한다.
Blob 집계 가능 검증 방안
Blob 내 각 32바이트 데이터는 하나의 BLS12-381 스칼라 필드로 표현할 수 있지만, 원본 트랜잭션 데이터의 각 트랜잭션 원문 길이는 고정되어 있지 않으므로 다음과 같은 문제가 발생할 수 있다:
-
chunk 내 트랜잭션 원문이 반드시 32바이트의 정수배가 아닐 수 있으므로, chunk 내 트랜잭션 데이터가 정확히 정수 개수의 유한체 원소로 인코딩되지 않을 수 있음
-
인코딩 후 트랜잭션 데이터가 두 개의 Blob에 걸쳐 저장될 수 있음
-
배치(batch) 또는 chunk 데이터를 인코딩한 후 유한체 원소가 4096개에 미달할 수 있어 Blob 공간 활용률이 낮아질 수 있음
첫 번째 문제를 해결하기 위해 각 Chunk(대응하는 트랜잭션 데이터)의 끝부분에 0을 추가하여, 한 Chunk 내 트랜잭션 개수가 정수 개수의 유한체 원소로 인코딩되도록 한다. 두 번째 문제의 경우, 하나의 트랜잭션이 두 개의 Blob을 가로질러 저장되지 않도록 요구하며, 여러 Blob의 경우 KZG 커밋먼트의 다중 지점 열기(multi-point opening) 방식을 통해 최적화한다.
세 번째 문제에 대해서는 새로운 집계 방안을 제안한다. 먼저 원래 배치 길이 정보를 저장하던 앞 5바이트 중 4바이트를 수정하여, 각 분할 조각(chunk)의 앞 5바이트 중 4바이트에 분할 조각의 길이 정보를 저장하도록 하고, 이후의 인코딩 방식은 동일하게 유지한다. 또한 Chunk 증명에는 인코딩 일치성 검사 외에도, 해당 chunk 내 트랜잭션 데이터가 인코딩된 유한체 원소의 인덱스 값(즉, chunk 내 첫 번째 및 마지막 트랜잭션이 속한 Blob 내 원소 인덱스)을 입력한다.


우리의 방안은 다음과 같은 장점을 갖는다:
-
호환성: EIP-4844는 Blob-data를 사용하며, 우리 방안은 트랜잭션 원문 데이터에서 Blob-data로의 인코딩 과정을 구체적으로 고려하여 기존 ZKevm 회로와 호환된다.
-
실용성: 이더리움 프리컴파일 계약은 BN254만 지원하므로, BLS12-381을 사용하여 KZG 커밋먼트를 검증하면 많은 비네이티브 곡선 스칼라 필드 연산(예: 페어링 연산)이 발생하여 막대한 가스를 소모하게 된다. 우리는 Barycentric 공식을 사용하여 이러한 교차 필드 연산의 수를 크게 줄여 실제 계산량을 실현 가능하게 한다.
-
집계성: 집계 증명은 증명 수와 검증 횟수를 줄여 체인상 가스 소비를 감소시킨다. 우리의 방안은 청크 단위에서 집계 정도를 향상시키며, EIP-4844와 결합하여 더 나은 가스 절감 효과를 얻을 수 있다.
결론
Layer-2 솔루션은 이더리움 확장성 로드맵에서 중요한 역할을 하지만, 동시에 보안성 논란과 성능 부족 문제도 존재한다. ZK-rollup은 견고한 수학 이론을 기반으로 높은 수준의 보안성을 제공하지만, 이는 증명 생성 및 검증 과정에서의 높은 비용을 수반한다. 더 나은 알고리즘과 하드웨어를 통해 증명 생성 비용을 효과적으로 낮출 수 있으며, 체인상 계산 및 저장 로직을 최적화함으로써 검증 비용 역시 개선할 수 있다.
EIP-4844는 롤업 솔루션의 촉매제로서 체인상 데이터 저장 비용의 가스 소비를 크게 최적화할 수 있지만, 응용에서의 실제 문제도 동시에 제기한다. 본 문서는 EIP-4844 제안 하에서 실용적이며 효율적인 회로 설계 방안을 제시하여 가스 소비를 효과적으로 줄이고, EIP-4844 적용 시 발생하는 일부 문제들을 호환성 있게 해결한다. Morph 팀은 항상 더 낮은 비용과 더 높은 보안을 갖춘 거래 생태계 창출을 추구하며, 이러한 비전 아래 지속적으로 새로운 기술을 탐색하고 커뮤니티 생태계에 더 큰 기여를 하기를 희망한다.
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News













