Web3 생태계의 신뢰 실행 환경(TEE): 심층 분석
1. TEE 기술 개요
정의 및 아키텍처: **신뢰 실행 환경(Trusted Execution Environment, TEE)**은 프로세서의 보안 영역으로, 내부에 로드된 코드와 데이터의 기밀성과 무결성을 보호합니다. 실제적으로 TEE는 CPU 내의 격리된 "엔클레이브(enclave)" 역할을 합니다. 이는 민감한 연산이 시스템의 나머지 부분으로부터 보호된 채 실행될 수 있는 일종의 블랙박스입니다. TEE 엔클레이브 내에서 실행되는 코드는 손상된 운영 체제나 하이퍼바이저조차도 엔클레이브의 데이터나 코드를 읽거나 조작할 수 없도록 보호됩니다. TEE가 제공하는 주요 보안 속성은 다음과 같습니다.
- 격리(Isolation): 엔클레이브의 메모리는 다른 프로세스 및 OS 커널로부터 격리됩니다. 공격자가 시스템에서 전체 관리자 권한을 획득하더라도 엔클레이브 메모리를 직접 검사하거나 수정할 수 없습니다.
- 무결성(Integrity): 하드웨어는 TEE에서 실행되는 코드가 외부 공격에 의해 변경될 수 없도록 보장합니다. 엔클레이브 코드나 런타임 상태에 대한 모든 조작은 감지되어 손상된 결과를 방지합니다.
- 기밀성(Confidentiality): 엔클레이브 내부의 데이터는 메모리에서 암호화된 상태로 유지되며 CPU 내에서 사용될 때만 해독되므로, 비밀 데이터가 외 부 세계에 일반 텍스트로 노출되지 않습니다.
- 원격 증명(Remote Attestation): TEE는 원격 당사자에게 자신이 정품이며 특정 신뢰할 수 있는 코드가 내부에 실행 중임을 확신시키는 암호화 증명(증명서)을 생성할 수 있습니다. 이는 사용자가 비밀 데이터를 제공하기 전에 엔클레이브가 신뢰할 수 있는 상태(예: 정품 하드웨어에서 예상 코드를 실행 중)인지 확인할 수 있음을 의미합니다.
스마트 계약 실행을 위한 보안 엔클레이브 "블랙박스"로서의 신뢰 실행 환경 개념도. 암호화된 입력(데이터 및 계약 코드)은 보안 엔클레이브 내부에서 해독 및 처리되며, 암호화된 결과만 엔클레이브를 떠납니다. 이는 민감한 계약 데이터가 TEE 외부의 모든 사람에게 기밀로 유지되도록 보장합니다.
내부적으로 TEE는 CPU의 하드웨어 기반 메모리 암호화 및 접근 제어를 통해 활성화됩니다. 예를 들어, TEE 엔클레이브가 생성될 때 CPU는 보호된 메모리 영역을 할당하고 전용 키(하드웨어에 내장되거나 보안 보조 프로세서에 의해 관리됨)를 사용하여 데이터를 즉시 암호화/해독합니다. 외부 소프트웨어가 엔클레이브 메모리를 읽으려는 모든 시도는 암호화된 바이트만 얻게 됩니다. 이 독특한 CPU 수준의 보호는 사용자 수준 코드조차도 권한 있는 악성 코드나 악의적인 시스템 관리자가 염탐하거나 수정할 수 없는 개인 메모리 영역(엔클레이브)을 정의할 수 있게 합니다. 본질적으로 TEE는 일반적인 운영 환경보다 애플리케이션에 더 높은 수준의 보안을 제공하면서도 전용 보안 요소나 하드웨어 보안 모듈보다 더 유연합니다.
주요 하드웨어 구현: 여러 하드웨어 TEE 기술이 존재하며, 각각 다른 아키 텍처를 가지고 있지만 시스템 내에 보안 엔클레이브를 생성한다는 비슷한 목표를 공유합니다.
-
인텔 SGX (Software Guard Extensions): 인텔 SGX는 가장 널리 사용되는 TEE 구현 중 하나입니다. 애플리케이션이 프로세스 수준에서 엔클레이브를 생성할 수 있게 하며, 메모리 암호화 및 접근 제어는 CPU에 의해 강제됩니다. 개발자는 코드를 "신뢰할 수 있는" 코드(엔클레이브 내부)와 "신뢰할 수 없는" 코드(일반 세계)로 분할하고, 특수 명령어(ECALL/OCALL)를 사용하여 엔클레이브 안팎으로 데이터를 전송해야 합니다. SGX는 엔클레이브에 대한 강력한 격리를 제공하며 인텔의 증명 서비스(IAS)를 통해 원격 증명을 지원합니다. 시크릿 네트워크(Secret Network)와 오아시스 네트워크(Oasis Network)와 같은 많은 블록체인 프로젝트는 SGX 엔클레이브를 기반으로 개인정보 보호 스마트 계약 기능을 구축했습니다. 그러나 복잡한 x86 아키텍처에서의 SGX 설계는 일부 취약점을 낳았으며(§4 참조), 인텔의 증명은 중앙 집중식 신뢰 의존성을 도입합니다.
-
ARM TrustZone: TrustZone은 프로세서의 전체 실행 환경을 **보안 세계(Secure World)**와 **일반 세계(Normal World)**라는 두 개의 세계로 나누는 다른 접근 방식을 취합니다. 민감한 코드는 특정 보호된 메모리 및 주변 장치에 접근할 수 있는 보안 세계에서 실행되며, 일반 세계는 일반 OS와 애플리케이션을 실행합니다. 세계 간의 전환은 CPU에 의해 제어됩니다. TrustZone은 모바일 및 IoT 장치에서 보안 UI, 결제 처리 또는 디지털 권리 관리와 같은 용도로 일반적으로 사용됩니다. 블록체인 맥락에서 TrustZone은 개인 키나 민감한 로직이 휴대폰의 보안 엔클레이브에서 실행되도록 허용함으로써 모바일 우선 Web3 애플리케이션을 가능하게 할 수 있습니다. 그러나 TrustZone 엔클레이브는 일반적으로 더 큰 단위(OS 또는 VM 수준)이며 현재 Web3 프로젝트에서는 SGX만큼 널리 채택되지 않았습니다.
-
AMD SEV (Secure Encrypted Virtualization): AMD의 SEV 기술은 가상화 환경을 대상으로 합니다. 애플리케이션 수준의 엔클레이브를 요구하는 대신, SEV는 전체 가상 머신의 메모리를 암호화할 수 있습니다. 내장된 보안 프로세서를 사용하여 암호화 키를 관리하고 메모리 암호화를 수행하여 VM의 메모리가 호스팅 하이퍼바이저에게도 기밀로 유지되도록 합니다. 이로 인해 SEV는 클라우드 또는 서버 사용 사례에 매우 적합합니다. 예를 들어, 블록체인 노드나 오프체인 워커는 완전히 암호화된 VM 내에서 실행되어 악의적인 클라우드 제공업체로부터 데이터를 보호할 수 있습니다. SEV의 설계는 개발자가 코드를 분할하는 노력을 줄여줍니다(기존 애플리케E이션이나 전체 OS를 보호된 VM에서 실행할 수 있음). SEV-SNP와 같은 최신 버전은 변조 감지와 같은 기능을 추가하고 VM 소유자가 중앙 집중식 서비스에 의존하지 않고 VM을 증명할 수 있도록 합니다. SEV는 클라우드 기반 블록체인 인프라에서 TEE 사용에 매우 관련이 있습니다.
기타 신흥 또는 틈새 TEE 구현으로는 인텔 TDX (Trust Domain Extensions, 최신 인텔 칩에서 VM에 엔클레이브와 유사한 보호 제공), **키스톤(Keystone, RISC-V)**과 같은 오픈 소스 TEE, 그리고 모바일의 보안 엔클레이브 칩(예: 애플의 Secure Enclave, 임의 코드 실행에는 일반적으로 개방되지 않음)이 있습니다. 각 TEE는 고유한 개발 모델과 신뢰 가정을 가지고 있지만, 모두 하드웨 어 격리 보안 실행이라는 핵심 아이디어를 공유합니다.
2. Web3에서의 TEE 애플리케이션
신뢰 실행 환경은 Web3의 가장 어려운 과제 중 일부를 해결하는 강력한 도구가 되었습니다. 안전하고 개인적인 연산 계층을 제공함으로써 TEE는 개인정보보호, 확장성, 오라클 보안 및 무결성 분야에서 블록체인 애플리케이션에 새로운 가능성을 열어줍니다. 아래에서는 주요 애플리케이션 영역을 탐색합니다.
개인정보 보호 스마트 계약
Web3에서 TEE의 가장 두드러진 용도 중 하나는 기밀 스마트 계약을 가능하게 하는 것입니다. 이는 블록체인에서 실행되지만 개인 데이터를 안전하게 처리할 수 있는 프로그램입니다. 이더리움과 같은 블록체인은 기본적으로 투명합니다. 모든 트랜잭션 데이터와 계약 상태는 공개됩니다. 이러한 투명성은 기밀성이 요구되는 사용 사례(예: 비공개 금융 거래, 비밀 투표, 개인 데이터 처리)에 문제가 됩니다. TEE는 블록체인에 연결된 개인정보 보호 컴퓨팅 엔클레이브 역할을 하여 해결책을 제공합니다.
TEE 기반 스마트 계약 시스템에서는 트랜잭션 입력이 검증인 또는 워커 노드의 보안 엔클레이브로 전송되어 외부 세계에 암호화된 상태로 처리된 후, 엔클레이브가 암호화되거나 해시된 결과를 체인에 다시 출력할 수 있습니다. 해독 키를 가진 승인된 당사자(또는 계약 로직 자체)만이 일반 텍스트 결과에 접근할 수 있습니다. 예를 들어, **시크릿 네트워크(Secret Network)**는 컨센서스 노드에서 인텔 SGX를 사용하여 암호화된 입력에 대해 CosmWasm 스마트 계약을 실행하므로, 계정 잔액, 트랜잭션 금액 또는 계약 상태와 같은 것들이 계산에 사용될 수 있으면서도 공개적으로 숨겨질 수 있습니다. 이는 비밀 DeFi 애플리케이션을 가능하게 했습니다. 예를 들어, 금액이 기밀인 비공개 토큰 스왑이나 입찰이 암호화되어 경매 종료 후에만 공개되는 비밀 경매가 있습니다. 또 다른 예는 오아시스 네트워크의 **파슬(Parcel)**과 기밀 파라타임(ParaTime)으로, 데이터가 토큰화되어 기밀성 제약 하에 스마트 계약에서 사용될 수 있게 하여, 개인정보보호 규정을 준수하며 블록체인에서 신용 점수 평가나 의료 데이터와 같은 사용 사례를 가능하게 합니다.
TEE를 통한 개인정보 보호 스마트 계약은 기업 및 기관의 블록체인 채택에 매력적입니다. 조직은 민감한 비즈니스 로직과 데이터를 기밀로 유지하면서 스마트 계약을 활용할 수 있습니다. 예를 들어, 은행은 TEE 지원 계약을 사용하여 고객 데이터를 온체인에 노출하지 않고 대출 신청이나 거래 결제를 처리하면서도 블록체인 검증의 투명성과 무결성의 이점을 누릴 수 있습니다. 이 기능은 GDPR이나 HIPAA와 같은 규제적 개인정보보호 요구 사항을 직접적으로 해결하여, 의료, 금융 및 기타 민감한 산업에서 블록체인을 규정 준수 하에 사용할 수 있게 합니다. 실제로, TEE는 데이터 보호법 준수를 용이하게 합 니다. 개인 데이터가 엔클레이브 내에서 처리되고 암호화된 출력만 남겨지도록 보장함으로써, 규제 당국이 데이터가 보호되고 있음을 만족시킬 수 있습니다.
기밀성 외에도 TEE는 스마트 계약의 _공정성_을 강화하는 데 도움이 됩니다. 예를 들어, 탈중앙화 거래소는 채굴자나 검증인이 보류 중인 주문을 보고 부당하게 선행 매매하는 것을 방지하기 위해 매칭 엔진을 TEE 내에서 실행할 수 있습니다. 요약하자면, TEE는 Web3에 절실히 필요한 개인정보보호 계층을 제공하여, 기밀 DeFi, 비공개 투표/거버넌스, 그리고 이전에는 공개 원장에서 불가능했던 기업 계약과 같은 애플리케이션을 가능하게 합니다.
확장성 및 오프체인 연산
TEE의 또 다른 중요한 역할은 무거운 연산을 오프체인의 안전한 환경으로 오프로드하여 블록체인 확장성을 개선하는 것입니다. 블록체인은 성능 한계와 온체인 실행 비용 때문에 복잡하거나 계산 집약적인 작업에 어려움을 겪습니다. TEE 지원 오프체인 연산은 이러한 작업이 메인 체인 외부에서 수행되도록 하여(따라서 블록 가스를 소비하거나 온체인 처리량을 늦추지 않음) 결과의 정확성에 대한 신뢰 보증을 유지할 수 있게 합니다. 사실상, TEE는 Web3를 위한 검증 가능한 오프체인 컴퓨팅 가속기 역할을 할 수 있습니다.
예를 들어, 아이젝(iExec) 플랫폼은 TEE를 사용하여 개발자가 오프체인에서 연산을 실행하고 블록체인에서 신뢰할 수 있는 결과를 얻을 수 있는 탈중앙화 클라우드 컴퓨팅 마켓플레이스를 만듭니다. dApp은 아이젝 워커 노드에 의해 수행될 연산(예: 복잡한 AI 모델 추론 또는 빅데이터 분석)을 요청할 수 있습니다. 이 워커 노드들은 SGX 엔클레이브 내에서 작업을 실행하여, 올바른 코드가 정품 엔클레이브에서 실행되었다는 증명과 함께 결과를 생성합니다. 결과는 온체인으로 반환되며, 스마트 계약은 출력을 수락하기 전에 엔클레이브의 증명을 확인할 수 있습니다. 이 아키텍처는 신뢰를 희생하지 않고 무거운 워크로드를 오프체인에서 처리할 수 있게 하여 효과적으로 처리량을 높입니다. **아이젝 오케스트레이터(iExec Orchestrator)**와 체인링크의 통합이 이를 보여줍니다. 체인링크 오라클이 외부 데이터를 가져온 다음, 아이젝의 TEE 워커에게 복잡한 연산(예: 데이터 집계 또는 점수 매기기)을 넘겨주고, 마지막으로 안전한 결과가 온체인으로 전달됩니다. 사용 사례로는 아이젝이 시연한 탈중앙화 보험 계산과 같은 것들이 있으며, 많은 데이터 처리를 오프체인에서 저렴하게 수행하고 최종 결과만 블록체인에 올릴 수 있습니다.
TEE 기반 오프체인 연산은 일부 레이어 2 확장 솔루션의 기반이 되기도 합니다. 오아시스 랩스의 초기 프로토타입 에키덴(Ekiden)(오아시스 네트워크의 전신)은 SGX 엔클레이브를 사용하여 트랜잭션 실행을 오프체인에서 병렬로 실행한 다음, 상태 루트만 메인 체인에 커밋하여, 사실상 롤업 아이디어와 유사하지만 하드웨어 신뢰를 사용했습니다. TEE에서 계약 실행을 수행함으로써, 그들은 엔클레이브에 의존하여 보안을 유지하면서 높은 처리량을 달성했습니다. 또 다른 예는 **샌더스 네트워 크(Sanders Network)**의 곧 출시될 Op-Succinct L2로, TEE와 zkSNARK를 결합합니다. TEE는 트랜잭션을 비공개로 신속하게 실행하고, 그 실행의 정확성을 이더리움에 증명하기 위해 zk-증명이 생성됩니다. 이 하이브리드 접근 방식은 확장 가능하고 개인적인 L2 솔루션을 위해 TEE의 속도와 ZK의 검증 가능성을 활용합니다.
일반적으로 TEE는 거의 네이티브 성능의 연산을 실행할 수 있으므로(격리된 상태에서 실제 CPU 명령어를 사용하기 때문에), 동형 암호나 영지식 증명과 같은 순수 암호화 대안보다 복잡한 로직에 대해 수십 배 빠릅니다. 작업을 엔클레이브로 오프로드함으로써 블록체인은 온체인에서 비실용적이었을 더 복잡한 애플리케이션(기계 학습, 이미지/오디오 처리, 대규모 분석 등)을 처리할 수 있습니다. 결과는 증명과 함께 반환되며, 온체인 계약이나 사용자는 이를 신뢰할 수 있는 엔클레이브에서 비롯된 것으로 확인하여 데이터 무결성과 정확성을 보존할 수 있습니다. 이 모델은 종종 **"검증 가능한 오프체인 연산"**이라고 불리며, TEE는 인텔, 아이젝 등이 개발한 하이퍼레저 아발론의 신뢰 컴퓨팅 프레임워크와 같이 많은 설계의 초석이 됩니다. 이 프레임워크는 TEE를 사용하여 EVM 바이트코드를 오프체인에서 실행하고 정확성 증명을 온체인에 게시합니다.
보안 오라클 및 데이터 무결성
오라클은 블록체인을 실제 세계 데이터와 연결하지만, 신 뢰 문제를 야기합니다. 스마트 계약이 오프체인 데이터 피드가 정확하고 조작되지 않았다고 어떻게 신뢰할 수 있을까요? TEE는 오라클 노드를 위한 안전한 샌드박스 역할을 하여 해결책을 제공합니다. TEE 기반 오라클 노드는 외부 소스(API, 웹 서비스)에서 데이터를 가져와 노드 운영자나 노드의 악성 코드에 의해 데이터가 조작되지 않았음을 보장하는 엔클레이브 내에서 처리할 수 있습니다. 그런 다음 엔클레이브는 제공하는 데이터의 진실성을 서명하거나 증명할 수 있습니다. 이는 오라클 데이터 무결성과 신뢰성을 크게 향상시킵니다. 오라클 운영자가 악의적이더라도, 그들은 블록체인이 감지할 엔클레이브의 증명을 깨뜨리지 않고는 데이터를 변경할 수 없습니다.
주목할 만한 예는 코넬에서 개발된 오라클 시스템인 **타운 크라이어(Town Crier)**로, 인텔 SGX 엔클레이브를 사용하여 이더리움 계약에 인증된 데이터를 제공한 최초의 시스템 중 하나였습니다. 타운 크라이어는 SGX 엔클레이브 내에서 데이터(예: HTTPS 웹사이트에서)를 검색하고, 데이터가 소스에서 직접 왔으며 위조되지 않았다는 증거(엔클레이브 서명)와 함께 계약에 전달했습니다. 체인링크는 이 가치를 인식하고 2018년에 타운 크라이어를 인수하여 TEE 기반 오라클을 탈중앙화 네트워크에 통합했습니다. 오늘날 체인링크 및 기타 오라클 제공업체는 TEE 이니셔티브를 가지고 있습니다. 예를 들어, 체인링크의 DECO 및 _공정 시퀀싱 서비스(Fair Sequencing Services)_는 데이터 기밀성과 공정한 순서를 보장하기 위해 TEE를 포함합니다. 한 분석에서 언급했듯이, "TEE는 데이터 처리를 위한 변조 방지 환경을 제공함으로써 오라클 보안을 혁신 했습니다... 노드 운영자 자신조차도 데이터가 처리되는 동안 조작할 수 없습니다". 이는 고가치 금융 데이터 피드(DeFi용 가격 오라클 등)에 특히 중요합니다. TEE는 큰 익스플로잇으로 이어질 수 있는 미묘한 조작조차도 방지할 수 있습니다.
TEE는 또한 오라클이 블록체인에 일반 텍스트로 게시할 수 없었던 민감하거나 독점적인 데이터를 처리할 수 있게 합니다. 예를 들어, 오라클 네트워크는 엔클레이브를 사용하여 비공개 데이터(기밀 주식 주문서나 개인 건강 데이터 등)를 집계하고, 원시 민감한 입력을 노출하지 않고 파생된 결과나 검증된 증명만을 블록체인에 제공할 수 있습니다. 이런 식으로 TEE는 스마트 계약에 안전하게 통합될 수 있는 데이터의 범위를 넓혀, _실물 자산(RWA) 토큰화, 신용 점수 평가, 보험 및 기타 데이터 집약적인 온체인 서비스_에 매우 중요합니다.
크로스체인 브리지에 관해서도 TEE는 유사하게 무결성을 향상시킵니다. 브리지는 종종 자산을 보관하고 체인 간 전송을 검증하기 위해 일련의 검증인이나 다중 서명에 의존하므로, 공격의 주요 대상이 됩니다. 브리지 검증인 로직을 TEE 내에서 실행함으로써, 브리지의 개인 키와 검증 프로세스를 조작으로부터 보호할 수 있습니다. 검증인의 OS가 손상되더라도 공격자는 엔클레이브 내부에서 개인 키를 추출하거나 메시지를 위조할 수 없습니다. TEE는 브리지 트랜잭션이 프로토콜 규칙에 따라 정확하게 처리되도록 강제하여, 사람 운영자나 악성 코드가 사기성 전송을 주입할 위험을 줄입니다. 또한 TEE는 아토믹 스왑과 크로스체인 트랜잭션이 양쪽을 완료하거나 깨끗하게 중단하는 보안 엔클레이브에서 처리되도록 하여, 간섭으로 인해 자금이 묶이는 시나리오를 방지할 수 있습니다. 여러 브리지 프로젝트와 컨소시엄은 최근 몇 년간 발생한 브리지 해킹의 재앙을 완화하기 위해 TEE 기반 보안을 탐색해 왔습니다.
데이터 무결성 및 오프체인 검증 가능성
위의 모든 시나리오에서 반복되는 주제는 TEE가 블록체인 외부에서도 _데이터 무결성_을 유지하는 데 도움이 된다는 것입니다. TEE는 어떤 코드를 실행하고 있는지 증명할 수 있고(증명을 통해) 코드가 간섭 없이 실행되도록 보장할 수 있기 때문에, 일종의 검증 가능한 컴퓨팅을 제공합니다. 사용자와 스마트 계약은 증명이 확인되는 한, TEE에서 나오는 결과를 마치 온체인에서 계산된 것처럼 신뢰할 수 있습니다. 이 무결성 보증은 TEE가 때때로 오프체인 데이터 및 연산에 "신뢰 앵커"를 제공한다고 불리는 이유입니다.
그러나 이 신뢰 모델은 일부 가정을 하드웨어로 옮긴다는 점을 주목할 가치가 있습니다(§4 참조). 데이터 무결성은 TEE의 보안만큼만 강력합니다. 엔클레이브가 손상되거나 증명이 위조되면 무결성이 실패할 수 있습니다. 그럼에도 불구하고, 실제로 TEE는 (최신 상태로 유지될 때) 특정 공격을 상당히 어렵게 만듭니다. 예를 들어, DeFi 대출 플랫폼은 TEE를 사용하여 사용자의 개인 데이터로부터 오프체인에서 신용 점수를 계산할 수 있으며, 스마트 계약은 유효한 엔클레이브 증명이 동반될 경우에만 점수를 수락합니다. 이런 식으로 계약은 점수가 사용자나 오라클을 맹목적으로 신뢰하는 대신, 승인된 알고리즘에 의해 실제 데이터로 계산되었음을 알 수 있습니다.
TEE는 또한 신흥 탈중앙화 신원증명(DID) 및 인증 시스템에서 역할을 합니다. 사용자의 민감한 정보가 블록체인이나 dApp 제공업체에 노출되지 않도록 개인 키, 개인 데이터 및 인증 프로세스를 안전하게 관리할 수 있습니다. 예를 들어, 모바일 장치의 TEE는 생체 인증을 처리하고 생체 확인이 통과되면 블록체인 트랜잭션에 서명할 수 있으며, 이 모든 과정에서 사용자의 생체 정보를 공개하지 않습니다. 이는 신원 관리에서 보안과 개인정보보호를 모두 제공하며, Web3가 여권, 인증서 또는 KYC 데이터와 같은 것을 사용자 주권 방식으로 처리하려면 필수적인 구성 요소입니다.
요약하자면, TEE는 Web3에서 다재다능한 도구 역할을 합니다. 온체인 로직에 대한 기밀성을 가능하게 하고, 오프체인 보안 컴퓨팅을 통해 확장을 허용하며, 오라클과 브리지의 무결성을 보호하고, 새로운 용도(비공개 신원부터 규정 준수 데이터 공유까지)를 열어줍니다. 다음으로, 이러한 기능을 활용하는 특정 프로젝트를 살펴보겠습니다.
3. TEE를 활용하는 주목할 만한 Web3 프로젝트
다수의 선도 적인 블록체인 프로젝트들이 신뢰 실행 환경을 중심으로 핵심 서비스를 구축했습니다. 아래에서는 몇 가지 주목할 만한 프로젝트를 심층적으로 살펴보고, 각 프로젝트가 TEE 기술을 어떻게 사용하며 어떤 독특한 가치를 더하는지 검토합니다.
시크릿 네트워크 (Secret Network)
시크릿 네트워크는 TEE를 사용하여 개인정보 보호 스마트 계약을 개척한 레이어 1 블록체인(코스모스 SDK 기반)입니다. 시크릿 네트워크의 모든 검증인 노드는 인텔 SGX 엔클레이브를 실행하여 스마트 계약 코드를 실행하므로, 계약 상태와 입출력은 노드 운영자에게도 암호화된 상태로 유지됩니다. 이로써 시크릿은 최초의 개인정보 보호 우선 스마트 계약 플랫폼 중 하나가 되었습니다. 개인정보보호는 선택적 부가 기능이 아니라 프로토콜 수준에서 네트워크의 기본 기능입니다.
시크릿 네트워크 모델에서 사용자는 암호화된 트랜잭션을 제출하고, 검증인은 이를 실행을 위해 SGX 엔클레이브에 로드합니다. 엔클레이브는 입력을 해독하고, 계약(수정된 CosmWasm 런타임으로 작성됨)을 실행하며, 블록체인에 기록될 암호화된 출력을 생성합니다. 올바른 보기 키를 가진 사용자(또는 내부 키를 가진 계약 자체)만이 실제 데이터를 해독하고 볼 수 있습니다. 이를 통해 애플리케이션은 공개적으로 노출하지 않고 온체인에서 개인 데이터를 사용할 수 있습니다.
이 네트워크는 여러 새로운 사용 사례 를 보여주었습니다.
- 시크릿 DeFi: 예를 들어, 시크릿스왑(SecretSwap, AMM)에서는 사용자의 계정 잔액과 트랜잭션 금액이 비공개이므로 선행 매매를 완화하고 거래 전략을 보호합니다. 유동성 공급자와 트레이더는 자신의 모든 움직임을 경쟁자에게 방송하지 않고 운영할 수 있습니다.
- 시크릿 경매: 입찰이 경매가 끝날 때까지 비밀로 유지되는 경매 계약으로, 다른 사람의 입찰에 기반한 전략적 행동을 방지합니다.
- 비공개 투표 및 거버넌스: 토큰 보유자는 자신의 투표 선택을 공개하지 않고 제안에 투표할 수 있으며, 집계는 여전히 검증될 수 있어 공정하고 위협 없는 거버넌스를 보장합니다.
- 데이터 마켓플레이스: 민감한 데이터 세트는 구매자나 노드에 원시 데이터를 노출하지 않고 거래되고 계산에 사용될 수 있습니다.
시크릿 네트워크는 본질적으로 프로토콜 수준에서 TEE를 통합하여 독특한 가치 제안을 만듭니다. 즉, _프로그래밍 가능한 개인정보보호_를 제공합니다. 그들이 해결하는 과제에는 탈중앙화된 검증인 집합 전반에 걸쳐 엔클레이브 증명을 조정하고, 계약이 검증인에게 비밀을 유지하면서 입력을 해독할 수 있도록 키 배포를 관리하는 것이 포함됩니다. 모든 면에서 시크릿은 공개 블록체인에서 TEE 기반 기밀성의 실행 가능성을 입증했으며, 이 분야의 선두 주자로 자리매김했습니다.
오아시스 네트워크 (Oasis Network)
오아시스 네트워크는 확장성과 개인정보보호를 목표로 하는 또 다른 레이어 1으로, 아키텍처에서 TEE(인텔 SGX)를 광범위하게 활용합니다. 오아시스는 합의와 연산을 분리하여 컨센서스 레이어와 파라타임 레이어라는 다른 계층으로 나누는 혁신적인 설계를 도입했습니다. 컨센서스 레이어는 블록체인 순서 지정과 최종성을 처리하며, 각 파라타임은 스마트 계약을 위한 런타임 환경이 될 수 있습니다. 특히, 오아시스의 에메랄드 파라타임은 EVM 호환 환경이며, _사파이어_는 TEE를 사용하여 스마트 계약 상태를 비공개로 유지하는 기밀 EVM입니다.
오아시스의 TEE 사용은 대규모 기밀 연산에 중점을 둡니다. 무거운 연산을 병렬화 가능한 파라타임(많은 노드에서 실행 가능)으로 격리함으로써 높은 처리량을 달성하고, 해당 파라타임 노드 내에서 TEE를 사용하여 민감한 데이터를 노출하지 않고 연산에 포함할 수 있도록 보장합니다. 예를 들어, 기관은 기밀 파라타임에 개인 데이터를 공급하여 오아시스에서 신용 점수 평가 알고리즘을 실행할 수 있습니다. 데이터는 노드에 대해 암호화된 상태로 유지되며(엔클레이브에서 처리되므로), 점수만 나옵니다. 한편, 오아시스 컨센서스는 연산이 올바르게 발생했다는 증명만 기록합니다.
기술적으로 오아시스는 일반적인 SGX를 넘어 추가적인 보안 계층을 추가했습니다. 그들은 _"계층화된 신뢰 루트(layered root of trust)"_를 구현했습니다. 인텔의 SGX 쿼팅 엔클레이브와 맞춤형 경량 커널을 사용하여 하드웨어 신뢰성을 검증하고 엔클레이브의 시스템 호출을 샌드박싱합니다. 이는 공격 표면을 줄이고(엔클레이브가 할 수 있는 OS 호출을 필터링함으로써) 알려진 특정 SGX 공격으로부터 보호합니다. 오아시스는 또한 영구 엔클레이브(엔클레이브가 재시작 후에도 상태를 유지할 수 있도록) 및 보안 로깅과 같은 기능을 도입하여 롤백 공격(노드가 이전 엔클레이브 상태를 재생하려는 시도)을 완화했습니다. 이러한 혁신은 그들의 기술 논문에 설명되어 있으며, 오아시스가 TEE 기반 블록체인 컴퓨팅에서 연구 중심 프로젝트로 여겨지는 이유 중 하나입니다.
생태계 관점에서 오아시스는 프라이빗 DeFi(은행이 고객 데이터를 유출하지 않고 참여할 수 있도록 함) 및 데이터 토큰화(개인이나 회사가 기밀 방식으로 AI 모델에 데이터를 공유하고 보상받을 수 있도록 함, 이 모든 것이 블록체인을 통해 이루어짐)와 같은 분야에 자리매김했습니다. 그들은 또한 기업들과 파일럿 프로젝트를 협력했습니다(예: BMW와 데이터 개인정보보호 관련 작업, 다른 기업들과 의료 연구 데이터 공유). 전반적으로 오아시스 네트워크는 TEE를 확장 가능한 아키텍처와 결합하여 개인정보보호 와 성능을 모두 해결할 수 있음을 보여주며, TEE 기반 Web3 솔루션에서 중요한 역할을 합니다.
샌더스 네트워크 (Sanders Network)
샌더스 네트워크는 폴카닷 생태계의 탈중앙화 클라우드 컴퓨팅 네트워크로, TEE를 사용하여 기밀 및 고성능 컴퓨팅 서비스를 제공합니다. 폴카닷의 파라체인으로서 폴카닷의 보안과 상호운용성의 이점을 누리지만, 보안 엔클레이브에서의 오프체인 연산을 위한 자체적인 새로운 런타임을 도입합니다.
샌더스의 핵심 아이디어는 TEE(특히 현재까지는 인텔 SGX) 내에서 작업을 실행하고 검증 가능한 결과를 생성하는 대규모 워커 노드 네트워크( 샌더스 마이너라고 함)를 유지하는 것입니다. 이러한 작업은 스마트 계약의 일부를 실행하는 것부터 사용자가 요청한 일반적인 연산에 이르기까지 다양합니다. 워커가 SGX에서 실행되기 때문에 샌더스는 연산이 기밀성(입력 데이터가 워커 운영자에게 숨겨짐)과 무결성(결과에 증명이 첨부됨)을 가지고 수행됨을 보장합니다. 이는 사용자가 호스트가 자신의 작업을 들여다보거나 조작할 수 없다는 것을 알고 워크로드를 배포할 수 있는 _신뢰 없는 클라우드_를 효과적으로 만듭니다.
샌더스는 아마존 EC2나 AWS 람다와 유사하지만 탈중앙화된 것으로 생각할 수 있습니다. 개발자는 샌더스 네트워크에 코드를 배포하고 전 세계의 많은 SGX 지원 기계에서 실행되도록 할 수 있으며, 서비스에 대해 샌더스 토큰으로 지불합니다. 강조된 사용 사례는 다음과 같습니다.
- Web3 분석 및 AI: 프로젝트는 샌더스 엔클레이브에서 사용자 데이터를 분석하거나 AI 알고리즘을 실행하여 원시 사용자 데이터는 암호화된 상태로 유지(개인정보보호)하고 집계된 통찰력만 엔클레이브를 떠나도록 할 수 있습니다.
- 게임 백엔드 및 메타버스: 샌더스는 집약적인 게임 로직이나 가상 세계 시뮬레이션을 오프체인에서 처리하고, 커밋이나 해시만 블록체인에 전송하여 단일 서버에 대한 신뢰 없이 더 풍부한 게임 플레이를 가능하게 합니다.
- 온체인 서비스: 샌더스는 샌더스 클라우드라는 오프체인 연산 플랫폼을 구축했습니다. 예를 들어, 봇, 탈중앙화 웹 서비스 또는 TEE 증명과 함께 DEX 스마트 계약에 거래를 게시하는 오프체인 오더북의 백엔드 역할을 할 수 있습니다.
샌더스는 기밀 컴퓨팅을 수평적으로 확장할 수 있다고 강조합니다. 더 많은 용량이 필요하면 더 많은 TEE 워커 노드를 추가하면 됩니다. 이는 컴퓨팅 용량이 컨센서스에 의해 제한되는 단일 블록체인과 다릅니다. 따라서 샌더스는 여전히 신뢰 없는 보안을 원하는 계산 집약적인 dApp에 대한 가능성을 열어줍니다. 중요한 것은 샌더스가 순전히 하드웨어 신뢰에만 의존하지 않는다는 것입니다. 폴카닷의 컨센서스(예: 잘못된 결과에 대한 스테이킹 및 슬래싱)와 통합하고 있으며, TEE와 영지식 증명을 결합하는 것도 탐색하고 있습니다(언급했듯이, 곧 출시될 L2는 TEE를 사용하여 실행 속도를 높이고 ZKP를 사용하여 이더리움에서 간결하게 검증합니다). 이 하이브리드 접근 방식은 암호화 검증을 추가하여 단일 TEE 손상의 위험을 완화하는 데 도움이 됩니다.
요약하자면, 샌더스 네트워크는 TEE를 활용하여 Web3를 위한 탈중앙화된 기밀 클라우드를 제공하여 보안 보증과 함께 오프체인 연산을 가능하게 합니다. 이는 무거운 컴퓨팅과 데이터 개인정보보호가 모두 필요한 블록체인 애플리케이션 클래스를 열어주며, 온체인과 오프체인 세계 사이의 격차를 해소합니다.
아이젝 (iExec)
아이젝은 이더리움 위에 구축된 클라우드 컴퓨팅 리소스를 위한 탈중앙화 마켓플레이스입니다. 이전 세 프로젝트(자체 체인 또는 파라체인)와 달리, 아이젝은 이더리움 스마트 계약과 협력하는 레이어 2 또는 오프체인 네트워크로 운영됩니다. TEE(특히 인텔 SGX)는 오프체인 연산에 대한 신뢰를 구축하기 위한 아이젝 접근 방식의 초석입니다.
아이젝 네트워크는 다양한 제공업체가 기여한 워커 노드로 구성됩니다. 이 워커들은 사용자(dApp 개발자, 데이터 제공자 등)가 요청한 작업을 실행할 수 있습니다. 이러한 오프체인 연산이 신뢰할 수 있도록 보장하기 위해 아이젝은 "신뢰 오프체인 컴퓨팅(Trusted off-chain Computing)" 프레임워크를 도입했습니다. 작업은 SGX 엔클레이브 내에서 실행될 수 있으며, 결과에는 작업이 보안 노드에서 올바르게 실행되었음을 증명하는 엔클레이브 서명이 첨부됩니다. 아이젝은 인텔과 협력하여 이 신뢰 컴퓨팅 기능을 출시했으며, 표준을 발전시키기 위해 기밀 컴퓨팅 컨소시엄(Confidential Computing Consortium)에도 가입했습니다. 그들의 컨센서스 프로토콜인 **기여 증명(Proof-of-Contribution, PoCo)**은 올바른 결과에 대한 합의에 도달하기 위해 필요할 때 여러 워커의 투표/증명을 집계합니다. 많은 경우, 코드가 결정적이고 SGX에 대한 신뢰가 높으면 단일 엔클레이브의 증명으로 충분할 수 있습니다. 더 높은 보증을 위해 아이젝은 여러 TEE에 걸쳐 작업을 복제하고 컨센서스 또는 다수결 투표를 사용할 수 있습니다.
아이젝의 플랫폼은 몇 가지 흥미로 운 사용 사례를 가능하게 합니다.
- 탈중앙화 오라클 컴퓨팅: 앞서 언급했듯이 아이젝은 체인링크와 협력할 수 있습니다. 체인링크 노드는 원시 데이터를 가져온 다음, 아이젝 SGX 워커에게 해당 데이터에 대한 연산(예: 독점 알고리즘 또는 AI 추론)을 수행하도록 넘겨주고, 마지막으로 온체인에 결과를 반환할 수 있습니다. 이는 오라클이 단순히 데이터를 전달하는 것을 넘어 계산된 서비스(AI 모델 호출 또는 여러 소스 집계 등)를 TEE가 정직성을 보장하며 제공할 수 있도록 확장합니다.
- AI 및 DePIN (탈중앙화 물리적 인프라 네트워크): 아이젝은 탈중앙화 AI 앱을 위한 신뢰 계층으로 자리매김하고 있습니다. 예를 들어, 기계 학습 모델을 사용하는 dApp은 모델(독점인 경우)과 입력되는 사용자 데이터를 모두 보호하기 위해 엔클레이브에서 모델을 실행할 수 있습니다. DePIN(분산 IoT 네트워크 등)의 맥락에서 TEE는 엣지 장치에서 센서 판독값과 해당 판독값에 대한 연산을 신뢰하는 데 사용될 수 있습니다.
- 보안 데이터 수익화: 데이터 제공자는 아이젝의 마켓플레이스에서 자신의 데이터 세트를 암호화된 형태로 제공할 수 있습니다. 구매자는 TEE 내에서 데이터에 대해 알고리즘을 실행하도록 보낼 수 있습니다(따라서 데이터 제공자의 원시 데이터는 절대 공개되지 않아 IP를 보호하고, 알고리즘의 세부 정보도 숨길 수 있음). 연산 결과는 구매자에게 반환되고, 데이터 제공자에 대한 적절한 지불은 스마트 계약을 통해 처리됩니다. 종종 _보안 데이터 교환_이라고 불리는 이 방식은 TEE의 기밀성에 의해 촉진됩니다.
전반적으로 아이젝은 이더리움 스마트 계약과 보안 오프 체인 실행 사이의 접착제 역할을 합니다. 이는 TEE "워커"가 네트워크화되어 탈중앙화 클라우드를 형성할 수 있음을 보여주며, 마켓플레이스(지불을 위해 아이젝의 RLC 토큰 사용)와 컨센서스 메커니즘을 완비합니다. 기업 이더리움 연합의 신뢰 컴퓨팅 워킹 그룹을 이끌고 표준(하이퍼레저 아발론 등)에 기여함으로써 아이젝은 기업 블록체인 시나리오에서 TEE의 광범위한 채택을 주도합니다.
기타 프로젝트 및 생태계
위의 네 가지 외에도 주목할 만한 몇 가지 다른 프로젝트가 있습니다.
- 인티그리티(Integritee) – 샌더스와 유사한 또 다른 폴카닷 파라체인(실제로 에너지 웹 재단의 TEE 작업에서 파생됨). 인티그리티는 TEE를 사용하여 기업을 위한 "서비스형 파라체인"을 만들고, 온체인 및 오프체인 엔클레이브 처리를 결합합니다.
- 오토마타 네트워크(Automata Network) – TEE를 활용하여 비공개 트랜잭션, 익명 투표 및 MEV 방지 트랜잭션 처리를 위한 Web3 개인정보보호 미들웨어 프로토콜. 오토마타는 비공개 RPC 릴레이와 같은 서비스를 제공하는 오프체인 네트워크로 실행되며, 보호된 신원 및 가스 없는 비공개 트랜잭션과 같은 것에 TEE를 사용하는 것으로 언급되었습니다.
- 하이퍼레저 소투스(PoET) – 기업 영역에서 소투스는 경과 시간 증명(Proof of Elapsed Time)이라는 컨센서스 알고리즘을 도입했는데, 이는 SGX에 의존했습니다. 각 검 증인은 임의의 시간을 기다리고 증명을 생성하는 엔클레이브를 실행합니다. 가장 짧은 대기 시간을 가진 검증인이 블록을 "획득"하며, 이는 SGX에 의해 강제되는 공정한 복권입니다. 소투스는 Web3 프로젝트는 아니지만(기업 블록체인에 더 가까움), 컨센서스를 위한 TEE의 창의적인 사용입니다.
- 기업/컨소시엄 체인 – 많은 기업 블록체인 솔루션(예: 컨센시스 쿼럼, IBM 블록체인)은 특정 데이터는 승인된 노드만 볼 수 있는 기밀 컨소시엄 트랜잭션을 가능하게 하기 위해 TEE를 통합합니다. 예를 들어, 기업 이더리움 연합의 신뢰 컴퓨팅 프레임워크(TCF) 청사진은 TEE를 사용하여 비공개 계약을 오프체인에서 실행하고 머클 증명을 온체인에 전달합니다.
이러한 프로젝트들은 TEE의 다재다능함을 집합적으로 보여줍니다. 전체 개인정보보호 중심 L1을 구동하고, 오프체인 네트워크 역할을 하며, 오라클 및 브리지와 같은 인프라 조각을 보호하고, 심지어 컨센서스 알고리즘의 기반이 되기도 합니다. 다음으로, 탈중앙화 환경에서 TEE를 사용하는 것의 광범위한 이점과 과제를 고려해 보겠습니다.
4. 탈중앙화 환경에서의 TEE의 이점과 과제
블록체인 시스템에 신뢰 실행 환경을 채택하는 것은 상당한 기술적 이점뿐만 아니라 주목할 만한 과제와 트레이드오프를 동반합니다. 우리는 양쪽 측면을 검토할 것입니다. TEE가 탈중앙화 애플리케이션에 무엇을 제공하는지, 그리고 그 사용으로 인해 발생하는 문제나 위험은 무엇인지 살펴봅니다.
이점과 기술적 강점
-
강력한 보안 및 개인정보보호: 가장 중요한 이점은 기밀성과 무결성 보장입니다. TEE는 민감한 코드가 외부 악성 코드에 의해 염탐되거나 변경되지 않을 것이라는 확신을 가지고 실행될 수 있게 합니다. 이는 이전에는 사용할 수 없었던 오프체인 연산에 대한 신뢰 수준을 제공합니다. 블록체인의 경우, 이는 개인 데이터를 활용하여(dApp의 기능 향상) 보안을 희생하지 않고 사용할 수 있음을 의미합니다. 신뢰할 수 없는 환경(클라우드 서버, 제3자가 운영하는 검증인 노드)에서도 TEE는 비밀을 안전하게 유지합니다. 이는 암호화 시스템 내에서 개인 키, 사용자 데이터 및 독점 알고리즘을 관리하는 데 특히 유용합니다. 예를 들어, 하드웨어 지갑이나 클라우드 서명 서비스는 TEE를 사용하여 내부적으로 블록체인 트랜잭션에 서명하여 개인 키가 일반 텍스트로 노출되지 않도록 하여 편의성과 보안을 결합할 수 있습니다.
-
네이티브에 가까운 성능: 순수 암호화 방식의 보안 연산(ZK 증명이나 동형 암호 등)과 달리 TEE 오버헤드는 상대적으로 작습니다. 코드는 CPU에서 직접 실행되므로 엔클레이브 내부의 연산은 외부에서 실행하는 것과 거의 같은 속도입니다(엔클레이브 전환 및 메모리 암호화에 대한 약간의 오버헤드, SGX에서는 일반적으로 한 자릿수 퍼센트의 속도 저하). 이는 TEE가 계산 집약적인 작업을 효율적으로 처리할 수 있음을 의미하며, 암호화 프로토콜로 수행했다면 수십 배 느렸을 사용 사례(실시간 데이터 피드, 복잡한 스마트 계약, 기계 학습 등)를 가능하게 합니다. 엔클레이브의 낮은 지연 시간은 빠른 응답이 필요한 경우(예: TEE로 보호되는 고빈도 거래 봇 또는 높은 지연으로 사용자 경험이 저하될 수 있는 대화형 애플리케이션 및 게임)에 적합합니다.
-
확장성 향상 (오프로드를 통해): 무거운 연산을 오프체인에서 안전하게 수행할 수 있게 함으로써 TEE는 메인 체인의 혼잡과 가스 비용을 완화하는 데 도움이 됩니다. 블록체인은 검증이나 최종 결제에만 사용되고 대부분의 연산은 병렬 엔클레이브에서 발생하는 레이어 2 설계 및 사이드 프로토콜을 가능하게 합니다. 이러한 모듈화(TEE의 계산 집약적 로직, 체인의 컨센서스)는 탈중앙화 앱의 처리량과 확장성을 크게 향상시킬 수 있습니다. 예를 들어, DEX는 오프체인 TEE에서 매칭을 수행하고 매칭된 거래만 온체인에 게시하여 처리량을 늘리고 온체인 가스를 줄일 수 있습니다.
-
더 나은 사용자 경험 및 기능: TEE를 사용하면 dApp은 기밀성이나 복잡한 분석과 같은 기능을 제공하여 더 많은 사용자(기관 포함)를 유치할 수 있습니다. TEE는 또한 오토마타가 비공개 트랜잭션의 가스를 줄이기 위해 TEE를 사용하는 것에서 언급했듯이, 오프체인에서 안전하게 실행한 다음 결과를 제출함으로써 가스 없는 또는 메타 트랜잭션을 가능하게 합니다. 또한, 민감한 상태를 오프체인 엔클레이브에 저장하면 온체인에 게시되는 데이터를 줄일 수 있어 사용자 개인정보보호와 네트워크 효율성(저장/검증할 온체인 데이터 감소)에 좋습니다.
-
다른 기술과의 컴포저빌리티: 흥미롭게도 TEE는 다른 기술을 보완할 수 있습니다(TEE 자체에 내재된 이점은 아니지만 조합에서). 하이브리드 솔루션을 하나로 묶는 접착제 역할을 할 수 있습니다. 예를 들어, 엔클레이브에서 프로그램을 실행하고 그 실행에 대한 ZK 증명을 생성하여, 엔클레이브가 증명 과정의 일부를 도와 속도를 높이는 것입니다. 또는 MPC 네트워크에서 TEE를 사용하여 특정 작업을 더 적은 통신 라운드로 처리하는 것입니다. §5에서 비교를 논의하겠지만, 많은 프로젝트는 TEE가 암호화를 _대체_할 필요가 없으며, 보안을 강화하기 위해 함께 작동할 수 있다고 강조합니다(샌더스의 만트라: "TEE의 강점은 다른 것을 대체하는 것이 아니라 지원하는 데 있다").
신뢰 가정 및 보안 취약점
강점에도 불구하고 TEE는 특정 신뢰 가정을 도입하며 무적이 아닙니다. 이러한 과제를 이해하는 것이 중요합니다.
-
하드웨어 신뢰 및 중앙 집중화: TEE를 사용함으로써, 우리는 본질적으로 실리콘 공급업체와 그들의 하드웨어 설계 및 공급망의 보안에 신뢰를 둡니다. 예를 들어, 인텔 SGX를 사용한다는 것은 인텔에 백도어가 없고, 제조가 안전하며, CPU의 마이크로코드가 엔클레이브 격리를 올바르게 구현한다고 신뢰하는 것을 의미합니다. 이는 순수 암호화(모든 사용자에게 분산된 수학적 가정에 의존)에 비해 더 중앙 집중화된 신뢰 모델입니다. 더욱이, SGX에 대한 증명은 역사적으로 인텔의 증명 서비스에 연락하는 것에 의존해 왔습니다. 즉, 인텔이 오프라인이 되거나 키를 취소하기로 결정하면 전 세계의 엔클레이브가 영향을 받을 수 있습니다. 단일 회사의 인프라에 대한 이러한 의존성은 우려를 낳습니다. 이는 단일 장애점이 될 수도 있고, 정부 규제의 대상이 될 수도 있습니다(예: 미국 수출 통제는 이론적으로 강력한 TEE 사용자를 제한할 수 있음). AMD SEV는 더 탈중앙화된 증명을 허용함으로써 이를 완화하지만(VM 소유자가 자신의 VM을 증명할 수 있음), 여전히 AMD의 칩과 펌웨어를 신뢰해야 합니다. 중앙 집중화 위험은 종종 블록체인의 탈중앙화와 다소 상반되는 것으로 인용됩니다. 키스톤(오픈 소스 TEE)과 같은 프로젝트들은 독점적인 블랙박스에 대한 의존도를 줄이는 방법을 연구하고 있지만, 아직 주류는 아닙니다.
-
사이드 채널 및 기타 취약점: TEE는 만병통치약이 아닙니다. 간접적인 수단을 통해 공격받을 수 있습니다. 사이드 채널 공격은 직접적인 메모리 접근이 차단되더라도 엔클레이브의 작동이 시스템에 미묘하게 영향을 미칠 수 있다는 사실을 이용합니다(타이밍, 캐시 사용, 전력 소비, 전자기 방출 등을 통해). 지난 몇 년 동안 인텔 SGX에 대한 수많은 학술적 공격이 시연되었습니다. Foreshadow(L1 캐시 타이밍 유출을 통해 엔클레이브 비밀 추출)부터 Plundervolt(권한 있는 명령어를 통한 전압 결함 주입), SGAxe(증명 키 추출)에 이르기까지 다 양합니다. 이러한 정교한 공격은 TEE가 암호화 보호를 깨뜨릴 필요 없이, 미세 아키텍처 동작이나 구현의 결함을 이용하여 손상될 수 있음을 보여줍니다. 결과적으로, _"연구자들은 하드웨어 취약점이나 TEE 작동의 타이밍 차이를 이용할 수 있는 다양한 잠재적 공격 벡터를 확인했다"_고 인정됩니다. 이러한 공격은 사소하지 않고 종종 로컬 접근이나 악의적인 하드웨어가 필요하지만, 실제 위협입니다. TEE는 또한 일반적으로 적이 칩을 손에 넣었을 때 물리적 공격으로부터 보호하지 못합니다(예: 칩 디캡핑, 버스 프로빙 등은 대부분의 상용 TEE를 무력화할 수 있음).
사이드 채널 발견에 대한 공급업체의 대응은 알려진 유출을 완화하기 위한 마이크로코드 패치와 엔클레이브 SDK 업데이트였습니다(때로는 성능 저하를 감수). 그러나 이는 여전히 쫓고 쫓기는 게임입니다. Web3의 경우, 이는 누군가 SGX에서 새로운 사이드 채널을 발견하면, SGX에서 실행되는 "안전한" DeFi 계약이 잠재적으로 악용될 수 있음을 의미합니다(예: 비밀 데이터 유출 또는 실행 조작). 따라서 TEE에 의존한다는 것은 하드웨어 수준에서 일반적인 블록체인 위협 모델 외부에 있는 잠재적 취약점 표면을 수용하는 것을 의미합니다. 이러한 위협에 대해 TEE를 강화하는 것은 활발한 연구 분야입니다(예: 상수 시간 연산으로 엔클레이브 코드 설계, 비밀에 의존하는 메모리 접근 패턴 피하기, 망각 RAM과 같은 기술 사용). 일부 프로젝트는 또한 TEE를 보조적인 검사로 보강합니다. 예를 들어, ZK 증명과 결합하거나, 단일 칩 위험을 줄이기 위해 다른 하드웨어 공급업체의 여러 엔클레이브에서 실행하는 것입니다.
-
성능 및 리소스 제약: TEE는 CPU 집약적인 작업에 대해 거의 네이티브 속도로 실행되지만, 몇 가지 오버헤드와 제한이 따릅니다. 엔클레이브로 들어가는 것(ECALL)과 나오는 것(OCALL)에는 비용이 들며, 메모리 페이지의 암호화/해독에도 비용이 듭니다. 이는 매우 빈번한 엔클레이브 경계 교차에 대한 성능에 영향을 줄 수 있습니다. 엔클레이브는 종종 메모리 크기 제한이 있습니다. 예를 들어, 초기 SGX는 제한된 엔클레이브 페이지 캐시를 가지고 있었고, 엔클레이브가 더 많은 메모리를 사용하면 페이지를 스왑해야 했으며(암호화 포함), 이는 성능을 크게 저하시켰습니다. 최신 TEE조차도 종종 모든 시스템 RAM을 쉽게 사용할 수 없습니다. 제한될 수 있는 보안 메모리 영역이 있습니다. 이는 매우 대규모의 연산이나 데이터 세트를 TEE 내에서 완전히 처리하기 어려울 수 있음을 의미합니다. Web3 맥락에서 이는 엔클레이브에서 실행될 수 있는 스마트 계약이나 ML 모델의 복잡성을 제한할 수 있습니다. 개발자는 메모리를 최적화하고 작업을 분할해야 할 수 있습니다.
-
증명 및 키 관리의 복잡성: 탈중앙화 환경에서 TEE를 사용하려면 강력한 증명 워크플로가 필요합니다. 각 노드는 다른 노드에게 예상 코드를 가진 진정한 엔클레이브를 실행하고 있음을 증명해야 합니다. 이 증명 검증을 온체인에서 설정하는 것은 복잡할 수 있습니다. 일반적으로 공급업체의 공개 증명 키나 인증서를 프로토콜에 하드코딩하고 스마트 계약이나 오프체인 클라이언트에 검증 로직을 작성해야 합니다. 이는 프로토콜 설계에 오버헤드를 초래하며, 변경 사항(인텔이 증명 서명 키 형 식을 EPID에서 DCAP로 변경하는 등)은 유지 관리 부담을 야기할 수 있습니다. 또한, TEE 내에서 키를 관리하는 것(데이터 해독 또는 결과 서명용)은 또 다른 복잡성 계층을 추가합니다. 엔클레이브 키 관리의 실수는 보안을 약화시킬 수 있습니다(예: 엔클레이브가 버그를 통해 실수로 해독 키를 노출하면 모든 기밀성 약속이 무너짐). 모범 사례는 TEE의 봉인 API를 사용하여 키를 안전하게 저장하고 필요한 경우 키를 교체하는 것이지만, 이 또한 개발자의 신중한 설계가 필요합니다.
-
서비스 거부 및 가용성: 아마도 덜 논의된 문제일 수 있지만, TEE는 가용성에 도움이 되지 않으며 새로운 DoS 경로를 도입할 수도 있습니다. 예를 들어, 공격자는 처리 비용이 많이 드는 입력으로 TEE 기반 서비스를 범람시킬 수 있으며, 엔클레이브가 운영자에 의해 쉽게 검사되거나 중단될 수 없다는 것을 알고 있습니다(격리되어 있기 때문). 또한, 취약점이 발견되고 패치에 펌웨어 업데이트가 필요한 경우, 그 주기 동안 많은 엔클레이브 서비스가 (보안을 위해) 노드가 패치될 때까지 일시 중지해야 할 수 있으며, 이는 다운타임을 유발합니다. 블록체인 컨센서스에서, 중요한 SGX 버그가 발견되었다고 상상해 보십시오. 시크릿과 같은 네트워크는 수정이 있을 때까지 중단해야 할 수 있습니다. 왜냐하면 엔클레이브에 대한 신뢰가 깨졌기 때문입니다. 탈중앙화 네트워크에서 이러한 대응을 조정하는 것은 어렵습니다.
컴포저빌리티 및 생태계 제한
-
다른 계약과의 제한된 컴포저빌리티: 이더리움과 같은 공개 스마트 계약 플랫폼에서는 계약이 다른 계약을 쉽게 호출할 수 있고 모든 상태가 공개되어 있어 DeFi 머니 레고와 풍부한 구성을 가능하게 합니다. TEE 기반 계약 모델에서는 비공개 상태는 기밀성을 깨뜨리지 않고 자유롭게 공유하거나 구성할 수 없습니다. 예를 들어, 엔클레이브의 계약 A가 계약 B와 상호 작용해야 하고 둘 다 일부 비밀 데이터를 가지고 있다면, 어떻게 협력할 수 있을까요? 복잡한 다자간 보안 프로토콜을 수행해야 하거나(이는 TEE의 단순성 일부를 상쇄함), 하나의 엔클레이브로 결합해야 합니다(모듈성 감소). 이는 시크릿 네트워크와 다른 프로젝트들이 직면한 과제입니다. 개인정보보호를 포함한 계약 간 호출은 사소하지 않습니다. 일부 솔루션은 단일 엔클레이브가 여러 계약의 실행을 처리하여 내부적으로 공유 비밀을 관리하도록 하는 것을 포함하지만, 이는 시스템을 더 단일화할 수 있습니다. 따라서 비공개 계약의 컴포저빌리티는 공개 계약보다 더 제한적이거나 새로운 설계 패턴이 필요합니다. 마찬가지로, TEE 기반 모듈을 기존 블록체인 dApp에 통합하려면 신중한 인터페이스 설계가 필요합니다. 종종 엔클레이브의 결과만 온체인에 게시되며, 이는 스나크나 해시일 수 있고, 다른 계약은 그 제한된 정보만 사용할 수 있습니다. 이는 확실히 트레이드오프입니다. 시크릿과 같은 프로젝트는 보기 키와 필요에 따라 비밀을 공유할 수 있도록 허용하지만, 일반적인 온체인 컴포저빌리티만큼 원활하지는 않습니다.
-
표준화 및 상호운용성: TEE 생태계는 현재 공급업체 간에 통일된 표준이 부족합니다. 인텔 SGX, AMD SEV, ARM TrustZone은 모두 다른 프로그래밍 모델과 증명 방법을 가지고 있습니다. 이러한 파편화는 SGX 엔클레이브용으로 작성된 dApp이 TrustZone 등으로 쉽게 이식되지 않음을 의미합니다. 블록체인에서 이는 프로젝트를 특정 하드웨어에 묶을 수 있습니다(예: 시크릿과 오아시스는 현재 SGX가 있는 x86 서버에 묶여 있음). 나중에 ARM 노드(예: 모바일의 검증인)를 지원하려면 추가 개발과 아마도 다른 증명 검증 로직이 필요할 것입니다. 증명 및 엔클레이브 API를 표준화하려는 노력(CCC – 기밀 컴퓨팅 컨소시엄 등)이 있지만, 아직 완전히 이루어지지는 않았습니다. 표준의 부재는 개발자 도구에도 영향을 미칩니다. SGX SDK는 성숙하지만 다른 TEE에 다른 SDK로 적응해야 할 수 있습니다. 이 상호운용성 과제는 채택을 늦추고 비용을 증가시킬 수 있습니다.
-
개발자 학습 곡선: TEE 내부에서 실행되는 애플리케이션을 구축하려면 많은 블록체인 개발자가 가지고 있지 않을 수 있는 전문 지식이 필요합니다. 저수준 C/C++ 프로그래밍(SGX/TrustZone용)이나 메모리 안전성 및 사이드 채널 방지 코딩에 대한 이해가 종종 필요합니다. 엔클레이브 코드 디버깅은 악명 높게 까다롭습니다(보안상의 이유로 실행 중인 엔클레이브 내부를 쉽게 볼 수 없음!). 프레임워크와 고급 언어(오아시스가 기밀 런타임에 Rust를 사용하는 것 또는 엔클레이브에서 WebAssembly를 실행하는 도구 등)가 존재하지만, 개발자 경험은 여전히 일반적인 스마트 계약 개발이나 오프체인 웹2 개발보다 거칩니다. 이 가파른 학습 곡선과 미성숙한 도구는 개발자 를 단념시키거나 신중하게 처리하지 않으면 실수를 유발할 수 있습니다. 테스트할 하드웨어가 필요하다는 측면도 있습니다. SGX 코드를 실행하려면 SGX 지원 CPU나 에뮬레이터(더 느림)가 필요하므로 진입 장벽이 더 높습니다. 결과적으로, 오늘날 상대적으로 적은 개발자만이 엔클레이브 개발에 깊이 익숙하며, 감사 및 커뮤니티 지원은 잘 알려진 솔리디티 커뮤니티보다 드뭅니다.
-
운영 비용: TEE 기반 인프라를 운영하는 것은 더 비용이 많이 들 수 있습니다. 하드웨어 자체가 더 비싸거나 희소할 수 있습니다(예: 특정 클라우드 제공업체는 SGX 지원 VM에 프리미엄을 부과함). 운영에도 오버헤드가 있습니다. 펌웨어를 최신 상태로 유지하고(보안 패치용), 증명 네트워킹을 관리하는 등, 소규모 프로젝트에는 부담스러울 수 있습니다. 모든 노드가 특정 CPU를 가져야 한다면, 잠재적인 검증인 풀을 줄일 수 있으며(모든 사람이 필요한 하드웨어를 가지고 있지는 않음), 따라서 탈중앙화에 영향을 미치고 클라우드 호스팅 사용을 증가시킬 수 있습니다.
요약하자면, TEE는 강력한 기능을 제공하지만 신뢰 트레이드오프(하드웨어 신뢰 대 수학 신뢰), 잠재적인 보안 약점(특히 사이드 채널), 그리고 탈중앙화 맥락에서의 통합 장애물을 가져옵니다. TEE를 사용하는 프로젝트는 이러한 문제를 신중하게 설계해야 합니다. 심층 방어(TEE가 깨지지 않는다고 가정하지 않음), 신뢰 컴퓨팅 기반을 최소화하고, 사용자에게 신뢰 가정을 투명하게 공개하여(예를 들어, 블록체인 컨센서스 외에 인텔의 하드웨어를 신뢰한다는 것이 명확하도록) 해야 합니다.