Oracle Problem이란?
Oracle Problem은 블록체인이 외부 데이터를 필요로 하지만 스스로 가져올 수 없을 때 생기는 골칫거리입니다. 신뢰할 수 없는 코드라도 ETH 가격이나 오늘의 날씨를 알기 위해 무언가를 신뢰해야 합니다. 창문 너머를 통해 누군가에게 폭이 비가 오는지 물어보고 수프를 시작하는 잠긴 주방을 생각해 보세요.
“그저 어떤 API를 연결하면 끝이다.”라고 말하는 것은 완전히는 아닙니다. 단일 centralized 소스에서 데이터를 끌어오는 것은 새로운 실패 지점과 편향을 도입할 수 있는데, 이것이 바로 Oracle Problem이 경고하는 바입니다.
Oracle Problem 작동 방식
블록체인에서 체인 외부에 존재하는 정보를 원할 때 Oracle Problem이 나타납니다. 간단한 투어:
- Step 1: 데이터가 필요한 스마트 컨트랙트 호출이 가격 데이터나 매치 스코어와 같은 데이터를 요구합니다.
- Step 2: 오라클이 여러 거래소 등 소스에서 데이터를 가져와 패키징합니다.
- Step 3: 오라클이 체인에 데이터를 게시해 컨트랙트가 읽을 수 있게 합니다.
- Step 4: 컨트랙트가 작동합니다. 대출 청산이나 지급액 해제가 그 예시입니다.
- Step 5: 피드가 잘못되었거나 늦었거나 조작되면 결과가 왜곡되고 가치가 잘못된 방향으로 움직입니다.
그래서 Oracle Problem은 신뢰를 해치지 않고 외부로부터 진실을 가져오는 문제에 관한 것입니다. 그림은 그려지죠.
Why Oracle Problem Matters
암호화폐가 실제 사물에 작동하는 데 관심이 있다면 이 문제는 중요합니다.
- Benefit: 더 나은 oracle 설계는 자금 로직의 정직성을 유지하게 하여 청산, 지급, 거래가 공정한 데이터로 이뤄지게 합니다.
- Perspective: 가격 피드, 스포츠 베팅, 업데이트되는 NFT 특성 뒤의 조용한 문제로, 실패하면 분위기가 금방 나빠집니다.
- Relevance: DeFi, 게임, 예측 시장, 체인 상 보험에서도 찾아볼 수 있습니다.
많은 소스에서 데이터를 끌고 자주 게시하며 수학적 계산을 보여주는 decentralized oracle 네트워크를 선호하세요. 투명성이 분위기보다 낫습니다.
Key Characteristics of Oracle Problem
이 주제를 모양 있게 만드는 요소들:
- Trust: 데이터가 외부 당사자로부터 올 때에도 신뢰 최소화를 유지하려고 합니다.
- Finality: 데이터가 체인에 도달하면 사실상 immutable해져 잘못된 입력이 남아 있게 됩니다.
- Latency: 피드는 신선해야 하지만 체인에 과도한 요청을 하지 않도록 해야 합니다.
- Diversity: 여러 독립 소스와 리포터가 단일 실패 지점을 낮춥니다.
- Incentives: 리포터는 진실과 일치하는 보상과 벌칙으로 게임에 참여합니다.
Variations
Oracle Problem은 원하고자 하는 데이터와 흐름에 따라 다른 얼굴을 보여줍니다:
- Inbound: 체인으로 들어오는 실제 데이터, 예를 들면 가격이나 날씨.
- Outbound: 컨트랙트의 결정이 지급 레일이나 게임 서버로 전송됩니다.
- Push: 주기적으로 체인을 업데이트하는 피드로 요청 없이 작동합니다.
- Pull: 필요할 때만 데이터를 요청해 비용을 절감합니다.
- Signed: 데이터 공급자가 체인 밖에서 값을 서명해 누구나 소스를 확인할 수 있게 합니다.
- Committee: 값 게시 전에 다수의 리포터가 합의에 도달합니다.
Oracle Problem은 단순히 기술적인 문제가 아닙니다. 누구를 신뢰하고, 어떻게 보상하며, 그들이 속이더라도 어떻게 될지에 대한 사회적 문제이기도 합니다. 이를 해결하지 않으면 코드의 약속은 여전히 sideways로 흘러갈 수 있습니다.
Example
대출 프로토콜이 가격 피드를 읽고 ETH 가격이 1% 하락하면 대출이 청산되고 몇 시간 뒤 피드가 한 거래소가 이상하게 작동해 잘못된 것임을 알게 되는 전형적인 Oracle Problem입니다.
Fun Fact
"Oracle"은 고대 예언자들이 신들을 대신해 말하던 것에서 유래했습니다; 암호화에서는 가격과 비가 오는 것을 확인하도록 요청하는데, 더 시적이지는 않지만 훨씬 검증 가능합니다.
Wrap-Up
Oracle Problem을 한 줄로 요약하면: 사용자가 당신을 믿기만 하도록 만들지 않고 체인에 외부 진실을 가져오는 것. 그것을 정확하게 이해하면 나머지는 클릭되기 시작합니다, Rolex가 Reddit 토론과 만나는 지점에서.