BTC
ETH
HTX
SOL
BNB
시장 동향 보기
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Ethereum DEX "클립" 트랜잭션 공격에 대한 상세 분석

星球君的朋友们
Odaily资深作者
이 기사는 약 1618자로, 전체를 읽는 데 약 3분이 소요됩니다
Ethereum DEX "클립" 트랜잭션 차익 거래 및 BCH 분할 과거.
AI 요약
펼치기
Ethereum DEX "클립" 트랜잭션 차익 거래 및 BCH 분할 과거.

편집자 주: 이 기사의 출처는번개 HSL(ID: H13116885), 저자 : Huang Shiliang, Odaily에서 승인을 받아 복제했습니다.

번개 HSL(ID: H13116885)

번개 HSL(ID: H13116885)

, 저자 : Huang Shiliang, Odaily에서 승인을 받아 복제했습니다.
특별한 종류의 차익거래가 이더리움 네트워크에 나타났는데, 이는 2018년 말 BCH와 BSV 사이의 분할로 이어진 기능 업그레이드인 거래 주문을 규제하는 CTOR를 떠올리게 합니다.
보조 제목
Clip Uniswap 거래 차익 거래
"클립 거래" 차익 거래 공격의 도덕적 관점에 신경 쓰지 말고 이것이 어떤 종류의 검은 기술인지 알아 봅시다.
탈중앙화 거래소인 유니스왑의 거래에는 다음과 같은 차익거래 논리가 있습니다. 거래 쌍 USDT/ETH를 예로 들어 보겠습니다.
사용자, 즉 피해자는 uniswap의 usdt/eth 트랜잭션 쌍에서 ETH를 구매하기 위해 usdt를 사용하여 트랜잭션 tx1을 보냈습니다.
usdt/eth 펀드 풀의 초기 값이 (x, y)라고 가정합니다. 그것은 x usdt, y ETH입니다.
사용자는 거래 tx1을 시작하여 dx usdt를 dy ETH로 교환합니다. dx는 결정된 사용자 지출 금액이지만 dy의 값은 트랜잭션이 패키지되기 전의 범위입니다.
이해의 편의를 위해 공격자를 마이닝 풀로 직접 정의합니다. 기술적으로는 마이닝이 아닌 풀도 처리할 수 있습니다.
공격자는 dy' ETH와 교환하여 dx' usdt를 사용하여 트랜잭션 tx0을 구성합니다.
그런 다음 공격자는 dx' usdt와 교환하여 dy'' ETH를 사용하여 트랜잭션 tx2를 구성합니다.
마이닝 풀로서 공격자는 3개의 트랜잭션 tx0, tx1 및 tx2를 동일한 블록에 패킹하고 엄격하게 tx0, tx1 및 tx2의 순서로 정렬하고 패킹할 수 있습니다.
결국 공격자는 (dy''-dy'-tx0 및 tx2의 0.3% 수수료 가스) ETH 수익을 얻게 됩니다.
전체 과정은 이렇습니다.
1. 공격자는 사용자의 트랜잭션 tx1을 발견하고 Usdt를 사용하여 ETH를 구매합니다.
2. 공격자는 트랜잭션 tx0을 먼저 정리하고 ETH의 가격을 올리고 dx' usdt로 dy' ETH를 매수합니다.
4. 그런 다음 공격자는 tx2 거래를 준비하고 dy''ETH를 판매하고 자신의 dx'Usdt 비용을 회수합니다. 그리고 2단계와 3단계 모두 ETH의 가격을 올렸기 때문에 dy''는 dy'보다 작아야 합니다. (dy''-dy'-fee-gas)는 이익입니다.

위의 과정에서 공격자는 스마트 계약을 사용하여 최종(dy''-dy'-fee-gas)이 0보다 큰지 여부를 계산할 수 있습니다. 그렇다면 "package tx0-tx1-tx2"를 실행하고 그렇지 않으면 실행하지 않습니다. . 무위험 차익거래가 가능합니다.

전체 공격의 핵심은 공격자가 세 트랜잭션의 패키징 순서를 정할 수 있다는 것입니다.
일반적으로 이더리움 트랜잭션은 사용자가 지불한 가스 요금에 따라 블록에서 정렬됩니다. 그러나 이것은 합의 규칙이 아니며 마이닝 풀은 임의의 순서로 정렬될 수 있습니다. 비채굴 풀 공격자 "클립 트랜잭션 공격"은 가스 수수료를 사용하여 두 트랜잭션의 순서를 정렬합니다.
보조 제목
BCH 2018년 말 표준 거래 주문 업그레이드
이 "클립 트랜잭션" 공격 전략은 2018년 말 BCH와 BSV 간의 분할을 생각나게 합니다.
2018년 11월 15일 BCH의 업그레이드 기능에는 트랜잭션 순서를 규제하는 CTOR라는 기능이 있습니다. CTOR는 트랜잭션 ID의 오름차순으로 블록의 트랜잭션을 정렬합니다.
업그레이드 전 BCH 블록의 패키지 트랜잭션 정렬 규칙을 토폴로지 정렬 TTOR라고 하며 이는 본질적으로 합의 규칙이 아니며 마이닝 풀은 트랜잭션 정렬을 임의로 정렬할 수 있습니다.
그러나 CTOR는 합의 규칙으로 블록에 패키지된 트랜잭션의 순서를 사용합니다. 즉, 마이닝 풀은 트랜잭션 ID의 오름차순으로만 트랜잭션을 패키지하고 정렬할 수 있습니다. 블록 내 모든 트랜잭션의 위치는 합의의 일부가 됩니다.

BCH
DEX
ETH
Odaily 공식 커뮤니티에 가입하세요