What is CDK? (feat. Polygon)

CoinAngel | GMB LABS

|

General

2023-08-30

오늘 오전 Polygon 팀에서는 ZK 기반 L2를 출시할 수 있도록 지원하는 소프트웨어 제품군인 CDK (Chain Development Kit)를 발표하였습니다. ZK 기반 체인 개발은 처음이라 한번쯤 알아보면 좋을거 같아 간략하게 정리해보도록 하겠습니다:)
⎮ CDK(Chain Development Kit)

https://twitter.com/sandeepnailwal/status/1696618823422529898/photo/1

Polygon CDK는 이더리움에 ZK 기반 레이어2 블록체인을 배포할 수 있는 오픈소스 프레임워크 입니다. CDK를 통해 새로운 이더리움 레이어2 체인을 시작할 수 있고 기존에 존재하는 레이어1 체인을 레이어2로 전환할 수 있도록 지원합니다.

https://wiki.polygon.technology/docs/cdk/what-is-polygon-cdk/

CDK를 통해 생성된 모든 체인은 즉각적인 완결성(near-instant finality), 무한한 확장성(Infinite scalability), 통합된 유동성(Unified liquidity) 등 여러 이점을 가지며 상호 연결되어 있습니다.


⎮ Unified Liquidity

https://wiki.polygon.technology/docs/cdk/validium-attributes/

통합 유동성이란 Polygon 2.0의 기본 구성 요소로서 CDK를 통해 개발한 체인들은 향상된 상호운용성 계층을 채택하여 LXLY 브릿지를 이용해 서로 다른 체인간의 원활한 상호 작용 및 높은 유동성을 추구할 수 있습니다.


⎮ Validium

Validium은 오프체인(Off-Chain) 데이터 가용성 및 계산을 사용하여 기본 이더리움 네트워크 외부에서 트랜잭션을 처리하는 솔루션입니다. 레이어 1 네트워크에 트랜잭션 데이터를 저장하지 않고 Zk proof를 생성한 다음 이를 유효성 증명으로 이용합니다. 이를 통해 데이터 무결성을 보장하며 확장성과 비용을 최적화 할 수 있습니다.

예를 들어, 트레이딩에 특화된 Sei 같은 Application-Specific Blockchains (App-Chain)은 특정 목적을 가지고 설계되어 속도와 효율성을 높이지만 그러한 이점을 위해 결국 확장성, 상호 운용성에서는 부족한 모습을 보일 수 있습니다. 기존에는 zkEVM 실행 환경을 활용하고 Validium을 채택함으로써 중앙 집중형 시퀀서를 구현할 수 있었습니다.

“Polygon CDK 에서는 이러한 선택 없이 다른 Polygon 체인들과 완벽한 무결점의 상호 운용성을 유지하며 고성능 레이어 2 확장 솔루션을 제공합니다”

https://wiki.polygon.technology/docs/cdk/dac-overview/

위 표는 Polygon의 zkEVM과 CDK에 이용되는 Validium간의 차이점을 보여주는 표이니 궁금하신 분들은 한번쯤 보셔도 좋을 것 같습니다.


⎮ DAC(Data Availability Committee)

블록체인 에서 데이터 가용성은 모든 노드가 전체 트랜잭션 내역에 접근하고 확인할 수 있도록 보장하며 이를 통해 투명성, 보안, 무결성을 유지하는 굉장히 중요한 요소이지만 트랜잭션 데이터를 레이어 1(메인체인) 체인에 모두 저장하면 비용이 많이 들고 프라이버시 침해 문제가 발생할 수 있습니다.

https://wiki.polygon.technology/docs/cdk/what-is-polygon-cdk/

DAC(Data Availability Committee)는 이를 데이터 저장과 트랜잭션 실행을 분리하여 해결합니다. 이를 통해 트랜잭션 데이터를 오프체인에 저장함으로써 비용을 절감하고 프라이버시를 강화할 수 있으며 오프체인에 저장된 데이터들에 대한 무결성을 보장합니다.

이는 레이어 2 솔루션에서 확장성을 향상시키는데 가장 중요한 역할을 하며 중요한 계산 작업과 데이터 저장을 오프체인을 통해 진행함으로써 레이어 1(메인체인) 에 대한 부담을 완화시킵니다.

DAC의 핵심 사항은 레이어 2 상태를 재구성하는데 필요한 데이터가 모든 사람이 접근할 수 있는지 확인하는 것 입니다. 이는 레이어 2 운영자가 오프라인 상태가 되더라도 사용자가 자산 및 데이터에 계속 접근할 수 있음을 의미합니다.


⎮ DAC 동작 방법

https://wiki.polygon.technology/docs/cdk/what-is-polygon-cdk/

위는 Polygon CDK 내의 주요 구성 요소입니다. 앞서 소개한 DAC는 Sequencer와 긴밀하게 작동하여 안전하고 효율적인 데이터 처리를 보장합니다.

https://wiki.polygon.technology/docs/cdk/dac-overview/

위는 CDK내의 데이터 흐름 프로세스를 보여주는 그림으로 다음과 같이 나눌 수 있습니다.

  1. Batch Formation : 시퀀서는 유저의 트랜잭션을 수집하여 일괄적으로 처리합니다.

  2. Batch Auth : 일괄적으로 처리된 작업들이 어셈블되면 인증이 되고 시퀀서는 Batch 데이터와 해당 해시를 DAC에 전달합니다 .

  3. Data Validation and Storage : DAC 노드는 각 Batch 데이터들을 독립적으로 검증하고 검증된 해시는 각 노드의 로컬 데이터베이스에 추후 참조를 위해 저장됩니다.

  4. Signature Generation : 각 DAC 노드는 일괄 해시에 대한 서명을 생성합니다. 이는 Batch의 무결성과 신뢰성을 보장합니다.

  5. Communication with Ethereum : 시퀀서는 DAC 구성원의 서명과 원본 Batch 해시들을 수집하여 확인을 위해 이더리움 네트워크에 제출합니다.

  6. Verification on Ethereum: 이더리움 네트워크 의 스마트 컨트랙트는 제출된 서명과 유효한 DAC 구성원 목록과 비교하여 확인하고 충분한 승인이 제공되었는지 확인합니다.

  7. Final Settlement with ZKP : 어그리게이터는 Batch에 대한 zk Proof를 준비하여 이더리움에 제출합니다. 이는 Batch 트랜잭션의 유효성을 세부 정보를 공개하지 않고 확인함으로써 이더리움에서 CDK로 개발한 체인 상태를 업데이트 합니다.

이러한 과정은 안전하고 효율적이며 Audit 가능한 데이터 흐름을 보장하여 광범위한 컨텍스트에서 CDK 개발 체인의 구현 및 운영을 지원합니다.


⎮ CDK 주요 특징

https://wiki.polygon.technology/docs/cdk/validium-attributes/


이렇게 한번 Polygon에서 제공하는 CDK에 대해서 알아보았는데요. 모든 자료는 독스에서 확인 가능합니다. 개인적으로는 코스모스의 SDK, 옵티미즘의 OP Stack이 생각났는데 특정 프로젝트들의 니즈를 위한 App-chain의 개발이 점점 많아질 것 같다는 생각이 듭니다.

특히나 이번 CDK는 zk 기술을 활용함에 있어 흥미로웠습니다. 추후에는 다른 Development Kit 들과 비교를 해보는 시간도 가져보면 좋을 것 같네요. 긴글 읽어주셔서 감사합니다:)


Latest

©2021-2024. GMB LABS

©2021-2024. GMB LABS