-
비트코인 원리와 블록체인 - 비트코인은 어떻게 거래되는가?암호화폐 2021. 12. 3. 00:17
탈중앙화(decentralized), 암호화폐(cryptocurrency) 같은 단어가 항상 비트코인에 따라붙는데 이해가 잘 안 된다. 일반 코인 투자하는 사람들은 업비트나 빗썸 같은 곳에서 현금을 넣고 시시각각 변하는 가격에 따라 원하는 수량을 사고팔고 하는 게 전부다. 지금이 최저점이다 생각하고 샀다 비쌀 때 팔면 그만이지 비트코인이 뭐고 블록체인이 뭔지 알 필요가 있을까 싶기도 하다. 하지만 근본적으로 IT 피가 흐르는지 어떻게 비트코인이 생성되고 P2P(peer-to-peer) 거래가 가능한지 너무 궁금해서 직접 알아보았다. 오늘의 질문은
비트코인은 어떻게 중앙 서버(거래를 증명해줄 신뢰할만한 제삼자) 없이 신뢰 기반의 거래를 할 수 있는가?
이 질문에 대한 답변을 이해하기 위해서는 몇 가지 개념을 알아야 한다. 우선 암호화폐를 가능케 한 가장 핵심 기술인 블록체인(blockchain)이 무엇인지, Proof of work(POW)가 무엇인지, 원장(ledger) 등... 알아야 할 개념이 많지만 최대한 쉽게 설명해보고자 한다.
기존 은행을 통한 송금 시스템을 생각해보자. 나의 통장의 잔고는 1,000만 원이고 내가 A라는 사람의 계좌에 100만 원을 보낸다고 가정해보자.- 은행 어플을 열고 로그인을 한다.
- 보낼 사람(A)의 계좌번호를 입력한다.
- 보낼 금액을 입력한다.
- 금액과 수신인 확인 후에 최종 인증을 하고 전송한다.
이 과정은 거래하는 은행이 보증해준다. 내 통장에는 100만 원이 빠져나갔다는 기록이 되고 A의 통장에는 100만 원이 입금됐다는 기록이 생긴다. 그러면서 내 통장의 잔고는 900만 원이 된다.
비트코인의 송금과정은 위 과정에서 은행이라는 중앙 매개체가 빠진다. 그래서 탈중앙화라는 개념이 사용된다. 우리가 송금을 생각하면 보통 법정통화를 주고받는 것을 떠올린다. 여기에서 비트코인 송금은 특수하게 제작된 디지털화된 숫자를 누군가에게 건네주고 받는 과정이다. 이것을 가능하게 해주는 것이 블록체인이다. 모든 거래가 블록에 기록되어 절대로 변조시킬 수 없다.
Centralization vs. Decentralization 이런 블록들은 누가 갖고 있을까? P2P라는 개념에서 알 수 있듯 블록은 네트워크에 참여하는 개인이 갖고 있다. 그리고 서로 연결되어있어 블록이 모두 동기화되어 있다. 비트코인 네트워크에 참여하는 사람이 많을수록 블록을 통한 감시자가 많아지는 것이고 많은 참여자에 의해 두터운 신뢰기반의 거래할 수 있게 된다. 어떤 거래에 대해 수많은 사람이 알고리즘 적으로 보증해주는 것이다. 이 세계 안에서는 어떠한 사기도 칠 수 없고 블록체인이라는 기술 덕분에 블록에 기록된 데이터 변조가 불가능하다. 내가 알기로는 참여자의 과반 이상이 맘먹고 사기 치지 않는 이상 불가능하다고...
블록체인이란?
블록체인은 일반적으로 파일 형태로 저장되거나 단순한 데이터베이스 내에 저장될 수 있다. 블록체인이라는 단어에서 알 수 있듯 블록체인이란 블록이 수직적으로 연결되어있다는 의미다. 한 블록 위에 다른 블록이 쌓이며 이전 블록을 참조한다.
블록체인과 거래기록(출처: https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch02.asciidoc) 위 그림과 같이 블록에는 거래가 기록되고 새로운 블록은 이전 블록을 참조하는데 해시(hash) 값을 기반으로 참조한다. 이런 블록은 대략 10분에 하나씩 생성되는데 새로운 거래가 일어나 거래가 기록되려면 새로운 블록에 해야 한다. 그러니까 최소 10분은 걸리고 이 거래가 제대로 됐다고 증명하기까지는 몇 개의 블록이 더 쌓여야 한다고 한다. 그래서 비트코인으로 편의점 같은 데서 거래하는 게 쉽지 않은 것이다. 거래하고 확인될 때까지 10분 정도 기다려야 하는데 누가 기다리겠는가. 이를 보완하기 위해 라이트코인 같은 게 개발됐다.
채굴자의 역할과 거래 승인
수년전 많은 컴공과 대학원생들이 연구실의 놀고 있는 서버를 몰래 비트코인 채굴하는데 썼다는 소문을 들어본 적이 있는가? (그때 그냥 비트코인을 돈 주고 샀어야.....) 채굴이란 한 블록이 생성될 때 그 블록이 내는 문제를 맞혀야 하는 과정이다. 그 문제를 맞히면 보상으로 비트코인을 얻는다. 그 문제란 어떤 특정한 값을 찾아내는 것인데 블록의 헤더와 임의의 숫자를 SHA256 알고리즘을 통해 맞힌다. 한마디로 엄청난 삽질을 해야 찾을 수 있는데 이 삽질을 엄청 빠르고 많이 하기 위해 고성능의 그래픽카드가 필요한 것이다(NVIDIA to the moon🌝). 이렇게 채굴되면 새로운 블록은 기존 블록체인 위에 공식적으로 올라가게 된다. 참고로 시간이 지날수록 한 블록당 보상량은 줄어들어(4년마다 반감기를 갖는다) 2140년이 되면 더 이상 새로운 비트코인은 발행되지 않는다. 그래도 채굴자들은 거래 시 발생하는 수수료 또한 채굴할 수 있어 계속 채굴을 하지 않을까 싶다.
새로 추가된 블록에는 이전 거래가 모두 기록되어있다. 여기에 추가로 거래된 기록을 검증하고 새 블록에 보관해야 하는데 이런 작업도 채굴자의 몫이다. 새로운 거래를 검증할 때 유효성 입증을 위해 매우 어려운 문제를 푸는데 이것을 작업 증명(Proof of Work, POW)라고 한다. 거래가 새 블록에 추가될 때 수수료가 가장 높은 거래부터 우선순위로 추가되고 몇몇 거래는 다른 기준으로 추가된다고 한다.
비트코인과 알트코인, 블록체인에 관심을 갖게 되면서 제일 의문을 품었던 부분은 이게 뭔 가치가 있길래 이렇게 비쌀까였다. 그리고 많은 사람이 나같은 의문을 갖고 질문한다. 그에 대한 나의 답은 이런 생태계를 인정하고 이해하면서 코인 생태계의 커뮤니티에 참여하는 사람이 점점 많아지고 커뮤니티 안에서 신뢰가 기술을 통해 만들어졌다는 점이 가치를 만들어내는 게 아닐까 생각한다. 우리가 지폐를 사용할 수 있는 것은 중앙은행이 보증해주고 사람들은 그것을 믿기 때문이다. 암호화폐는 그 믿음을 기술로 해결했다. 앞으로 어떤 방향으로 기술과 커뮤니티가 발전될지 기대된다.
반응형'암호화폐' 카테고리의 다른 글
NFT의미와 가치에 관한 고찰 (0) 2022.01.20