블록체인 오라클 설명

공유
Copied to clipboard!
블록체인 오라클 설명

커뮤니티 제출 - 저자: Vallery Mou


목차


블록체인 오라클이란 무엇인가요?

블록체인 오라클은 외부 정보를 갖고 있는 스마트 콘트랙트를 제공하는 제3자 서비스입니다. 블록체인 오라클은 블록체인과 바깥 세계의 다리 역할을 합니다.

블록체인과 스마트 콘트랙트는 오프 체인 데이터(네트워크 바깥에 있는 데이터)에 접근할 수 없습니다. 그러나 많은 계약상의 합의에서는 이를 시행하기 위한 관련 외부 세계 정보가 필수적입니다.

이 지점에서 오프 체인과 온 체인 데이터 사이의 연결을 제공하는 블록체인 오라클이 사용됩니다. 오라클은 블록체인 생태계 내에서 필수적인데, 이는 스마트 콘트랙트가 작동될 수 있는 범위를 확장하기 때문입니다. 블록체인 오라클이 없다면 스마트 콘트랙트는 자신들의 네트워크 내 데이터에만 접근할 수 있기 때문에 사용이 매우 제한적일 수 있습니다.

블록체인 오라클은 그 자체로 데이터 자료인 것이 아니라, 외부 데이터 자료를 요청하고, 검증하고, 증명하고, 해당 정보를 전달하는 레이어입니다. 오라클을 통해 전송된 데이터는 가격 정보, 성공적인 결제 완료, 센서를 통해 측정된 온도 등 다양한 유형의 것일 수 있습니다.

외부 세계로부터 데이터를 호출하기 위해서는, 스마트 콘트랙트가 실행되어야 하며, 네트워크 자원이 필요합니다. 일부 오라클은 스마트 콘트랙트에 정보를 전달할 뿐만 아니라, 이를 다시 외부 자료로 전송하는 기능도 갖고 있습니다.

다양한 유형의 오라클이 존재하며, 블록체인 오라클 작동 방식은 전적으로 설계 목적에 달려 있습니다. 이번 아티클에서는 몇 가지 설계들을 살펴보도록 하겠습니다.


블록체인 오라클 예시

앨리스와 밥이 미국 대통령 선거 당선자에 대한 내기를 했다고 가정해 보겠습니다. 앨리스는 공화당 후보자가 이길 것이라 믿는 반면, 밥은 민주당 후보자가 이길 것으로 믿고 있습니다. 이들은 내기의 조건에 동의하고 자신들의 자금을 스마트 콘트랙트에 동결시킵니다. 스마트 콘트랙트는 선거 결과에 따라 승자에게 자금을 모두 전송할 것입니다.

스마트 콘트랙트는 외부 데이터와 상호작용할 수 없기 때문에, 해당 경우에는 대통령 선거 결과처럼 오라클이 제공하는 정보에 따라 좌우됩니다. 선거가 끝난 후, 오라클은 신뢰할 수 있는 API를 호출하여 어느 후보자가 이겼는지 알아낸 다음, 해당 정보를 스마트 콘트랙트에 전달합니다. 이후 콘트랙트는 결과에 따라 앨리스 또는 밥에게 자금을 전달합니다.

오라클을 통해 데이터가 전달되지 않는다면, 참가자 중 한 명이 해당 내기의 승자를 조작할 수 있는 방법은 없습니다.


어떠한 블록체인 오라클들이 있나요?

블록체인 오라클은 다양한 특성에 따라 분류될 수 있습니다.

  • 자료 – 데이터가 소프트웨어에서 비롯되는가? 하드웨어에서 비롯되는가?
  • 정보의 방향 – 인바운드인가? 아웃바운드인가?
  • 신뢰 – 중앙화인가? 탈중앙화인가?

하나의 오라클은 다양한 유형으로 분류될 수 있습니다. 예를 들어, 회사 웹사이트에서 정보를 받는 오라클은 중앙화된 인바운드 소프트웨어 오라클입니다.


소프트웨어 오라클

소프트웨어 오라클은 온라인 정보 자료와 상호작용하며, 이를 블록체인으로 전송합니다. 이러한 정보는 온라인 데이터베이스, 서버, 웹사이트 등 근본적으로 웹상의 모든 데이터 자료로부터 얻어질 수 있습니다.

소프트웨어 오라클이 인터넷에 연결되어 있기 때문에 스마트 콘트랙트에 정보를 제공할 수 있을 뿐만 아니라, 실시간으로 정보를 전송할 수 있습니다. 이러한 특성 때문에 소프트웨어 오라클은 가장 일반적인 블록체인 오라클 유형 중 하나입니다.

소프트웨어 오라클에 의해 제공되는 정보에는 일반적으로 거래소 수수료, 디지털 자산 가격, 실시간 운항 정보 등이 포함될 수 있습니다.


하드웨어 오라클

일부 스마트 콘트랙트는 실제 세계와 접속되어야 합니다. 하드웨어 오라클은 물리적 세계로부터 정보를 얻도록 설계되어 있으며, 이를 스마트 콘트랙트에서 사용할 수 있게 합니다. 이러한 정보는 전자 센서, 바코드 스캐너, 기타 정보 판독 기기를 통해 전달될 수 있습니다.

하드웨어 오라클은 기본적으로 실제 세계의 사건들을 디지털 값으로 “변환”하여 스마트 콘트랙트가 이해할 수 있게 만듭니다.

일례로 이는 물품을 운송하는 트럭이 적재 구획에 도착했는지 확인하는 센서일 수 있습니다. 만약 그렇다면 해당 센서는 스마트 콘트랙트에 정보를 전달하여 이에 근거한 결정을 내릴 수 있습니다.

유사한 주제에 대해 더 읽어보고 싶으시다면 블록체인 활용 예시: 공급망을 확인해 보시기 바랍니다.


인바운드 오라클과 아웃바운드 오라클

인바운드 오라클은 외부 자료에서 스마트 콘트랙트로 정보를 전달하는 반면, 아웃바운드 오라클은 스마트 콘트랙트에서 외부 세계로 정보를 전달합니다.

일례로 인바운드 오라클은 센서에 의해 측정된 온도를 알려주는 스마트 콘트랙트일 수 있습니다. 아웃바운드 오라클 예로는 스마트 락(smart lock)을 들 수 있습니다. 자금이 주소에 입금되면, 스마트 콘트랙트는 해당 정보를 아웃바운드 오라클을 통해 스마트 락을 해제하는 메커니즘에 전송합니다.


중앙화 오라클과 탈중앙화 오라클

중앙화 오라클은 단일 주체에 의해 통제되며, 해당 주체는 스마트 콘트랙트에 단독으로 정보를 제공합니다. 단 하나의 정보 자료를 사용하는 것은 위험할 수 있는데, 계약의 효율성이 주체가 통제하는 오라클에 전적으로 달려있기 때문입니다. 또한, 나쁜 행위자에 의한 모든 악의적인 방해가 스마트 콘트랙트에 직접적인 영향을 미치게 됩니다. 중앙화 오라클의 주된 문제는 공격과 약점에 대해 콘트랙트를 취약하게 만드는 단일 장애 지점이 존재한다는 것입니다.

탈중앙화 오라클은 거래 상대방 위험을 방지하며, 퍼블릭 블록체인과 같은 목표들을 일부 공유합니다. 이들은 단일한 자료원에 의존하지 않기 때문에 스마트 콘트랙트에 의해 제공되는 정보의 신뢰성을 높입니다. 스마트 콘트랙트는 데이터 유효성과 정확성을 결정하기 위해 다수의 오라클에 요청을 보냅니다. 이것이 바로 탈중앙화 오라클을 합의 오라클이라 부를 수 있는 이유입니다.

일부 블록체인 프로젝트는 다른 블록체인에 탈중앙화 오라클 서비스를 제공합니다. 탈중앙화 오라클은 특정 결과의 타당성이 사회적 합의를 따라 확인되는 예측 시장에서도 유용할 수 있습니다.

탈중앙화 오라클은 신뢰의 불필요성을 달성하는 것을 목표로 하지만, 신뢰가 필요하지 않은 블록체인 네트워크와 같이 탈중앙화 오라클이 전적으로 신뢰를 제거한다기보다는, 이를 많은 참여자들에게 분산시킨다는 점을 알아둘 필요가 있습니다.


콘트랙트 특화 오라클

콘트랙트 특화 오라클은 하나의 스마트 콘트랙트에 사용하기 위해 설계된 것입니다. 이는 만약 누군가 여러 개의 스마트 콘트랙트를 사용하고자 한다면, 이에 비례하는 수의 콘트랙트 특화 오라클을 개발해야 함을 의미합니다.

해당 유형의 오라클은 시간이 많이 걸리고 유지 비용이 많이 드는 것으로 간주됩니다. 다양한 자료에서 데이터를 추출하고자 하는 회사들은 해당 접근 방법이 무척 비현실적이라 생각할 수 있습니다. 반면, 콘트랙트 특화 오라클은 처음부터 끝까지 특정 사용 사례에 맞춰 설계될 수 있기 때문에, 개발자가 이를 특정 요건에 맞게 조정할 수 있는 높은 유연성을 갖고 있습니다.


휴먼 오라클

때로는 특정 분야에 전문 지식을 가진 개인들도 오라클 역할을 할 수 있습니다. 이들은 다양한 자료로부터 정보를 조사하고 진위를 검증할 수 있으며, 해당 정보를 전환해 스마트 콘트랙트에 전달할 수 있습니다. 휴먼 오라클이 암호 방식을 통해 자신들의 신원을 증명할 수 있기 때문에, 사기꾼이 자신의 신원을 속이고 변질된 데이터를 제공할 가능성은 상대적으로 낮습니다.


오라클 문제

스마트 콘트랙트는 오라클이 제공하는 데이터에 기반해 결정을 내리기 때문에, 이는 건강한 블록체인 생태계의 핵심 요소입니다. 오라클 설계가 직면하고 있는 주된 문제는 오라클이 위협받을 때, 그것에 의존하는 스마트 콘트랙트도 위협을 받는다는 것입니다. 흔히 이를 오라클 문제라 합니다.

오라클이 주요 블록체인 합의의 일부가 아니기 때문에, 불행히도 이는 퍼블릭 블록체인이 제공할 수 있는 보안 메커니즘에 포함되지 않습니다. 제3자 오라클과 신뢰가 필요 없는 스마트 콘트랙트 실행 간의 신뢰 상충은 대부분 해결되지 않은 문제로 남아 있습니다.

악의적인 행위자가 오라클과 콘트랙트 사이에 공급되는 데이터에 접근해 데이터를 수정하거나 변조하는 중간자 공격 또한 위협이 될 수 있습니다.


마치며

블록체인의 세계적인 채택을 위해서는 스마트 콘트랙트와 외부 세계 사이의 커뮤니케이션을 가능하게 하는 신뢰할 수 있는 메커니즘이 필수적입니다. 블록체인 오라클이 없다면 스마트 콘트랙트는 네트워크 안에 이미 존재하는 정보에만 의존해야 할 것이며, 이로 인해 그 성능이 상당히 제한될 것입니다.

탈중앙화 오라클은 시스템적 위험을 제거할 수 있는 보호 메커니즘을 도입할 수 있는 잠재력을 갖고 있습니다. 블록체인 오라클은 블록체인 생태계 성장을 위해 안전하고, 신뢰할 수 있고, 신뢰가 필요 없는 방식으로 구현되어야 할 중요한 구성 요소 중 하나입니다. 

Loading