Alice의 암호화폐 담보 대출은 어떻게 작동하는가?

누군가를 신뢰할 필요없이(trustless) 이용 가능한 금융 서비스

Yoonjae Yoo
Alice Finance 한국
15 min readAug 5, 2019

--

Alice는 블록체인 기반의 탈중앙 금융 서비스입니다. 중앙화된 주체가 수익을 독식하는 금융 서비스가 아니라, 누구나 신뢰할 수 있고 누구나 참여할 수 있으며 누구나 이로부터 이익을 얻을 수 있는 플랫폼입니다.

이 글을 간단히 정리하면 다음과 같습니다.

1. 특정 암호화폐를 위해 ALICE 토큰을 스테이킹하면, 해당 암호화폐는 담보로 사용될 수 있다.
2. (스테이킹을 한)오퍼레이터들은 a)청산 수행 b)가격 피드 제공 두 가지 일을 해야 한다.
3. (스테이킹을 한)오퍼레이터들은 담보로부터 발생한 대출의 수익을 분배받는다.

암호화폐 담보 대출에 대해 이야기하기 전에 우선 저축 서비스에 대해 간단히 알아보겠습니다.

암호화폐 저축

암호화폐 저축은 DAI 스테이블 코인을 기반으로 이루어집니다. DAI는 1달러의 가치를 지니도록 설계된 암호화폐입니다. 완전히 탈중앙화된 방식으로, 즉 누군가를 신뢰할 필요없이 작동하는 대표적인 스테이블 코인입니다. 사용자들은 원하는 양만큼의 DAI를 저축할 수 있고 이 금액에는 제한이 없습니다. 1 DAI를 저축할수도 있고 10,000 DAI를 저축할 수도 있습니다.

DAI는 1달러의 가치를 지니도록 설계된 암호화폐입니다.

Alice 저축의 차별점

이미 이더리움 네트워크에는 Alice와 유사한 여러가지 저축 프로토콜이 존재합니다. Compound, Dharma가 대표적인 프로젝트인데요, 이들에 비해서 Alice가 갖는 차별점은 바로 저축이 즉시 시작되며, 고정된 이자를 제공한다는 점입니다.

다른 프로토콜들에서는 이자 지급을 위해서 대출자와의 매칭을 기다려야 합니다. 대출자와의 매칭이 필요한 Dharma와 같은 프로토콜은 암호화폐를 제공해도 이자가 발생할 때까지 시간이 소요됩니다. 하지만 Alice에서는 매칭을 위해 기다리는 시간이 필요없고, 저축 즉시 일할 단위로 이자가 계산됩니다!

또한 공통 이자율을 사용하는 프로토콜에서는 전체 사용자들이 하나의 저축 이자를 공유하며, 이 이자율은 시장 상황에 따라 동적으로 변화됩니다. 즉, 오늘 8%의 이자율로 저축을 한 사용자는 1년 내내 그 이자율이 유지될 것으로 기대할 수 없습니다. 실제로 Compound와 같은 프로토콜의 저축 이자율은 올해들어 최저 4%에서 최대 16% 수준으로 변동이 심했습니다. 이와 다르게 Alice에서는 8%로 저축을 시작했으면 그 금액을 모두 인출하기 전까지 8% 이자가 계속 적용됩니다. 훨씬 더 사용자를 생각한 이자 지급 정책입니다.

암호화폐 담보 대출

Alice의 이자는 위와 같이 사용자들에게 최대한의 이익이 될 수 있는 모델로 설계되었습니다. 그렇다면 Alice에서는 어떻게 이자를 지급할 수 있는 것일까요? 바로 암호화폐 담보 대출을 통해서입니다.

Alice에서는 ETH, WBTC, MKR, OMG 등 가치가 오를 것으로 예상되는 암호화폐를 맡기고 DAI 스테이블 코인을 대출할 수 있습니다. 아직까지 블록체인 및 암호화폐 업계의 역사가 오래되지 않았고 대중화된 프로젝트도 많지 않으므로 쓰임새가 많은 암호화폐를 찾아보기는 힘듭니다. 암호화폐를 소유하고 있다가 가격이 올랐을 때 시장에 되파는, 트레이딩 목적으로 주로 사용됩니다. Alice에서는 암호화폐에 한가지 더 쓰임새를 부여하고자 합니다. 그것은 바로 DAI 대출을 위한 담보로써의 기능입니다.

만약 여러분이 1년뒤의 ETH의 가치가 지금보다 100% 더오를 것이라고 믿는다면, 이를 단순히 보유하고 있는 것보다 자금을 대출해서 활용하는 것이 훨씬 현명할 것입니다. 실제로 100%가 상승한다면 1년이 지나기 전에 100%보다 낮은 대출 이자만 갚는다면 여러분에게는 이득인 것이 자명합니다. 신용 대출과는 다르게 이자를 갚고나면 담보로 맡긴 암호화폐를 되찾기 때문입니다. 그리고 Alice에서의 대출이자는 10%~20% 수준으로 형성됩니다. 이보다 더 높은 가격 상승만 기대되면 대출을 하는 것이 현명하겠죠!

현실에서는 자동차, 집을 담보로 대출을 하지만 Alice에서는 암호화폐를 맡깁니다.

저축, 대출 이자율 산정

Alice의 저축과 대출은 밀접하게 연계되어 있습니다. 저축에서 사용자들이 제공하는 DAI는 펀드 스마트 계약에서 관리됩니다. 그리고 이 펀드 계약에 쌓여있는 DAI는 대출에 사용됩니다.

만약 중앙화된 은행이라면 담당 직원이 이 펀드를 관리할 것입니다. 그 정책은 은행 내부에서 관리되고 결과적으로 이자율만 고객들에게 통지됩니다. 어떠한 과정을 통해 그런 이자율이 결정되었는지는 알수가 없는 것이죠. 수요와 공급에 의해 조절될 것이라 예측할 수 있지만 이 외에도 어떤 요소가 추가로 고려되었는지 알 방법이 없습니다. 만약 은행이 단기 수익을 위해 높은 이자율을 책정하더라도 그대로 따르는 수밖에 없습니다.

하지만 Alice에서는 이 모든 과정이 스마트 계약에 의해서 투명하고 효율적으로 관리됩니다. 그리고 이자율을 결정하는 유일한 요소는 자금의 수요와 공급 입니다. Alice에서는 펀드의 금액에 따라 동적으로 저축/대출 이자가 높아지고 낮아지는 스마트 계약을 사용합니다. 이는 블록체인의 특성상 모두가 볼 수 있게 공개되어 있고 누구도 수정할 수 없습니다. 저축/대출에서 가장 중요한 이자율 계산 과정이 이렇게 투명하게 공개되어 있으므로 적어도 이자율에 대해서는 누구도 신뢰할 필요가 없이(trustless) 금융 서비스를 이용할 수 있습니다.

담보 비율 & 담보 청산

Alice의 저축/대출 시스템이 지속가능하기 위해서는 대출로부터 발생하는 이자가 저축에 지급되어야 할 이자 금액보다 많아야 합니다. 즉, 대출자들이 꼬박꼬박 이자를 갚아야 저축자들에게도 이자를 지급할 수 있습니다. 하지만 대출자들이 대출을 갚지 않는다면 어떻게 될까요?

이렇게 대출을 갚지 않는 리스크를 방지하기 위해 Alice에는 담보 비율과 담보 청산 프로세스가 존재합니다. 우선 담보 비율은 내가 빌리려고 하는 DAI의 가치 대비 담보로 제공하는 암호화폐의 가치입니다. 만약 ETH의 담보 비율이 150%라면 100 DAI를 빌리기 위해서 $100*1.5 = $150에 해당하는 ETH를 제공해야 합니다. 이 비율이 존재하는 이유는, 담보 암호화폐의 급작스런 가치 하락으로 인한 손실 리스크를 방지하기 위함입니다.

담보 청산은 원금 + 이자의 금액이 담보 암호화폐의 가치를 상회했을 때 시작되고 청산 단계에 진입한다면 원금 + 이자의 가치보다 높아질 때까지 담보 암호화폐가 조금씩 판매됩니다. 따라서 대출자는 담보 가치가 항상 원금 + 이자의 금액보다 크도록 신경을 써줘야 합니다. 만약 청산 조건에 근접한 상황이라면 추가 담보를 제공할수도 있고 일부 DAI를 제공해서 빚을 갚을수도 있습니다.

원금 + 이자의 금액이 담보 암호화폐의 가치를 상회했을 때 청산 단계에 진입합니다.

담보 암호화폐를 위한 스테이킹

그렇다면 담보로 사용될 암호화폐는 어떻게 결정될까요? 위에서 언급한 ETH, WBTC, MKR, OMG 등 어떤 코인이 사용될지는 Alice 팀에서 결정하는 것일까요?

결론부터 이야기하자면 그렇지 않습니다. 리스팅될 담보 암호화폐는 오로지 ALICE 토큰의 스테이킹에 의해 활성화됩니다. ALICE 토큰은 Alice 생태계 내에서 사용되며 다양한 쓰임새를 가질 예정인데 그 중 첫번째가 바로 담보 암호화폐를 위한 스테이킹 목적으로 사용되는 것입니다.

처음에 ETH, WBTC, MKR, OMG 토큰이 Alice에서 담보 암호화폐로 리스팅되어 있는 이유는, Alice 팀에서 각각의 암호화폐에 대해 ALICE 토큰을 스테이킹을 해놓기 때문입니다. 이 스테이킹은 최소 25,000,000 ALICE 토큰을 소유한 누구나 Alice 대시보드에서 할 수 있습니다. 그리고 이렇게 스테이킹을 한 사용자들은 오퍼레이터라고 부릅니다. 오퍼레이터들은 Alice 시스템을 위해 스마트 계약이 할 수 없는 일들을 해주고 그에 대한 보상을 받습니다. 보상은 저축과 대출의 이자 차이로 발생하는 DAI 입니다.

최소 수량의 ALICE 토큰을 가지고 있으면 누구나 어떤 ERC20에 대해서 스테이킹을 통해 오퍼레이터가 될 수 있습니다. 이미 리스팅되어 있는 토큰에 대해서도 스테이킹할수도 있고 새로운 ERC20 토큰에 대해서도 가능합니다. 그리고 스테이킹을 한 순간부터 오퍼레이터는 의무와 권리를 가지게 됩니다.

오퍼레이터의 의무 I : 청산 수행

Alice의 담보대출 시스템이 잘 작동하기 위해서는 청산이 효율적으로 이루어져야 합니다. 청산 단계에 진입하는 시나리오는 두가지가 있는데 a) 대출자가 이자를 갚지 않아서 원금 + 이자가 담보대출의 가치를 상회할 때 b) 담보의 가치가 하락해서 원금 + 이자보다 낮아졌을 때 입니다. 두 시나리오 모두 시스템에 부정적인 영향을 미치므로 오퍼레이터가 개입해서 청산을 수행해야 합니다.

청산 수행은 오퍼레이터가 담보를 가져가고 그에 상응하는 DAI를 펀드 스마트 계약에 채워넣는 것을 의미합니다. 이 절차가 빠르게 실행되지 않으면 대출 이자가 추가로 쌓이거나 담보의 가치가 추가적으로 하락할 위험이 있으므로 시간이 지날수록 대출은 더욱 위험한 상태로 변할 수 있습니다.

오퍼레이터들에게는 청산을 수행할 기간 하루가 주어집니다. 만약 하루 내에 대출이 청산된다면 아무런 문제가 없습니다. 하지만 만약 하루가 지나고 나서 대출을 청산하면 그때부터는 해당 담보 암호화폐의 오퍼레이터들에게 공동의 페널티가 부과됩니다. 하나의 대출에 대해서 청산 과정이 하루를 초과할 때마다 초과 날짜 * 1%의 페널티가 적용됩니다. 예를 들어 어떤 대출이 청산에 돌입했음에도 불구하고 11일후에 수행이 되었다면 1% * 10 = 10%의 페널티가 모든 오퍼레이터들에게 부과됩니다.

오퍼레이터의 의무 II : 가격 피드 제공

오퍼레이터들은 담보 암호화폐의 외부 거래소 가격을 실시간으로 Alice에 주입시켜줘야 합니다. Alice는 블록체인 위에서 작동하는 탈중앙화된 앱이기 때문에 블록체인 바깥 해당 암호화폐가 얼마의 가치로 거래되고 있는지 전혀 알수가 없습니다. 따라서 누군가가 오라클이 되어 가격 피드를 제공해줘야 하는데 오로지 오퍼레이터들만 이 작업을 수행할 수 있습니다.

그렇다면 가격 피드를 올바르게 제공하고 있는 것을 Alice에서는 어떻게 알 수 있을까요? 악의적인 의도로 시스템을 망가뜨리기 위해 고의적으로 시장가에 비해 높거나 낮은 금액을 보고하는 오퍼레이터가 만약 존재한다면 이러한 행위를 판별할 수 있어야 합니다. 중앙 관리자가 존재하지 않는 Alice에서 어떻게 불법 행위에 대한 모니터링이 가능할까요?

우선 담보 암호화폐의 가격이라는 용어를 정의해보겠습니다. 어떤 암호화폐의 가격은 그 암호화폐를 하나 맡겼을 때에 몇개의 DAI를 빌려줄수 있는가 입니다. (물론 담보 비율이 고려되어야하기는 합니다.) 즉, 1분 1초 시시각각 달라지는 1 담보 암호화폐의 소수점 가격이 중요한 것이 아니고, 담보 암호화폐의 가격은 오퍼레이터들이 어느 정도의 유연성을 가지고 설정하는 변수값입니다.

오퍼레이터가 시장가에 비해 높은 금액을 보고한 경우와 낮은 금액을 보고한 경우로 나누어서 생각해 보겠습니다. 우선 너무 낮은 가격을 보고한다면 사용자들이 굳이 Alice에서 담보 대출을 할 이유가 없겠죠. 더 좋은 조건을 제시하는 다른 프로토콜도 존재하니까요. 오퍼레이터가 이를 인지하고 있으므로 굳이 낮은 가격을 보고하지는 않을 것입니다.

하지만 문제는 시장가와 비슷한 가격을 보고했다가 급격히 낮은 가격을 보고하는 상황에 있습니다. 예를 들어 ETH가 $200로 보고된 상황에서, 오퍼레이터가 $100로 급격히 낮추었다고 가정해봅시다. ETH 가격이 $100로 떨어졌기 때문에 어떤 대출은 청산 단계에 돌입할 것이고, 이 청산은 오퍼레이터가 처리해야 합니다. 청산을 처리한다는 의미는, ETH 가격을 $100로 보고 그에 상응하는 DAI를 지급해서 펀드 스마트 계약에 DAI를 채워넣는 것을 의미합니다. 이 때, 오퍼레이터는 ETH를 $100에 구매한 것이 되기 때문에 Alice 외부에서 구입하는 것에 비해 엄청난 이득을 얻게 됩니다.

이런 어뷰징을 막기 위한 장치가 마련되어 있습니다. 가격은 1시간 간격으로 보고를 해야 하는데 타임스탬프를 같이 입력해줘야 합니다. 즉 “2020년 1월 1일 00시의 ETH 가격은 $1000이다.”라는 식으로 보고하는 것이죠. 오퍼레이터들이 여러명 존재한다면 같은 타임스탬프에 대해서 가장 높은 가격이 받아들여 집니다. 10명의 오퍼레이터가 존재하고 9명이 ETH의 가격을 $1로 보고하더라도 나머지 한명이 $1000으로 보고한다면 $1000으로 설정되는 것이죠. 단 한명의 정직한 오퍼레이터가 존재한다면 나머지는 낮은 가격 보고를 통한 어뷰징을 할수가 없습니다. 따라서 사용자들은 담보 화폐를 운영하고 있는 오퍼레이터가 단 하나라면 주의를 기울여야 합니다.

반대의 경우, 즉 오퍼레이터가 시장가에 비해 높은 가격을 보고하는 경우를 생각해보겠습니다. 예를 들어 담보비율이 150%일 때 Alice 바깥의 ETH의 가격이 $200이고 이를 정직하게 보고했다면 사용자들은 133 DAI만 대출할 수 있었을 것입니다. 하지만 오퍼레이터가 $300으로 보고했다면 200 DAI를 대출해가게 됩니다. 즉, 오퍼레이터가 더 높은 가격을 보고함으로 인해서 대출자들은 실제 대출할 수 있는 DAI 보다 더 많은 금액을 대출해간 것입니다.

만약 이 대출이 청산 단계에 돌입한다면 어떻게 될까요? 청산을 처리해야하는 것은 오퍼레이터의 의무입니다. 따라서 본인들이 $300에 ETH를 구입해야 합니다. 시장에서는 $200에 거래되고 있는데도 말이죠. 무려 33%의 돈을 더 주고 담보를 구입하게 된 것이고 이는 오퍼레이터들에게 큰 손해를 안깁니다. 이를 알고 있는 오퍼레이터들은 시장가에 비해 높은 가격을 보고하지 않을 것입니다.

하지만 청산이 절대 일어나지 않는다면 어떨까요? 오퍼레이터가 무한대에 가까운 가격을 지속적으로 보고한다면 청산은 절대 일어나지 않을 것이고, 사용자들은 굳이 이자를 갚을 필요가 없으므로 대출 승인은 계속 늘어날 것입니다. 이 경우 저축자들에게 지급할 이자가 발생하지 않으므로 Alice 펀드는 파산 상태에 이를 것입니다.

이를 막기 위해 오퍼레이터들은 이전 타임스탬프에 비해 최대 1% 높은 금액만을 보고할 수 있습니다. 한 시간 간격으로 보고를 해야하기 때문에 24시간 기준으로 1.01²⁴ = 1.26배만큼만 가격이 높아질 수 있는 것입니다. 오퍼레이터들은 급격하게 담보 암호화폐의 가격을 상승시킬 수 없고 오직 하루에 최대 126%만큼만 상승시킬 수 있습니다.

그리고 마지막으로 오퍼레이터들이 가격 피드를 제공하지 않는다면 문제가 될 것입니다. 담보의 시장 가치가 반영되지 않으니까요. 이런 경우를 막기 위해서 가격 피드의 미제공시 오퍼레이터들에게 부과되는 페널티가 존재합니다. 어떤 담보 토큰의 가격이 1시간동안 보고되지 않으면 해당 담보에 스테이킹한 토큰의 0.1%가 삭감이 되는 방식입니다. 10시간동안 보고되지 않으면 1%, 하루동안 보고되지 않으면 2.4%로 꽤 큰 금액입니다. 따라서 오퍼레이터들은 시간 단위로 가격 보고가 누락되지 않게 열심히 일해야 합니다.

오퍼레이터의 권리 : 보상 지급

오퍼레이터들은 담보대출이 원활하게 작동될 수 있도록 스마트 계약이 할 수 없는 일을 하기 때문에 그에 따른 보상이 지급되어야 합니다. 그 보상은 대출에서 발생한 이자와 저축에 지급되어야 할 이자의 차이에서 발생하고, 이 보상은 오퍼레이터들의 지분에 따라 분배됩니다. 이외에 수수료를 분배받는 어떠한 중앙 주체는 존재하지 않습니다. 대출 수익은 모두 오퍼레이터들에게 분배됩니다.

예를 들어 ETH 담보 대출의 이자가 20%이고 저축 이자가 10%일 때 10,000 DAI가 대출되었다고 가정해봅시다. 이 10,000 DAI는 1년 뒤에 12,000 DAI가 되어있을 것을 기대할 수 있고 이 중 11,000 DAI는 저축자들에게 돌려주어야할 것으로 예측됩니다. 그 차액인 1,000 DAI는 오퍼레이터들에게 지분에 따라서 분배됩니다. ETH 담보 대출에 50%의 ALICE 토큰을 스테이킹한 오퍼레이터는 500 DAI를 분배받으며 10%를 스테이킹한 오퍼레이터는 100 DAI를 분배받는 식입니다.

물론 현실에서는 10,000 DAI가 1년 내내 운용되는 것이 아니므로 실제 수익은 더 적을 것이고 보상 분배 시점도 1년 후가 아니라 대출이 상환되었을 때라는 차이점이 있습니다. 하지만 큰 그림에서 보면 같은 메커니즘이 적용됩니다.

ETH를 담보로하여 집행된 대출의 전체 금액이 커지면 커질수록 오퍼레이터들에게 돌아가는 수익은 커집니다. 이 사실은 스마트 계약에 의해 누구에게나 투명하게 공개되기 때문에 수익을 분배받기 위한 새로운 오퍼레이터들이 등장할 것입니다. 기존 오퍼레이터가 스테이킹한 금액의 비율, 즉 수익이 줄어들기 때문에 더 많은 금액을 스테이킹하는 선순환이 발생하게 됩니다.

따라서 많은 자금이 집행되는 담보 토큰일수록 많은 오퍼레이터가 존재하고 많은 금액의 스테이킹이 이루어져있을 것이라고 예상할 수 있습니다.

결론

Alice의 암호화폐 저축/담보대출은 신뢰가 필요없이(trustless) 작동합니다. 수요와 공급에 의해 실시간으로 저축/대출 이자율이 정해지며 누군가 개입해서 이를 변경하는 것은 불가능합니다.

저축 금액을 DAI로 예치하면 하루가 지날 때마다 일할 이자가 제공되며 사용자는 원할 때 언제든 금액을 일부 혹은 전부 출금할 수 있습니다. 담보 대출은 ALICE 토큰을 예치한 오퍼레이터들의 도움으로 작동하며, 오퍼레이터들은 가격 피드 제공, 청산 수행의 의무를 갖습니다. 그리고 이를 통해 발생한 대출 수익을 분배받습니다.

누군가를 신뢰할 필요가 없고 높은 이자율이 제공되는 Alice를 사용하고 싶으신 분들은 지금 앱을 다운로드받아보세요! (안드로이드 , iOS)

--

--