"해시타임락 이용해 거래소 없이 코인 교환한다"

엄지용 게임엑스코인 블록체인연구소장, '이드콘 2019'서 발표

컴퓨팅입력 :2019/05/28 15:52    수정: 2019/05/28 15:53

"블록체인 트릴레마를 해결하지 못한 상태에서 시장은 그때그때 자신에게 더 적합한 메인넷을 사용할 수 있습니다. 문제는 서로 다른 메인넷을 사용하게 되면 토큰 교환이 어렵다는 것이죠. 해시타임락을 이용한 아토믹 스왑을 사용하면 상이한 메인넷 간에도 신뢰 중개자 없이 토큰 교환을 할 수 있습니다."

엄지용 게임엑스코인(GameXCoin) 블록체인연구소장은 28일 서울 강남구 삼성동 코엑스에서 열린 '이드콘 한국 2019' 행사에서 '해시타임락(HTL) 컨트랙트를 이용한 아토믹 스왑(Atomic Swap)'에 대해 발표했다.

엄지용 게임엑스코인(GameXCoin) 블록체인연구소장. (사진=지디넷코리아)

■ "여러 메인넷 사용하다 보면 코인 교환 필요"

아토믹 스왑이란 서로 다른 코인을 교환하는 행위를 말한다. 아토믹 스왑은 같은 메인넷 안에서도 일어날 수 있고, 서로 다른 메인넷 간에도 일어날 수 있다.

문제는 같은 메인넷에서는 아토믹 스왑이 쉽게 가능하지만, 상이한 메인넷 간에는 코인 교환이 어렵다는 점이다.

먼저 그는 왜 서로 다른 메인넷 간에 코인 교환을 해야 하는지, 왜 해시타임락을 이용한 아토믹 스왑 기술이 필요한가에 대해 설명했다.

그는 "결국은 블록체인 트릴레마 문제 때문"이라며 "당장 시장에서는 블록체인 기술을 도입하고 싶지만, 트릴레마 문제가 해결되지 않아 사용자는 그때그때 자신에게 필요한 특성을 가진 메인넷을 사용할 수밖에 없다"고 현재 상황을 언급했다.

블록체인 트릴레마는 블록체인 기술이 가진 3가지 딜레마를 말하는 것으로, 확장성·탈중앙성·보안성 이 3가지 특성을 동시에 이룰 수 없는 문제를 말한다.

엄 소장은 "이더리움은 탈중앙화 가치를 최우선으로 보면서 확장성을 넓혀 가려 하고, 이오스는 확장성에 먼저 중점을 두고 점차 탈중앙화를 확보하고자 한다"며 "탈중앙성·확장성·보안성 중 어떤 가치에 중점을 두느냐에 따라 메인넷은 여러가지"라고 설명했다.

즉, 현재의 기술 상황으로는 확장성.탈중앙성.보안성 등 모든 요소를 충족한 메인넷이 없기 때문에 이 중 특정 요소를 최우선으로 한 여러 메인넷을 사용할 수밖에 없고, 그러다 보면 여러 메인넷에서 사용되는 각각의 코인을 서로 교환하려는 요구가 생길 수밖에 없는 것이다.

해시타임락(HTL) 컨트랙트를 이용한 아토믹 스왑(Atomic Swap) 방법.

■ "해시타임락 컨트랙트로 중개자 없이 신뢰 거래 가능"

엄 소장은 "서로 다른 메인넷 간에 코인을 교환하는 방법은 일반적으로 중고나라 거래를 생각하면 된다"며 "하지만 이 방법은 먼저 한 쪽 거래가 일어난 다음 다른 한쪽이 잠적을 하면 거래가 무산될 위험성을 갖고 있다"고 지적했다.

그는 해시타임락 컨트랙트를 이용해 중개자를 두지 않고도, 이런 위험성을 없애고 서로 신뢰할 수 있게 코인 교환을 하는 방법을 소개했다. "서로 다른 블록체인 간에는 서로한테 일어나는 일을 볼 수 없다"며 "하지만 해시락과 타임락을 사용한 해시타임락 방식을 이용하면 서로를 보지 않지만, 서로의 메인넷이 연결된 것과 같은 효과가 나올 수 있다"고 설명했다.

해시락은 특정한 해시값이 제공됐을 때만 계약 내용대로 토큰이 전송되게 하는 기술을 말하고, 타임락은 데드라인을 정해놓는 것을 말한다.

엄 소장은 특정 상황을 예를 들어 설명했다.

앨리스가 밥한테 이더리움에서 1이더(ETH)를 보내고, 밥이 이오스에서 30이오스(EOS)를 앨리스에게 보내 서로 코인을 교환한다고 가정해보자.

앨리스는 이더리움에 1이더를 밥에게 보내는 새로운 해시타임락 컨트랙트를 만들어 놓는다. 이때 앨리스는 해시락을 풀 수 있는 자신만 아는 프리미지(Preimage)라는 임의의 키를 갖게 된다. 밥은 이벤트를 보고 앨리스가 이더리움에 새로운 컨트랙트를 만들었다는 사실을 알게 된다. 그럼 밥은 앨리스가 만든 것과 똑같은 해시락을 가진 컨트랙트를 이오스에 만든다. 앨리스는 밥이 만든 컨트랙트를 프리미지로 풀어 이행시킨다. 프리미지가 이오스 상에 노출되면 밥은 그 프리미지를 알게 되고, 해당 프리미지를 이용해 이더리움에 있는 해시락 컨트랙트를 풀게 돼 둘은 서로 코인을 안전하게 교환할 수 있는 것이다.

만약, 앨리스가 이더리움에 해시타임락 컨트랙트를 만들었는데, 밥이 이오스에 그에 대응되는 컨트랙트를 만들기로 해놓고 안 만든다면, 데드라인이 끝나는 즉시 앨리스는 자신의 코인을 돌려받을 수 있다.

앨리스가 컨트랙트를 만들고 밥도 컨트랙트를 만들었는데 만약 앨리스가 프리미지를 입력하지 않는다면, 이 경우에도 데드라인이 끝난 후 밥은 다시 자신의 코인을 돌려받게 된다.

엄 소장은 "원래 코인을 거래하려면 중개인이 필요하기 때문에 거래소를 이용하거나 에스크로 서비스를 이용해야 하는데 해시타임락 컨트랙트를 이용하면 아무 중개인 없이 스마트컨트랙트가 알아서 거래를 진행할 수 있다"고 설명했다.

관련기사

주의할 점은 타임락을 넉넉하게 잡아야 한다는 점이다. 그는 "앨리스가 데드라인을 짧게 설정해 앨리스의 데드라인이 먼저 끝나고, 밥의 데드라인만 남게 되면 밥이 앨리스의 컨트랙트를 열지 못한 채 앨리스의 데드라인이 끝나게 돼, 앨리스는 자신의 코인도 되돌려 받게 되고 밥이 보낸 코인도 받아가게 된다"며 "타임락이 길어졌을 때 안 좋은 것은 환불받는 기간이 늦어지는 것밖에 없기 때문에 거래의 안정성을 생각한다면 처음 스마트컨트랙트를 만드는 사람의 기간을 넉넉하게 잡을 필요가 있다"고 덧붙였다.

현재 게임엑스코인은 HTL을 이용한 아토믹 스왑을 쓰고 있다. 엄 소장은 "게임엑스코인은 현재 ERC20기반의 토큰과 메인넷 토큰을 같이 쓰고 있다"며 "거래소에서는 메인넷 토큰을 바로 지원해주지 않아 거래소에서 지원되는 ERC20기반 토큰 거래를 계속하되, 메인넷 토큰과 아토믹 스왑을 통해 교환할 수 있게 했다"고 말했다.