zkTLS: Web2 데이터를 온체인에서 검증 가능하게 만드는 암호학적 브리지
만약 정확한 금액을 공개하지 않고도 DeFi 대출을 위해 은행 잔고가 $10,000 를 초과함을 증명할 수 있다면 어떨까요 ? 또는 금융 이력을 노출하지 않고 대출 프로토콜에 신용 점수를 확인할 수 있다면요 ? 이것은 공상 과학 소설이 아닙니다 — 비공개 인터넷 데이터에 대한 검증 가능한 어테스테이션 (attestation) 을 생성하기 위해 영지식 증명과 전송 계층 보안 (TLS) 을 결합한 암호화 프로토콜인 zkTLS 가 약속하는 미래입니다 .
전통적인 블록체인 오라클은 주가나 스포츠 점수와 같은 공개 데이터를 가져오는 역할을 해왔지만 , 기하급수적으로 더 큰 규모의 비공개 인증 웹 데이터 영역에서는 어려움을 겪어왔습니다 . zkTLS 는 HTTPS 로 보안된 모든 웹사이트를 검증 가능한 데이터 소스로 변환함으로써 게임의 판도를 바꿉니다 . 이 과정에서 데이터 보유자의 허가가 필요하지 않으며 민감한 정보도 노출되지 않습니다 . 2026 년 초 현재 , 20 개 이상의 프로젝트가 Arbitrum , Sui , Polygon , Solana 전 반에 걸쳐 zkTLS 인프라를 통합하여 탈중앙화 ID 부터 실물 자산 토큰화에 이르기까지 다양한 사용 사례에 적용하고 있습니다 .
사라지지 않는 오라클 문제
스마트 컨트랙트는 항상 근본적인 한계에 직면해 왔습니다 : 바로 오프체인 데이터에 직접 접근할 수 없다는 점입니다 . Chainlink 와 같은 전통적인 오라클 솔루션은 탈중앙화 오라클 네트워크 모델을 개척하여 블록체인이 데이터 제공자 간의 합의 메커니즘을 통해 외부 정보를 소비할 수 있도록 했습니다 . 하지만 이 접근 방식에는 치명적인 제약이 있습니다 .
첫째 , 전통적인 오라클은 주가 , 날씨 데이터 , 스포츠 결과와 같은 공개 데이터에 가장 적합합니다 . 은행 잔고나 의료 기록과 같은 비공개 인증 데이터의 경우 이 모델은 작동하지 않습니다 . 개인 뱅킹 포털에 접근하는 탈중앙화된 노드 네트워크를 가질 수는 없기 때문입니다 .
둘째 , 전통적인 오라클은 신뢰 가정을 도입합니다 . 탈중앙화된 오라클 네트워크라 할지라도 , 오라클 노드가 데이터를 조작하지 않고 충실하게 보고하고 있다는 사실을 믿어야 합니다 . 공개 데이터의 경우 이 신뢰는 분산될 수 있습니다 . 그러나 비공개 데이터의 경우 이는 단일 실패 지점 (single point of failure) 이 됩니다 .
셋째 , 비용 구조가 개인화된 데이터까지 확장되지 않습니다 . 오라클 네트워크는 쿼리당 요금을 부과하므로 , DeFi 프로토콜의 모든 사용자에 대해 개별화된 정 보를 확인하는 것은 엄청나게 비싼 비용이 듭니다 . Mechanism Capital 에 따르면, 전통적인 오라클 사용은 "공개 데이터에 국한되어 있으며 비용이 많이 들어 개인 식별 정보 및 Web2 시나리오로 확장하기 어렵습니다 ."
zkTLS 는 이 세 가지 문제를 동시에 해결합니다 . 사용자가 데이터 자체를 공개하지 않고 , 데이터 소스의 허가 없이 , 그리고 신뢰할 수 있는 중개자에 의존하지 않고도 비공개 웹 데이터에 대한 암호화 증명을 생성할 수 있게 해줍니다 .
zkTLS 의 작동 원리 : 3 자 TLS 와 영지식의 만남
핵심적으로 zkTLS 는 3 자 TLS (3P-TLS) 를 영지식 증명 시스템과 통합하여 HTTPS 세션에 대한 검증 가능한 어테스테이션을 생성합니다 . 이 프로토콜에는 증명자 (Prover, 사용자 ), 검증자 (Verifier, 일반적으로 스마트 컨트랙트 ), 그리고 데이터 소스 (DataSource, 은행 API 와 같은 TLS 서버 ) 의 세 주체가 참여합니다 .
작동 방식은 다음과 같습니다 :
3P-TLS 핸드셰이크
전통적인 TLS 는 클라이언트와 서버 사이에 보안 암호화 채널을 구축합니다 . zkTLS 는 이를 3 자 프로토콜로 확장합니다 . 증명자와 검증자는 실질적으로 서버와 통신하는 단일 " 클라이언트 " 로서 협력합니다 .
핸드셰이크 과정에서 그들은 다자간 연산 (MPC) 기술을 사용하여 암호화 매개변수를 공동으로 생성합니다 . 프리 마스터 키 (pre-master key) 는 OLE (Oblivious Linear Evaluation) 를 사용하여 증명자와 검증자 간에 분할되며, 각 당사자는 하나의 공유분을 보유하고 서버는 전체 키를 보유합니다 . 이를 통해 증명자나 검증자 누구도 단독으로 세션을 복호화할 수 없지만 , 함께하면 완전한 트랜스크립트를 유지할 수 있습니다 .
두 가지 운영 모드
zkTLS 구현은 일반적으로 두 가지 모드를 지원합니다 :
** 프록시 모드 (Proxy Mode)**: 검증자가 증명자와 서버 사이의 프록시 역할을 하여 나중에 검증할 수 있도록 트래픽을 기록합니다 . 구현이 더 간단하지만 TLS 세션 중에 검증자가 온라인 상태여야 합니다 .
MPC 모드 (MPC Mode): 증명자와 검증자가 MPC 및 의무 전송 (oblivious transfer) 기술로 강화된 타원 곡선 디피 - 헬먼 (ECDH) 프로토콜 기반의 일련의 단계를 통해 협력합니다. 이 모드는 더 강력한 프라이버시 보장을 제공하며 비동기 검증을 가능하게 합니다 .
증명 생성
TLS 세션이 완료되고 증명자가 비공개 데이터를 가져오면 영지식 증명을 생성합니다 . zkPass 와 같은 현대적 구현은 SoftSpokenOT 와 결합된 VOLE-in-the-Head (VOLEitH) 기술을 사용하며, 이를 통해 공개 검증 가능성을 유지하면서 수 밀리초 만에 증명을 생성할 수 있습니다 .
증명은 몇 가지 중요한 사실을 입증합니다 :
- 특정 서버와 TLS 세션이 발생했음 ( 서버의 인증서로 확인됨 )
- 검색된 데이터가 특정 조건 ( 예 : 은행 잔고 > $10,000) 을 충족함
- 데이터가 유효한 시간 범위 내에 전송되었음
- 데이터의 무결성이 온전함 (HMAC 또는 AEAD 확인을 통해 )
결정적으로 , 증명은 증명자가 공개하기로 선택한 정보 외에 실제 데이터에 대해서는 아무것도 드러내지 않습니다 . 잔고가 $10,000 를 초과한다는 점을 증명할 때 , 검증자는 오직 그 한 비트의 정보만 알게 됩니다 — 실제 잔고 , 거래 내역 , 심지어 공개하지 않기로 선택했다면 어느 은행을 사용하는지도 알 수 없습니다 .