본문으로 이동

블록체인 오라클

블록체인 오라클은 결정론적 체인 상태만으로 도출할 수 없는 데이터에 관한 인증된 주장을 컨트랙트에 제공합니다. 안전성은 소스, 보고, 전송, 검증 및 소비자까지 이어지는 전체 경로에 달려 있습니다.

업데이트

교육 목적으로만 제공되며 투자 조언이 아닙니다. 투자에는 손실이 발생할 수 있습니다.

직접 답변

블록체인 오라클은 체인의 결정론적 상태 전이만으로 도출할 수 없는 데이터에 관해 인증된 주장을 컨트랙트에 제공하는 시스템입니다. 가격 피드는 시장 기준값을 보고하고, 풀형 오라클은 사용자가 중계한 서명 업데이트를 검증하며, 옵티미스틱 오라클은 이의가 제기되지 않는 한 보증금이 걸린 주장을 받아들입니다. 검증 가능한 난수와 크로스체인 메시지도 외부 입력 시스템이지만, 그 주장과 보안 모델은 가격 피드와 서로 바꿔 쓸 수 없습니다.

값을 온체인에 기록하면 트랜잭션, 서명, 정족수, 증명 또는 분쟁 결과가 정해진 규칙을 충족했음이 입증됩니다. 외부 시장, 기상 현상 또는 사람의 판단이 객관적으로 참임을 암호학적으로 입증하는 것은 아닙니다. 전체 신뢰 경로에는 관측 현상, 데이터 소스와 거래 시장, 게시자, 집계, 보고서 인증, 전송, 온체인 프록시 또는 검증기, 소비자 검증, 그리고 가치를 이동시키는 업무 행위가 포함됩니다.

탈중앙화 정도는 각 계층에서 따로 평가해야 합니다. 여러 서명자가 하나의 API, 거래소, 클라우드 제공자, 운영자 또는 관리자를 공유할 수 있습니다. 최신 서명 중간값도 잘못된 거래쌍이나 소수 자릿수를 사용하거나, 유동성이 부족한 시장을 반영하거나, 소비자의 거래 규모에 안전하지 않을 수 있습니다. 소비자는 여전히 식별 정보, 단위, 상태, 타임스탬프, L2 가용성, 익스포저 한도, 대체 동작 및 복구를 책임져야 합니다.

작동 방식

  1. 체인과 블록, 소비자 컨트랙트와 행위, 정확한 피드 또는 프록시 주소와 피드 ID, 구현 버전, 기준/호가 거래쌍, 소수 자릿수 또는 지수, 시장 운영 시간 및 위험 노출 가치를 확정합니다.
  2. 관측 현상과 거래 시장에서 게시자, 소스 집계, 서명자 또는 정족수 집계, 전송, 온체인 검증, 프록시 통제 및 소비자 로직까지 전체 신뢰 경로를 추적합니다. 소스, 운영자, 인프라 및 관리자의 독립성은 각각 검증합니다.
  3. 배포된 인터페이스와 보고서를 디코딩합니다. 피드 식별 정보, 서명 또는 증명과 도메인, 시퀀스 또는 라운드, 서명된 답, 상태 또는 신뢰 구간, 소스 타임스탬프, 온체인 업데이트 시각, 재전송 동작, 리버트 동작 및 업그레이드 상태를 검증합니다.
  4. 단위는 한 번만 정규화하고 범위, 부호 및 타임스탬프를 명시적으로 검사합니다. 소스 관측·게시 시각, 보고서 생성 시각, 소스 체인 포함 시각, 중계 최종성, 대상 체인 업데이트 시각 및 소비자 블록 시각을 구분합니다.
  5. 행위별 maxAge, 괴리, 신뢰 구간 및 교차 소스 규칙을 적용합니다. 지원되는 L2 배포에서는 시퀀서 상태와 복구 유예 기간을 따로 확인하고, 합성값의 최신성은 필요한 의존 항목 중 가장 오래된 값으로 제한합니다.
  6. 기준값을 실제 체결 가능한 시장 깊이와 비교하고, 조작 또는 매수 비용을 소비자의 차입, 발행, 청산, 거래 또는 결제 익스포저와 비교합니다. AMM 현물 가격과 TWAP 구성은 풀 및 버전별로 다뤄야 합니다.
  7. 행위별 정상, 성능 저하, 일시 중지 및 복구 상태를 정의합니다. 가능한 경우 안전한 부채 상환이나 담보 추가를 유지하고, 소스와 설정을 모니터링하며, 누락·오래됨·오류·조작 보고서를 가정해 훈련하고, 복구 후 영향을 받은 모든 잔액과 행위를 대사합니다.

푸시와 풀은 전달 방식을 설명할 뿐 보편적인 결제 또는 신뢰 모델은 아닙니다. 게시자가 서명 보고서를 만들고 임의의 사용자가 이를 중계하면서 업데이트 수수료를 낼 수 있습니다. 하트비트와 괴리 설정은 게시를 유발할 수 있지만 전달 보장이나 소비자의 최신성 한도는 아닙니다. 대체값 또는 마지막 정상값은 통제된 성능 저하 모드이며, 방향, 단위, 경과 시간, 독립성 및 허용 행위를 다시 검증해야 합니다.

계산 예시

  • 대출 임계값. 한 포지션의 담보가 10 ETH, 오라클 가격이 3,000 USD/ETH, 부채가 18,000 USD, 청산 임계값이 75%라고 하겠습니다. 담보 가치는 30,000 USD, LTV는 60%이며 healthFactor = 10 * 3,000 * 0.75 / 18,000 = 1.25입니다. 청산 개시 가격은 18,000 / (10 * 0.75) = 2,400 USD/ETH입니다. 2,300 USD/ETH에서 건전성 지수는 0.9583333333, 부채/담보 비율은 78.2608695652%이므로 청산 대상입니다. 다만 청산 보너스, 수수료 및 실행 영향을 반영하기 전 명목 담보 23,000 USD는 여전히 부채보다 큽니다.
  • 단위 오류. 원시 답 250,000,000,0008 decimals가 적용되면 2,500 USD를 뜻합니다. 이를 10^18로 잘못 나누면 0.00000025 USD가 되어 가격을 10^10배 과소평가합니다. 유효한 서명과 최신 타임스탬프도 소비자의 단위 오류를 고치지 못합니다.
  • 집계 방식 선택. 관측값 [99, 100, 100, 101, 160]의 중간값은 100, 산술 평균은 112로 중간값 대비 12% 차이가 납니다. 이 학습용 데이터에서는 중간값이 하나의 높은 이상치에 견디지만, 다섯 보고자가 모두 침해된 동일 API에 의존해 130을 보고하면 중간값도 130입니다.
  • 행위별 최신성. consumerClock = 1,800,000,000 시점에 보고서의 sourceTimestamp = 1,799,998,200이면 age = 1,800 seconds입니다. 신규 차입의 maxAge = 900 seconds900 seconds 초과로 거부합니다. 상환 경로의 maxAge = 3,600 seconds는 받아들이며 여유는 1,800 seconds입니다. 같은 보고서도 익스포저를 늘리는 행위에는 안전하지 않고 줄이는 행위에는 허용될 수 있습니다.

위험

  • 체인, 배포, 구현 또는 네트워크 환경이 잘못되었습니다.
  • 프록시, 집계자, 피드 ID, 자산 또는 컨트랙트 버전이 잘못되었습니다.
  • 기준/호가 방향이 뒤집히거나 표시 통화가 일관되지 않습니다.
  • 소수 자릿수, 지수, 고정소수점, 부호, 반올림 또는 단위가 맞지 않습니다.
  • 0, 음수, 정의역 밖, 오버플로 또는 절삭된 답을 받아들입니다.
  • 누락, 0, 미래, 이월 또는 잘못 식별된 타임스탬프를 받아들입니다.
  • 소비자 최신성 한도가 자산과 행위에 비해 너무 느슨합니다.
  • 소비자 최신성 한도가 너무 엄격해 서비스 거부를 일으키거나 위험 감소를 막습니다.
  • 하트비트 또는 괴리 설정을 서비스 수준 보장으로 간주합니다.
  • 휴장, 기업 활동, 페그 이탈, 거래 시장 중단 또는 이월 데이터의 의미를 무시합니다.
  • 여러 게시자가 하나의 API, 거래소, 클라우드, 운영자, 키 경로 또는 방법론을 공유합니다.
  • 서명자 임계값, 정족수, 키 보관, 보고서 인증, 도메인 또는 재전송 방지 통제가 실패합니다.
  • 집계, 가중치, 이상치, 신뢰 구간 또는 소스 선택 규칙이 부적절합니다.
  • 소스 유동성이 얕거나, 가장매매가 있거나, 분절되거나, 오래되었거나, 보호 규모에서 조작 가능합니다.
  • 현물 또는 단기 TWAP 조작, 다중 블록 통제, 순서 지정, 검열 또는 MEV가 입력을 바꿉니다.
  • 게시자, 중계, 가스, 혼잡, 재구성 또는 체인 중단 때문에 제때 전달되지 않습니다.
  • L2 시퀀서 상태, 복구 유예 기간, 크로스체인 중계 시계 또는 최종성 의존성을 누락합니다.
  • 프록시, 관리자, 서명자 집합, 설정, 마이그레이션, 일시 중지 또는 피드 폐기 변경을 발견하지 못합니다.
  • 대체값이 오래되거나, 상관되어 있거나, 스케일이 다르거나, 순환 의존적이거나, 안전하지 않은 실패 허용 또는 일률적 실패 차단 경로로 작동합니다.
  • 소비자 익스포저가 조작 또는 매수 비용을 초과하고 모니터링, 한도, 일시 중지, 복구, 청산 및 부실채권 대사도 실패합니다.

일반적인 오해

  • “오라클은 미래를 예측한다.” 대부분의 오라클은 정의된 시점과 대상에 관한 관측, 보고, 증명 또는 해결된 주장을 인증합니다.
  • “서명되었거나 온체인에 있는 데이터는 객관적으로 참이다.” 인증과 합의는 규칙 준수를 입증할 뿐 외부 사실의 경제적 정확성을 입증하지 않습니다.
  • “노드가 많으면 자동으로 독립적인 탈중앙화가 된다.” 소스, 운영자, 인프라, 키 및 거버넌스는 여전히 상관될 수 있습니다.
  • “가장 최신 값은 공정하고 체결 가능한 가격이다.” 최신성은 방향, 단위, 신뢰 구간, 유동성 또는 체결 가능한 깊이를 입증하지 않습니다.
  • “신뢰받는 제공자를 쓰면 소비자 통합 위험이 사라진다.” 애플리케이션은 여전히 배포 식별, 디코딩, 최신성, L2 게이트, 익스포저, 실패 모드 및 복구를 책임집니다.

관련 주제

출처

탐색

위키 검색...