오라클(Oracles)은 블록체인과 실제 세계를 연결하는 인터페이스입니다. 블록체인은 고립된 생태계이기 때문에 현실 세계에서 데이터를 가져올 수 없습니다. 이를 오라클이 연결해 주는 역할을 합니다. 이번 글에서는 블록체인 오라클의 기본 개념과 장단점에 대해 알아보겠습니다.
블록체인의 오라클이란
일반적인 의미에서 오라클(Oracle)은 여러 가지 뜻이 있습니다. 원래 오라클은 고대 그리스 및 로마에서 신들의 의지나 미래에 대한 조언을 전달하는 성소나 신전, 혹은 그 신전에 있는 제사장이나 예언자를 지칭했습니다. 대표적인 예로는 델포이의 아폴로 신전이 있습니다. 또는, 신적인 통찰력이나 초자연적인 힘을 통해 미래를 예측하거나 중요한 조언을 제공하는 메시지나 선언을 의미하기도 합니다.
정보 기술 분야에서 오라클은 시스템이나 프로그램이 올바른 동작을 하는지 검증하는 데 사용되는 외부 데이터 소스를 가리키는 용어로 사용됩니다. 예를 들어, 테스트에서 예상 결과를 제공하는 기능이나 도구를 ‘테스트 오라클’이라고 할 수 있습니다. 블록체인 기술에서는 오라클을 외부의 실제 세계의 데이터를 스마트 컨트랙트에 제공하는 시스템이나 서비스를 의미합니다.
외부 데이터에 대한 블록체인 사용
비트코인(또는 다른 블록체인)을 기반으로 구축된 탈중앙화 거래소에는 암호화폐의 환율이 필요합니다. 이때 오라클을 통해서만 데이터에 액세스할 수 있습니다. 예를 들어 탈중앙화 금융(DeFi) 애플리케이션은 환율 데이터에 대한 액세스 없이는 작동할 수 없습니다.
반면, 보험이나 예측 시장에서는 실제 사건에 대한 정보를 제공하는 피드가 필요합니다. 오라클은 현실 세계의 데이터를 스마트 컨트랙트에 기록할 수 있도록 가교 역할을 합니다. 또, 디파이(DeFi) 외부에서는 예측 시장에서 당첨된 베팅에 보상금을 지불하거나, 보험에서 분쟁을 해결하는 데 실시간 데이터가 필요합니다.
오라클의 작동원리
현재 시중에는 다양한 종류의 오라클 프로토콜이 있습니다. 그 가운데 체인링크가 가장 잘 알려져 있습니다. 다음은 오라클의 작동 원리입니다.
데이터 수집: 오라클은 다양한 외부 데이터 소스로부터 정보를 수집합니다. 이 데이터 소스는 웹 사이트와 정부 기록, 금융 시장 데이터, 기상 정보 등 다양할 수 있습니다.
데이터 검증: 수집된 데이터는 검증 과정을 거칩니다. 일부 오라클은 여러 소스로부터 같은 데이터를 수집하여 데이터의 정확성과 신뢰성을 높입니다.
블록체인 통합: 검증된 데이터는 스마트 계약이 이해하고 사용할 수 있는 형식으로 변환되어 블록체인 네트워크에 제공됩니다. 이 데이터는 스마트 컨트랙트의 조건을 충족시키거나 특정 행동을 촉발시키는 데 사용됩니다.
스마트 계약 실행: 스마트 컨트랙트는 오라클로부터 받은 데이터를 바탕으로 조건이 충족되었는지를 판단하고, 해당 조건에 따라 자동으로 계약 내용을 실행합니다. 예를 들어, 보험금 지급, 금융 거래, 자동화된 배송 확인 등이 이에 해당할 수 있습니다.
오라클의 유형
오라클은 블록체인과 실제 세계 사이의 연결 고리를 제공함으로써 스마트 계약의 유용성과 적용 범위를 대폭 확장시킵니다. 그러나 오라클 문제로 불리는 신뢰성 문제를 해결하기 위한 다양한 접근 방식이 계속해서 연구 및 개발되고 있습니다. 다음은 오라클의 대표적인 유형입니다.
중앙 집중식 오라클: 단일 데이터 소스 또는 단일 오라클이 데이터를 제공합니다. 이는 처리 속도는 빠르지만, 중앙 집중화된 구조 때문에 조작 가능성이나 단일 실패 지점 문제를 내포할 수 있습니다.
분산 오라클: 여러 오라클이 동일한 데이터를 제공하여 신뢰성을 높이는 방식입니다. 이는 중앙 집중식 오라클의 단점을 극복하기 위해 사용되며, 다양한 소스로부터의 데이터를 통합하여 보다 안정적인 데이터를 스마트 계약에 제공합니다.
컨센서스 기반 오라클: 여러 오라클이 데이터를 제공하고, 그 데이터가 네트워크에 의해 검증되어야 할 때 사용됩니다. 데이터의 진위를 결정하기 위해 네트워크 참여자들 사이의 합의가 필요합니다.
오라클의 사례
다음은 대표적인 오라클입니다. 이 분야는 계속 변화 발전하고 있습니다.
리얼리티닷이드(Reality.eth)
리얼리티닷이드(Reality.eth, 이전 RealityKeys)는 단순하고 독특한 기능과 디자인으로 많이 알려져 있습니다. 이 프로토콜의 아이디어는 이미 존재하는 데이터 소스를 활용하는 것이 아니라 스마트 컨트랙트를 위한 지식을 생성하는 것입니다.
데이터가 필요할 때 프로토콜에 질문을 던집니다. 그러면 답을 알고 있는 사용자가 답변을 제출할 수 있습니다. 다른 사용자가 이의를 제기하지 않는 한 답변이 수락됩니다. 분쟁이 해결되지 않으면 질문은 외부 중재자, 일반적으로 탈중앙화 법원인 클레로스(Kleros)에 제출됩니다.
트루스코인(Truthcoin)
트루스코인(Hivemind)은 어거(Augur)나 델파이시스템즈(DelphiSystems)와 같은 프로젝트에 영감을 주었을 가능성이 높습니다. 이 프로토콜은 조정을 해결하는 데 초점을 두고 있습니다. 트루스코인의 리포터는 예측 시장에 등록된 이벤트의 결과에 투표해 리포터의 평판을 나타내는 투표 코인을 스테이킹할 수 있습니다. 투표한 결과가 초점이 아닌 경우 리포터의 투표 코인은 삭감됩니다. 그렇지 않으면 보상을 받습니다. 트루스코인은 여전히 비트코인 블록체인을 지원하는 몇 안 되는 오라클 중 하나이며 사이드체인을 사용해 메인넷에 미치는 계산 영향을 줄입니다.
프러버블 씽즈(Provable Things)
프로퍼블 씽즈(Provable Things,이전 Oraclize)는 체인링크와 같은 최신 오라클의 선구자였습니다. IF/THEN 문을 가리키는 흐름 제어(flow control)라는 개념에서 영감을 얻었습니다. 이는 컴퓨터 과학에서 일련의 동작을 생성하는 데 사용됩니다. 예를 들어, 사용자가 마우스 오른쪽 버튼을 클릭하면 THEN이 작업을 수행합니다.
비트코인 스크립트에는 “이 조건이 충족되면 이 트랜잭션을 수행합니다.”라고 명시할 수 있습니다. 오라클라이즈는 진본 증명(proof-of-authenticity)을 통해 조건을 검증합니다. 이는 데이터가 스마트 컨트랙트에 기록되기 전 변경되지 않았음을 나타냅니다.
오라클의 약점
하지만 오라클의 데이터 수집 방법에 약점도 있습니다. 무엇이 있는지 자세히 살펴보겠습니다.
경제적 인센티브
오라클의 경제적 인센티브는 규칙을 따르는 행위에 대해 보상을 제공함으로써 작동합니다. 그러나 이러한 보상이 규칙을 어기는 것보다 높지 않다면 인센티브는 효과가 없습니다. 또한, 이러한 인센티브는 플랫폼에 해를 끼치기 위해 고의로 처벌을 받는 등의 비합리적인 행동을 막을 수 없습니다. 특히 암호화폐 공간의 변동성을 고려할 때, 규칙을 따름으로써 장기적으로 더 높은 수익을 보장받는다는 확신도 없습니다. 플랫폼이나 토큰 가격이 폭락한다면, 정직한 오라클의 보상도 같이 떨어질 것입니다.
오작동 및 데이터 조작 위험
아직 널리 인정받는 오라클 계약 표준이 없기 때문에, 개발자가 작성한 오라클 계약은 기능 장애를 겪을 수 있습니다. 비용을 절감하기 위해 전문 회사에 의한 감사를 받지 않은 계약은 심각한 결과를 초래할 수 있는 버그를 포함할 수 있습니다. 또 오라클이 제공하는 데이터가 외부 소스로부터 오는 경우, 이 데이터가 조작되거나 오염될 수 있습니다. 이는 스마트 컨트랙트의 실행 결과에 잘못된 영향을 미칠 수 있습니다.
시빌 공격 및 보안 취약성
시빌 공격(Sybil attack)은 한 개인이 여러 개의 가짜 신원을 생성하여 네트워크의 일부를 조작하려고 시도하는 보안 공격 유형입니다. 이 공격은 주로 피어투피어 네트워크, 분산 시스템, 그리고 온라인 평가 시스템에서 볼 수 있으며, 블록체인과 같은 분산 원장 기술에서도 일반적입니다.
예를 들어, 블록체인 네트워크에서 투표 기반의 시스템이나 분산된 오라클 시스템에서 실빌 공격을 시도할 수 있습니다. 공격자는 여러 개의 가짜 계정을 만들어서 투표 과정을 조작하거나 데이터의 신뢰도를 떨어뜨릴 수 있습니다. 이렇게 하면 실제로는 소수의 사람들이 대다수의 의사결정 권한을 행사하는 것처럼 보이게 만들 수 있습니다.
이러한 공격은 네트워크의 의사결정 구조를 왜곡하고, 신뢰성을 저하시키며, 전체 시스템의 안정성에 해를 끼칠 수 있습니다.
비용 문제
고품질의 데이터 소스를 유지하고, 오라클 네트워크의 인프라를 관리하는 데 상당한 비용이 발생할 수 있습니다. 이는 특히 작은 프로젝트나 초기 단계의 블록체인 프로젝트에 부담이 될 수 있습니다.
규제와 법적 불확실성
오라클이 데이터를 수집하고 처리하는 방법은 국가나 지역에 따라 다양한 법적 규제를 받을 수 있습니다. 데이터 프라이버시, 보안, 소비자 보호 관련 법률이 오라클의 운영에 영향을 줄 수 있습니다.
오라클은 반드시 필요한가
블록체인에서 오라클이 반드시 필요한 것은 아닙니다. 오라클은 블록체인 외부의 데이터를 블록체인 내의 스마트 컨트랙트와 연동하기 위해 사용되는 연결 도구입니다. 이 때문에 블록체인 시스템이 외부 데이터에 의존하지 않는 경우 오라클은 필요하지 않습니다.
예를 들어, 암호화폐 거래소의 트랜잭션 기록처럼 블록체인 내부에서만 완결되는 데이터를 사용하는 경우에는 오라클이 필요 없습니다. 하지만, 실시간 환율이나 날씨 정보와 같은 외부 데이터를 필요로 하는 스마트 컨트랙트에서는 오라클이 필수적입니다.
오라클 없이 문제를 해결하는 방법
- 데이터의 자체 검증: 일부 블록체인 프로젝트는 데이터 소스의 신뢰성을 확보하기 위해 여러 독립적인 소스로부터 데이터를 수집하고, 이를 자체적으로 검증하는 방법을 사용합니다.
- 예측 시장: 사용자들이 스스로 정보를 제공하고 그 정보의 정확성에 대해 투표하면서, 올바른 정보를 제공한 참가자에게 보상을 주는 시스템을 구축할 수 있습니다.
사례
- 체인링크: 대표적인 분산형 금융(DeFi) 오라클 네트워크로, 다양한 데이터 소스로부터 정보를 수집하여 스마트 컨트랙트에 신뢰할 수 있는 데이터를 제공합니다.
- 어거(Augur): 예측 시장 플랫폼으로, 사용자들이 미래의 사건에 대해 베팅하고 결과가 실제로 일어나면 보상을 받습니다. 이 과정에서 오라클이 중요한 역할을 하지만, 사용자가 직접 정보를 제공하고 검증하는 형태입니다.
오라클의 필요성은 프로젝트의 성격과 필요에 따라 다릅니다. 각 블록체인은 자신의 요구 사항에 맞는 최적의 도구를 찾아야 합니다.
오라클의 미래
고유한 기능을 갖춘 다양한 오라클 설계가 존재합니다. 하지만 탈중앙 금융 분야의 수많은 해킹과 조작 사례에서 알 수 있듯이, 아직까지 해킹이 불가능한 것으로 입증된 오라클은 없습니다.
최근 이 분야에 대한 관심이 높아지고 있어 앞으로 더욱 독특하고 강력한 오라클을 기대할 수 있습니다. 오라클의 사용을 제한하는 것도 흥미로운 방향이 될 수 있습니다. 뱅코르 프로토콜(Bancor Protocol)에서 도입한 유동성 풀은 오라클이 필요 없는 탈중앙 금융 애플리케이션의 한 예입니다. 다음은 오라클의 중요한 추세와 미래 목표입니다.
분산화의 증가
오라클 서비스의 미래는 더욱 분산화된 형태로 발전할 가능성이 큽니다. 현재 중앙집중형 오라클은 단일 실패 지점을 제공할 수 있기 때문에, 분산화된 오라클 네트워크가 더욱 안정적이고 신뢰할 수 있는 데이터를 제공할 수 있습니다. 이는 블록체인의 탈중앙화 원칙에 부합하며, 네트워크의 보안과 투명성을 더욱 강화할 수 있습니다.
인공지능과의 통합
인공지능(AI) 기술을 오라클 시스템에 통합하는 것은 데이터 처리 및 분석을 자동화하고 최적화하는 데 도움을 줄 수 있습니다. AI는 데이터의 이상 징후를 감지하고 실시간으로 분석하여 보다 정확하고 신뢰할 수 있는 데이터를 제공할 수 있습니다. 또한, AI는 오라클의 응답 시간을 단축하고, 보다 효율적인 데이터 처리를 가능하게 할 것입니다.
새로운 시장과 응용 프로그램의 탐색
오라클은 금융, 보험, 공급망 관리 등 다양한 산업에서 중요한 역할을 할 수 있습니다. 특히, 스마트 컨트랙의 사용이 확대됨에 따라, 신뢰할 수 있는 외부 데이터 소스의 중요성이 증가하고 있습니다. 미래의 오라클은 이러한 다양한 분야에서 새로운 비즈니스 기회를 창출하고, 새로운 시장을 개척하는 데 중요한 역할을 할 것입니다.
규제와 표준의 도입
오라클 시스템의 보급이 증가함에 따라, 관련 규제와 표준도 마련될 것입니다. 이는 오라클 시스템의 신뢰성을 보장하고, 사용자에게 보다 안전한 환경을 제공하는 데 필수적입니다. 규제 기관과 업계는 협력하여 투명성과 보안을 강화할 수 있는 표준을 개발해야 합니다.
보안 기술의 향상
오라클 시스템의 보안을 강화하기 위해 새로운 암호화 기술과 프로토콜이 개발될 것입니다. 이는 오라클을 대상으로 한 다양한 보안 위협, 예를 들어 실빌 공격이나 데이터 조작 등을 방지하는 데 중요합니다. 보안 기술의 발전은 오라클 시스템을 더욱 견고하고 신뢰할 수 있게 만들 것입니다.
이러한 추세와 기술들은 블록체인 오라클의 미래 모습을 형성하는 데 중요한 역할을 할 것이며, 오라클 시스템의 발전은 더욱 다양하고 복잡한 애플리케이션과 시나리오를 지원할 수 있도록 진화할 것입니다.
자주 찾는 질문/답
오라클은 자동화된 기계가 스스로 수집할 수 없는 데이터를 제공하는 도구입니다.
대안을 찾지 않는 한, 오라클은 실제 데이터를 가져오는 데 없어서는 안 될 필수 요소입니다. 따라서 거의 모든 디앱에 필요합니다. 오라클은 블록체인 상호운용성에도 활용됩니다.
오라클은 데이터 피드와 데이터를 집계하는 컨트랙트, 데이터를 가져오는 에이전트, 데이터 전송을 운영하는 프로토콜을 지칭합니다.
다행히도 그렇지 않습니다. 유니스왑과 같은 프로토콜은 오라클이 필요하지 않으며 수학 공식으로 토큰의 가격을 도출합니다. 앞으로는 더 많은 애플리케이션이 완전히 자동화되어 오라클 종속성에서 벗어날 것입니다.
비인크립토 웹사이트에 포함된 정보는 선의와 정보 제공의 목적을 위해 게시됩니다. 웹사이트 내 정보를 이용함에 따라 발생하는 책임은 전적으로 이용자에게 있습니다.
비인크립토는 투자가이드를 통해 독자에게 유익한 양질의 교육 콘텐츠를 제공하기 위해, 콘텐츠를 검증하고 연구하는 데 많은 시간을 할애하고 있습니다.
비인크립토의 파트너사는 글이 게시되는 대가로 수수료를 제공할 수 있으나, 이는 공정하고 정직하고 유용한 콘텐츠 제작 프로세스에 어떠한 영향도 미치지 않습니다.