"기존 서비스를 업그레이드하기 위해선 수정이 가능한 스마트 컨트랙트 프레임워크가 필요하다고 생각했고, 무중단 서비스를 위한 스마트 컨트랙트 ‘비습(vvisp)’을 만들었다."
김종호 해치랩스 최고경영자(CEO)는 15일 소프트웨어 전문지 마이크로소프트웨어(이하 마소)가 서울 마포구 상암동 누리꿈스퀘어에서 개최한 ‘마소콘 2018’에서 "일반적으로 블록체인에서 스마트 컨트랙트는 업그레이드가 되지 않는다고 하지만, 해치랩스는 업그레이드가 가능하다는 사실을 발견했다"며 비습을 이용해 서비스가 끊기지 않으면서도 업그레이드할 수 있는 댑(DApp, 개별 분산형 애플리케이션)을 만드는 방법을 소개했다.
또한, 김 CEO는 "스마트 컨트랙트는 가치를 지닌 암호화폐(가상화폐)를 매개하기에 사소한 버그라도 발생하면 해커가 이를 악용해 경제적 이득을 취할 수 있다"며 "실제로 이더리움에서 스마트 컨트랙트의 보안 취약점을 이용한 ‘DAO’ 해킹 사건이 발생했고, 해커가 이더리움 유통량의 15%를 가져갔다"고 말했다.
현재 업그레이드 가능한 스마트 컨트랙트를 만드는 방법으로는 데이터와 로직을 분리하는 패턴과 프록시 패턴이 있다. 김 CEO는 "데이터와 로직을 분리하는 패턴을 사용할 경우 데이터 마이그레이션이 필요없고 고정된 주소의 컨트랙트에 데이터가 저장된다"면서도 "데이터 컨트랙트와 통신하기 위해선 코드 작성이 추가로 필요하며 컨트랙트 주소가 변경되는 단점이 있다"고 말했다. 이어 김 CEO는 "프록시 패턴 역시 데이터 마이그레이션이 필요없고 컨트랙트 주소가 변경되지 않으며 기존 컨트랙트 코드를 고치지 않아도 업그레이드가 지원된다"면서도 "새로운 버전의 컨트랙트를 구현할 경우 과거 버전의 컨트랙트를 받아야만 프록시 충돌이 발생하지 않는다"고 꼬집었다.
해치랩스는 이런 문제점을 넘어서기 위해 프록시 패턴의 단점을 보완한 비습을 개발했다. 김 CEO는 "프록시 패턴으로 댑을 만들면 무중단 서비스가 지원되지 않지만, 비습은 다르다"며 "비습에는 기능1과 기능2를 한꺼번에 업그레이드하는 기능이 들어간 것이 특징"이라고 강조했다.
이어 김 CEO는 "비습은 이더리움 기반의 EVM을 탑재한 모든 블록체인에서 댑을 만드는 데 사용할 수 있다"며 "비습을 이용하면 댑을 만드는 시간을 석 달에서 한 달 반 정도로 줄일 수 있다"고 말했다.