비트코인 네트워크에서의 소유권 개념
시리즈 1편부터 정주행 하기 -> [쉽게 배우는 비트코인 작동원리]
[4-1. 비트코인 지갑과 소유권 개념 (상)]을 확인하지 못하신 분들은 아래 링크를 참고하시거나 시리즈 1편부터 정주행 하시기를 추천드립니다.
비트코인 주소를 생성하기 위해서 필요한 개인키는 무작위의 숫자로 결정된다.
따라서 이론적으로 A가 생성한 무작위 개인키가 이미 B가 사용하고 있는 지갑의 개인키일 경우, A는 B의 비트코인을 훔칠 수 있다.
하지만 비트코인은 이러한 현상이 발생하기 매우 어렵다. 생성 가능한 개인키의 경우의 수가 인간이 다룰 수 있는 범위를 초월하기 때문이다.
비트코인 개인키를 생성한다는 것은 1과 2의 256 제곱 사이의 숫자를 하나 고르는 것과 같다. 따라서 누군가의 개인키를 무작위로 맞춘다는 것은 광활한 우주에서 원자 하나를 정확히 고르는 수준의 난이도를 자랑한다.
이를 두고 오태민 작가는 그의 저서 [비트코인 지혜의 족보]에서 다음과 같이 표현했다.
내가 마음대로 만든 계좌가 바로 나의 것이다.
누구의 허락을 받을 필요가 없다.
바닷가에서 조약돌을 하나 줍는 것과 같다.
차이라면 2를 256번 제곱한 수의 개수가 바닷가의 돌보다 어마어마하게 크다는 것이다.
[비트코인 지혜의 족보] p.383 中
그의 표현처럼 비트코인 계좌를 생성한다는 것은 바닷가에서 조약돌을 하나 줍는 것과 같다.
주운 조약돌에 나의 비트코인을 새겨놓고(전송하고), 다시 바닷가에 내려놓으면 된다.
누군가 내 조약돌을 줍게 된다면 비트코인을 빼앗길 수 있으나, 그 조약돌을 찾기란 수치상 불가능에 가깝다.
많은 사람들이 비트코인에 대해 오해하는 것 중 하나는 비트코인의 저장위치이다.
스마트폰 지갑 애플리케이션을 통해 비트코인을 수신하면 휴대폰 안에 비트코인이 들어있는 것처럼 느껴지지만, 이는 사실이 아니다.
비트코인 네트워크는 일종의 디지털 등기소라고 할 수 있다.
비트코인이라는 반짝이는 실물은 없으며, 누가 몇 개의 비트코인을 소유하고 있는지에 대한 장부만이 존재한다.
지갑은 단순히 내가 사용할 수 있는 비트코인이 얼마인지를 확인하고, 새로운 거래를 만들 수 있는 도구일 뿐이다.
휴대폰에 직접 장부나 실물을 저장하는 대신 비트코인 네트워크는 아래 지도에 보이는 약 2만 개의 노드(컴퓨터)를 통해 장부의 신뢰성이 검증된다.
따라서 지갑을 통해 비트코인을 전송한다는 것은, 장부를 새로 생성하고 검증하는 노드들에게
"다음 장부에 제 거래를 기록해 주세요"
라고 공문을 보내는 것과 같은 개념이다.
Being your own bank(스스로의 은행이 된다는 것)는 빼놓을 수 없는 비트코인 철학의 핵심이다.
기존 전통적인 금융 시스템에서는 대부분 고가의 자산을 등기물의 형태로 보관했다.
고액의 현금은 은행 금고에 보관되며, 부동산과 자동차의 경우 소유권을 명시하는 문서가 존재한다.
사람들은 누군가 내 자동차나 부동산을 훔치기 어렵다는 암묵적인 믿음을 가지고 살아간다. 누군가 탈취를 시도한다면 국가 권력을 통해 나의 등기적 소유권을 보장받을 수 있기 때문이다.
하지만 비트코인의 경우 철저한 점유물이다. 사용자의 보유 권한을 보장하는 제삼자가 존재하지 않기 때문이다.
직접 개인키를 생성하여 보관하는 사용자가 키를 분실할 경우, 자금을 복구할 수 있는 방법이 없다.
국가와 은행에 대한 신뢰에서 벗어나 스스로 자산을 보관할 수 있다는 매력을 지닌 비트코인이지만, 동시에 보유에 대한 책임 또한 생겨난 현상을 두고, "스스로의 은행이 된다"라고 표현할 수 있다.
반면 스스로의 은행이 되기를 포기하고 업비트, 빗썸과 같은 거래소에 보관할 경우 해당 거래소가 나의 소유권을 보장한다.
누군가에게는 더 편리하고 안전한 선택지일 수 있겠으나, 제삼자에게 수탁하는 순간부터 비트코인은 그 특유의 야생성을 상실한다는 점을 인지해야 한다.
비트코인을 스스로 보관하는 개인지갑의 종류와 그 방법은 다양하지만, 크게 Hot Wallet(핫 훨렛)과 Cold Wallet(콜드 월랫)으로 나뉜다.
핫 월렛과 콜드 월렛은 지갑에서 인감도장 역할을 하는 개인키의 저장 방식에 따라 구분할 수 있다.
(위 그림 참고)
핫 월렛(Hot Wallet)
핫 월렛은 지갑 소프트웨어(스마트폰 앱, 브라우저 익스텐션 등) 안에 개인키가 저장되어 있다.
사용자는 비트코인을 전송하기 위해 먼저 핫 월렛 안에서 서명되지 않은 거래를 생성한다(거래 초안).
그리고 지갑 안에 내장되어 있는 개인키로 해당 거래에 서명을 한 뒤, 거래를 실행시킨다.
콜드 월렛(Cold Wallet)
콜드 월렛은 인터넷과 분리된 물리적 저장장치에 개인키가 저장되어 있다.
사용자는 전송을 위해 먼저 핫 월렛에서 동일한 방식으로 거래 초안을 생성한다.
이후 생성된 거래를 개인키가 담겨 있는 콜드 월렛으로 보내 해당 거래에 서명을 한다.
서명된 완성본은 다시 핫 월렛으로 보내지고, 사용자는 거래를 실행시킬 수 있다.
콜드 월렛을 사용하기 위해서는 꽤 많은 불편함을 감수해야 한다. 월렛 사용자는 단순히 물리적으로 서명할 수 있는 방법을 익히는 것을 넘어, 주로 약 10~20만 원 상당의 전용 기기를 구매해야 한다.
또한 서명의 절차가 비교적 오래 걸리기에 그만큼 유저 경험의 질이 핫 월렛에 비해 낮은 것이 현실이다.
하지만 본인이 보유하고 있는 비트코인을 포함한 가상자산의 규모가 클 경우, 콜드 월렛을 하나 장만하는 것이 좋다. 그 이유는 개인키를 오프라인으로 보관할 수 있기 때문이다.
사람들은 알게 모르게 인터넷을 사용하면서 많은 바이러스와 해킹, 감청 등에 노출된다. 따라서 개인키 또는 개인키를 담은 지갑 등의 프로그램이 인터넷에 연결될 경우, 소중한 자산을 탈취당할 수 있다.
물론 다소 낮은 확률이기에 간과할 수 있겠으나, 핫 월렛의 경우 인터넷에 연결된 지갑 내부에 비밀키가 존재하기 때문에 만약 기기가 해킹당한다면 되돌릴 수 없는 참사가 일어날 수 있다.
따라서 가능하다면 작은 양의 비트코인은 편리함을 위해 핫 월렛에, 잃었을 때 타격이 큰 양은 콜드 월렛을 통해 관리하는 것을 추천한다.
지금까지 다룬 비트코인 소유권의 의미와 개인키, 공개키, 그리고 주소의 개념을 바탕으로 다음 글에서는 비트코인상의 결제 단위와 전송에 쓰이는 기술 등을 알아볼 예정이다.
Oh, Taemin. 비트코인, 지혜 의 족보 = Bitcoin, the Genealogy of Knowledge. KD Books, 2020.