비크리 경매를 블록체인으로 구현하는 법

Kiyun Kim
4 min readAug 22, 2018

--

암호경제학이란?

암호경제학은 암호학을 경제학적 인센티브와 융합시켜 만들 수 있는 탈중앙화된 시장과 어플리케이션을 공부하는 학문이라고 정의할 수 있습니다. 암호경제학의 주 연구 대상인 블록체인이 탈중앙화라는 특성을 가지고 있기 때문에, 암호경제학은 주로 유저의 행동을 강제할 수 있는 주체가 없고, 신뢰나 명예가 중요하지 않은 상황에 대한 연구를 하고 있습니다. 그렇기 때문에 유저들의 자발적인 행동을 유도할 수 있는 인센티브 시스템이 암호 경제학의 핵심입니다. 그래서 암호경제학에서는 수요, 가격, 공급 같은 분야 대신 유저들이 인센티브에 어떻게 반응을 할지, 그리고 어떤 인센티브를 주어야 특정 행동을 유도할 수 있을지 같은 전략적인 의사결정에 초점을 맞추고 있습니다.

블록체인 서비스 디자인과 암호경제학

암호경제학이 블록체인에 어떻게 활용될 수 있는지는 비트코인을 보면 알 수 있습니다. 비트코인의 인센티브 시스템은 어려운 수학 문제를 풀어서 ‘채굴’에 성공하면 보상으로 토큰을 줌으로써 유저들이 채굴에 참여하도록 유도하고 있습니다. 이렇게 보상을 받게 되면 더 많은 유저들이 채굴에 참여하게 되고, 전체 마이닝 파워는 증가합니다. 그 결과, 거래장부를 위조하기 위해 필요한 전체 마이닝파워의 51% 이상을 컨트롤하기 힘들어져 비트코인 거래장부의 신뢰도가 올라가게 되고 전체 네트워크에 긍정적인 결과를 가져오게 됩니다.

이처럼 암호경제학은 블록체인이나 Dapp을 유지하는 시스템을 설계할 때에도 필요하지만, Dapp서비스를 만들 때에도 활용할 수 있는데, 그 예시로 비크리 경매를 들 수 있습니다.

비크리 경매

비크리 경매는 윌리엄 비크리라는 경제학자가 1961년 발표한 경매 방식으로, 블라인드 옥션과 2차 가격 경매 (Second-price auction)를 합친 경매 방식입니다. 참가자는 각각 입찰가를 다른 사람이 보지 못하도록 제출하고, 입찰자 중에서 제일 높은 가격을 적어낸 사람이 입찰을 받습니다. 특이한 점은, 입찰받은 사람이 내는 금액이 그 사람이 적어낸 최고가가 아니라, 다른 사람들이 적어낸 금액 중 최고가 바로 다음으로 높은 금액이라는 것입니다. 만약 A가 $200, B가 $100, C가 $50, D가 $150, E가 $250를 적어냈다면, E가 입찰을 받되, $200만 지불하면 되는 구조입니다. 최고가가 아니라 두 번째로 높은 금액을 내기 때문에, 판매자가 손해를 보는 구조처럼 보일 수도 있지만, 실상은 조금 다릅니다. 두 번째로 높은 금액을 낸다는 시스템 자체가 입찰자들이 더 높은 가격을 적어내게 하는 경제적 유인이 되기 때문에, 오히려 더 많은 금액을 벌 수도 있습니다. 입찰자는 이익을 보기 위해서 입찰을 하므로, 자신이 생각한 가치보다 적은 금액을 내려고 합니다. 그래서 일반적인 경매에서는 입찰자는 자신이 생각한 가치보다 적은 금액을 적어냅니다. 하지만 비크리 경매에서는, 두번째로 높은 입찰가를 지불하기 때문에, 자신이 생각한 가치를 적어내더라도 이득을 볼 수 있어서 자신이 생각한 가치를 적을 인센티브가 있는 것이죠. 그래서, 비크리 경매에서 두번째로 높은 입찰가가 일반 경매의 최고가보다 높은 경우가 있을 수 있기 때문에, 판매자가 오히려 더 많은 돈을 받을 수도 있습니다.

하지만 비크리 경매에도 한 가지 약점이 있는데, 경매 주최자가 가격을 가지고 장난을 칠 수도 있다는 점입니다. 입찰자들은 다른 사람이 적어낸 가격을 모르기 때문에, 주최자 측에서 돈을 더 받기 위해 입찰 금액들을 몰래 확인한 다음, 최고가보다 조금 더 적은 금액을 적어낸다고 해도 잡아낼 방법이 없습니다. 그래서 주최자를 신뢰하지 못한다면 비크리 경매를 하기 힘듭니다.

이러한 비크리 경매의 약점을 블록체인 기술로 극복할 수 있는데, 블록체인 상에서는 경매 주최자의 신용도와 상관없이 비크리 경매를 투명하게 진행할 수 있습니다. 비크리 경매는 블록체인에서 다음과 같은 방법으로 구현할 수 있습니다.

블록체인 상에서 비크리 경매 구현

첫째, 입찰을 받기 전 먼저 최대로 입찰 할 수 있는 토큰량을 설정해 둡니다. 그다음, 모든 입찰자가 최대 입찰가 만큼의 토큰을 스테이킹하고 암호화된 입찰가를 제출합니다.

둘째, 입찰 기간이 지나면, 입찰한 유저는 자신의 입찰가를 공개합니다.

셋째, 입찰 확인이 끝나면 낙찰자가 자동적으로 판명됩니다. 낙찰자는 미리 스테이킹한 금액에서 두 번째로 높은 금액을 제외한 만큼의 토큰만 돌려받고 물품을 수령합니다. 그 외의 입찰자는 스테이킹한 금액 전부를 돌려받지만, 입찰가를 공개하지 않는 유저는 스테이킹한 금액을 돌려받지 못합니다. 자세한 내용은 코드를 보시기 바랍니다.

지금까지 암호경제학이란 어떤 학문이고 블록체인에서 어떻게 활용되는지, 그리고 Dapp의 서비스로 활용할 수 있을만한 이론으로는 무엇이 있는지를 살펴보았습니다. 암호경제학은 블록체인과 Dapp의 콘텐츠를 설계할 때 도움이 될 수 있기 때문에 암호경제학을 공부하고, 공부한 이론을 어떻게 블록체인에 맞게 활용할지 고민을 해볼 필요가 있어보입니다.

--

--