체인링크를 통해 TCF (Trusted Computation Framework)와 검증된 오라클을 사용한 기업용 스마트 컨트랙트 수요 촉진 방안
Intel Systems Architect 및 TCF Technical Lead 유진 야모쉬(Eugene Yarmosh)와 체인링크 팀 공동 집필
블록체인은 체인링크 오라클을 사용해 트랜잭션 계산을 오프체인인 트러스트 컴퓨트 프레임워크 (Trusted Computation Framework, TCF)로 라우팅 해 개인정보 보호 및 확장성에 대한 기업의 요구 사항을 충족할 수 있습니다.
인텔 블로그의 최신 포스트인 “New Confidential Computing Solutions Emerge on the Hyperledger Avalon Trusted Compute Framework”에 소개된 새로운 디자인 패턴과 그 중요성에 대해 더 잘 이해하기 위해 저희는 퍼블릭 블록체인에 대한 장점 및 한계, TCF 아키텍처의 개요, 그리고 체인링크를 통해 검증 받은 오라클이 온체인과 오프체인 환경의 양방향 연결성을 보장할 수 있는지 기술하겠습니다. 이 시스템이 어떻게 작동되는지, 그리고 금융, 보험, 세계 무역이라는 세가지 업계 유스 케이스를 통해 TCF, 체인링크, 기반 블록체인이 함께 백 엔드 비즈니스 과정을 향상시키고 기업과 소비자 모두의 비용을 절감시킬 수 있는 방법을 설명하겠습니다.
퍼블릭 블록체인 네트워크에서 분산 컴퓨팅의 장점 및 한계
이더리움 스마트 컨트랙트는 다자간 거래 컨트랙트를 강화하는 인프라의 역사를 새롭게 쓰고 있고 관련된 모든 당사자의 계약을 저장, 유지, 실행 및 해결하는 공유 컴퓨팅 플랫폼을 제공합니다. 블록체인에서 컨트랙트가 실행되면 컨트랙트에 참여하는 양당사자는 자신의 계약 의무를 철회하거나 프로세스를 무단으로 변경할 수 없습니다.
스마트 컨트랙트는 계약당사자를 신뢰하거나 계약 행위에 대한 검증을 제3자에게 맡겨 수동으로 하는 것이 아니라 계약 조건을 데이터로 입력, 컴퓨터 코드로 변환해 컨트랙트를 트리거 합니다. 예를 들어 스마트 파생상품 컨트랙트는 시장 데이터에 의해 자동으로 트리거 될 수 있고 무역에서는 상품이 안전하게 도착한 것을 확인할 수 있는 IoT 센서의 데이터를 받아 거래 대금 지불을 진행할 수 있습니다. 데이터 중심의 스마트 컨트랙트는 다자간 워크 플로우에서 인적 마찰을 최소로 줄여 외부 비즈니스 프로세스를 자동화할 수 있는 최적의 솔루션 중 하나입니다.
퍼블릭 블록체인은 뛰어난 운영 투명성과 조작방지실행을 보장하지만 개인정보 보호 및 확장성에 있어서는 한계가 있습니다. 이 두가지 한계는 특히나 내부 및 법적 관점에서 높은 처리량과 트랜잭션 프라이버시가 필요한 기업 수준에서 블록체인 개발 및 도입을 막는 장애 요소입니다.
또 다른 주요 문제는 연결성입니다. 블록체인은 블록체인에 이미 저장된 데이터에 대한 계산만 할 수 있습니다. 이더리움 블록체인을 중앙 데이터베이스로 사용하기 때문에 세계 경제를 원활하게 작동하게 하는데 필요한 대량의 데이터 베이스를 저장하는 것은 비현실적인 해결법입니다. 네트워크 속도를 높이고 비용을 절감하기 위한 온체인 확장안이 있지만 현재 많은 기업들이 개발중인 상태이며 여전히 기업의 수요를 충족시킬 수 있을지는 의문이 있습니다.
이러한 문제를 온체인으로 해결하기보단 오프체인 해결법을 찾는 것이 더 좋습니다. 오프체인 해결안 중 하나는 체인링크 오라클을 사용해 TEE 환경에서 트랜잭션 계산을 TCF로 오프로드 해 오프체인화 시키는 것입니다. 그 과정에서 Town Crier이 온체인과 오프체인 환경에서 양방향 커뮤니케이션을 돕는 가교 역할을 하게 됩니다.
트러스트 컴퓨트 프레임워크(TCF) 및 가치 소개
TCF는 컴퓨팅 집약적인 개인 데이터 처리를 오프체인으로 옮겨 블록체인의 확장성 및 개인 정보 보호 문제를 해결합니다. 다른 비슷한 접근법들은 일반적으로 탄력성과 무결성을 확장성과 개인 정보 보호를 위해 타협합니다. TCF는 오프체인 계산이 정확하고 안전하게 수행되도록 신뢰실행환경을 사용해 이러한 타협을 하지 않아도 작업을 안전하고 정확하게 할 수 있습니다.
먼저 오프체인의 이점을 살펴보겠습니다.
- 오프체인 스마트 컨트랙트 처리는 각 블록체인 노드 단계에서 블록을 복제하지 않아도 되기 때문에 기존 블록체인 트랜잭션보다 효율적입니다.
- 다량의 데이터 트랜잭션을 오프체인으로 보낼 수 있습니다. 예를 들어 창고 온도 센서 스트림의 전체 로우 데이터를 다 기록하는 대신 오프라인에서 사전처리 해 평균, 최저, 최고 온도만 1일 1회 온체인에 기록할 수 있습니다.
- 영상 또는 유전체학을 위한 AI와 같은 복잡한 것은 오프체인으로 처리할 수 있으며 (예: EVM의 한계) 결과는 온체인에 기록될 수 있습니다.
- 유연한 개인 정보 보호 정책을 오프체인에서 구현해 온체인에서 공유할 수 있는 정보, 정보의 양, 어떤 참가자와 공유할지 여부 등을 정해 실행할 수 있습니다.
- 데이터가 암호화된 경우에도 대부분의 경우는 개인 정보 보호 규정으로 인해 데이터를 온체인화 시킬 수 없으며 특히 블록체인 네트워크가 여러 지역에 분산되어 있는 경우 더더욱 어렵습니다. 경우에 따라 오프체인이 데이터를 처리할 수 있는 유일한 옵션입니다.
- 일반적으로 기존 기업의 구 애플리케이션과 외부 데이터 소스의 통합은 일부적으로 오프체인화 하지 않는다면 불가능합니다.
오프체인 수행 자체만으로는 분산된 계산의 가치를 완전히 실현하기 어렵습니다. 그 이유는 블록체인의 차별점인 계산적 신뢰(computational trust)가 뒷받침되지 않기 때문입니다. 계산적 신뢰는 거래의 유효성을 위해 어떤 기관이나 중개인이 아닌 컴퓨터 처리를 사용한다고 가정합니다.
TCF는 신뢰실행환경을 사용해 이 격차를 줄입니다. 예를 들어 오프체인 수행을 위한 Intel-SGX가 있습니다. Town Crier 또한 신뢰실행환경(TEE)을 활용해 블록체인과 작업하기 좋은 몇 가지 요소를 만듭니다.
- 작업 부하 분리: TEE는 OS 커널을 포함해 신뢰할 수 없는 모든 소프트웨어와 작업 부하 실행을 분리할 수 있는 특수한 속성이 있습니다. 결과적으로 심지어 플랫폼 소유자 (예: 클라우드 서버 공급자)도 TEE에서 처리하는 데이터에는 액세스할 수 없습니다.
- TEE 증명: TEE는 제출된 작업 부하가 적절한 하드웨어 기능을 갖춘 플랫폼에서 실행되고, 신뢰할 수 있는 최신의 컴퓨팅 기반 (opcode, firmware)을 사용하며 승인된 알고리즘만을 사용해 작업 부하를 처리한다는 증거를 제공하는 증명 검증 보고서를 제공할 수 있습니다.
- 정책 시행: TCF는 작업 부하 분리 및 TEE 증명 기능을 사용해 데이터 기밀성과 무결성을 보장하고 온체인에 저장할 수 있는 유효한 작업 부하 실행에 대한 암호화 증거를 제공하는 기능을 구현합니다. 여러 소스에서의 데이터는 각자 데이터 소유자에 의해 암호화가 될 수 있으며 TEE 내에서만 해독될 수 있으며 처리 후 폐기됩니다.
TEE를 사용함으로써 TCF는 블록체인의 신뢰적 계산을 데이터, 센서, 연산력 등 오프체인 자산으로 확장합니다. 만약 이 섹션 초입에서 정의한 유스 케이스가 TCF 환경에서 실행된다면 분산 컴퓨팅의 자연스러운 확장 형태가 됩니다.
TCF는 다양한 디앱을 개발하는데 사용할 수 있는 다양한 오프체인 기반의 신뢰할 수 있는 연산 능력을 제공하는 프레임워크입니다. Town Crier의 TEE를 통해 TCF와 체인링크의 조합을 사용한다면 신뢰할 수 있고 검증 가능한 외부 데이터 소스 (일명 “입증된 오라클”)가 필요한 솔루션 구축을 위한 강력한 기반을 제공받을 수 있습니다.
신뢰 계산 프레임워크에 대한 기술적 개요
하단에 있는 다이어그램은 높은 차원의 TCF 아키텍처를 보여줍니다. 파랑색으로 표시된 요소는 대부분의 애플리케이션에 있는 일반적인 기능을 나타냅니다. 주황색으로 표시된 요소는 특정 애플리케이션 별 기능을 나타냅니다. 스마트 컨트랙트는 두가지 색 모두 사용했는데 그 이유는 몇몇 디앱은 기본 실행 설정을 그대로 사용하기도 하고 어떤 디앱은 교체하거나 확장하기 때문입니다.
신뢰할 수 있는 컴퓨트 서비스(TCS)는 신뢰할 수 있는 작업자(worker) (예: 인텔 SGX)를 호스팅 해 작업 명령(Work Order, WO)을 실행할 수 있도록 합니다. 작업자 초기화 과정에서 TCS는 외부 입증 증거 서비스 (예: 인텔 인증 서비스, Intel Authentication Service – IAS)를 통해 작업자의 입증 증거 검증 보고서를 생성합니다. TCS는 작업 명령을 대기시키고 적합한 작업자들에게 작업 명령을 스케줄에 따라 실행하도록 합니다.
또한 TCS는 작업자들이 작업 명령 실행 시 안전하게 외부 데이터 소스에 액세스할 수 있도록 플러거블(pluggable) API를 제공합니다. 뒤이어 제출된 작업 명령 리퀘스트는 리퀘스트 내 임베디드 데이터 또는 외부 데이터를 액세스하기 위한 URI와 같은 레퍼런스를 포함할 수 있습니다. 후자는 주로 큰 데이터 세트, 동적 데이터, 엄격한 개인 정보 보호 요구 사항을 준수해야하는 경우에 특히나 유용합니다. 작업 명령 아웃풋 데이터에도 동일하게 적용됩니다.
스마트 컨트랙트를 통해 TCS에 액세스하는 것을 프록시 모델이라고 칭하는데 그 이유는 블록체인이 프록시 역할을 하기 때문입니다. 이와 반대로 직접 모델(direct model)에서는 요청자(Requester)가 HTTP 리스너(Listener)을 통해 TCS와 직접 상호작용하게 됩니다. 연결성을 가능하게 해주는 옵션이 프록시 모델을 보완해주고 거의 같은 인터페이스를 제공하지만 특정 애플리케이션 요구사항을 지원해주기 위해 사용됩니다. (예: 높은 WO 속도 또는 블록체인에서 데이터를 공유 못하게 하는 개인보호 정책)
한가지 유념해야 할 부분은 TCF는 표준 기반 접근법을 취한다는 점입니다. TCF의 API와 실행은 EEA (Enterprise Ethereum Alliance)가 정의한 오프체인 신뢰할 수 있는 컴퓨팅 사양과 호환되고 이를 바탕으로 합니다.
작업 명령(WO)는 엔드 유저 프론트 엔드 UI (다이어그램에 표시된 것처럼) 또는 (기업 앱 한정) 스마트 컨트랙트, 구 애플리케이션 또는 외부 데이터 소스 어댑터 등입니다.
요청자는 다음 기능을 제공하는 블록체인에서 TCF 스마트 컨트랙트를 통해 TCS에 액세스 할 수 있습니다.
- 시스템 작업자 레지스트리에 대한 엔트리 포인트가 있는 레지스트리 리스트
- TCS가 사용하는 작업자 레지스트리 (보통 TCS 당 1개)를 통해 작업자 별 및 리퀘스터 별 리스트를 통해 적합한 작업자를 찾고 검증
- 작업 명령 리퀘스트 스케줄 관리를 위한 작업 명령 대기 및 결과 전송
작업 명령 실행의 암호화 증거를 남기기 위한 작업 명령 영수증 기록
TCF 디자인은 다른 프레임워크 및 라이브러리를 포함한 더 광범위한 솔루션의 일부로 사용하기 위한 개방형 시스템이라고 가정합니다. 이로 인해 검증되고 탈중앙화된 오라클(하단 다이어그램에 표시된)에 의존해 서비스를 제공하는 체인링크와의 통합에 적합합니다.
체인링크 오라클을 통해 온체인과 오프체인 환경 연결
오라클은 스마트 컨트랙트가 네이티브 블록체인 외부(오프체인)의 데이터 및 시스템에 데이터를 수신하거나 연결하기 위해 사용하는 디지털 매개체입니다. 오라클은 두가지 다른 소프트웨어 애플리케이션이 데이터 교환 호환이 가능하도록 외부 연결 포인트(API)를 재구성해 스마트 컨트랙트를 위한 오프체인 연결성을 제공합니다. 그러면 오라클은 SLA(Service Level Agreement)에 사전 정의된 지침 및 엔드 포인트에 기반해 데이터를 스마트 컨트랙트에 입력 또는 출력할 수 있습니다.
분산형 오라클 네트워크인 체인링크는 데이터 제공자, 웹 API, 기업 시스템, 클라우드 제공자, IoT 기기, 결제 시스템, 다른 블록체인 외 수많은 안전한 데이터를 안정적으로 스마트 컨트랙트에 제공하고 있습니다. 체인링크의 기능은 다음과 같습니다.
- 다양한 데이터 및 연결성을 제공하는 활발한 독립 오라클 시장
- 오라클의 수, 유형 및 데이터 소스의 수, 데이터 합산 전략, 스테이킹 예금, TEE, 믹시클 등을 포함해 오라클 연결을 커스터마이징 할 수 있는 유연성
- 온체인 메트릭을 기반으로 오라클을 평가하기 위한 평판 프레임워크
다양한 탈중앙화 수준, 데이터 합산 및 오라클 선정을 통해 사용자가 그들의 스마트 컨트랙트가 오프체인의 그 어떤 정보와 커뮤니케이션하는지 정의할 수 있는 올인원 네트워크
좋은 데이터와 안정적인 연결이 없으면 블록체인 또는 TCF에서 실행되는 컨트랙트 로직이 안전하고 올바른 방식으로 작동하더라도 잘못된 결과를 생성하게 됩니다. 체인링크는 컨트랙트 실행을 위한 인풋 데이터와 컨트랙트 정산을 위해 아웃풋 데이터를 중계하는 외부 네트워크에게 TCF 신뢰 가능한 연결을 제공할 수 있습니다. 또한 TCF로부터 블록체인에 연산이 정확히 되었다는 것을 입증하기 위한 증거를 전달해 모든 당사자들을 위해 타임스탬프가 찍힌 암호화된 영수증을 생성해 발행할 수 있습니다.
하단에는 과정이 어떻게 진행되는지를 나타내는 간단한 아키텍처를 보여주는 두개의 그림이 있습니다. 첫번째 다이어그램에서는 계류중인 온체인 컨트랙트가 리퀘스트를 생성해 TCF가 작업 명령을 완료하도록 하는 것을 보여줍니다. 체인링크 노드가 두가지 환경에서 메시지를 전달하는 역할을 하며 실행에 필요한 외부 API를 수신합니다.
*녹색 화살표: 일반 텍스트, 적색 화살표: 암호화된 텍스트
두번째 다이어그램에서는 작업 명령 완료 시 TCF가 결과를 온체인 컨트랙트로 다시 보냅니다. 결과를 소비하는 과정 자체가 컨트랙트 완료 또는 온체인 컨트랙트에서 어떤 지불로 이어지는 추가 행위를 트리거하는데 증거로 사용될 수 있습니다.
이제 완전한 아키텍처를 이해했으니 TCF를 통한 스마트 컨트랙트가 어떤 주요 산업에서 백 엔드 프로세스의 운영 효율성을 향상시키고 추가 수입원을 위해 새로운 비즈니스 모델을 찾을 수 있는지 살펴보겠습니다.
금융
DeFi는 퍼블릭 블록체인의 사용이 가장 많이 늘어나고 있는 분야 중 하나입니다. 분산금융은 스마트 컨트랙트를 이용해 사용자들이 돈을 빌리거나 빌려주고, 자신이 가지고 있는 돈으로 이익을 창출할 수 있는 시장을 활발하게 촉진시킬 수 있으며, 내기를 하거나 자산이나 사건에 대한 노출을 높이거나 줄일 수 있는데, 이 모든 활동은 중앙 개입 없이 진행됩니다. 퍼블릭 스마트 컨트랙트에 관련된 디앱은 소매시장에서 사용될 수 있지만, 기업 부문에서는 현재 적용되지 않습니다. 기업 수준에서의 금융은 고도로 규제되고 데이터 보안법이 적용되고 있으며, 실질적인 성장을 위해서는 법정통화에 대한 접근성 및 맞춤화가 필요합니다.
TCF는 당사자들이 모든 조항이 완전히 기밀인 다양한 파생 컨트랙트에 참여할 수 있는 안전한 환경을 제공합니다. 이는 특히 큰 포지션을 취하고 정보 유출로 인해 투자 이득에 손해를 볼 수 있는 OTC 파생상품에 유리합니다. 또한 TCF는 오프체인 계산을 통해 적은 비용으로 한꺼번에 많은 양을 처리해 최종 결제 이전에 컨트랙트를 갱신할 수 있습니다. 체인링크 오라클은 처리에 필요한 필수 시장 데이터를 전달하고, 메타데이터를 규제기관과 저장소로 전송하며, 결제를 위해 컨트랙트를 다양한 지불 레일로 연결합니다.
보험
보험은 수 조 달러에 이르는 글로벌 산업으로, 리스크 관리를 하고자 하는 비즈니스와 개인의 니즈가 그 동인입니다. 보험금 청구를 놓고 보험회사와 계약자 간 의견이 불일치하는 경향으로 미루어 보아, 보험회사와 보험 계약자는 보통 서로를 신뢰하지 못하는 입장에 놓여 있습니다. 즉, 보험계약자는 보험금을 유리하게 받기 위해 좋은 부분을 과장해서 이야기하고, 보험회사는 보험사기를 방지하기 위해 보험료를 인상합니다. 보험 증권을 신뢰에 기반한 매뉴얼 검증 모델에서 벗어나 데이터를 통해 청구 건을 자동으로 처리하는 공유 기반으로 옮긴다면, 보험 업계는 백 엔드에서 비용을 절감할 수 있고 소비자와의 신뢰도 회복할 수 있습니다. 퍼블릭 블록체인은 부정조작에 대한 위험 없이 계산이 가능하긴 하지만, 보험 증권의 세부사항, 보험배당금, 사건 데이터 등에 대한 민감한 데이터를 숨기기 위한 효과적인 매커니즘이 부족합니다.
TCF는 청구 건 처리에 필요한 기밀 세부사항을 숨기고 컨트랙트로 정해진 금액이 정산되도록 하며 체인링크 오라클은 사건을 구체화하고 결과값을 결정하는 중요한 데이터를 투입합니다. 체인링크는 TCF가 내장형 IoT 센서(교역로, 기계류, 개인용 기기, 스마트 그리드 등)에 접근할 수 있도록 하고, 사건 데이터(항공, 날씨, 네트워크 업 타임)를 추적할 수 있는 웹 API에 접근하게 하며, 누가 어떤 청구를 했는지 정확하게 알 수 있도록 KYC 서비스에 대한 접근도 가능하게 합니다. 비용이 많이 드는 온체인 계산과 비교해 TCF는 저비용으로 처리가 가능하기 때문에 자동차 보험 할인을 결정하기 위한 일일 주행량 측정과 같은 더욱 빈번한 데이터 측정도 가능하게 합니다. 뿐만 아니라 체인링크는 연구원에게 중요한 보험 메타데이터를 전달하고, 블록체인에 입증 증거를 제공하며, 결제를 위해 보험배당금을 외부 지불 시스템에 연결해줍니다.
세계 무역
국제 무역으로 전세계 경제가 더욱 긴밀히 연결되면서 세계화는 점점 가속화되고 있습니다. 세계 무역은 공급 사슬, 무역 금융, 규제 등 몇 가지 요소를 포함하고 있으며, 이를 통해 하나의 상품을 한 곳에서 다른 곳으로 성공적으로 이동시키고 대금 결제가 이루어집니다. 이 과정의 각 단계는 데이터에 대한 접근을 기반으로 하고 있으며, 많은 경우 민감한 데이터를 다룹니다. 예를 들어, 공급 사슬과 무역 금융 회사들은 IoT 센서, 웹 데이터 및 지불 시스템에 대한 접근이 있어야 상품 추적 및 대금 결제가 가능하며, 규제자들은 규제가 잘 지켜지고 있는지 확인하기 위해 교역이 진행되는 동안의 거래 및 상품 메타데이터가 필요합니다.
TCF는 상품 추적 및 품질 관리에 사용되는 IoT, GPS, 웹 데이터와 사용되는 비즈니스 로직을 기밀로 유지하는 계산 엔진을 제공해 세계 무역 컨트랙트를 처리합니다. 기업 입장에서는 이러한 데이터와 로직이 부정 행위에 노출되거나, 경쟁사에 의해 도난당하거나, 경쟁에서 앞서가는 외부자들에 의해 이용되지 않기 위해 숨겨두는 것이 중요합니다. TCF는 또한 컨트랙트에 포함된 데이터를 구분 지을 수 있는데, 각 당사자에게만 해당되는 정보를 주어 필요한 정보를 채울 수 있게 합니다. 체인링크 오라클은 믿을 수 있는 통로의 역할을 해 IoT, 웹, ERP 데이터를 스마트 컨트랙트로 불러오고, 외부 지불 및 입증 증거의 형태로 데이터를 내보내 블록체인 영수증과 규제기관을 위한 메타데이터를 생성합니다.
퍼블릭 및 프라이빗 컴퓨팅 환경 간 합의 연결
TCF를 통한 프라이빗하고 확장가능한 오프체인 계산 활용 및 체인링크를 통해 가능해진 오프체인과의 연결성으로 블록체인은 진실 중재(truth arbitration)라는 핵심 기능에 집중할 수 있을 뿐만 아니라 기업의 요구도 충족시킬 수 있습니다. 기존 시스템은 새로운 TCF 디자인을 통해 블록체인 네트워크 상에서 백 엔드 시스템을 다시 만들 필요 없이 차세대 스마트 컨트랙트 애플리케이션을 구축할 수 있습니다. 이로 인해 개발자들에게는 하나의 프레임워크에 갇혀 있던 기존의 방식에서 벗어나 맞춤형 디앱 디자인을 할 수 있는 새로운 길이 개척된 것입니다. 앞으로 다가올 혁신의 다음 물결은 온체인과 오프체인, 퍼블릭과 프라이빗 중 한 가지를 결정하는 것이 아니라, 개발자들이 끊김없이 다른 환경 사이를 오가며 연결할 수 있는 옵션을 제공할 수 있도록 두 시스템을 결합시키는 것이 될 것입니다.