
Messari 리서치 보고서: Aptos의 기술 개선, 생태계 발전 및 네트워크 활동을 종합적으로 이해하기
작성자:Peter Horton, Messari
번역: Aptos Global
TL;DR
1) Aptos는 확장성, 보안성, 신뢰성 및 업그레이드 가능성을 핵심 원칙으로 설계된 레이어 1 블록체인이다. Meta의 Diem과 Novi 프로젝트에서 유래되었으며 2022년 10월 출시되었다.
2) Aptos의 기술 스택은 AptosBFTv4 합의 메커니즘, Quorum Store 메모리풀 프로토콜, Block-STM 병렬 실행 엔진 및 프로그래밍 언어 Aptos Move 등 여러 가지 혁신적인 요소를 포함한다.
3) 2023년 7월 이후 Aptos는 일평균 거래량 475,000건 이상, 일일 활성 주소 72,000개 이상을 기록하고 있으며, 소셜미디어 플랫폼 Chingari, 오라클 Pyth, 그리고 Graffio 상의 하루 공공 예술 창작 행사가 체인상 거래 활동을 촉진했다.
4) Aptos Labs와 Aptos 재단은 마이크로소프트, 알리클라우드, NPIXEL, 롯데 그룹, Coinbase Pay 등 다수의 유명 기업 및 기업 그룹과 파트너십을 맺었으며, 많은 성장 계획이 아시아 태평양 지역에 집중되어 있다.
모듈화와 통합의 논쟁은 널리 토의되어 왔으며, 결국 양측 모두 비슷한 방향으로 나아가고 있다. 모듈형 체인은 검증 가능성과 탈중앙화를 최적화하는 반면, 통합형 체인은 낮은 지연 시간과 높은 처리량을 최적화한다.
Aptos는 통합 진영의 주요 참여자 중 하나이며, 개발팀인 Aptos Labs는 총 약 4억 달러의 자금을 조달했다. 2022년 10월 출시 이후 빠른 속도로 네트워크 업그레이드를 진행하여 40개 이상의 AIP와 8개의 주요 버전을 발표했다. Aptos의 생태계는 비교적 젊지만 이미 체인상 오더북, 퍼피 DEX, 소셜 미디어 플랫폼 등의 프로젝트를 보유하고 있다. 최근 유사 메인넷 테스트 환경에서 Aptos는 초당 3만 TPS의 피크 성능과 하루 20억 건 이상의 거래량을 달성했다. 지속적인 기술 업그레이드를 통해 개발자와 사용자를 유치한다면 Aptos는 이미 출발선에 선 셈이다.
배경
Aptos는 Meta의 Diem과 Novi 프로젝트에서 시작되었다. 2019년 Meta(당시 페이스북)는 블록체인 기반 결제 네트워크 출시를 공식 발표했으며, 이 프로젝트는 허가형 Diem 블록체인(초기 명칭 Libra)과 Novi 지갑(초기 명칭 Calibra)로 구성되었다. 독립 컨소시엄인 Diem Association과 페이스북 자회사 Novi Financial이 주도했으나 규제 저항으로 인해 Diem과 Novi는 출시되지 못했다. 2022년 1월 Diem은 폐쇄되고 Silvergate Capital에 자산이 매각되었으며, 2022년 9월 Meta는 Novi 종료를 발표했다.
Aptos Labs는 2021년 12월에 설립되었으며 2022년 2월 정식 출범했다. Mo Shaikh(Novi 전략 파트너십 책임자)와 Avery Ching(Novi 소프트웨어 엔지니어)이 공동 설립했으며, Mo Shaikh는 Consensys에서 전략을 주도했고 블록체인 기반 부동산 플랫폼 Meridio를 창업한 바 있다. Avery Ching은 슈퍼컴퓨팅 배경을 갖추었다. 나머지 창립 팀은 박사, 연구원, 엔지니어, 디자이너, 전략가들로 구성되어 있으며, 다수는 과거 Diem 또는 Novi에서 근무한 경험이 있다.
2022년 3월, Aptos Labs는 2억 달러의 자금 조달을 발표하고 퍼블릭 개발 네트워크와 오픈소스 코드베이스를 출시했다. 이번 펀딩에는 a16z가 리드했으며 Multicoin Capital, ParaFi Capital, Coinbase Ventures 등 다수의 투자사가 참여했다. 2022년 7월에는 추가로 1.5억 달러를 조달하며 20억 달러의 밸류에이션을 기록했는데, FTX Ventures와 Jump Crypto가 리드했다. FTX Ventures는 초기 라운드에도 참여했으며, 현재 해당 투자는 FTX 파산 절차 하에 관리되고 있다. 바이낸스 인큐베이터와 드래곤플라이 캐피탈의 추가 전략적 투자를 통해 총 자금 조달액은 약 4억 달러에 달한다.
Aptos Labs는 2022년 8월 Aptos 백서를 발표한 후 2022년 10월 메인넷을 출시했다. 출시 이후 Aptos 네트워크는 여러 차례 업그레이드를 완료했으며, 현재 버전은 V1.8.0이다. Aptos 재단은 Aptos 생태계 발전을 주도하고 있다.
기술
Aptos 기술 스택은 확장성, 보안성, 신뢰성, 업그레이드 가능성을 중심으로 설계되었으며, 스택의 다양한 부분에 혁신적인 메커니즘을 도입했다.
합의
Aptos는 AptosBFTv4 합의 프로토콜을 사용하는 위임지분증명(DPoS) 레이어 1 블록체인이다.
Aptos BFT
AptosBFT(초기 명칭 DiemBFT)는 Diem 시기에 네 차례 반복되며 발전한 후 Aptos 블록체인에 채택되었다. 최초의 AptosBFT는 HotStuff 기반으로, HotStuff 자체는 전통적인 실용 BFT(pBFT) 프로토콜에 기반한다. 현재의 AptosBFTv4 구현은 Jolteon 기반으로, pBFT 스타일의 2차 뷰 변경을 통해 HotStuff 대비 지연 시간을 50% 감소시켰다.
또한 잘못된 리더로 인한 지연을 줄이기 위해 AptosBFT는 지분뿐 아니라 성능("평판"으로 통칭)도 고려해 리더를 선정한다. 검증자의 성능은 리더로서 제안을 얼마나 자주 제출했는지, 비리더로서 제안에 투표한 횟수로 측정된다.
2023년 7월 18일 완료된 Aptos V1.5 업그레이드에서 Quorum Store가 도입되면서 Aptos의 처리량이 더욱 증가했다. Quorum Store는 메모리풀 프로토콜 Narwhal의 구현체이며, 데이터 전파와 합의를 분리함으로써 합의를 개선했다. 데이터 전파와 합의를 분리하는 것은 Aptos Labs와 Mysten Labs 연구원들이 공동 집필한 Narwhal과 Tusk 논문의 핵심 발견이다.
Quorum Store 도입 이전의 거래 처리는 메모리풀과 합의 단계로 이루어졌다:
1) 메모리풀 단계: 모든 거래가 모든 검증자에게 방송된다.
2) 합의 단계: 리더가 생성한 블록 내 모든 거래를 모든 검증자에게 방송하고, 비리더들은 서명된 블록 메타데이터로 투표한다.
이는 두 가지 병목 현상을 초래했다:
1) 중복된 거래 전파: 모든 거래가 메모리풀과 합의 단계에서 두 번씩 모든 검증 노드에 전파된다.
2) 작업 분배 불균형: 합의 단계에서 리더가 비리더보다 더 많은 작업을 수행한다. 리더는 원본 거래와 비교해 크기가 작은 서명된 블록 메타데이터를 함께 보내야 하므로 전체 대역폭이 리더의 대역폭에 의해 제한되고, 비리더의 대역폭은 충분히 활용되지 않는다.
Quorum Store는 메모리풀과 합의 프로토콜 사이에 중간 단계를 추가한다. 현재 전체 프로세스는 다음과 같다:
메모리풀 단계: 거래는 검증기로 방송되지 않고 Quorum Store로 전송된다.
Quorum Store 단계: Quorum Store 프로토콜은 메모리풀로부터 거래를 수신하고 가스 수수료 기준으로 배치 정렬을 수행한 후 이 배치들을 검증자들에게 방송한다. 검증자는 배치를 수신한 후 서명하여 다른 검증자들에게 전송하며, 배치가 ⅔ 이상의 검증자로부터 서명을 받으면 Quorum Store는 가용성 증명(PoAv)을 생성하여 배치의 유일성과 가용성을 보장한다.
합의 단계: 합의 프로토콜은 동일하나, 리더는 메모리풀의 원본 거래 대신 Quorum Store로부터 인증된 배치를 사용해 블록을 생성한다.
이를 통해 위 두 가지 병목 현상이 해결된다:
중복된 거래 전파: 원본 거래는 한 번만 전파되며(메모리풀 → Quorum Store), 이후는 배치 단위로 전파되어 메시지 내 데이터량이 감소한다.
작업 분배 불균형: 합의 단계에서 리더는 배치 메타데이터와 PoAv만 전송하면 되므로 이전보다 훨씬 적은 작업량이 요구되며, 비리더들과의 작업량 격차가 줄어든다. 또한 모든 검증 노드는 Quorum Store 단계에서 동등하게 작업한다.
테스트 결과 Quorum Store는 합의 테스트에서 TPS 제한을 12배, 엔드투엔드 테스트에서 3배까지 향상시켰다. 그러나 AptosBFT처럼 리더 기반의 프로토콜은 Quorum Store의 모든 장점을 실현할 수 없으므로, Aptos Labs는 DAG 기반 합의 프로토콜로의 업그레이드를 탐색 중이며 자세한 내용은 로드맵 항목에서 확인할 수 있다.
DPoS
검증자는 인플레이션 기반 스테이킹 보상을 받으며, 현재 모든 거래 수수료는 소각된다. 스테이킹 보상은 검증자의 평판(지분과 성과)에 따라 가중되며, 2시간마다 보상이 분배되고 자동 복리된다. 스테이킹된 토큰은 글로벌 30일 주기로 잠금된다.
각 검증자는 수수료율을 설정하며, 나머지 비율의 토큰을 위탁자들에게 전달한다. 위탁 스테이킹은 2023년 4월 20일 메인넷에 도입되었으며, 위탁 참여를 위해서는 최소 11개의 APT가 필요하다. 검증자로 직접 참여하기 위한 최소 스테이킹 금액은 100만 APT(2023년 12월 26일 기준 약 1,050만 달러)이므로, 이를 통해 더 많은 커뮤니티 구성원이 스테이킹에 참여할 수 있게 되었다.
검증자의 APT 최대 스테이킹 한도는 5,000만 개로, 전체 공급량의 약 5% 수준이다. 매우 엄격한 상한은 아니지만, 검증자 운영자가 충분한 지분을 확보하면 여러 검증자 노드를 운영할 유인이 생긴다. 참고로 잠금된 토큰은 스테이킹이 가능하며(글로벌 30일 해제 기간 이후) 유동성 보상을 받을 수 있다.
현재 오프라인 상태나 악의적 행위에 대한 처벌 메커니즘은 없으나, 향후 거버넌스를 통해 추가될 수 있다.
실행
검증자가 블록 순서에 대해 합의하면, 해당 블록 내 거래를 실행하고 결과를 저장소에 기록해야 한다. 많은 블록체인은 거래를 순차적으로 정렬하고 실행하는 직렬 거래 엔진을 사용한다. 실행 속도를 높이기 위해 Aptos는 병렬 실행 엔진을 사용한다. 또한 Solana, Sui 등 다른 병렬 처리 네트워크와 달리 사용자가 사전에 의존 관계를 선언할 필요가 없다는 점에서 차별화된다.
이를 위해 Aptos는 소프트웨어 트랜잭션 메모리(STM)와 낙관적 동시 제어(OCC) 원리를 기반으로 하는 Block-STM을 사용한다. OCC 기반 STM 라이브러리는 일반적으로 거래를 낙관적으로 실행(의존성이 없다고 가정), 실행 후 검증, 의존성이 발생하면 중단하고 재실행하는 프레임워크를 따른다. 그러나 의존성 관리와 연쇄 중단으로 인해 성능이 제한되기 때문에 이런 방법은 실제로 거의 사용되지 않는다.
OCC STM 시스템의 이러한 한계를 극복하고 배포에 적합하게 만들기 위해 Block-STM은 사전 정렬된 거래 순서를 이용해 의존성을 추정함으로써 중단 횟수를 줄인다. Bohm(2014) 논문의 주요 발견 중 하나는 사전 정렬된 거래 순서가 오히려 장점이 될 수 있다는 관찰이다. Block-STM은 Bohm보다 사전 순서를 더 적극적으로 활용하며, 시스템 내 각 중단 시점에서 의존성 추정을 개선함으로써 추가 중단 가능성을 줄인다.
Block-STM은 블록체인의 특성을 활용해 일반적인 STM도 개선했다:
1) VM 보안: 아래에서 설명할 Move VM은 미제출 상태가 다른 진행 중인 거래에 부정적 영향을 미치지 않도록 오류 포착 및 가스 수수료 부과를 보장한다.
2) 블록 단위: 가비지 컬렉션이 간단하다. 블록 간에 수행할 수 있기 때문이다. Block-STM은 초기에 동기화 비용 절감을 위해 블록 커밋만 추적했지만, 이후 Aptos Labs가 알고리즘을 개선하여 성능을 유지하면서도 블록 내 롤링 커밋을 지원하게 되었다.
Block-STM의 각 단계를 이해하기 전에 먼저 언급된 용어인 '의존성'을 정의하는 것이 도움이 된다. 블록체인 거래는 공유 메모리의 읽기 및 쓰기를 포함하는 스마트계약 코드로 구성된다. 실행 시 각 거래는 이러한 읽기 및 쓰기 위치 목록(읽기 세트 및 쓰기 세트)을 가진다. Mo의 거래가 Avery의 거래가 처음에 쓴 위치에서 읽는다면, Mo의 거래는 Avery의 거래에 의존한다. 의존 관계가 있는 거래는 순서대로 실행되어야 하며, 이 경우 Avery가 먼저 실행되고 Mo가 그 다음이다.
이렇게 하여 Block-STM의 단계별 프로세스를 다섯 가지 주요 단계로 살펴볼 수 있다:
1. 거래 사전 정렬
이전 합의 단계에서 순서가 정렬된 거래를 포함하는 블록이 존재한다. 위에서 언급했듯이, 이러한 사전 정렬은 Block-STM의 핵심 강점이며, 병렬 실행 결과는 직렬 실행 결과와 동일한 읽기 및 쓰기 세트를 산출해야 한다.
2. 낙관적 실행
Block-STM은 거래를 낙관적으로 병렬 실행한다. 즉, 의존성이 없다고 가정하고 거래를 실행한다.
3. 검증
실행된 거래는 이후 검증되며, 이는 의존성을 확인하는 것이다. 이는 거래의 읽기 세트를 다시 읽어 최신 실행된 읽기 세트와 비교함으로써 이루어진다. 두 읽기 세트가 같지 않으면 거래는 중단된다.
Block-STM의 핵심 부분은 실행 및 검증 작업을 효율적인 방식으로 연속적으로 스케줄링하는 것이다. 특히:
사전 정렬 순서에 따라 앞선 작업을 우선 처리한다.
조기 누락된 의존성을 감지하기 위해 검증 배치를 보내 연쇄 중단을 방지한다.
검증은 실행보다 훨씬 저렴하므로 연속 검증(읽기 세트 재읽기)이 주요 병목이 아니다.
4. 중단 및 재실행
거래가 중단되면, ESTIMATE 태그가 해당 거래가 쓴 위치에 적용된다. 이후 거래가 이 위치를 읽으면 ESTIMATE 태그를 본다. ESTIMATE 태그를 읽은 후 거래는 어떤 값이 ESTIMATE 태그를 덮어쓸 때까지 실행을 일시 중지한다. 원래 중단된 거래가 성공적으로 재실행되면 이것이 발생한다. 언제든지 거래가 재실행되면 스케줄러는 사전 정렬 순서에서 더 높은 위치에 있거나 해당 순서에 의존하는 모든 거래가 재검증되도록 보장한다.
이러한 동적 의존성 관리는 Block-STM의 핵심 개념이다. ESTIMATE 태그가 없다면 두 번째 거래는 중단된 거래가 쓴 위치에서 읽기 때문에 실행 후 중단될 수 있다. 따라서 Block-STM은 중단될 가능성이 있는 거래를 실행할 때 발생하는 막대한 낭비 작업을 피한다. 또한 동적 의존성 관리는 사전 의존 시스템에 몇 가지 개선점을 제공한다. 첫째, 사용자가 의존성을 선언할 필요가 없으며, 복잡한 거래의 원자성도 지원된다(복잡한 거래를 분해할 필요 없음). 둘째, 필요할 때만 의존성을 관리하며 모든 거래의 의존성을 저장하지 않는다. 마지막으로 대부분의 의존성은 블록 시작 상태보다 업데이트된 상태에 기반한다.
5. 커밋
Block-STM이 거래 낙관적 실행의 출력이 올바르다는 것을 감지하면, 롤링 커밋 메커니즘을 통해 커밋된다. 롤링 커밋은 각 거래 배치를 검증하고 커밋한 후 다음 배치를 처리하기 위해 경량 동기화를 활용한다.
테스트에서 Block-STM은 32개의 스레드를 사용해 Aptos 벤치마크에서 최대 17만 TPS를 달성했다. 이는 직렬 실행 대비 17배 향상이다.
6. 저장소
블록이 커밋되면 그 데이터는 저장 계층에 영구 저장된다. 커밋은 블록 단위로 이루어지지만, 각 개별 거래는 실행 후 메를켈 트리에 개별적으로 저장된다. 블록체인에서 발생하는 모든 것(거래, 상태 변경 등)은 현재 검증 노드의 서명으로 인증되는 '루트 해시'라는 요약값을 통해 암호학적으로 증명 가능하다. 이 방법은 다른 블록체인과 다르며, 다른 블록체인은 과거 거래를 검증하기 위해 체인을 추적해야 하지만, 이를 통해 더 세밀한 입증 가능한 데이터 접근이 가능하다.
대량의 데이터를 처리하기 위해 Aptos는 두 가지 유형의 메를켈 트리를 사용한다: 디스크에 데이터를 저장하는 Jellyfish 메를켈 트리와 빠른 업데이트를 위한 메모리상 희소 메를켈 트리. 이러한 트리는 데이터를 효과적으로 저장하고 동시 업데이트를 허용하도록 최적화되었다. Aptos Labs는 저장소 분할(sharding) 등 저장소 확장을 위한 여러 추가적인 방법을 탐색 중이며, 이는 로드맵 섹션에서 자세히 설명된다.
7. Move
Move는 Diem과 Novi 팀이 개발한 Rust에서 영감을 받은 바이트코드 언어이다. Move는 Solidity 및 기타 Web3 프로그래밍 언어보다 향상된 유연성과 보안성을 제공한다.
Move는 두 가지 유형의 프로그램으로 구성된다: 트랜잭션 스크립트와 모듈. 트랜잭션 스크립트는 원자적이며 한 번만 사용할 수 있고, 모듈은 글로벌 상태에 게시되어 무기한
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News














