"기존 서비스를 업그레이드하기 위해선 수정이 가능한 스마트 컨트랙트 프레임워크가 필요하다고 생각했고, 무중단 서비스를 위한 스마트 컨트랙트 ‘비습(vvisp)’을 만들었다."

김종호 해치랩스 최고경영자(CEO)는 15일 소프트웨어 전문지 마이크로소프트웨어(이하 마소)가 서울 마포구 상암동 누리꿈스퀘어에서 개최한 ‘마소콘 2018’에서 "일반적으로 블록체인에서 스마트 컨트랙트는 업그레이드가 되지 않는다고 하지만, 해치랩스는 업그레이드가 가능하다는 사실을 발견했다"며 비습을 이용해 서비스가 끊기지 않으면서도 업그레이드할 수 있는 댑(DApp, 개별 분산형 애플리케이션)을 만드는 방법을 소개했다.

15일 소프트웨어 전문지 마이크로소프트웨어(이하 마소)가 서울 마포구 상암동 누리꿈스퀘어에서 개최한 ‘마소콘 2018’에서 발표 중인 김종호 해치랩스 최고경영자(CEO). / IT조선
15일 소프트웨어 전문지 마이크로소프트웨어(이하 마소)가 서울 마포구 상암동 누리꿈스퀘어에서 개최한 ‘마소콘 2018’에서 발표 중인 김종호 해치랩스 최고경영자(CEO). / IT조선
김 CEO는 우선 이더리움의 대표적인 댑인 '크립토키티'를 예로 들었다. 김 CEO는 "크립토키티는 2017년 11월 서비스 시작 이후 일일활성사용자수(DAU)가 1만4000명에 이를 정도로 인기를 끌었으나, 이더리움 네트워크가 과부하를 감당하지 못한 끝에 현재 DAU는 100~200명 수준"이라며 "초당 거래 내역수(TPS)가 해결되고 있지만, 업그레이드가 되지 않고 새로운 기능이 없어 사용자들이 재미를 느끼지 못하고 이탈하는 상황"이라고 지적했다. 그는 "스마트 컨트랙트를 업그레이드한다면 다시 방문하고 크립토키티에 재미를 느낄 거라 생각한다"고 말했다.

또한, 김 CEO는 "스마트 컨트랙트는 가치를 지닌 암호화폐(가상화폐)를 매개하기에 사소한 버그라도 발생하면 해커가 이를 악용해 경제적 이득을 취할 수 있다"며 "실제로 이더리움에서 스마트 컨트랙트의 보안 취약점을 이용한 ‘DAO’ 해킹 사건이 발생했고, 해커가 이더리움 유통량의 15%를 가져갔다"고 말했다.

현재 업그레이드 가능한 스마트 컨트랙트를 만드는 방법으로는 데이터와 로직을 분리하는 패턴과 프록시 패턴이 있다. 김 CEO는 "데이터와 로직을 분리하는 패턴을 사용할 경우 데이터 마이그레이션이 필요없고 고정된 주소의 컨트랙트에 데이터가 저장된다"면서도 "데이터 컨트랙트와 통신하기 위해선 코드 작성이 추가로 필요하며 컨트랙트 주소가 변경되는 단점이 있다"고 말했다. 이어 김 CEO는 "프록시 패턴 역시 데이터 마이그레이션이 필요없고 컨트랙트 주소가 변경되지 않으며 기존 컨트랙트 코드를 고치지 않아도 업그레이드가 지원된다"면서도 "새로운 버전의 컨트랙트를 구현할 경우 과거 버전의 컨트랙트를 받아야만 프록시 충돌이 발생하지 않는다"고 꼬집었다.

해치랩스는 이런 문제점을 넘어서기 위해 프록시 패턴의 단점을 보완한 비습을 개발했다. 김 CEO는 "프록시 패턴으로 댑을 만들면 무중단 서비스가 지원되지 않지만, 비습은 다르다"며 "비습에는 기능1과 기능2를 한꺼번에 업그레이드하는 기능이 들어간 것이 특징"이라고 강조했다.

이어 김 CEO는 "비습은 이더리움 기반의 EVM을 탑재한 모든 블록체인에서 댑을 만드는 데 사용할 수 있다"며 "비습을 이용하면 댑을 만드는 시간을 석 달에서 한 달 반 정도로 줄일 수 있다"고 말했다.