IT/Blockchain2023. 3. 21. 11:17

이 문서는 최근 많은 거래량을 보이고 있는 디파이 거래소인 GMX에 대한 기술 및 토큰 분석을 해보겠습니다. 

 

목차
1. 개요
2. GMX 토큰
3. GLP 토큰
4. 추천 프로그램
5. 기술 개요
  - Vault
  - Router
  - Price Feed
  - Access Control
6. 의견

 

개요

  • Decentralized spot and perpetual exchange
  • 다중 자산 풀
  • 가격 측정 방식: Chainlink 오라클 및 주요 거래소 가격 집계 활용
  • 주요 참여자 역할
    • Token Holders: 토큰노믹스, 리워드 수령
    • LP: 유동성 제공(GLP 토큰)
    • Traders: Trading

 

GMX 토큰

  • 플랫폼의 유틸리티 및 거버넌스 토큰
  • Staking
    • Reward
      • Escrowed GMX
      • Multiplier Points
      • ETH / AVAX Rewards
    • 거래소 수수료 30% 보상: ETH/AVAX로 전환되어 스테이킹된 GMX 토큰으로 분배
    • Floor Price Fund(가격 하한선 펀드)
      • GMX/ETH 유동성 수수료는 GLP로 변환되어 기금에 예치
      • 올림푸스본드로 부터 수신한 자금의 50%는 FPF에 예치, 나머지 50%는 마케팅에 사용
      • GLP 유동성 보장, GMX에 대한 안정적인 ETH 보상 흐름 제공
    • 공급
      • 최대 공급량: 1,325만 GMX 
        • 6 million GMX from the XVIX and Gambit migration.
        • 2 million GMX paired with ETH for liquidity on Uniswap.
        • 2 million GMX reserved for vesting from Escrowed GMX rewards.
        • 2 million GMX tokens to be managed by the floor price fund.
        • 1 million GMX tokens reserved for marketing, partnerships and community developers.
        • 250,000 GMX tokens distributed to contributo
    • 보상
      • Compound
        • Pending Multiplier Points 와 esGMX 보상을 스테이킹
      • Claim
        • esGMX 보상과 ETH/AVAX 보상 지급
    • Escrowed GMX
      • 1년 베스팅
      • 1초 마다 보상
    • Multiplier Points
      • 장기 보유자에게 보상, 인플레이션 없음
      • GMX를 스테이킹 하면, 100% APR로 매초 포인트 수령
        • 예) 1년동안 1000 GMX 스테이킹하면, 1000 MP 수령
    • 보상 요약
      • GMX: 스테이킹시에 ETH / AVAX, esGMX, Multiplier Points 보상
      • esGMX: 스테이킹시에 ETH / AVAX, esGMX, Multiplier Points 보상
      • Multiplier Points: 스테이킹시에 boost ETH / AVAX APRs 보상
      • GLP: 발행하면서 스테이킹시에 ETH / AVAX, esGMX 보상

 

GLP 토큰

  • 유동성 공급자 토큰
    • 인덱스 자산(스왑 및 레버리지 거래에 사용)으로 발행/상환
  • 가격 = (오픈 포지션의 손익을 포함한 인덱스 자산 총 가치) / (GLP 공급량)
  • 보상: Escrowed GMX 보상 + 플랫폼(ETH, AVAX) 수수료 70%
    • 레퍼럴 보상과 Keeper(1%)의 네트워크 비용 차감
  • GLP 보유자는 레버리지 거래에 유동성 제공

 

추천 프로그램

  • Tier
    • Tier 1: 5% discount for traders, 5% rebates to referrer
    • Tier 2: 10% discount for traders, 10% rebates to referrer
    • Tier 3: 10% discount for traders, 15% rebates to referrer paid in ETH / AVAX, 5% rebates to referrer paid in esGMX
  • Anyone can create a Tier 1 code. To upgrade your code to Tier 2 or Tier 3:
    • Tier 2: At least 15 active users using your referral codes per week and a combined weekly volume above $5 million
    • Tier 3: At least 30 active users using your referral codes per week and a combined weekly volume above $25 million

 

GMX 기술 개요

 

1. Vault

Vault 계약은 예금을 저장하고 주요 거래 기능을 처리합니다.

  • 예금: 자금은 GLP 토큰의 발행을 통해 Vault에 예치됩니다. 예를 들어 GLP의 가격이 $1.50인 경우 사용자는 1.50 USDC 토큰을 입금하여 1 GLP를 발행할 수 있습니다.
  • 출금: GLP 토큰 소각을 통해 금고에서 자금을 출금할 수 있습니다. 예를 들어 GLP 가격이 $1.50인 경우 사용자는 1 GLP를 소각하여 1.50 USDC 토큰으로 교환할 수 있습니다.
  • 교환: 금고는 금고에 보관된 토큰의 교환을 허용합니다. 예를 들어 ETH 가격이 $5000인 경우 사용자는 금고의 스왑 기능을 통해 1 ETH를 5000 USDC로 스왑할 수 있습니다.
  • 롱 포지션: 사용자는 볼트를 사용하여 롱 포지션을 열 수 있습니다. 예를 들어 롱을 오픈하기 위해 사용자는 금고에 1 ETH를 예치하고 $25,000의 포지션을 오픈할 수 있습니다. 포지션 오픈 당시의 ETH 가격이 $5000이면 이는 5배의 롱 포지션이 됩니다. ETH 가격이 10% 상승하면 사용자는 $25,000 * 10% = $2500의 이익을 얻게 됩니다. 포지션이 열릴 때 담보의 스냅샷이 찍히므로 이 예에서 담보는 $5000로 기록되며 ETH 가격이 변경되더라도 변경되지 않습니다. 금고에 이익을 지급할 수 있는 충분한 자금이 있는지 확인하기 위해 포지션 크기에 해당하는 ETH 금액이 예약된 것으로 표시됩니다. 이 포지션의 경우 금고에 5 ETH가 예약됩니다.
  • 숏 포지션: 사용자는 볼트를 사용하여 숏 포지션을 열 수 있습니다. 예를 들어 숏 포지션을 열기 위해 사용자는 5000 USDC를 금고에 예치하고 $25,000의 포지션을 열 수 있습니다. 스테이블 코인은 숏의 담보로 필요하며 롱과 마찬가지로 포지션 크기에 해당하는 스테이블 코인의 양은 이익을 지불하기 위해 예약됩니다.
  • 청산: 포지션 손실로 인해 '포지션 크기/잔여 담보'가 최대 허용 레버리지보다 큰 지점까지 담보가 줄어들면 키퍼가 포지션을 청산할 수 있습니다.

 

2. 라우터

Router 계약은 금고 위에 편리한 기능을 제공합니다. 예를 들어 볼트는 토큰을 전송해야 하며 스왑을 실행하기 위해 호출되는 스왑 함수, 라우터는 토큰을 볼트로 전송하고 필요한 경우 기본 토큰의 랩핑/언래핑을 처리합니다.

PositionRouter 계약은 롱/숏 포지션을 늘리거나 줄이는 두 부분으로 구성된 트랜잭션 프로세스를 처리합니다. 프로세스는 선행 실행 문제를 줄이는 데 도움이 됩니다.

  1. 사용자는 PositionRouter에 위치 증가/감소 요청을 보냅니다.
  2. 키퍼가 거래소 집합체에 지수 가격 요청
  3. 키퍼는 현재 인덱스 가격으로 포지션을 실행합니다.
  4. 허용된 슬리피지 내에서 포지션을 실행할 수 없는 경우 요청이 취소되고 자금이 사용자에게 반환됩니다.

요청 트랜잭션과 실행 트랜잭션 사이에 3분이 경과하면 사용자가 스스로 포지션을 실행할 수 있습니다. 위치 키퍼의 기능은 편의성을 제공하는 것이며 이러한 키퍼 없이도 프로토콜이 계속 작동할 수 있습니다.

스왑의 경우 기본 수수료는 0.25%이며 가격 피드는 0.12% 가격 변동 내에서 업데이트되므로 선행 실행 문제를 줄이는 데 도움이 됩니다. KeeperDAO와 통합하는 작업도 진행 중이므로 가격 업데이트가 차익 거래 기회를 생성하는 경우 차익 거래의 이익을 캡처하여 풀로 리디렉션할 수 있습니다. .

 

3. 가격 피드

PriceFeed 계약은 가격 피드 키퍼의 제출을 수락합니다. 이 키퍼는 Binance, Bitfinex 및 Coinbase의 중간 가격을 사용하여 가격을 계산합니다. 키퍼에는 두 가지 유형이 있습니다.

  • Price feed keeper: 스왑을 위해 정기적으로 가격을 제출합니다.
  • 포지션 키퍼: 포지션 실행 시 가격 제출

볼트는 해당 체인링크 가격의 구성된 비율 내에 있는 경우 키퍼의 가격을 사용합니다. 가격이 이 임계값을 초과하면 제한 가격과 체인링크 가격 사이에 스프레드가 생성됩니다. 이 임계값은 참조 거래소의 중간 가격에서 체인링크 가격의 과거 최대 편차를 기반으로 합니다. 예를 들어 최대 편차가 2.5%이고 Chainlink의 토큰 가격이 $100인 경우 키퍼 가격이 $103이면 금고의 가격은 $100에서 $103입니다. 롱포지션 오픈시 높은가격, 클로징시 낮은가격 숏포지션

Keeper와 Watcher는 현재 별도의 팀원이 운영하고 있으며 Watcher의 신뢰성이 더 확실해짐에 따라 모든 사용자가 Watcher를 실행하여 알림을 받을 수 있습니다. 여러 관찰자 계정은 현재 스프레드를 활성화하기 위해 거래를 보낼 수 있도록 설정되어 있습니다. . 계정이 최소 금액의 GMX 토큰을 걸거나 잠그도록 요구함으로써 스프레드를 시행하기 위해 더 많은 사용자가 트랜잭션을 보낼 수 있도록 하는 것도 가능합니다.

가격 피드 및 포지션 키퍼는 체인링크 키퍼 또는 [Intel SGX](https:/ /medium.com/avalancheavax/new-avalanche-bridge-builds-on-intel-sgx-technology-in-breakthrough-for-cross-chain-8f854e0e72e0) Avalanche에서 사용.

2022년 8월 28일부터 추가 계약 수준 확인이 추가되었습니다. 각각의 빠른 가격 업데이트에서 계약 변수는 업데이트 가격의 백분율 변경과 마지막 업데이트 이후 체인링크 가격의 백분율 변경을 저장합니다. 구성된 임계값으로 Chainlink 가격을 설정하면 빠른 가격과 Chainlink 가격 사이의 스프레드가 자동으로 활성화됩니다. 이에 대한 구성은 Vault.priceFeed.secondaryPriceFeed.maxCumulativeDeltaDiffs에 있습니다.

가격 피드 계약은 보안을 개선하기 위해 업데이트될 수 있으므로 계약 주소를 찾는 가장 신뢰할 수 있는 방법은 'Vault.priceFeed' 값을 확인하는 것입니다.

 

4. 액세스 제어

팀에서 제어하는 컨트롤러 계정으로 조정할 수 있는 매개변수:

  • 최대 5%까지 스왑 및 마진 거래 수수료 설정
  • GLP 풀에 대한 토큰 가중치 설정, 토큰 가중치는 스왑의 동적 수수료에 영향을 미치며, 이러한 수수료는 지정된 토큰 가중치에 대한 균형을 증가시키는 스왑이 낮아지는 반면 토큰 가중치를 원하는 금액은 더 높은 수수료가 부과되며 계산 세부 정보는 Vault.vaultUtils.getSwapFeeBasisPoints에서 확인할 수 있습니다.
  • 긴급 사용을 위한 스왑 또는 레버리지 거래 일시 중지
  • 최대 허용 레버리지 설정
  • 롱포지션과 숏포지션의 최대 총 수용량 설정

팀에서 제어하는 Timelock에서 조정할 수 있는 매개변수:

  • 신규 토큰 상장
  • Vault.priceFeed 업데이트
  • 'Vault.vaultUtils' 업데이트, VaultUtils 계약은 포지션 개시 및 마감을 검증하고 수수료 계산 방법도 지정합니다.
  • gov 값 업데이트

Timelock은 작업의 전체 세부 정보가 온체인에서 신호를 받는 시점과 작업이 실행되는 시점 사이에 24시간의 간격을 요구함으로써 작동합니다. 예제 흐름은 다음과 같습니다.

  • Timelock.signalSetPriceFeed가 호출되어 Vault 주소와 새 가격 피드의 주소를 지정합니다.
  • 최소 24시간이 경과해야 합니다.
  • Timelock.setPriceFeed를 호출할 수 있으며, 이는 Vault.priceFeed 값을 업데이트합니다.

혹시라도 발생할 수 있는 문제에 빠르게 대응할 수 있도록 24시간을 선택했습니다.

Timelock 컨트랙트는 팀 구성원에 의해 모니터링되며 Timelock.SignalPendingAction 이벤트를 구독하여 코딩 없이 누구나 모니터링할 수 있습니다. 이는 OpenZeppelin Sentinel을 사용하여 수행할 수 있습니다. Timelock 계약은 계약의 gov 값을 확인하여 찾을 수 있습니다.

악의적인 트랜잭션이 전송되는 경우 풀의 모든 자금이 손상될 수 있습니다. 이를 완화하기 위해 사용자 자금에 영향을 줄 수 있는 모든 작업은 위에서 언급한 신호, 시간 간격, 실행 프로세스를 거쳐야 합니다. 모니터링 프로세스 또는 Bug Bounty를 통해 악의적인 거래가 감지되면 고문 및 커뮤니티 구성원으로 구성된 다중 서명을 사용하여 Timelock.admin을 재정의할 수 있습니다. 값, 이것은 조치가 실행되는 것을 방지합니다. 이것은 필요하지 않을 때 거래를 일시 중지하는 것과 같은 조치에도 적용되며, 이 경우 관리자를 다중 서명으로 교체하고 거래를 다시 활성화할 수 있습니다.

 

의견

  • 거래소 수수료를 참여자(Staker 30%, LP 70%)들에게 보상하고, 추천 프로그램 등으로 빠르게 이용자를 확보하였습니다.
  • 소스코드가 잘 정리되어 있습니다만 Contract Audit 레포트에 작은 이슈들이 다수 발견 되었습니다.
  • 모든 정책을 GMX.io에서 관리하므로 탈중앙화 및 규제 이슈가 있습니다.

 

참고

  1. 홈페이지: https://gmx.io/
  2. 거래소: https://app.gmx.io/#/trade
  3. 문서: https://gmxio.gitbook.io/gmx/
  4. 기술문서: https://gmx-io.notion.site/gmx-io/GMX-Technical-Overview-47fc5ed832e243afb9e97e8a4a036353
  5. Audit: https://github.com/gmx-io/gmx-contracts/blob/master/audits/Quantstamp_Audit_Report.pdf
  6. 기술 분석: https://liamhieuvu.com/how-gmx-limit-order-and-long-short-work
  7. 토큰 분석: https://rileygmi.substack.com/p/gmx
  8. 토크노믹스 분석: https://twitter.com/eli5_defi/status/1546875347668414471/photo/1

 

기타 문의 사항 등은 덧글 달아주시구요.

도움이 되셨으면 ♥ 눌러주세요.   

반응형
Posted by IT반장
IT/Blockchain2022. 10. 20. 15:45

 

목적

이번 글에서는 NIST(미국립표준기술연구소)에서 공개한 “Understanding Stablecoin Technology and Related Security Considerations” 문서에서 보안 관련 사항을 요약해서 설명하겠습니다.

 

Security Issues

  • Unauthorized or Arbitrary Minting of Stablecoins
    • 인가되지 않는 토큰 발행 취약점
    • 관리자의 임의적인 토큰 발행 취약점
  • Collateral Theft
    • 담보된 자산이 도난될 수 있는 위험 
  • Data Oracles
    • 사전에 오라클 정보를 획득하여 이득을 얻을수 있는 취약점
    • 오라클을 가장하거나 데이터를 변조하는 취약점
  • Exploiting the Underlying Blockchain
    • 블록체인 Layer의 취약점
    • 공격에 취약한 소규모 블록체인 공격 등
  • Malicious Smart Contract Update and Hijack
    • 악성 스마트 컨트랙트 업데이트 또는 하이재킹(위조)
  • Writing Secure Software and Vulnerabilities
    • 스마트 컨트랙트 취약점

 

Stability Issues

  • Dynamic Interest Rates
    • 동적 이자율로 인해 변동성 증가하여 안정성 저하
  • Floating Collateral Requirements
    • 담보 조건이 유동적으로 변하여 안정성 저하
      • 일부 프로토콜은 가격 안정성을 위해 담보 조건이 동적으로 변경됨
  • Oracle Responsiveness to Rapid Price Fluctuation
    • 급격한 가격 변동에 의한 오라클 대응 부족
      • 가격차를 이용해 이득 공격 가능, 예) TITAN 사례
  • Governance Token Devaluation
    • 거버넌스 토큰 가치 하락으로 스테이블 코인 신뢰성 저하
    • 고래(거버넌스 토큰 대량 보유자)가 시스템을 크게 제어할 수 있음
  • Share and Reward Token Devaluation
    • 공유, 보상 토큰 가치 하락으로 안정성 저하, 예) LUNA 사례
  • Native Cryptocurrency Devaluation
    • 네이티브 코인이 평가 절하되면 사용자 이탈
    • 여러 체인에 자산을 페깅하여 시간 지연을 통해 뱅크런에 대응 가능성 높일수 있음
    • 알고리즘 방식은 대규모 인출로 뱅크런 발생 가능 높음
  • Transaction Price Increase
    • TX 비용이 상승하면 안정성 저하
  • Trading Curb/Circuit Breaker
    • 거래 제한 로직으로 안정성 저하

 

Trust Issues

  • Stablecoin Manager Deception(관리자 속임수)
    • Insufficient Reserves: 증거금 부족
    • Reserve Type Mismatch: 증거금 유형 불일치
  • Stablecoin Manager Actions(관리자 행동)
    • Account Denylisting: 블랙리스트 계정 차단
    • Managing Organization Dissolution: 관리 주체가 없어지면 조직 해산 관리 실패
    • Mass User Departure: 대량 사용자 이탈
    • Rug Pulls: 먹튀

 

DEX(LP) Security Issues

 

결론

  • 스테이블 코인은 종류별로 서로 다른 위험을 가지고 있음
  • CeFi는 인적 신뢰성이 중요
  • DeFi는 스마트 컨트랙트 코드 신뢰성이 중요
  • 알고리즘 방식과 부분 담보 스테이블 코인은 안정성 유지 어려움

 

이 외에는 NIST에서 발행한 블록체인 레포트를 참고하시면 도움이 되실 듯 합니다.

 

의견

최근 미 백악관에서 가상자산에 대한 규제 프레임워크를 발표했습니다. 특히, DeFi 및 Stablecoin에 대한 규제를 선행적으로 실시할 가능성이 높습니다. 기본적인 보안 고려 사항에 대해서 대응이 필요하겠습니다.

 

참고

1. NIST Report 8408 “Understanding Stablecoin Technology and Related Security Considerations”

NIST.IR.8408.ipd.pdf
1.78MB

2. NIST Report 8408 (구글 한글 번역)

NIST.IR.8408.ipd (한글번역).pdf
2.37MB

3. 급격한 가격차를 이용한 공격 사례 TITAN: https://ciphertrace.com/analysis-of-the-titan-token-collapse-iron-finance-rugpull-or-defi-bank-run/ 

4. 공유 보상 토큰 공격 사례 LUNA: https://www.bloomberg.com/graphics/2022-crypto-luna-terra-stablecoin-explainer/

5. Flash Loan 공격: https://coinmarketcap.com/alexandria/article/what-are-flash-loan-attacks

6. 샌드위치 공격: https://medium.com/coinmonks/defi-sandwich-attack-explain-776f6f43b2fd

7. NIST Blockchain Report: https://csrc.nist.gov/Topics/technologies/blockchain

8. 미 백악관 가상자산 규제 프레임워크: https://www.tokenpost.kr/article-105644

 

도움이 되셨다면  를 눌러주세요.

반응형
Posted by IT반장
IT/Blockchain2022. 10. 7. 12:31

안녕하세요. IT반장입니다.

오늘 UTC PM 10:12:49 이후로 바이낸스 BSC 체인이 블록생성이 멈추었습니다. 참고[1]

- 멈춘지 4시간이 지났네요. 우리나라 시간으로 10/7 오전 8시 12분 경이네요.  

바이낸스에서 운영하는 BSC Token Hub에 취약점이 발견되어 BSC 체인을 일시적으로 중지한 것입니다.

이 글에서는 해당 해킹 사건에 대해서 분석해 보고자 합니다. 

 


목차

1. 개요
2. 해킹 분석 
3. 패치 및 대응 
4. 고찰 

 


1. 개요

- BSC 공지 내용 원문 (참고[2])

Temporary Pause of BSC

We want to confirm that we coordinated with validators to temporarily suspend BSC after having determined an exploit on a cross-chain bridge, BSC Token Hub- which resulted in extra BNB.

We have asked all validators to temporarily suspend BSC. The issue is contained now. Your funds are safe. We apologize for the inconvenience and will provide further updates accordingly.
The Community has already played a pivotal role in assisting and helping freeze any transfers. All funds are safe.
We want to thank the node service providers for their quick and attentive response.
A huge thank you to the following:
Hash, Neptune, TW Staking, BSCScan, Legend, CertiK, Figment, NodeReal, Namelix, Defibit, Fuji, InfStones, MathWallet, Pexmons, Ankr, BNB48 Club, Avengers, Tranchess, Coinbase Cloud
For their quick and decisive actions - a true community.
Initial estimates for funds taken off BSC are between $100M - $110M. However, thanks to the community and our internal and external security partners, an estimated $7M has already been frozen.
We are humbled by the speed and collaboration from the community to freeze funds.
Thank you to everyone who helped and gave their support.
  • 해당 공지는 바이낸스가 BSC 노드 검증자(Validator)들에게 BSC 토큰 허브에 BNB 토큰이 추가로 발행되는 취약점을 확인하고자 노드를 중지하고자 한다는 내용입니다.
  •  해커가 빼낸 자금은 약 1 ~ 1.1 억 달러 이고, 그 중 7 백만 달러는 동결되었다고 합니다. 
  • 도움을 준 커뮤니티: Hash, Neptune, TW Staking, BSCScan, Legend, CertiK, Figment, NodeReal, Namelix, Defibit, Fuji, InfStones, MathWallet, Pexmons, Ankr, BNB48 Club, Avengers, Tranchess, Coinbase Cloud

- 해커 계좌에는 현재 약 711만 달러의 토큰 잔고가 있다. 

 

2. 해킹 분석

- 트위터 samczsun 이 분석한 자료 (참고[4])

  • vBNB 토큰 컨트랙트로 부터 해커 계좌로 약 60만 vBNB 토큰이 발행(Mint())되어 입금되는 것이 확인됩니다. 참고[5-1]

  • 이는 BSC-Chain의 Genesis에 배포된 "BSC Cross Chain" 컨트랙트의 handlePackage 메소드가 실행되어 100만개 BNB가 "BSC Token Hub" 컨트랙트로부터 전송됩니다. 참고[5-2]
    • 파라미터 중 height 값을 비정상적인 110217401 를 입력한 것이 특징입니다.

- 이는 GENESIS에 PreCompile 되어 배포된 컨트랙트에 포함된 MerkleProof 로직의 취약점을 이용한 것으로 보입니다. (참고[7])

  • 해커는 해당 검증 로직을 우회할 수 있는 데이터를 생성하여 토큰을 발행 받았습니다.

 

3. 패치 및 대응

- 패치 내용 (참고[6])

  • 해당 PreCompiled 컨트랙트를 중지하고 블랙리스트 계좌를 등록하여 수정하였습니다.
  • BSC 체인 노드 버전을 패치하고 노드들을 재실행하였습니다. 오후 2:30 경

 

4. 고찰

- 블록체인 기반 자산 관리는 은행의 장부를 도둑에게 모두 공개하고 서비스를 하는 것과 같다.

- 완벽한 보안은 없기 때문에 항상 대응 방안을 마련해야 한다.

- 중지 후 6시간 만에 빠르게 서비스를 복구했으나 근본적인 해결책은 아니므로 추가 문제가 발생하지 않도록 대응이 필요하다.

- 관련 내용으로 인한 Cosmos 취약점 공지가 추가되었다. 참고[8] 

  • IAVLDisableFastNode 기본 설정을 true로 변경하였다. 참고[9]

 


참고 목록

[1] BSC 체인 중지 블록: https://bscscan.com/block/21962147

[2] 바이낸스 공지: https://www.reddit.com/r/bnbchainofficial/comments/xxjkpy/temporary_pause_of_bsc/

[3] 해커 계좌: https://bscscan.com/tokenholdings?a=0x489a8756c18c0b8b24ec2a2b9ff3d4d447f79bec/ 

[4] 해킹 분석 트윗: https://twitter.com/samczsun/status/1578172227400310786

[5] TX 분석

  1. https://bscscan.com/tx/0xf9d911624b5294652ec7f0b9fa7817f2a5953860411325e7f6e73d87f14a70ab
  2. https://bscscan.com/tx/0xebf83628ba893d35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b

[6] 패치 내용: https://github.com/bnb-chain/bsc/pull/1109

[7] CrossChain Contract: https://github.com/bnb-chain/bsc-genesis-contract/blob/master/contracts/CrossChain.sol

[8] Cosmos Security Notice:https://forum.cosmos.network/t/ibc-security-advisory-dragonberry/7702

[9] Cosmos Security Patch:https://github.com/cosmos/cosmos-sdk/commit/d8527c397792a2ca05f420040e8a5a718e9eaa0f

 


문서 이력

- v1.0 (20221017 12:30) :  최초 등록

- v1.1 (20221017 19:45) :  해킹 및 패치 내용 분석

- v1.2(20221014): 코스모스 취약점 공지 추가

 


도움이 되셨다면 

 눌러 주세요.^^


 

반응형
Posted by IT반장
IT/Blockchain2022. 9. 27. 21:06

안녕하세요. IT반장입니다. 

이번 글에서는 탈중앙화 금융서비스 중에서 유망한 서비스인 Alpaca에 대해서 알아보겠습니다.


목차

0. 용어
1. 개요
2. 제품

3. 참여 방법
4. 로드맵
5. 보안
6. Protocol Parameters
7. 토큰노믹스
8. 평가


0. 용어

  • Yield Farming: 수익을 얻기 위해 암호화 자산을 스테이킹하거나 빌려주는 것
  • Leveraged Yield Farming: 자본을 빌려서 지렛대 처럼 Yield Farming 수익을 높이는 것(참고[4]) 
  • TVL: Total Value Locked
  • APR: Advertised Percentage of Return/interest
  • APY: (1+R/N)N-1 (R 이자율, N 연도의 복리 빈도)
  • LTV: Loan To Value ratio 담보대출비율
  • DTI: Debt To Incom 총부채상환비율
  • DSR: Debt Service Ratio 총부채원리금상환비율(전체 대출 고려)
  • AMM: Automated Market Maker x * y = k
  • IL: Impermanent Loss
  • FDV: Fully Diluted Valuation 토큰의 최대 공급량 X 토큰 의 현재 시장 가격
  • Market Cap: Circulating supply of a token X Current market price of the token
  • CDP: Collateralized Debt Position
  • 자금세탁방지(AML·Anti-Money Laundering)
  • 테러자금조달방지(CFT·Combating the Financing of Terrorism)

 

1. 개요

- 알파카(Alpaca) 뜻: 라마와 비슷하고 털이 긴 남미산 동물로 프로젝트의 마스코트로 사용

- BNB 체인에서 leveraged yield farming이 가능한 가장 규모가 큰 lending protocol 입니다.

  • 바이낸스 체인에서 TVL이 현재 3위, 약 500만 달러(참고[3])
  • 담보 대출, 레버리지 파밍 가능
  • 차용인과 대출인을 연결하여 자본 효율성을 향상시킴
  • 사전 판매/투자자/채굴이 없는 공정한 프로젝트

 

2. 제품

- Lending

  • 디파이에서 가장 간단히 수익을 올릴수 있는 방법
  • Land & Stake: 단일 자산, 다중 자산 가능
  • APY(이자 지급 빈도를 고려한 연간 복리 수익률)가 다른 프로토콜에 비해 지속적으로 높음(2배 유지)
  • 차용인이 차용한 자금을 인출할 수 없기 때문에 대출인에게도 매우 안전함
  • 불량 부채가 발생하지 않도록 보수적이고 신속한 청산 설정
  • 입금 수수료, 출금 수수료, 기본 잠금액이 없으므로 언제든지 입출금 가능 

- Leveraged Yield Farming

  • 알파카의 핵심 상품으로 대출을 통해 더 많은 수익 창출

- Automated Vaults

  • 시장 중립 전략(Market-Neutral Strategy)
    • 롱 포지션과 숏 포지션을 동시에 파밍하고, 중립을 유지하기 위해 잔고를 재조정하여 위험을 제거함
    • 높은 수율과 낮은 위험
  • 저축 전략(Savings Vault Strategy)
    • 1xLong이 기존 전략이지만 레버리지를 사용해서 더 높은 APY 달성
    • 청산 불가능
  • 주요 기능
    • 최대 레버리지(8x): 전략이 자동 재조정되고 청산이 필요 없으므로 위험은 최소화하고 높은 레버리지 달성
    • 자동 잔고 변경: 자동 재예치(compounding), 자동 잔고 조정, 자동 이익 설정
    • 청산 위험 없음: Keeper가 청산을 할 수 없도록 전문 Worker를 생성함
    • 자동 재예치(Compounding): 이익 극대화를 위해 여러가지 보상 토큰들이 재예치됨
  • 락업 없음: 자율롭게 입출금 가능 

- AUSD(AlpacaUSD)

  • 자동 파밍 스테이블 코인
  • 과잉 담보, 탈 중앙화, 다층 페깅 메커니즘 강화되어 $1 를 안정적으로 유지
  • 보증금(ibToken)을 담보로 AUSD를 빌림
  • AUSD 용도
    • AUSD 스테이킹으로 추가 수익
    • AUSD를 대출 자산으로 판매
    • AUSD를 다른 자산으로 판매하여 LYF 실시
    • AUSD를 다른 자산에 판매하여 외부 프로토콜에 배포
  • AUSD 동작
    • 여러 자산 모음에 의해 과잉 담보됨(ETH, BNB, USDT, BUSD, BTCB, TUSD 등)
    • MakerDAO를 포크함
    • 파밍 가능한 담보 모듈(Farmable Collateral Module): 자체 Lending & Staking APR 가능, 추가적으로 ALPCA 보상
    • 효율적인 페깅: MakerDAO 처럼 1$로 맞추기 위해 토큰 발행량 조절, 또한 Stable Swqp Module 이 가격 안정화
    • 강인하고 부드러운 청산: 청산에 직면할 때 회복될 때까지 작은 부분만 청산, 최대 청산 규모는 부채의 25% 로 설정
      • 차용인의 비용과 청산 위험을 낮추고, 불량 부채 위험을 방지
      • 강인한 원자 청산 모델 사용, MakerDAO의 네덜란드 경매 모델에 비해 장점(간단하고, 불량 부채 방지에 최적화)
    • 불량 부채 처리
      • 예상치 못한 불량 부채를 처리하기 위한 백스톱 마련 예정
      • 보험 플랜 출시 예정: 손실이 보상될 때까지 거버넌스 금고 APR 50%를 사용)
  •  보안: 다수 보안 회사의 감사를 수행함(20개 Audits, 참고[5]) 
    • PeckShield Audit Report: Click here
    • InSpex Audit Report: Click here
    • SlowMist Audit Report: Click here

 

3. 참여 방법

- Leveraged Yield Farming

  • Lender(대출인): 대출 금고에 예치하여 안정적으로 수익 획득
  • Yield farmer(일드 파머): 최대 6배까지 파밍 가능, 대출보다 위험이 큼(청산, 영구손실 등)
    • PancakeSwap, BiSwqp 과 통합
  • Liquidator(청산자): 담보가 낮아 부도 위험에 접근하는 경우 청산 실시

- Automated Vault

- AUSD(Alpaca USD)

- Governance Vault

  • Curve's DAO를 포크함
  • 락업 기간: 1주 ~ 1년
  • 락업하면 xALPACA 토큰 수령

- Alpies

  • 손으로 그린 10,000 개의 한정 NFT로 BNB Chain, ETH 두 군데 출시
  • Alpies 소유자는 레버리지 파밍 풀에서 더 높은 레버리지 가능 

- 6가지 투자 전략

  1. Lend & Stake 전략
    • 낮은 위험, 입출금 수수료 없음, 기본 잠금(lockup) 없음
    • 불량 부채가 발생하지 않도록 신속한 청산 설정 존재함
      • 이자율 모델: 참고[6]
      • 내부 균형 메커니즘: 참고[7])
  2. 토큰 쌍 보유 전략 (레버리지 없는 자동 복리 수익률, 1x)
    • DeFi를 처음 접하는 사람에게는 레버리지가 위협적일 수 있음
    • 다른 프로토콜보다 더 수익성이 있음(알파카는 수수료가 낮음)
  3. Stablecoin 수익률 상승 전략
    • 일반적으로 10-25% 수익률 발생
    • 추가 수익률을 위해 스테이블 코인을 빌려서 수익 발생 가능, 위험 매우 낮음
  4. 강세장에서 이익을 높이는 전략
    • 레버리지를 일으켜서 암호자산을 빌려서 암호자산 수익 및 파밍 수익을 추가로 발생 시킴
      • 예) $10,000 상당 ETH 예치 -> 3x 레버리지로 $20,000 상당 빌려서 -> $15,000 ETH - $15,000 USDT 포지션 전환
        • $15,000 상당 ETH 파밍 토큰 롱, $15,000 상당 USDT 파밍 토큰 롱, $20,000 상당 USDT 빌린 토큰
  5. 약세장에서 수익성이 좋은 Yield Farm 전략
    • 차용하여 레버리지 포지션을 열어 자산을 공매도(참고[9]) 할 수 있음
      • 예) $10,000 USDT를 ETH-USDT에 예치 -> 3x로 $20,000 상당 ETH 빌림 -> $5,000 ETH를 USDT로 자동 스왑 -> $15,000 ETH - $15,000 USDT 풀 생성
  6. 헤징을 통해 모든 시장에서 크립토 수익을 배가시키는 전략
    • 롱 포지션과 숏 포지션을 쌍으로 구성하여 위험을 헤징하는 방법(참고[6])

강세장 3x 롱포지션
하락장 3x 숏포지션
시장 중립 전략
시장 중립 전략 - Rebalancing

4. Roadmap

- 2022.08.04 현재 로드맵

  1. 더 높은 자본 효율성 확보하여 수익률 증대
  2. NFT, Web3 게임 등 사업 범위 확장
  3. 거버넌스를 도입하여 더욱 탈중앙화
  4. 다중 체인을 구축하여 수평적 확장
  5. 기관 및 투자 펀드 유치를 위한 상품 생성
  6. 최고의 크로스 체인 금융 및 뉴미디어 대기업으로 성장

 

5.  보안

- 외부 보안 감사 20건(참고 [5])

- 선택적 외부 보험 상품 마련(Nexus Mutal Cover, InsurAce)

- 내부적으로 프토토콜 수익의 50%는 Governance Vault에서 1년동안 자금 유실자 상환 지원할 수 있음

  • Aave의 Safety Module 참고함

- 2021년 6월 BNB Chain에서 가장 높은 보안 등급 부여 받음, Certik에서 3번째로 높은 보안 점수 받음

- ALPCA 토큰 덤핑 방지 설계됨, 87%가 참여자에게 발행, 9%만 팀에게 2년간 배분

  •   사전 판매, 사전 채굴, 투자자도 없음

- 오픈 소스코드 정책 및 버그 바운티 프로그램 운영

-  모든 컨트랙트는 배포 후 24시간 지연 적용

- 플래시 대출 허용 안함

- 가격 조작 및 플래시 청산을 위해 Alpaca Guard 보유

  • 파밍 쌍의 자산 가격이 자체 검증값과 10% 이상 차이가 날 때 보호 모드에 들어감(기능 및 포지션 개시/종료 비활성화)
  • 사례를 보면 Alpaca Guard와 같은 중지 기능이 필요함
    • 예) Venus 사건
      • 2021.05.18 $2억 이상 청산, $100M의 불량 부채 발생
      • 계단식 청산 방식
    • 예) PancakeBunny Exploit
      • 2021.05.19 플래시 대출 공격

- 모든 프로젝트는 Security Scoreboard를 통과해야 함

- Front Running: 대기중인 TX에 대한 정보를 가지고 이익을 얻기 위해 대기열에 우선 순위를 높여서 실행시키는 행위

- Sandwitch Attack: 보류중인 TX를 사이에 끼운 상태로 동시에 선/후행 실행 

  •  예) 보류중인 TX가 실행되면 ETH 가격이 상승한다는 것을 알고, 낮은 가격에 ETH를 산 후에 보류중인 TX가 실행되고 ETH를 더 높은 가격에 판매 
  • 대부분 공격은 자동화된 AMM 솔루션에 발생
  • 수수료를 높여서 쉽게 공격 가능하지만, 실익이 있어야 함
  • 1inch 플랫폼 "flashbot 트랜잭션" 도입하여 방어(채굴자간 직접 연결하여 TX풀 공개 안됨)

 

6.  Protocol Parameters

- LYF

- 금리 모델

 

- AUSD

- Automated Vault

 

7.  토큰노믹스

- ALPACA Token

  • 토큰 소각을 통한 디플레이션 메커니즘 마련됨
    • 파밍 수수료 19% 중 10%는 ALPACA 거버넌스 금고 예금자 프로토콜 APR
    • 모든 청산 현상금 5% 중 4% ALPACA 토큰 환매 및 소각
    • 대출 기관 대출 이자 19%중 10% ALPACA 토큰 환매 및 소각
    • Alpies 판매 수익의 20% ALPACA 토큰 환매 및 소각(비정기적) 등

ALPACA Token

- ibTokens: 예치 자산과 이자 추적

- Pool Allocations

- Burn

  • 현재 ALPACA 최대 공급량의 14.18% 소각(약 2,667만개)

 

8.  평가

- 외부 Audit(20건) 및 보험 등으로 안전 장치를 다수 마련하였음

- Flash loan 을 차단하고 다수 자산을 담보로 안전성을 증대하였음

- Automated Vault를 통해 편리성과 빠른 청산을 가능하게 하였음

- 전체적으로 안전한 DeFi 서비스를 위해 노력하였지만 안전하다고 판단할 수 없으며 글로벌 규제에 대한 방안 마련이 필요함 

 


 

 

참고 목록

[1] 홈페이지: https://www.alpacafinance.org/

[2] 문서: https://docs.alpacafinance.org/

[3] TVL: https://defillama.com/chain/BSC

[4] Leveraged Yield Farming: https://thedefiant.io/leveraged-yield-farming

[5] Audits & Contracts: https://docs.alpacafinance.org/our-protocol-1/transparency

[6] Market-Neutral Strategy: https://docs.alpacafinance.org/automated-vault/introduction-to-automated-vaults/market-neutral-strategy

[7] Venus Incident: https://twitter.com/FrankResearcher/status/1394900186435096578?s=20 

[8] Alpaca Report: https://messari.io/report/alpaca-finance-a-leveraged-defi-product-suite

[9] Alpaca Protocol Parameters: https://docs.google.com/spreadsheets/d/1cdVFe6g6oc0WIFP006dWjjHQn-CVsGqEZ03yt--PrWw/edit#gid=0

[10] 공매도: https://www.investopedia.com/terms/s/shortselling.asp

[11] ALPACA 소개: https://www.bnbchain.org/en/blog/bsc-project-spotlight-alpaca/

[12] Front Running: https://coinmarketcap.com/alexandria/glossary/front-running

[13] Sandwich Attack: https://coinmarketcap.com/alexandria/article/what-are-sandwich-attacks-in-defi-and-how-can-you-avoid-them

[14] 1inch Flashbot: https://help.1inch.io/en/articles/5300755-what-are-flashbot-transactions-and-how-do-they-work-on-1inch#:~:text=Flashbot%20transactions%20are%20now%20available,running%20and%20%22sandwich%20attacks%22.&text=In%20a%20nutshell%2C%20a%20front,to%20intercept%20a%20large%20transaction.

[15] 수익률 계산기: https://docs.google.com/spreadsheets/d/15pHFfo_Pe66VD59bTP2wsSAgK-DNE_Xic8HEIUY32uQ/edit#gid=0

 

문서 이력

- v1.0 (20220927) :  최초 등록


도움이 되셨다면 

눌러 주세요. ^^

반응형
Posted by IT반장
IT/Blockchain2022. 9. 22. 20:48

안녕하세요. IT반장입니다. 

이번 글에서는 탈중앙화거래소 중에서 속도가 빠르고 최근 TVL이 가장 높은 dYdX에 대해서 알아보겠습니다.


목차

1. 개요
2. 아키텍쳐
3. 무기한 계약
4. 보안
5. 평가


1. 개요

- 목표

  • 사용자들이 중간자 개입 없이 자신만이 거래에 대한 권한을 가질 수 있는 강력하고 전문적인 거래소 구축
  • 전 세계 어디에서도 사용할 수 있는 트레이딩 플랫폼

- 설립자 Antonio Juliano

  • 전 Uber 개발자이자 Coinbase 소프트웨어 엔지니어인 Antonio Juliano는 2017년에 플랫폼을 설립했으며 2019년에 프로토콜을 출시
  • 탈중앙화 금융(DeFi) 세계에 마진 거래를 도입하기로 결정하고 dYdX에 대한 아이디어를 구상

- 본사는 미국 샌프란시스코

  • dYdX Foundation은 스위스 추크에 위치
  • 미국을 포함하여 제한된 국가는 서비스 안함

- 취급하는 암호화폐: 37개(2022.09.22 현재)

- 마진 거래: 10x ~ 20x

- 수수료: 무료(~10만 달러/월)

- 서비스 사고 및 다운타임에 대해서 공지하고 있음(참고[2]) 

- 데이터 센터: AWS AP-NORTHEAST-1 리전(도쿄)

  • 미국 IP는 엄격히 제한함

 

2. 아키텍쳐

- dYdX는 StarkEx (Ethereum Layer2 ZK-Rollup or Validium data-availability modes)를 연동함(참고[3])

- StarkEx Solution Architecture

  • StarkWare(StarkEx) 에서 컨트랙트 관리 및 검증을 수행함
  • 거래소는 거래를 매칭하여 제출함

StarkEx Solution Architecture

- StarkEx High-Level Architecture

  • 이용자의 자금을 악의적인 거래소가 훔칠 수 없도록 하면서도 고속 거래 및 낮은 수수료를 보장
  • 머클 트리 기반의 검증 방식 사용 (Fact Registry, 참고[4])  

StarkEx High-Level Architecture

- StarkEx Smart Contract Architecture

StarkEx Smart Contract Architecture

  1. Proxy Contract: 상태 정보 및 관련 컨트랙트 정보 저장(solidity proxy pattern, 참고[5])
  2. Dispatcher Contract: 업그레이드 가능한 컨트랙트 구현 패턴(diamond standard, 참고[6])
  3. Sub-Contracts: StarkEx 에서 필요한 기능들이 구현된 컨트랙트들
  4. Verifier Fact-Registry: Fact Registry를 검증하는 컨트랙트
  5. Committee Fact-Registry: Fact Registry를 등록하는 컨트랙트

- StarkEx Back End Architecture

StarkEx Back End Architecture

  1. Gateway: 거래소로 부터 Tx를 수신
  2. Batching & Validation: 배치 작업 및 Tx 검증
  3. Baches info: 배치 정보 공개
  4. Changes Approval GW: 사용자 지정 오프체인 로직을 사용할 수 있도록 함(위원회 승인 필요)
  5. Proving: 외부 증명 서비스를 통해 상태 전환 증명 생성, 온체인 검증자(Fact Registry)에 등록
  6. Packing: 블록체인에 전송할 데이터(주소, payload 등)를 묶음
  7. Blockchain Writer:  보낼 데이터에 네트워크 정보(가스, nonce, 서명 등)를 포함하여 블록체인에 전송
  8. Catcher: 블록체인을 모니터링하여 배치 모듈에 내용 전달

- StarkEx Partner Integration

StarkEx Partner Integration

  1. Front End: 사용자 요청에 대해 온체인(이더리움)과 오프체인(StarkEx) 둘 다 지원해야 함
    • 일반적으로 사용자가 온체인 요청을 하면 백엔드에서는 오프체인 요청이 되도록 구성
  2. Order Verification: 사용자 주문 확인(서명, 잔액, 금고ID 등)
  3. Business Logic: StarkEx에 전달할 Tx 처리 및 계정 상태 업데이트
  4. TX Stream:  0부터 시작하는 tx_ids라는 연속적인 식별자로 유효성을 검사하고, 인덱싱
  5. Tx Sender:  StarkEx Gateway에 Tx 전송 (비동기식)
  6. Error Handler: 유효하지 않은 거래 정보를 수신하여 이전 상태로 복원
  7. State Approval: 모든 배치를 블록체인으로 전송하기 전에 승인하는 절차
  8. Censorship Prevention: 검열 방지를 위해 사용자가 특정 작업을 블록체인 상의 StarkEx 컨트랙트에 직접 제출 가능하도록 함 

 

3. 무기한 계약(Perpetual Contracts)

- dYdX는 다양한 자산에 대한 비보관형 탈중앙화된 마진 상품을 제공

- Margin(증거금)

  • 담보는 USDC로 보유
개시 증거금 요건 = abs(S × P × I)
유지 증거금 요건 = abs(S × P × M)

총 개시 증거금 요건 = Σ abs(S i × Pi × I i )
총 유지 마진 요구 사항 = Σ abs(S i × P i × M i )

총 계정 가치 = Q + Σ (S i × P i )

무료 담보 = 총 계정 가치 - 총 개시 증거금 요구 사항

S 포지션 크기입니다(롱이면 양수, 숏이면 음수)
P 시장에 대한 오라클 가격입니다
I 는 시장의 개시 증거금 비율입니다.
M 는 시장에 대한 유지 마진 비율입니다.

- Liquidations(청산)

종가(숏) = P × (1 + (M × V / W))
종가(롱) = P × (1 − (M × V / W))

P 시장에 대한 오라클 가격입니다
M 는 시장에 대한 유지 마진 비율입니다.
V 위에서 정의한 총 계정 가치입니다.
W 위에서 정의한 총 유지 증거금 요구 사항입니다.

- Funding(펀딩)

  • 롱 과 숏 거래자 사이에 교환
  • 펀딩 비율은 1시간 비율로 표시
  • 펀딩 비율 계산
프리미엄 = (최대(0, 임팩트 입찰가 - 지수 가격) - 최대(0, 지수 가격 - 임팩트 매도호가)) / 지수 가격

Impact Bid Price = 임팩트 명목 가치의 시장 매도 평균 실행 가격
임팩트 매도호가 = 임팩트 명목 가치의 시장 매수에 대한 평균 실행 가격

영향 명목 금액 = 500 USDC / 개시 증거금 비율

펀딩 비율 = (프리미엄 요소 / 8) + 이자율 요소

- Contract Loss Mechanisms(계약 손실 메커니븜)

  • 변동성이 크게 되면 일부 계정의 가치는 0 아래로 떨어질 수 있음
  • 보험 기금으로 손실 부담
  • 보험 기금이 고갈된 경우 가장 높은 이익과 레버리지를 가진 포지션으로 마이너스 잔고 계정을 상쇄할 수 있음  

- Oracle Prices(오라클 가격)

  • 각 거래 후 각 계정이 잘 담보되었는지 확인
  • 계정을 청산해야 하는 시점 결정
  • 15개의 독립적인 Chainlink 노드로 계산

- Index Prices(지수 가격)

  • 펀딩 비율 계산
  • Stop-Limit and Take-Profilt 주문과 같은 트리거 가능한 주문 트리거(촉발)

 

4. 보안

- PeckShield 에 외부 감사(참고[7])

 

5.  평가

- 중앙화된 거래소의 빠른 거래 속도와 탈중앙화된 거래소의 스마트 컨트랙트 방식을 하이브리드 형태로 제공하는 DEX 서비스

- 기술적으로 완전 탈중앙화가 아닌 자체 거래소 구축 모듈에 의존하는 방식이므로 다양한 문제가 발생할 수 있음

- 이용자 보호를 위한 보험 및 추가적인 보호 방식을 제공하지만 공격 발생시 실효적으로 대응하기 어려운 것으로 판단됨  

 


참고 목록

[1] 홈페이지: https://trade.dydx.exchange/

[2] 서비스 제공 상태: https://status.dydx.exchange/uptime

[3] StarkEx: https://docs.starkware.co/starkex/

[4] StarkEx Fact Registry: https://docs.starkware.co/starkex/fact-registry.html

[5] Solidity Proxy Patterns: https://blog.openzeppelin.com/proxy-patterns/

[6] Diamond Standard: https://hiddentao.com/archives/2020/05/28/upgradeable-smart-contracts-using-diamond-standard

[7] dYdX security audit: https://github.com/starkware-libs/starkex-contracts/blob/master/audit/StarkPerpetual_v1.0_Audit_Report.pdf

 

문서 이력

- v1.0 (20220922) :  최초 등록


도움이 되셨다면 

눌러 주세요. ^^

반응형
Posted by IT반장
IT/Blockchain2022. 9. 21. 18:36

안녕하세요. IT반장입니다. 오랜만에 글을 써보네요.

블록체인 관련 분석 자료를 정리하여 올려봅니다.  

목차

0. 용어
1. 개요

2. Maker Protocol
3. DAI Stablecoin
4. Maker Vault
5. 핵심 외부 참여자
6. DAI 예치 보상(DSR)
7. 거버넌스
8. 가격 안정화 메커니즘
9. Maker 프로토콜의 미래
10. 결론
11. 평가


0. 용어

- https://makerdao.world/en/learn/Glossary/

 

1. 개요

- MakerDAO : 이더리움 기반 오픈소스 프로젝트, 탈중앙화된 자율 조직(DAO)

  • MKR: MakerDAO에서 사용하는 거너넌스 토큰
  • 투표, 여론조사, Maker Protocol/DAI 금융 리스크 관리

- Maker 재단

  • Maker 커뮤니티의 일부, Maker Protocol 구축
  • 완전 탈중앙화를 완성하기 위해 커뮤니티와 협업

- DAI 재단

  • Maker Protocol이 기술적으로 탈중앙화 할 수 없는 부분을 보호하는데 목적이 있음(덴마크에 위치)
  • Maker 커뮤니티의 상표나 코드 저작권 등 무형 자산 관리
  • DAI: 탈중앙화되고 중립적이며 미국 달러에 연동된 자산 담보기반 암호화폐

 

2. Maker Protocol

- 최초의 탈중앙화 금융(DeFi) 애플리케이션(DApp), 현재 TVL이 제일 높음(참고[3])

- DAI(스테이블 코인), Vault, 오라클, 투표로 구성됨

- 다중담보Dai(MCD) 시스템: 승인된 자산을 담보로 레버리지를 통해 Dai를 생성

 

3. Dai Stablecoin 

- 탈중앙화되고 중립적이며 미국 달러에 연동된 자산 담보기반 암호화폐

- 사용자는 암호화폐지갑으로 MakerValut에 자산을 담보하고, DAI를 생성 사용하기 용이

- DSR(Dai Savings Rate, Dai 예치 보상): Dai를 소유한 사용자에게 자동으로 보상

- 화폐의 4가지 기능 보유

  • 가치 보존: 미국 달러 기반 스테이블 코인으로 가치가 보존됨
  • 교환 매체: 암호화폐지갑으로 쉽게 교환 가능
  • 회계 단위: 1 DAI = 1 USD 목표
  • 후불 표준: Maker 프로토콜에서 수수료를 갚고 볼트 계약을 해지

- 담보자산: MKR 소유자가 투표를 통해 담보 자산 결정하고 이를 통해 자산 안정화

 

4. Maker Vault

- 모든 승인받은 담보 자산은 Maker Valult 라고 하는 Smart Contract를 통해 보관되고, 레버리지 가능하고 Dai 생성 가능

- 사용자는 커뮤니티가 만든 다양한 인터페이스를 통해 Valut를 생성할 수 있음(Oasis borrow 등 참고[4])

- Dai를 생성을 위한 안정화 수수료가 있음(부채 상환, 레버리지된 담보 인출 등)

- Valut는 비수탁 방식: 사용자는 담보에 대해 완전하고 독립적인 통제권을 가짐

  •  단, 담보 최저 수준에 도달하면 자동 청산됨

- Valut 동작

  1. 볼트 및 담보 생성
  2. 담보화된 볼트에서 DAI 생성
  3. 부채 및 안정화 수수료 상환
  4. 담보 인출
  • 각 담보 자산은 개별 볼트가 필요

- 위험한 Maker Valut 청산

  • 담보 보장을 위해 위험한 Valut는 Maker Protocol 경매를 통해 자동 청산됨
  • Valut 별 청산 비율 존재
  • Valut 별 부채 비율은 MKR 투표로 결정 

- Maker Protocol Auction

  • 담보 가격정보를 알 수 없는 경우에도 볼트 청산 가능
  • 청산 시점이 오면 해당 볼트 담보를 가져와서 내부 경매 시장 메커니즘을 통해 매각
  • 청산 페널티와 채무를 충분히 감당할 정도로 입찰이 되면 역담보 경매 실시
    • 역담보 경매는 볼트 소유자가 가능한 많은 잔액을 만회할 수 있는 절차 제공, 남은 담보는 원래 볼트 소유자에게 반환
    • 만약 경매에서 충분한 Dai를 모으지 못한다면, 부족분은 Maker Buffer에 있는 프로토콜 부채로 커버함
    • 만약 Maker Buffer에 충분한 Dai가 없으면, MKR이 발행되어 매각 
    • 담보 경매에서 나온 수익금은 Maker Buffer에 쌓임. 버퍼 한도가 초과되면 잉여금 경매를 통해 MKR 소각하여 안정화 

 

5. 핵심 외부 참여자

- 키퍼(Keepers)

  • DAI가 목표가(1달러)를 유지하도록 돕는 시장 참여자
  • 볼트가 청산될 때 경매에 참여(잉여금 경매, 부채 경매, 담보 경매)

- 가격 오라클(Price Oracles)

  • 청산 절차 개시 시기를 판단하기 위해 담보 자산의 시장 가격을 실시간으로 제공
  • 탈중앙화된 오라클 인프라스트럭처에서 담보 가격 획득(참고[5])
  • 가격 정보의 신뢰성을 위해 오라클 보안 모듈(OSM, 참고[6]) 적용
    • 오라클이 침투될 경우 가격 전달을 한 시간 정도 지연시키고, 긴급 오라클/거버넌스 투표를 통해 동결할 수 있도록 함

- 긴급 오라클(Emergency Oracles)

  • MKR 투표에 의해 긴급 오라클 결정
  • 비상정지: 공격에 대해 방어, Maker 프로토콜 업그레이드
  • 거버넌스를 통해 완전 탈중앙화

- DAO Teams

  • 독립적인 시장 참여자
  • 거버넌스 커뮤니케이션 인프라스트럭처와 절차를 도와주는 조력자
  • 새로운 담보의 도입을 추진, 기존 담보 규제하는 데 필요한 위험 연구하여 개선 초안을 제안

 

6. 다이 예치 보상(The Dai Savings Rate, DSR)

- DSR 컨트랙트에 예치하여 보상

- 최소 금액 없음. 자유롭게 인출 가능

- MKR 투표로 DSR 보상율 조정(매주)

  • 향후 Instant Access Module(대규모 MKR 보유자 그룹을 대신하여 DSR 조정이 쉽도록 함, 절차를 간소화) 도입

 

7. 거버넌스

- MKR 토큰으로 투표

  • 즉시 효력이 발생하지 않고, 24시간 동안 지연(악의적인 제안 방어)
  • 투표 제안, 집행 투표
  • MKR 소유자 책임
    • 신규 담보 추가
    • 위험 매개변수 관리
    • DAI 예치 보상 비율 수정
    • 오라클 선정
    • 긴급 오라클 선정
    • 비상정지 개시
    • 시스템 업그레이드
    • Maker Buffer 자금 관리

- 통제하는 위험 매개변수

  • 부채 한도(Debt Ceiling)
  • 안정화 수수료(Stability Fee)
  • 청산 비율(Liquidation Ratio)
  • 청산 페널티(Liquidation Penalty)
  • 담보 경매 지속 기간(Collateral Auction Duration)
  • 경매 입찰 지속 기간(Acution Bit Duration)
  • 경매 최소 단위(Auction Step Size)

- 거버넌스의 위험과 책임의 완화

  • 악의적인 참여자들에 의한 공격 위험 대응
    • 예) 스마트 컨트랙트 취약점 공격
    • Maker 프로토콜 보안을 최우선 순위로 추진
    • 프로토콜 보안성은 공식적으로 검증함(수학적 검증, 코드 검증)
    • 전문 보안 조직을 통한 감사를 수행함
    • 버그 바운티를 운영함
  • 블랙 스완(Black Swan) 사태
    • DAI를 뒷받침하는 담보 자산에 대한 공격
    • 담보 자산의 급격하고 예기치 못한 가격 하락
    • 매우 조직화된 오라클 공격
    • 악의적인 Maker 거버넌스 제안 등
    • -> 거버넌스를 통한 보안: 신속 대처, 리스크 매개변수 등
    • -> Maker 프로토콜을 통한 보안: 청산 비율, 부채 한도, 거버넌스 보안 모듈, 오라클 보안 모듈, 비상 정지 등
  • 예상치 못한 가격 오류와 비이성적인 시장
    • 오라클 가격 피드 오류
    • DAI 가격 변동에 상당 기간 영향을 끼치는 비이성적인 시장 움직임
    • -> 금리 조정이나 MKR 희석으로도 충분한 유동성과 안정성 공급하지 못할 수 있음
    • -> 자산 Pool을 충분히 큰 규모로 키워 시장 관리인 역할을 할수 있도록 보상, 최후의 수단은 비상정지
  • 복잡한 프로토콜로 인한 사용자 이탈 가능성 방지
    • 사용성 좋게하고 많은 문서/자료 공개
  • Maker 재단 해체
    • Maker DAO가 스스로 관리할 수 있게 되면 재단 해체
  • 시험적인 기술에 관한 사안
    • Maker 프로토콜은 여전히 입증되지 않았고, 취약성 또는 버그 발생을 포함하고 있고 실패할 수 있음

 

8. 가격 안정화 메커니즘

- DAI 목표 가격: 1 DAI = 1 달러

- 비상정지

  • 인프라스트럭처 공격 대응 시 개시
  • Maker 프로토콜 시스템 업그레이드 시 개시
  • 비상정지 3단계 (참고[7])
    1. Maker 프로토콜 비상정지, 볼트 생성/조작 금지, 가격 피드 동결
      • 채무 직접 담보가 아닌 자산은 즉시 인출 가능
    2. 비상정지 후 경매 절차
      • 담보 경매가 시작되고 정해진 기간 내에 완료되어야 함
    3. DAI 소유자는 남아있는 담보 청구
      • 남아있는 담보자산을 DAI 만큼 나눠서 청구 가능함
      • Vault 소유자 우선하고 이후 DAI 소유자 청구 가능함
      • 가치 하락 위험 있음(1달러 목표가 하락 등)

 

9. Maker 프로토콜의 미래

- 의미있는 마켓

  • 영업자본, 헤징 및 담보화된 레버리지
  • 상점의 대금 수령, 국제 거래, 송금
  • 자선단체와 NGO
  • 게임에서의 통화
  • 예측 시장

- 자산 확대

- 진화하는 오라클

 

10. 결론

- Maker 프로토콜을 통해 탈중앙화된 스테이블 코인인 DAI를 생성할 수 있음

- 투명성 확보를 위해 감사를 받고 누구나 참여하고 감독할 수 있음

- 수 백개의 파트너쉽과 암호화폐 개발자 커뮤니티와 협력하여 경제적 역량 강화를 위해 노력

 

11. 평가

- 다수의 담보를 예치하고, 가장 많은 TVL을 기록하고 있음

- 기술적으로 한계가 있음(거버넌스 위험 등)

- 정책적으로도 Stablecoin(특히 달러 페깅)의 탈중앙화는 AML/CFT 정책에 위배됨

 


참고 목록

[1] 홈페이지: https://makerdao.com/ko/

[2] 백서: https://makerdao.com/ko/whitepaper/

[3] DeFi 통계: https://defillama.com/

[4] Maker Ecosystem: https://makerdao.com/en/ecosystem/ 

[5] Price Oracles: https://blog.makerdao.com/introducing-oracles-v2-and-defi-feeds/

[6] Oracle Security Module: https://docs.makerdao.com/smart-contract-modules/oracle-module/oracle-security-module-osm-detailed-documentation

[7] Emergency Shutdown: https://makerdao.world/en/learn/governance/emergency-shutdown/

[8] Maker DAO Technical Docs: https://docs.makerdao.com/

[9] Maker DAO TVL: https://defillama.com/protocol/makerdao

 

DefiLlama

DefiLlama is a DeFi TVL aggregator. It is committed to providing accurate data without ads or sponsored content, as well as transparency.

defillama.com


문서 이력

- v1.0 (20220921) :  최초 등록


도움이 되셨다면 

눌러 주세요. ^^

반응형
Posted by IT반장