블록체인
-
Compound를 분석해보자 (3) - 컨트랙트 3편, Liquidation블록체인 2021. 5. 30. 07:38
이번에는 컴파운드 컨트랙트 중 청산과 관련된 코드를 보기로 했다. 컴파운드는 담보 대출 플랫폼이고, 담보 가치가 하락하면 담보를 청산시키는 시스템이 필요하다. 왜냐하면 대출로 나간 자산보다 담보의 가치가 작다는 것은 시스템에 부실이 발생했다는 뜻이기 때문이다. 그럼 바로 코드를 보면서 하나씩 뜯어보자. 컨트랙트는 아래 주소를 보면 되겠다. https://github.com/compound-finance/compound-protocol/blob/master/contracts/CToken.sol /** * @notice The liquidator liquidates the borrowers collateral. * The collateral seized is transferred to the liquidat..
-
Compound를 분석해보자 (2) - 컨트랙트 1편, Borrowing블록체인 2021. 5. 2. 06:44
이번 글에서는 컴파운드에 있는 컨트랙트를 살펴보고 분석해보려고 한다. 컴파운드 컨트랙트는 아래 Github에서 확인해 볼 수 있다. github.com/compound-finance/compound-protocol compound-finance/compound-protocol The Compound On-Chain Protocol. Contribute to compound-finance/compound-protocol development by creating an account on GitHub. github.com 먼저 본격적으로 분석해보기 전에, Read me를 보고 어떤 컨트랙트가 있는지 간단하게 정리해보자. CToken, CErc20, CEther cToken은 컴파운드의 대출 서비스에 사용되는..
-
Compound를 분석해보자 (1) - 컨셉블록체인 2021. 4. 11. 05:06
이번 학기도 디사이퍼 팀플을 한다! 회장님께서 멘토로 앉혀주셨지만 아직 한참 모자라기에 그냥 열심히 연구해보려고 하는 중.. 주제는 DeFi 리스크 분석, 평소에 DeFi에서 열심히 이자 농사를 짓고 있지만 사실 어떤 리스크가 있고 어떤 문제가 발생할지 아직 감이 전혀 안 잡히는 상태이다. 그래서 이번 학기에 한번 DeFi 시장에 어떤 사건 사고들이 있었고, 앞으로 어떤 일들이 벌어질 수 있는지에 대해 좀 더 생각해보기로 했다. 그 중, 먼저 Lending DeFi들에 대해 알아보기로 했다. Lending하면 가장 유명한 플랫폼 중 하나가 컴파운드 아니겠는가? 컴파운드의 컨셉에 대해 간단하게 알아보고, 컨트랙트를 까보기로 결심했다. (요즘 너무 바빠서 블로그 글을 잘 못 쓰고 있었는데, 이번 기회에 다시..
-
[DeFi] Uniswap V2 Contract 코드 분석 - Periphery, Migrator블록체인 2021. 3. 8. 02:13
이번에는 Uniswap V2의 Periphery 쪽 코드 분석을 해봐야겠다. 코드는 여기서 확인할 수 있다. github.com/Uniswap/uniswap-v2-periphery/tree/master/contracts Uniswap/uniswap-v2-periphery 🎚 Peripheral smart contracts for interacting with Uniswap V2 - Uniswap/uniswap-v2-periphery github.com 우선 contracts 폴더에 3개의 solidity contract가 작성돼있다. UniswapV2Migrator.sol UniswapV2Router01.sol UniswapV2Router02.sol 그리고 4개의 폴더가 있는데, interfaces와 l..
-
[Defi] Uniswap V2 Architecture 분석블록체인 2021. 2. 24. 04:40
유니스왑 코드를 뜯어보다 보니, 다른 소프트웨어도 다 그렇겠지만 아키텍처를 한번 살펴보는게 더 도움이 되겠다 싶어서 잠시 코드 분석은 접어두고 아키텍처 분석을 해보기로 했다. 일단 docs도 보고 하겠지만 우선 Github에 어떤 Repository들이 있는지 간단히 살펴봐야겠다. (github.com/Uniswap) 스마트 컨트랙트와 관련된 레포지토리는 크게 다음과 같다. uniswap-lib Uniswap/uniswap-lib 📖 Solidity libraries that are shared across Uniswap contracts - Uniswap/uniswap-lib github.com uniswap-v2-core Uniswap/uniswap-v2-core 🎛 Core smart contrac..
-
[Defi] Uniswap V2 Contract 코드 분석 2 - Pair블록체인 2021. 2. 23. 03:47
이번에는 Uniswap Core Contract의 두 번쨰, UniswapV2Pair 컨트랙트를 분석해보자. 먼저 이 컨트랙트가 어떤 인터페이스를 구현하고 있는지 살펴보자. 두 번째 인터페이스인 UniswapV2ERC20은 아마도 ERC20 표준인 것 같아서, 앞의 IUniswapV2Pair 인터페이스를 집중적으로 살펴보자. (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/interfaces/IUniswapV2Pair.sol) interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(..
-
[Defi] Uniswap V2 Contract 코드 분석 1 - Factory블록체인 2021. 2. 8. 02:52
오랜만에 오픈소스 분석이나 해볼겸 요즘 관심갖는 Defi의 가장 유명한 탈중앙화 거래소인 유니스왑 코드를 분석해보기로 했다. 어디까지나 개인 공부용이니 포스트를 보면서 사실과 다른점이 있다면 얼마든지 댓글을 남겨주세요 ㅠ_ㅠ 유니스왑의 컨트랙트는 크게 Core(Factory, Pairs), Periphery(Library, Router)로 구성돼있는것 같다.(https://uniswap.org/docs/v2/protocol-overview/smart-contracts/) 오늘은 먼저 Core 코드를 분석해보자. Core는 크게 Factory와 Pairs로 나뉜다. Factory 컨트랙트는 pool을 만드는 컨트랙트라고 한다. 또한 하나의 token pair마다 하나의 컨트랙트가 할당되는 것으로 보아, U..