본문 바로가기

Block Chain40

[DeFi Series] Time Weighted Average Price(TWAP) 알고리즘 파헤치기 || Math | DeFi || 안녕하세요. 스마트컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 게시글에서 소개해드릴 DeFi Series는 Time Weighted Average Price(TWAP) 알고리즘입니다. TWAP란 풀어서 'Time Weighted Average Price' 이며 직역하면 '시간가중평균가격'입니다. 시시각각 변하는 가격을 주기적으로 기록하여 평균을 계산하는 공식으로, 주로 디지털 거래소 또는 탈중앙화 거래소(DEX)에서 디지털 자산의 가격을 조회할 때 사용됩니다. Example 암호화폐 거래소에서 MTK코인의 가격을 1초마다 기록하고 있습니다. 위 그래프를 설명드리자면, time(0~6)일 때 MTK의 가격은 price로 기록되고 있습니다. 여기서 TWAP란 time동안의 평균 price을 말합니다. .. 2023. 1. 2.
[DeFi Series] Uniswap V3 집중화된 유동성(Concentrated Liquidity) || Math | DeFi || 안녕하세요. 스마트컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 게시글에서 소개해드릴 DeFi Series는 Uniswap V3 업데이트의 핵심 집중화된 유동성(Concentrated Liquidity)입니다. 기존의 Uniswap은 두 가지 암호화폐를 거래할 수 있는 거래의 장을 형성하여 CPMM 함수로 자동으로 거래가 이뤄지는 AMM 방식의 거래 구조를 구현했습니다. 하지만 CPMM 함수는 구매자가 의도했던 가격과 실제 거래 가격 사이에 차이가 발생하며 구매자의 손해를 보는 일이 발생했습니다. 이런 현상을 슬리피지라고 하며, 슬리피지는 유동성 풀의 규모가 작은 곳에서 특히 심하게 발생했습니다. 이런 문제점을 Uniswap V2의 게으른 유동성(Lazy Liquidity)이라고 합니다. Uniswa.. 2022. 12. 30.
[Hack Series] Smart Contract Phishing Attack with tx.origin || Solidity 0.8 | tx.origin || KR Web3 Hack Series : Phishing Attack with tx.origin 안녕하세요. 스마트 컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 Web3 Hack 시리즈는 tx.origin 함수를 이용한 스마트컨트렉트 피싱 공격에 대해 다뤄보겠습니다. 🔎 실습으로 다루는 Solidity 코드는 게시글 마지막에 github 링크를 참고해주세요. Smart Contract Phishing Attack 취약점 : tx.origin msg.sender VS tx.origin 스마트컨트렉트 개발자는 흔히 msg.sender 함수를 많이 사용할 겁니다. 하지만 tx.origin은 정말 옛날 Solidity 코드가 아니면 잘 볼 수 없습니다. 아래 예시를 통해 자세하게 알아보겠습니다. ContractA.. 2022. 12. 26.
[DeFi Series] Uniswap V2 게으른 유동성(Lazy Liquidity) || Math | DeFi || 안녕하세요. 스마트컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 게시글에서 소개해드릴 DeFi Series는 Uniswap V2 게으른 유동성(Lazy Liquidity)에 대해 알아보겠습니다. 게으른 유동성(Lazy Liquidity) : 스왑에 사용되지 않는 유동성 유니스왑의 V2는 AMM의 CPMM 모델을 사용하여 유동성풀에서 거래되는 두 암호화폐의 거래 비율이 측정됩니다. 정해진 비율을 유지하여 거래되는 암호화폐의 양이 정해지게 됩니다. 하지만 만약 한쪽 암호화폐의 공급량이 다른 한쪽에 비해 현저히 낮은 경우, 높은 슬리피지가 발생하며 실제 가격과 달리 굉장히 낮은 스왑양이 체결되게 됩니다. 가격은 점점 낮아지지만, AMM의 특성상 가격은 0 이 되지 않습니다. 즉 끝까지 거래되는 않는 토큰이.. 2022. 12. 24.
[DeFi Series] Constant Product Market Maker(CPMM) 알고리즘 파헤치기 || Math | DeFi || 안녕하세요. 스마트컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 게시글에서 소개해드릴 DeFi Series는 Constant Product Market Maker(CPMM) 알고리즘입니다. 주로 탈중앙화 거래소(DEX)에서 디지털 자산(암호화폐, 주식 등)의 가격을 형성할 때 사용하는 알고리즘 공식입니다. 암호화폐 시장의 1위 DEX인 유니스왑에서 사용하여 대중에게 알려진 공식으로, 기존의 거래소에 적용됐던 오더북 알고리즘을 벗아나 새로운 알고리즘을 통해 사용자들의 거래를 자동으로 채결하는 프로세스를 만들었습니다. 지금부터 탈중앙화 거래소에 사용되는 Constant Product Market Maker(CPMM) 공식을 수학적으로 알아보겠습니다. 기존의 거래소는 암호화폐를 사는 사람(매수자)과 파는 .. 2022. 12. 23.
[Solidity] Array Memory에서 사용하는 방법 || Solidity 0.8 || 안녕하세요. 스마트 컨트렉트 개발자 개발이 체질의 최원혁입니다. Solidity는 변수를 정할 때, 데이터가 저장되는 위치를 정의해야 합니다. EVM은 상태(States) 변수와 지역(Local) 변수 두 종류로 나뉩니다. 상태(States) 변수는 EVM의 Storage에 데이터가 저장되며, 스마트컨트렉트의 Data Storage에 보존됩니다. 지역(Local) 변수는 Memory에 저장되는 데이터로 EVM의 런타임이 실행되는 동안 저장되며, 실행이 끝나면 살아지는 휘발성 데이터입니다. EVM에서 함수 외부의 공간에 변수를 정의하면, 자동으로 데이터는 Storage에 저장됩니다. 하지만 함수(function) 내부에서 정의한 변수는 Memory에 저장되어, 함수가 실행되는 동안만 데이터를 보관하고, 실.. 2022. 12. 17.
[DeFi Series] Uniswap 기본 개념 파헤치기 || DEX | AMM | CPMM | Liquidity | Slippage | LP Token || 안녕하세요. 스마트컨트렉트 개발자 개발이 체질의 최원혁입니다. DeFi Series로 소개해드릴 내용은 Uniswap 기본 개념입니다. Uniswap은 암호화폐 시장의 대표적인 탈중앙화 거래소이며, Uniswap이 만들어낸 여러 가지 개념은 DeFi를 대표하는 개념으로 통용될 정도로 중요합니다. 이번 게시글에선 Uniswap을 통해 DEX,AMM,CPMM,Liquidity,Slippage에 대한 개념을 배워 보겠습니다. What is Dex Uniswap ? 유니스왑은 이더리움 네트워크를 대표하는 DEX입니다. DEX란 탈중앙화 거래소(Decentralized Exchange)의 준말로 암호화폐를 거래할 수 있는 DeFi 플랫폼입니다. 암호화폐 거래소하면 대표적으로 업비트,빗썸, 바이낸스 등에서 거래를 .. 2022. 12. 15.
[DeFi Series] BuildBear Fixed Rate Staking Contract 파헤치기 || Staking | Solidity 0.8 || 안녕하세요. 스마트 컨트렉트 개발자 개발이 체질의 최원혁입니다. DeFi Series로 소개해드릴 내용은 BuildBear에서 제공하는 Staking Contract에 대해 알아보겠습니다. About BuildBear BuildBear는 개발자가 자신의 테스트 노드를 생성하고 테스트 네트워크를 구축할 수 있는 플랫폼입니다. 이 플랫폼은 팀 전체와 함께 테스트를 쉽게 수행하고, 복잡한 블록체인 트랜잭션을 수행할 때 내부에서 어떤 일이 발생하는지 이해할 수 있게 도와주는 Smart Contract Develop Tool을 제공합니다. 특히 NFT, ICO, Staking, Factory, DEX 등 다양한 Web3 콘텐츠를 탬플릿으로 제공하여 가상 시나리오를 통해 테스트를 지원합니다. BuildBear is.. 2022. 12. 13.
[Hack Series] Front Running & Sandwich Attack || Block-Chain || KR Web3 Hack Series : Front Running And Sandwich Attack 안녕하세요. 스마트 컨트렉트 개발자 개발이 체질의 최원혁입니다. 이번 Web3 Hack 시리즈는 Front Running And Sandwich Attack에 대해 알아보겠습니다. 위 두가지 취약점은 트랜잭션이 블록체인에 추가되는 과정에서 나타나는 특징을 이용하여 공격자들이 이득을 취하는 공격 방법입니다. 주로 De-fi 프로토콜 및 플랫폼을 이용하는 사람들을 대상으로 공격되며 트랜잭션의 가스비 우선 선행과 채굴 시스템을 이용한 방식으로 진행됩니다. Tansaction이 블록체인에 추가되는 과정 Front Running와 Sandwich Attack는 트랜잭션이 블록체인에 추가되는 과정에서 나타나는 특징을 이용.. 2022. 12. 12.
반응형