Danksharding은 이더리움 롤업 트랜잭션에 대한 추가 저장 공간을 제공하여 트랜잭션 처리량을 늘리는 롤업 확장 방법입니다. Danksharding은 The Surge라고 불리는 이더리움 확장 로드맵의 두 번째 단계의 핵심 기능입니다.[1]
이더리움은 블록체인 앱을 위한 가장 인기 있는 네트워크 중 하나이며, 따라서 네트워크에 엄청난 압력이 가해집니다. 많은 플랫폼, 프로토콜, 앱 및 토큰을 호스팅하면 트랜잭션 완결성이 느려지고 엄청난 수수료가 발생합니다.
이러한 확장성 문제를 극복하기 위해 이더리움 로드맵에는 여러 업그레이드가 포함되어 있습니다. The Merge를 통해 이더리움은 지분 증명 체인이 되어 전력 소비를 크게 줄이고 PoS 네트워크에서만 가능한 혁신을 위한 문을 열었습니다.
더 저렴하고 빠른 트랜잭션을 달성하기 위해 네트워크에 대한 한 가지 계획은 대규모 이더리움 블록체인을 더 작은 파티션으로 분할하여 네트워크 혼잡과 수수료를 줄이는 방법인 샤딩을 구현하는 것이었습니다. 샤딩은 블록체인을 물리적으로 여러 부분으로 분할하는 것을 포함합니다. 그러나 샤딩은 보안 위험과 데이터 마이그레이션 문제를 야기할 수 있습니다.
기존 샤딩과 달리 Danksharding은 데이터 블롭과 KZG 다항식 커밋 방식을 활용하여 특히 롤업을 위해 대용량 데이터 패킷 처리를 최적화하여 데이터 가용성과 효율성을 개선하는 데 중점을 둡니다.
Danksharding은 기존 이더리움 레이어 2 솔루션과 통신하는 방법을 도입했는데, 이는 전체 이더리움 네트워크를 샤딩하는 것보다 구현하기가 훨씬 쉽습니다. 또한 블록당 더 많은 데이터를 처리하는 방법을 도입하여 네트워크 속도를 늦추거나 가스 수수료를 올리지 않고도 더 복잡한 트랜잭션을 허용하지만 블록체인 롤업을 더욱 효율적으로 만듭니다.[3]
Danksharding은 이를 제안한 이더리움 연구원 Dankrad Feist의 이름을 따서 명명되었습니다. 이는 샤딩이라고 불리는 기존 이더리움 확장 계획의 업그레이드 버전으로, 레이어 1(L1)을 여러 샤드 체인으로 나누는 것을 제안합니다.
개발자들은 원래 샤딩을 통해 이더리움을 확장할 계획이었는데, 이는 L1 체인을 64개의 샤드 체인으로 분할할 예정이었습니다. 각 샤드 체인에는 고유한 검증자 세트가 있으며 트랜잭션을 개별적으로 처리합니다.
그러나 롤업이 이더리움을 확장하는 방법으로 등장하면서 샤딩 로드맵은 폐기되었습니다. 롤업이 도입되면서 트랜잭션이 롤업 체인에서 직접 처리되므로 샤드 체인의 필요성이 줄었습니다. 또한 롤업 중심 로드맵은 샤드 체인보다 덜 복잡하고 더 분산되어 있으며 더 나은 보안을 제공했습니다.
Danksharding은 이더리움의 롤업 중심 로드맵을 보완하기 위해 도입되었습니다. danksharding의 가장 뚜렷한 특징은 롤업이 더 많은 데이터를 처리할 수 있도록 하는 임시 데이터 블롭의 도입입니다. 즉, 더 많은 트랜잭션을 의미합니다.[11]
프로토-danksharding은 구현되면 이더리움 네트워크에 Danksharding을 도입하기 위한 기반을 제공하는 제안입니다. 이 개념은 이더리움 개선 제안 4844(EIP-4844)에서 제안되었으며 이더리움 연구원 Dankrad Feist와 Proto Lambda의 이름을 따서 명명되었습니다. EIP-4844는 2024년 3월 13일로 예정된 이더리움의 Dencun 업그레이드의 일부로 곧 구현될 예정입니다.
EIP-4844 또는 프로토-Danksharding은 새로운 유형의 트랜잭션과 임시 데이터를 저장하는 방법을 도입하여 이더리움의 미래를 위한 토대를 마련합니다.[2]
EIP-4488(총 콜데이터 제한으로 트랜잭션 콜데이터 가스 비용 절감)은 두 가지 간단한 규칙으로 동일한 평균 사례/최악의 사례 로드 불일치 문제를 해결하려는 초기의 더 간단한 시도입니다.
하드 제한은 평균 사례 로드의 더 큰 증가가 최악의 사례 로드의 증가로 이어지지 않도록 하는 가장 간단한 방법입니다. 가스 비용의 감소는 롤업 사용을 크게 증가시켜 평균 블록 크기를 수백 킬로바이트로 늘릴 가능성이 높지만 10MB를 포함하는 단일 블록의 최악의 가능성은 하드 제한에 의해 직접적으로 방지됩니다.
EIP-4844(프로토-danksharding)는 대신 블록당 포함할 수 있는 블롭 수에 제한이 있는 대용량 고정 크기 블롭에 더 저렴한 데이터를 저장할 수 있는 별도의 트랜잭션 유형을 만듭니다. 이러한 블롭은 EVM에서 액세스할 수 없으며 블롭은 실행 레이어 대신 합의 레이어(비콘 체인)에 의해 저장됩니다.[10][9]
| 평균 사례 블록 크기 | 최악의 사례 블록 크기 | |
|---|---|---|
| 현 상태 | 85kB | 1.8MB |
| EIP-4488 | 알 수 없음; 콜데이터 사용량이 5배 증가하면 350kB | 1.4MB |
| EIP-4844(프로토-danksharding) | 1MB(원하는 경우 조정 가능) | 2MB |
블롭은 트랜잭션에 대한 데이터를 전달하는 저렴하고 임시적인 메모리로, 블롭 전달 트랜잭션이라고 합니다.
블롭은 트랜잭션 검증을 보다 효율적으로 만들기 위해 설계되었습니다. 블록의 각 트랜잭션을 검증하는 대신 네트워크는 블록에 첨부된 블롭이 올바른 데이터를 전달하는지 확인하기만 하면 됩니다. 이러한 블롭 전달 블록의 트랜잭션은 일반적으로 보안 보장을 공유하기 위해 데이터를 이더리움에 저장하는 Optimism과 같은 레이어 2 네트워크와 관련됩니다. 이러한 블롭의 임시적인 특성은 이더리움 네트워크에서 영구적으로 공간을 차지하지 않도록 보장합니다.
롤업은 블롭을 사용하여 트랜잭션 데이터를 저장할 수 있습니다. 이렇게 하면 이더리움 메인 체인의 공간이 확보되고 롤업이 더 낮은 비용으로 더 많은 트랜잭션을 처리할 수 있습니다. EIP-4844는 블롭에 대한 새로운 수수료 시장을 도입합니다.[8]
블롭은 실행 레이어가 아닌 비콘 노드에 유지됩니다(예: geth가 아닌 prysm). 향후 샤딩 작업은 비콘 노드에 대한 변경만 필요하므로 실행 레이어가 다른 이니셔티브에서 병렬로 작업할 수 있습니다.[9]
KZG 다항식 커밋(Kate-Zaverucha-Groth 커밋 방식이라고도 함)은 사용자가 바인딩 및 숨김 방식으로 다항식을 커밋할 수 있도록 하는 암호화 기본 요소입니다. 즉, 커밋은 다항식에 대한 정보를 공개하지 않으며 커밋이 완료되면 다항식을 변경할 수 없습니다.
KZG 다항식 커밋 방식에서 증명자는 먼저 다항식 p(X)에 커밋한 다음 자신의 주장 p(z) = y와 함께 증명 π를 제출해야 합니다.
커밋은 나중에 임의의 위치에서 열 수 있습니다. 증명자는 특정 위치에서 다항식의 값이 주장된 값과 같음을 보여줍니다.
KZG 다항식 커밋 방식은 2010년에 도입되었습니다.[4][5][6][7]
트랜잭션(가스) 수수료 절감
Danksharding의 첫 번째 이점은 트랜잭션 수수료 절감입니다. 이더리움 네트워크의 높은 가스 수수료는 주로 네트워크 혼잡으로 인해 발생합니다. 이는 이더리움 네트워크에서 엄청난 수의 사람들이 블록체인 앱과 플랫폼에 액세스할 때 발생할 수 있습니다. 그리고 이더리움은 대부분의 dApp의 본거지이므로 네트워크 혼잡은 사용자가 직면하는 빈번한 문제입니다. 네트워크가 롤업을 더 쉽게 처리할 수 있도록 함으로써 danksharding은 이더리움이 혼잡을 피하는 데 도움이 될 것입니다. 이는 레이어 2 체인을 사용하는 것뿐만 아니라 더 넓은 이더리움 네트워크에서 가스 수수료를 개선할 것입니다.[2]
더 빠른 트랜잭션
Danksharding의 또 다른 이점은 이더리움이 이전보다 훨씬 빠르게 트랜잭션을 처리할 수 있다는 것입니다. 데이터를 일시적으로 저장하는 방법을 도입함으로써 네트워크 노드를 돕습니다. 이전에는 각 노드가 블록체인 기록의 전체 사본을 저장했는데 이는 큰 부담이었습니다. Danksharding을 사용하면 노드가 훨씬 적은 데이터를 저장하고 처리하므로 보다 효율적으로 작업할 수 있습니다. 이는 사용자의 트랜잭션이 훨씬 빨라진다는 것을 의미합니다.[2]