6월 15일 xCall 비공개 테스트를 성공적으로 마쳤습니다. 비공개 테스트는 ICON 커뮤니티에서 생태계에 대한 이전의 기여를 바탕으로 5개 팀이 선정되어 참여하였으며, 테스트 기간은 2주간 지속되었습니다.
이 테스트 기간 동안 우리의 주요 목표는 광범위한 출시에 앞서 xCall 제품을 안정화하고, dApp 개발자의 xCall 경험을 최적화할 수 있는 주요 개선 영역을 식별하는 것이었습니다.
이러한 목표를 달성하기 위해 각 참여 팀은 xCall로 연결된 체인(ICON, Ethereum, BSC, Havah) 간에 트랜잭션을 실행하는 테스트용 dApp을 만들었습니다. 이 글에서는 테스트 후 이들 팀에서 수집한 광범위한 피드백과 데이터에 대해 자세히 설명합니다.
xCall 집중 테스트를 성공적으로 수행한 모든 팀에 감사드립니다.
xCall이 무엇인가? 크로스-체인 애그리게이터(A Cross-Chain Aggregator)
xCall은 dApp들이 현재 사용 가능한 모든 상호 운용성 솔루션에 크로스-체인 메시지를 배포(Deploy)하기 위한 단일 표준입니다.
xCall은 개발자가 가능한 한 쉽게 dApp에 크로스-체인 기능을 추가 지원할 수 있도록 특별히 설계되었습니다. 한 줄의 코드로 개발자는 여러 프로토콜에서 메시지를 실행할 수 있습니다.
다양한 시스템에서 크로스-체인 트랜잭션을 실행해야하는 다양한 복잡함들을 백엔드에서 세부 사항을 처리하는 xCall에 맡길 수 있게 됩니다. 그 결과 개발자는 훌륭한 서비스를 구축하는 데 집중할 수 있게 될 것입니다.
따라서 xCall에 대한 슬로건은 다음과 같습니다.
"한 번의 코드로, 모든 곳에 배포 (Write once, deploy everywhere)"
왜 xCall인가요?
xCall은 브릿지 애그리게이터(예: LiFi , Socket)도 아니며 상호 운용성 프로토콜(예: BTP , IBC , Wormhole(웜홀))도 아닙니다. xCall은 서로 다른 프로토콜간의 크로스-체인 메시징을 표준화하는 단일 인터페이스를 통해 모든 상호 운용성 프로토콜의 기능을 집결(Aggregates)합니다.
이러한 표준화를 통해 xCall은 개발자를 위한 크로스-체인 dApp 개발을 단순화시키고, 개발자가 기본 상호 운용성 프로토콜의 고유한 강점을 활용할 수 있도록 지원합니다.
다중 상호운용성 프로토콜의 이점을 활용하는 애플리케이션은 멀티-프로토콜 검증을 들 수 있으며, 자산을 크로스-체인으로 전송할 때 하나의 프로토콜에만 의존하는 것과 관련된 위험을 줄이기 위해, 멀티-프로토콜 검증은 하나가 아니라 두 개 이상의 기본 상호운용성 프로토콜을 통해 크로스-체인 트랜잭션을 전송할 수 있습니다.
xCall 포커스 테스트: 범위
말할 필요도 없이, 우리는 xCall을 시장에 출시하게 되어 매우 기쁘게 생각합니다. 집중 테스트를 통해 우리는 그 목표에 한 걸음 더 가까워졌습니다. 테스트 기간 동안 다음 팀은,
Staky (크래프트 팀)
Hugobyte (BTP의 주요 기여자)
Venture23 (밸런스드의 주요 기여자 이자 갱스터-버스 팀 )
Protokol7 (크립토 팬다스라는 학습 플랫폼을 포함한 다양한 ICON 프로젝트의 주요 기여자)
Paul Rouge (블로블 월드 설립자)
다음 기능을 테스트할 수 있는 간단한 테스트 dApp을 만드는 작업을 맡았습니다.
Single-hop
Multi-hop
Rollback
단-방향 메세지, 단-방향 응답
EVM-EVM
EVM-JVM
JVM-EVM
JVM-JVM
포커스 테스터는 버그 또는 기타 문제를 찾는 가장 효과적인 방법인 다양한 트랜잭션 유형을 제출하여 dApp을 테스트하도록 요청받았습니다. 샘플 트랜잭션 유형은 다음과 같습니다.
단순한 ‘hello world’, 단방향 트랜잭션
전체 데이터가 여러 메세지를 통해 도착할 때 수신 측에서 컴파일되어야 하는 부분적으로 완료된 데이터가 포함된 트랜잭션
예 (1) "hello w", (2) "orld"
메세지 배치가 있는 트랜잭션
예 (1) ["hello world 1", "hello world 2", "hello world 3"]
마지막으로, 테스터들은 트랜잭션의 속도, 비용, 정확성을 확인하도록 요청 받았습니다.
각 참여 팀은 xCall에 연결된 체인(ICON, Ethereum, BSC 및 Havah) 간에 트랜잭션을 실행하는 테스트용 dApp을 만들었습니다.
xCall 포커스 테스트: 주요 결과
2주간의 테스트 기간이 끝날 무렵 팀은 다음을 공동으로 생산했습니다.
- 수백 건 이상의 테스트 트랜잭션
- 10개의 코드 레포지토리
- 팀 보고서 4개 + 향후 1개
- 12개의 깃허브 이슈, 모두 적극적으로 조사 중
- 5개 깃허브 토론
다음은 각 팀의 결과들과 보고된 문제, BTP를 통한 xCall을 사용한 비용 및 시간 추정 요약 링크입니다.
팀당 코드 출력
Staky
Hugobyte
https://github.com/HugoByte/btp-dapp-sample
Venture23
https://github.com/naneey/Xcall-Dapp-sample-testing
Protokol7
https://github.com/R0bi7/xCall-testing-dApp (메시지 테스트를 위한 Typescript dApp)
https://github.com/R0bi7/xCall-testing-EVM (Solidity 스마트 계약)
https://github.com/R0bi7/xCall-testing-JVM (JAVA 스마트 계약)
Paul Rouge
https://github.com/paulrouge/xcall-testing-evm (evm )
https://github.com/paulrouge/icon-scripts (스크립트)
문제 및 토론
https://github.com/icon-project/btp2/issues
https://github.com/icon-project/btp2/discussions
BTP를 통해 xCall을 사용한 메시지 전송 비용 초기 추정치
코어 개발 팀의 테스트 결과 다음과 같은 xCall 거래 수수료가 산출되었습니다.
연결 | 수수료 USD 기준 | 수수료 ETH 기준 (wei) |
---|---|---|
ETH2 -> ICON | 0.056664 | 30140466117021 |
ICON -> ETH2 | 1.329043 | 706937800000000 |
BSC -> ICON | 0.010569 | 5621579869681 |
ICON -> BSC | 2.276340 | 1210818997872340 |
HAVAH -> ICON | 0.005054 | 2688242686170 |
ICON -> HAVAH | 0.005054 | 2688242686170 |
xCall 트랜잭션에 대상(받는) 체인에 오류가 발생할 경우 발생하는 '롤백 메시지'가 포함되어 있으면, 소스(보내는) 체인의 2차 트랜잭션으로 인해 수수료가 증가할 것으로 예상됩니다.
BTP를 통해 xCall을 사용한 메시지 전송 시간 초기 추정치
BTP를 사용하는 xCall의 예상 시간은 체인이 트랜잭션을 완료하는 데 걸리는 시간(Finality)에 따라 달라집니다.
연결 | Tx 시간 |
---|---|
ICON -> ETH2 | ~ 15분 |
ETH2 -> ICON | ~ 14분 |
ICON -> BSC | ~ 2분 |
BSC -> ICON | ~ 2초 |
ETH2 -> BSC | ~ 15분 |
BSC -> ETH2 | ~ 45분 |
ICON -> HAVAH | ~ 2초 |
HAVAH -> ICON | ~ 2초 |
포커스 테스터는 버그 또는 기타 문제를 찾는 가장 효과적인 방법인 다양한 트랜잭션 유형을 제출하여 dApp을 테스트하도록 요청받았습니다.
참여한 팀들의 xCall에 대한 의견
Staky
"이 프로그램 덕분에 ICON 팀에 적절한 피드백을 제공하여, 모든 사람들의 전반적인 경험을 개선할 수 있었습니다." - ICON 의 Staky
긍정적인 부분
- 문서를 통해 xCall 사용 방법을 알아볼 수 있습니다. 모든 단계 설명이 문서에 있었습니다.
- 팀은 데모 앱을 만들었고, 이것은 팀의 dApp의 기반으로 구성할 수 있었습니다.
개선의 여지
- 일부 설명서 단계는 주의 깊게 읽어야 합니다. 문서는 좀 더 명확해져야 합니다
- 데모 dApp은 설정하기가 약간 복잡할 수 있습니다. 이것도 좀 더 간단하게 만들어야 합니다
Hugobyte
"xCall과 그것을 통해 미래에 미치는 영향을 볼 수 있게 되어 기쁩니다!" - ICON 의 HugoByte
긍정적인 부분
- xCall 테스트의 도전적이고, 흥미로운 경험을 즐겼습니다.
- 핵심 개발 팀은 대응력이 뛰어나고, 팀이 제기한 많은 문제에 신속하게 해결했습니다.
개선의 여지
- 테스트를 위한 로컬 환경 설정에 대한 더 많은 문서가 필요할 수 있습니다.
Venture23
- "다른 세계로 연결되는 포털을 만든 것 같은 느낌이었습니다." - ICON 의 Venture23
긍정적인 부분
- 로컬 환경에 dapp을 구축하는 것이 간단했습니다.
개선의 여지
- 트랜잭션이 실패한 시점을 인식하기가 혼란스럽습니다.
- 테스트 예제는 더 나은 문서화를 통해 제공하는 것이 필요합니다.
- 이더리움 체인의 긴 트랜잭션 완료 (Finality/최종성) 시간은 해당 체인과 관련된 메시지가 전달되는 데 긴 시간이 걸린다는 것을 의미합니다.
Protokol7
"핵심(Core) 팀은 문서와 기본 데모 앱을 준비하는 데 큰 공을 들였고, 처음부터 필요한 정보를 제공하는 놀라운 작업을 수행했습니다." - ICON 의 Protokol7
긍정적인 부분
- xCall 실험을 시작하는 데 필요한 많은 문서가 준비되어 있었습니다.
- 테스트 과정에서 핵심 팀의 대응력은 신속하고 뛰어났습니다.
개선의 여지
- xCall 생태계를 활성화하려면 이 분야에서 더 많은 문서, 데모 및 숙련된 개발자를 보유하는 것이 중요하다고 생각합니다.
Paul Rouge
"이제 xCall의 복잡한 측면을 테스트하고 탐구해 보겠습니다." - ICON 의 Paul Rouge
긍정적인 부분
- dApp을 구축할 준비가 된, 거의 완성된 제품인 xCall을 보고 기뻤습니다.
- 롤백 기능의 보안 이점은 매우 흥미로웠습니다.
개선의 여지
- 특히 트랜잭션 실패 시 트랜잭션 상태 파악이 어려움
- BSC용 테스트넷 토큰에 보다 쉽게 접근해야합니다.
시사하는 바과 다음 단계
각 팀에서 제공한 자세한 피드백을 바탕으로 더 많은 고객을 대상으로 인센티브 테스트넷을 시작하기 전에, 평가 기간 동안 구현할 우선 순위 목록은 다음과 같습니다.
- 모든 설정 정보를 한 곳에서 사용할 수 있도록 예제 리포지토리 설정 문서의 README를 개선.
- xCall 트랜잭션의 상태를 생성하고, 확인하는 방법에 대한 자습서와 개선된 문서를 포함하여 연결된 체인의 이벤트 로깅과 관련된 리소스의 가용성을 향상.
- 연결된 네트워크의 소요 시간과 수수료에 대한 정보를 포함하여, xCall과 xCall + BTP를 통한 트랜잭션 경로를 설명하는 더 나은 리소스를 제공.
- 릴레이어(Relayer) 상태를 사용가능한지 있는지 확인.
- 릴레이어용 도커 이미지 만들기.
- 개발자를 위한 테스트 BNB 및 테스트 ETH의 가용성 극대화.
공개 xCall 인센티브 테스트넷: 곧 출시!
공개 xCall 인센티브 테스트넷 프로그램에 대한 가이드 라인(지침)과 과제를 자세히 설명하는 참조(Notion) 페이지가 곧 공개될 예정입니다. 공개 인센티브 테스트넷 프로그램은 7월 31일에 출시될 예정입니다.
사용 가능한 xCall 리소스
xCall을 실험하고, 자신의 크로스-체인 dApp을 만들고 싶은 사람들을 위해 다음과 같은 유용한 가이드 모음집이 있습니다.
- xCall 문서: https://docs.icon.community/cross-chain-communication/xcall
- xCall이란 무엇입니까(상위 수준): https://icon.community/xcall
- 어썸 아이콘: https://github.com/icon-community/awesome-icon#interoperability
- xCall dApp 예시: https://github.com/icon-project/btp2/tree/main/e2edemo
- xCall dApp의 다른 예: https://github.com/R0bi7/xCall-testing-dApp , https://github.com/R0bi7/xCall-testing-JVM , https://github.com/R0bi7/xCall-testing -EVM
- xCall 컨트랙트 파인더: https://github.com/FidelVe/btp-contracts-finder
- xCall 수수료 시스템: https://github.com/iconloop/btp2-testnet/wiki/Fee-System
- BTP 릴레이 상태: https://github.com/iconloop/btp2-testnet/wiki/BTP2-WIKI
- BTP/xCall 견고성 패키지: https://www.npmjs.com/package/@iconfoundation/btp2-solidity-library
- BTP ICON 개선 제안: https://github.com/icon-project/IIPs/blob/master/IIPS/iip-25.md
- xCall ICON 개선 제안: https://github.com/icon-project/IIPs/blob/master/IIPS/iip-52.md
xCall은 진화하고 있는 제품이라는 점을 명심하십시오. 테스트 중에 문제가 발생하면 ICON 디스코드의 ICON 개발자 커뮤니티에 참여하여 문제 해결 지원을 요청할 수 있습니다. 행복한 테스트되세요!
출처: https://icon.community/blog/2023/xcall-focus-testing-recap/
- [2024/12/19] 밸런스드 인텐트 기능을 활용한 통한 체인 간 거래 (크로스체인 / DeFi / 네이티브 / 솔버 / ICON / ICX 코)
- [2024/12/13] 옵티미즘 x 밸런스드, ICON을 통한 크로스체인 연결 (Optimism / OP 코인 / DeFi / 디파이 / BALN / ICX)
- [2024/12/13] 옵티미즘 x 밸런스드, ICON을 통한 크로스체인 연결 (Optimism / OP 코인 / DeFi / 디파이 / BALN / ICX)
- [2024/12/12] [베타 버전 테스트] 밸런스드, SUI - ETH 인텐트 기능 적용! 지금 사용해보세요! (수이 / 이더리움 / 아비트럼 / 출시)
- [2024/12/10] ICX는 어떤것들을 제공하나요? (Powered by ICX / 아이콘 / ICON 네트워크 / 암호화폐 / 코인 / 2024년 / 인텐트 / 솔버)
- [2024/12/12] 아이콘 개발 업데이트 - 11월 (2024.12.11 / ICON / ICX 코인 / 로드맵)
- [2024/12/12] [제안] 밸런스드, 솔버 기능을 위한 대출 및 제한 설정 (BIP-103 / DeFi)