@@ -22,13 +22,12 @@ EIP-4844가 도입되면서, 새로운 트랜잭션 타입 `0x03`을 지정받
2222
2323# Dive into KZG Commitment
2424** notation**
25- $\mathbb{F}_ q$: BLS12-381 Scalar Field
26- $G_1$: BLS12-381 $G_1$ Group (48 bytes)
27- $G_2$: BLS12-381 $G_2$ Group (96 bytes)
28- $e$: Pairing e: $G_1 \times G_2 \rightarrow G_T$
29- $\omega$: 4096th root of unity $\in \mathbb{F}_ q$
30- $\omega \equiv 1, \omega \neq 1$ for $0 < k < 4096$
31- $\tau$: trusted setup에서 선택된 secret $\in \mathbb{F}_ q$
25+ - $\mathbb{F}_ q$: BLS12-381 Scalar Field
26+ - $G_1$: BLS12-381 $G_1$ Group (48 bytes)
27+ - $G_2$: BLS12-381 $G_2$ Group (96 bytes)
28+ - $e$: Pairing e: $G_1 \times G_2 \rightarrow G_T$
29+ - $\omega$: 4096th root of unity $\in \mathbb{F}_ q$
30+ - $\tau$: trusted setup에서 선택된 secret $\in \mathbb{F}_ q$
3231
3332## 1. Rollup data -> Polynomial
3433L2 Sequencer는 우선 처음으로, blob에 넣을 rollup data를 Polynomial로 표현한다.
142141이 과정을 통해 128KB의 rollup data를 단 48B 크기의 단일 $G_1$ 그룹 원소인 KZG Commitment $C$로 압축할 수 있다.
143142
144143이를 코드로 나타내면 아래와 같다.
144+
145145``` python
146146computed_kzg = bls.Z1 # 0 · G₁ (영점)
147147
@@ -151,4 +151,5 @@ for j, (value, point_kzg) in enumerate(zip(blob, KZG_SETUP_LAGRANGE)):
151151 temp = bls.multiply(point_kzg, value) # bⱼ · [Lⱼ(τ) · G₁]
152152 computed_kzg = bls.add(computed_kzg, temp) # 누적 합
153153
154- # 최종: C = P(τ) · G₁ (48 bytes)
154+ # 최종: C = P(τ) · G₁ (48 bytes)
155+ ```
0 commit comments