비트코인과 기밀거래(CT) 구현하기

phuzion7 2019-02-18 19:01 COLUMN(칼럼) DN 52.00

image- pexels

By Bisola Asolo

Bitcoin & Confidential Transaction

비트코인과 기밀 거래 

1000x1.png
 

전 비트코인 개발자 아담 벡이 고안한 기밀 거래(CT, confidential transaction)는 비공개 요소(blinding factor 또는 비밀키)를 사용해서 입력값(input)과 결과값(output)을 동형 암호화(homomorphic encryption) 함으로써 트랜잭션의 프라이버시를 높이는 기술이다 동형 암호화란, 정보를 암호화된 상태에서 연산을 할 수 있는 4세대 암호체계이다 그리고 비공개 요소는 비트코인 트랜잭션의 input과 output 값들을 암호화하는 데 사용하는 단순한 일련의 숫자(비밀키)이다

본질적으로, 기밀 거래는 트랜잭션에 참여하고 있는 두 당사자들만이 거래 중인 수량에 대한 정보 공유를 허락하며, 외부 관계자들은 이 정보를 알 수 없다 그러나, 네트워크 또한 기밀 거래의 유효성을 판단할 수 있어야 한다 이것은 트랜잭션을 개시할 때 input 값이 트랜잭션이 끝날 때 output 값과 같다는 것을 증명함으로써 이루어진다

예를 들어보면, A와 B가 비밀 거래를 시작하고 A가 B에게 1 비트코인(BTC)을 보내기로 한다 이 트랜잭션은 다음과 같은 input 값들을 가진다:

Input 1 – 0.25 BTC
Input 2 – 0.25 BTC
Input 3 – 0.25 BTC
Input 4 – 0.25 BTC

input 값들은 단순히 이전 비트코인 트랜잭션들의 정보를 참조한 것이며, 거래 수수료가 없고, 총 output은 1 BTC와 동일하다고 가정한다

Output 1 – 0.25 BTC
Output 2 – 0.25 BTC
Output 3 – 0.25 BTC
Output 4 – 0.25 BTC

input과 output 값들을 암호화함으로써 이 사례는 기밀 거래가 된다 일단 암호화가 되면, 참여 중인 당사자들 외에는 거래 중인 수량에 대한 정보를 공유할 수 없게 된다

 

기밀 거래의 장점

1000x1.png
 

현재, 비트코인 프로토콜은 두 가지 핵심 문제를 안고 있다

  • 익명성(anonymity) 부족
  • 대체성(fungibility) 부족

익명성 부족

처음에는, 비트코인이 진정한 탈중앙화된 익명성 디지털 화폐로 알려졌었다 그러나, 실제로는 그렇지 않다 왜냐하면 비트코인 네트워크 상의 각 사용자는 공개 주소(public address)가 노출되며, 그들의 거래 내역은 블록 탐색기로 추적할 수 있다 만약 공개 주소와 현실의 사용자 사이의 연결고리가 성립되면, 다른 사용자들이 그들이 누구와 거래를 했었는지 정확하게 알 수 있게 된다 기껏해야, 비트코인 프로토콜은 가명으로 표현할 수 있을 뿐이다

대체성 부족

대체성은 간단히 말하면 하나의 상품이나 통화의 단위가 또 다른 단위와 상호거래가 가능한 능력이다 즉, 미국 달러화(US dollar)는 대체 가능한데, 1 달러는 가치의 손실 없이 (형태가 다른) 또 다른 것과 교환할 수 있기 때문이다 반대로, 비트코인은 개방되고 접근 가능한 블록체인을 통해 추적이 가능하기 때문에, 만약 이러한 비트코인이 불법적인 활동에 사용되거나 얻은 것이라면, 이것들은 “오염됐다”(tainted)라고 딱지가 붙을 수도 있다 상인들은 이러한 오염된 비트코인들을 받는 걸 거부할 것이고 따라서 이것들은 다른 비트코인과 비교했을 때 가치가 떨어지게 된다 가치 손실 없는 거래는 더 이상 불가능하다 즉 이러한 비트코인들은 대체 불가능(non-fungible) 하다고 말한다

기밀 거래는 input과 output의 암호화로 대체성의 문제를 해결한다 output의 내역을 추적할 수 없기 때문이며, 이들의 출처를 확인할 수 없어서, 오염된 비트코인과 그렇지 않은 것을 구분하기가 힘들다 같은 이유로, 심지어 그들의 공개 주소를 자유롭게 이용 가능하더라도 특정 사용자의 트랜잭션 내역을 추적하기가 상당히 힘들어진다 이것은 기밀 거래를 활용하는 사람들에게 향상된 보안 수준을 제공한다

 

기밀 거래가 가진 문제

1000x1.png
 

원래, 하나의 기밀 거래는 일반적인 비트코인 트랜잭션 크기의 약 16배였다 이 큰 크기로 인해 이미 확장성 문제를 경험하고 있는 비트코인 프로토콜에 기밀 거래를 구현하기가 힘들게 만든다 그러나, 그레고리 맥스웰이 작성 한 업데이트에서, 기밀 거래의 사이즈가 일반적인 비트코인 트랜잭션의 약 3배까지 줄어들었다

이러한 데이터 절약으로 이 기술이 구현될 가능성이 높아졌다 공간 절약과 프라이버시 및 대체성의 증가 사이에서 어느 하나는 포기해야 하는 관계인 트레이드오프(trade-off)가 기밀 거래를 비트코인 프로토콜에 통합하려는 쪽에 더 큰 논거를 제공하게 되었다 이러한 통합은 소프트 포크(soft fork)의 형태가 될 것이다

그러나, 솔직히 비트코인 프로토콜 상에 반드시 달성할 필요는 없는 이 기술이 정확하게 어떻게 구현될지에 대한 합의가 우선 이루어져야 한다 합의에 요구되는 최소한의 조건을 충족시키기가 어려우면 속도가 느려지거나, 또는 앞으로의 기밀 거래 개발에 해를 끼칠 수도 있다

결론적으로, 비트코인 트랜잭션의 input과 output 값을 암호화함으로써, 프라이버시 수준을 향상시킬 수 있으며, 오직 거래 중인 두 당사자들 만이 거래되고 있는 수량을 알고 있다

이러한 시스템으로, (어느 정도는) 프라이버시 문제를 해결하고 비트코인 프로토콜에 내재한 대체 가능성을 풀 수 있다 그러나, 이러한 기술이 어떻게 구현되어야 하는지에 대한 합의에 이르기 힘들기에, 이것이 개발을 지연시킬 수도 있다

 

phuzion7 (windells77@naver.com)의 기사 더 보기

- 데일리코인뉴스는 현장의 목소리를 우선합니다(news@dailycoinews.com) -

- 이 기사는 개인적인 의견과 견해를 나타내는 것으로 본사 편집 방향과 다를 수 있습니다 -

- 기사에 사용된 모든 자료에 대한 책임은 작성자 본인에게 있습니다 -

[저작권자ⓒ Daily Coin News 무단전재 및 재배포 금지]

기사 등록시 비트코인 가격
BTC-USD : $ 3,824.20 USD (API by Bitfinex)

Write

Leave a Comment

임은교 2019-03-28 16:11

좋아요~~

전수미 2019-02-19 22:11

잘 봤습니다

김규선 특파원 2019-02-19 19:21

감사합니다.

X