인력양성

학생주도 창의·자율 과제

신뢰수행환경(TEE)를 이용한 Payment Channel Hub

2022-03-07

학생창의자율과제명 : 신뢰수행환경(TEE)를 이용한 Payment Channel Hub


참여인력 현황

-소속 : 서울대학교 전기정보공학부

-팀장 : 이준모(박사과정, 02-880-1767, junmo.lee@snu.ac.kr)

-참여학생 1 : 김성준(박사과정, 02-880-1767, sms7002@snu.ac.kr)

-참여학생 2 : 박상현(박사과정, 02-880-1767, lukepark@snu.ac.kr)

-참여학생 3 : 손종호(학사과정, 02-880-1767, sohnjh2@snu.ac.kr)

-멘토 : 서울대학교 문수묵 교수


연구기간: 2021. 12. – 2022. 9.


연구 필요성 (개요)

-최근 엘살바도르가 비트코인을 법정화폐로 사용한다는 데, 비싼 비트코인 수수료와 낮은 비트코인   트랜잭션 처리속도를 고려하면 어떻게 이것이 가능할까? 실제로는 Lightning Network[1] 과 같은 Payment Channel Network (PCN) 이라는 off-chain 기법을 사용하여 대부분의 트랜잭션들은 layer-2인 PCN 에서 수행하고 꼭 필요한 트랜잭션만 비트코인 layer-1 네트워크에서 수행되도록 하고 있다. 채널 개설을 위해서는 on-chain에서 서로 담보를 잡고 있어야 하며 속임을 당하지 않기 위해 계속 on-chain을 관찰해야 한다. 한편 채널이 연결되어 있지 않은 사용자들이 거래를 하고 싶다면 PCN에서 연결되어 있는 경로를 통해 multi-hop 거래를 해야 하는 데 경로의 모든 중간 사용자에게 수수료를 내야하며 유효경로 파악도 쉽지 않아 비효율적이며 거래 내역이 노출되는 문제도 있다. 


-이러한 PCN 보다는 star 구조의 Payment Channel Hub(PCH)을 사용하면 모든 거래는 2-hop 거래가 되어 수수료 부담이 낮고 경로 파악의 부담도 없어 더 효율적인 payment channel을 가질 수 있다. 그러나 PCN과 마찬가지로 Hub에서는 많은 담보를 잡고 있어야 하며 모든 거래는 Hub에 노출되고 또한 사용자들은 독점적인 Hub에게 속임을 당하지 않도록 계속 on-chain을 synchronous 하게 관찰해야 하는 문제는 여전히 남아있다. 따라서 어떻게 PCH를 설계해야 확장가능(scalable)하고 현실적으로 사용가능(practical)한 PCH를 구현할 수 있는가 하는 문제가 있다. 


선행 연구/기술 및 특징 요약

-기존 PCH 관련 연구로는 암호 퍼즐 기법을 이용하여 Hub 조차도 sender와 receiver를 연결시키지 못하도록 하는 TumbleBit 이라는 연구가 있다[2]. 이의 효율성을 높이기 위해 communication cost를 낮추고 interoperability를 높이기 위해 digital signature로만 동작이 가능하도록 하는 A2L 이라는 연구도 존재한다[3]. 또한 복잡한 암호 기법을 사용하여 사용자의 신원과 거래 금액을 감출 수 있는 Bolt기법이 있다[4]. 이들은 모두 사용자와 거래의 privacy를 높이는 데에는 효과적이지만 Hub가 많은 담보를 가지고 있어야 하는 문제는 해결하지 못했으며 사용자들은 여전히 지속적으로 혹은 주기적으로 on-chain을 관찰해야 하는 문제도 존재한다. 

-NOCUST라는, PCH와 유사한 commit-chain은 on-chain smart contract를 이용하여 사용자의 state의 Merkle root를 주기적으로 smart contract에 저장하고 사용자는 이에 대해 challenge를 할 수 있도록 설계되었다[5]. Smart contract는 누구든지 볼 수 있으므로 신뢰성을 가지며 이를 통해 Hub가 담보를 가질 필요가 없도록 설계되었다. 그러나 privacy를 전혀 고려하지 않아서 모든 거래 정보는 Hub에 노출된다. 또한 사용자는 주기적으로라도 challenge를 위해 on-chain을 관찰해야 한다.


연구목표 / 선행 연구 및 기술과의 차별성 (독창성)

□연구목표

-인텔 SGX와 같은 신뢰수행환경(TEE)를 이용하여 (1) 담보가 필요 없고 (2) 사용자의 on-chain 관찰이 필요 없으며 (3) 거래의 privacy를 지킬 수 있는 PCH를 설계하고 구현한다. 이는 TEE의 소스 코드가 공개되어 안전한지를 사용자가 미리 확인할 수 있고 또한 수행 중에는 인텔의 remote attestation service를 통해 확인한 프로그램이 실제로 수행 중인지를 검증가능 함을 이용한다. 

-TEE안의 PCH는 안전하지만 TEE를 운영하는 host가 올바로 TEE에 블록을 제공하며 PCH 서비스를 성실히 운용하도록 만들어야 하는 문제가 있다. 본 연구에서는 payment 및 settlement를 위한 독창적인 프로토콜을 사용하여 rational host라면 올바로 PCH를 운용하도록 만든다. 또한 사용자들은 최소한의 asynchronous한 블록체인 검증을 통해 안전하게 PCH를 사용할 수 있도록 한다.

-기존 PCN 혹은 PCH가 가진 낮은 TPS 성능을 개선하여 충분히 안전하면서도 15,000 TPS 이상의 고성능을 낼 수 있으며, 보안과 프라이버시가 높으면서도 실용 가능한 PCH 시스템을 개발한다.

□선행 연구 및 기술과의 차별성

-TumbleBit, A2L, Bolt 와는 달리 PCH의 담보가 필요 없도록 하여 누구나 쉽게 담보 없이도 PCH 비즈니스를 시작할 수 있도록 한다.

-NOCUST와는 달리 TEE를 이용하여 사용자 정보와 거래의 privacy를 높일 수 있다.

-기존 PCH 혹은 PCN과 달리 15,000 TPS 이상의 거래 성능을 확보할 수 있다.

그림 1. 결제 허브 시스템 오버뷰

 

활용방안 / (기술적, 산업적, 혹은 경제적) 기대효과

-TEE를 사용한 PCH 개발의 최초의 시도로서 기술적 독창성을 가짐.

-누구나 담보물 없이도 PCH 비즈니스를 빠르게 시작할 수 있도록 하며, 사용자들도 기존의 full node가 아닌 SPV 사용자로서 복잡한 on-chain 검증 없이 쉽고 안전하게 PCH를 사용할 수 있도록 함.

-기존의 Lightning Network와 같은 PCN을 대체할 수 있는 PCH 거래소 창업이나 혹은 PCH 서비스를 희망하는 업체에 PCH 하드웨어 및 소프트웨어 솔루션을 제공하는 솔루션 스타트업 창업 가능.