개요
TED Protocol은 Diamond Pattern (EIP-2535) 을 사용하는 모듈형, 업그레이드 가능한 아키텍처로 구축되었습니다. 사용자 트랜잭션은 단일 DiamondProxy 진입점을 통해 흐르며, 전문화된 facet으로 라우팅됩니다:- Swap Facet — FXSwapFacet, CurveAdapter, UniswapV3
- Bridge Facet — CCTPFacet, LayerZeroFacet, WormholeFacet
- Admin Facet — AdminFacet, DiamondCut, DiamondLoupe
Diamond Pattern (EIP-2535)
왜 Diamond인가?
- 모듈성 — 각 기능이 별도 facet으로 분리
- 업그레이드 가능성 — 전체 컨트랙트 재배포 없이 단일 facet만 업데이트
- 사이즈 제한 없음 — 24KB 컨트랙트 제한 우회
- 단일 주소 — 모든 기능에 하나의 진입점
- 가스 효율성 — delegatecall 기반 라우팅
구조
DiamondProxy 컨트랙트는 함수 셀렉터를 facet 주소에 매핑합니다.- 함수가 호출되면 프록시가 해당 셀렉터를 처리하는 facet을 조회
- 호출을 해당 facet으로 위임
- 메인 컨트랙트 주소 변경 없이 기능 추가, 교체, 제거 가능
스토리지 패턴
모든 facet이 diamond storage를 공유하며, 고유한 스토리지 위치(keccak256 해시)를 사용하여 기존 프록시 패턴의 스토리지 충돌 문제를 방지합니다. 스토리지 구조체 포함 내용:- facet 매핑
- 소유자 주소
- 일시정지 상태 등 프로토콜 상태
코어 Facets
FXSwapFacet
멀티 DEX 라우팅을 통한 스테이블코인 FX 스왑을 처리합니다.DEX 어댑터
Bridge Facets
데이터 플로우
동일 체인 스왑
- 사용자가 토큰 쌍과 금액으로
swap()호출 - DiamondProxy가 FXSwapFacet으로 라우팅
- Facet이 모든 DEX 어댑터를 병렬로 조회
- 최적 라우트 선택 및 스왑 실행
- 출력 토큰을 사용자에게 전송
크로스체인 스왑
소스 체인:- 사용자가
crossChainSwap()호출 - 필요시 브릿지 호환 토큰으로 스왑
- 적절한 bridge facet을 통해 크로스체인 전송 시작
- 브릿지 프로토콜이 메시지 전달
- 토큰 수신
- 필요시 타겟 토큰으로 스왑
- 최종 토큰을 사용자에게 전달
보안 아키텍처
접근 제어
변경 사항은 다음 경로를 통해 적용됩니다:- 멀티시그 (3/5 요구사항)
- 타임락 (48시간)
- DiamondProxy
비상 제어
TEDP 토큰 아키텍처
OFT 표준
TEDP는 LayerZero OFT (Omnichain Fungible Token) 을 구현합니다.- ERC-20 및 ERC-20Permit 결합
- 배포 시 10억 토큰 고정 공급량 발행
- 원활한 크로스체인 전송 지원
크로스체인 플로우
- 소스 체인 — TEDP 토큰 소각
- 검증 — LayerZero DVN (Decentralized Verifier Networks)이 소각 트랜잭션 검증
- 목적지 체인 — 수신자에게 동등한 TEDP 발행
총 공급량은 모든 체인에서 일정하게 유지됩니다.