블록체인 공부를 하던 중 "아발란체" 라는 토픽을 알게 되었다.
아발란체라는 이름을 들어본 적은 있었으나, 정확히 이게 무엇을 의미하는지 몰랐다.
회사 이름인 건지, 코인 이름인 건지, 블록체인인지, 알고리즘인지
이 기회에 한번 공부를 해봤다.
# 아발란체
나무위키에 아발란체를 검색해봤다. [출처]
"아발란체"는 오픈소스 퍼블릭 블록체인의 이름이자, 그 블록체인에서 쓰이는 암호화폐 이름이다.
(비트코인과 같은 블록체인 자체이자 암호화폐를 나타내는 이름이었다.)
그 어원은 암호학 해시 함수 개념인 "아발란체 효과"에서 따왔다고 한다. 해시 함수에서 극히 일부 값만 변경해도 그로 인해 연결되는 모든 데이터들에 다 영향을 간다는 뜻으로, 암호학의 해시 함수가 가지는 보안적 효과를 뜻하는 말이었다.
주요 장점, 주안점으로는 흔히 블록체인 생태계에서 제시되는 근본적인 문제인 Blockchain Trilemma (탈중앙화, 보안성, 확장성은 한꺼번에 만족될 수 없다는 문제)를 아발란체만의 알고리즘으로 해결하였고, 이더리움의 높은 가스비 문제를 해결한 것이라고 한다. 이로 인해 이더리움 dApps 개발자들이 쉽게 아발란체로 넘어올 수 있게 하였다.
# 아발란체의 구성
아발란체는 Exchange(X) 체인, Platform(P) 체인, Contract(C) 체인으로 이루어져 있다.
X 체인에서는 아발란체 합의 프로토콜을 사용하여 합의를 이루고 AVAX(아발란체 코인)의 거래가 이루어진다. 반면, P, C 체인에서는 스노우맨 합의 프로토콜을 이용하는데, 이는 스마트 컨트랙트를 실행하는 것에 초점을 둔 체인이다.
P 체인에서는 Subnet 이라는 별도 네트워크를 두고 각 네트워크 별로 고유 합의 알고리즘을 가질 수 있게 하되 동시에 각 Subnet 간 상호 소통을 가능하게 한다.
C 체인에서는 dApp 들이 개발될 수 있는 스마트 컨트랙트 전용 체인 환경으로써, Solidity 를 이용하기 때문에 이더리움과 호환할 수 있는 체인이다.
대표적인 레이어1 체인들인 비트코인, 이더리움, 폴카닷과의 비교를 보면, 압도적으로 높은 TPS 와 낮은 확정지연시간(Finality)을 가지고 있는 장점이 있다. 그리고 기본적으로 Sybil 공격을 막기 위해 PoS 알고리즘을 채택하고 있는 것으로 보인다.
# 아발란체 합의 프로토콜
다음으로 아발란체 합의 프로토콜에 대한 궁금증이 생겨, 그 합의 알고리즘에 대해서 확인했다.
아발란체에서 목표로 하는 지표는 다음과 같다. 이외에 견고성, 비고립성, quiescent, green, 지속가능성 등이 있겠다.
- 빠른 확정(Finality), 낮은 지연율 (2초 이하)
- 높은 Throughput (10,000 TPS 이상)
- 높은 확장성 (최대 천 만 노드)
기본적으로 epidemic protocol 과 gossip network 로부터 인상을 얻었다고 한다.
(유행병/소문과 같이 하나의 노드로부터 여러 노드로 자연스럽게 퍼져 나가는 네트워크/프로토콜 방식을 이용한 것으로 보인다.)
예시에서는 전파 패턴에서 선택한 다른 노드 5개와의 통신을 통해 자신이 선택/판단하게 될 내용의 데이터를 결정해보고, 몇 번의 라운드(반복소통)를 거침에 따라 그 경향이 생겨나면서 그 경향을 따름에 따라 하나로의 선택을 확정 지을 수 있게 된다는 것이다.
예를 들어, 어떤 선택지가 나에게 주어졌을 때 주변 경향을 빠르게 인지하고(직접 검색하여 사실을 확인하기 전에 옆 친구가 나에게 이야기하는 것을 한번 믿어보는 것과 같이), 내가 어떤 선택을 무작위로 해나가며 검증할 때 더욱 빠른 합의에 도달할 수 있다는 메커니즘인 것 같다.
이렇게 무작위 선택과 그 검증의 반복을 빠른 시간 내 가까운 노드들과 성립함으로써 전체 네트워크가 경향을 순식간에 가질 수 있게 하므로, 기존 수 번의 라운드를 통해 확정적으로 의사결정을 하던 BFT 알고리즘이나 비트코인의 PoW(Proof-of-Work)와 달리 더 높은 TPS 를 달성할 수 있다고 한다.
(아마 수학적/확률적으로 네트워크 참여자 수에 따른 경향 통일까지 걸리는 라운드/시간 등에 대한 계산이 있을 것 같은데, 그것에 의해 계산된 것이 기존 알고리즘들보다 빠르고 확정적이니까 제안이 되었겠지 싶다.)
# 기타 아발란체와 관련된 소스들
이 영상을 보고 나니 아발란체 생태계를 소개하는 한국 사이트가 있어서 이것 또한 볼 수 있겠다. [출처]
그리고 찾다보니 아발란체 네트워크에 대한 여러 가지 설명을 해주는 Support (FAQ)가 있었다.
https://support.avax.network/en/
위에서 아발란체 블록체인에 대한 몇가지 궁금증들을 해결할 수 있었다.
아발란체 개발사인 Ava Labs 는 2023년 5월 기업을 대상으로한 블록체인 네트워크 구축 클라우드인 Ava Cloud 를 출범했다.
아바 클라우드를 이용하면 dApps 를 쉽게 올릴 수 있는 아발란체 서브넷을 빠르게 가질 수 있는 것으로 보인다.
'개발자 💻 > Blockchain' 카테고리의 다른 글
[Ethereum] Remix IDE 에서 로컬 파일 이용하기 (0) | 2025.01.20 |
---|---|
[MetaMask/Avalanche] 사용자 지정 네트워크 RPC 추가하고 Faucet 이용해보기 (1) | 2025.01.18 |
[아발란체] Ava Cloud ? (0) | 2025.01.12 |
[Ethereum] Remix를 이용하여 스마트 컨트랙트 배포하기 (0) | 2023.07.17 |
[Ethereum] 가스(Gas)란 무엇인가? (0) | 2023.07.13 |