비트코인은 시간이다
“찬란한 빛을 발하는 시계가 하늘에 울려퍼지네
시간은 틀리지도 옳지도 않다고 선언하며” — 로버트 프로스트, <밤의 교우>(1928)
“여전히 시간은 우리에게 굉장한 미스터리입니다. 시간은 컨셉일 뿐입니다. 심지어 우리는 시간이란 것이 실제 존재하는지조차 모릅니다…” — 클리포드 D. 시막, <셰익스피어의 행성>(1976)
옛말에 이런 말이 있다, 시간은 돈이다. 이 말은 곧 돈이 시간이라는 것이다. 이는 인류가 저장한 집단적 경제 에너지를 나타낸다. 하지만 시간과 돈의 관계는 처음 보이는 것보다 더 복잡하다. 만약 돈을 만드는데 오랜 시간이 걸리지 않으면, 돈은 돈으로써 사용되지 않거나 그리 오래 사용되지 않을 것이다. 좀 더 심오하게 말하면, 정보 영역에서 사물을 파악한다는 것은 시간을 파악한다는 말을 항상 함축하고 있다.
돈이 디지털화 되는 즉시, 우리는 시간의 정의에 동의해야 하기 때문에 모든 문제가 발생한다. 시간을 보는 것은 근처에 있는 아무 시계나 슬쩍 보는 것처럼 쉽다고 생각할 것이다. 물론 일상 생활 측면에서는 그게 맞다. 하지만 대립적인 분산 글로벌 네트워크의 상태를 동기화하는 측면에서는 시간을 보는 것이 정말 다루기 힘든 문제가 되어버린다. 만약 시계를 신뢰할 수 없다면 시간을 어떻게 볼 것인가? 만약 시스템이 은하계에 걸쳐 있다면 단일 시간 개념을 어떻게 만들 것인가? 시간이 없는 영역에서는 어떻게 시간을 측정할 것인가? 그리고 좌우간 시간이란 무엇인가?
이러한 질문에 답하기 위해 우리는 시간 자체의 개념과 비트코인이 자체적으로 시간을 구성하는방법을 자세히 살펴봐야 한다: 블록 시간(block time) — 일반적으로는 블록 높이로 알려져 있다. 시간기록 문제가 직접적으로 기록관리와 관련이 있는 이유, 탈중앙화 시스템에 절대적인 시간이 없는 이유, 그리고 비트코인이 인과성과 예측 불가능성을 사용해 자체적으로 현재라는 감각을 만든 방법에 대해 알아볼 것이다.
시간기록 장치는 문명을 한 번 이상 변화시켰다. 1934년 루이스 멈포드는 “증기기관이 아닌 시계가 현대 산업의 핵심 장치입니다.”라고 언급했다. 오늘 날 우리 문명을 변화시키고 있는 것은 또다시 시간기록 장치이다. 컴퓨터가 아닌 시계가 현대 정보화 시대의 진정한 핵심 장치이다. 그리고 그 시계는 바로 비트코인이다.
사물을 파악한다는 것
“아이가 사물을 세는 법을 배우게 하여 숫자 개념을 갖도록 하세요. 이러한 것들은 계산의 목적상 비슷하게 간주되고 단일 개체거나 그룹일 수 있습니다.” — 데이비드 유진 스미스, 초등 수학 교육(1900)
폭 넓게 봤을 때, 사물을 파악하는 데는 두 가지 방법이 있다: 물리적 토큰과 원장(ledger)이다. 물리적 인공물을 직접 이용하거나(조개, 동전, 혹은 기타 유형의 물건을 주는 것) 발생한 일을 종이에 적어 세계의 상태를 복제할 수 있다.
만약 당신이 양치기이고, 양떼 전체가 집에 무사히 돌아왔는지 확인하고 싶어한다고 상상해보자. 당신은 각각의 양에게 목걸이를 걸어주고, 양이 돌아왔을 때 그 목걸이를 풀어 헛간에 걸어 놓기만 하면 된다. 만약 목걸이 마다 보관함이 하나씩 있다면, 그 보관함이 꽉 채워지는 즉시 모든 양이 안전하게 돌아왔다는 것을 알 수 있다. 물론 양의 숫자를 세어 명단을 만들 수도 있다. 하지만 양을 셀 때마다 명단을 매번 만들어야 하고, 같은 양을 중복해서 세거나, 아예 세지 않는 일이 없도록 확실히 해야한다.
돈은 본질적으로 누가 누구에게 무엇을 빚지고 있는지 파악하기 위한 도구다. 일반적으로 우리가 오늘날까지 돈으로 사용해 온 모든 것들은 이 두 가지 범주로 분류된다: 물리적 인공물과 정보 명단이다. 좀 더 일반적인 말로 하자면, 토큰과 원장이다.
이 두 가지 범주의 고유한 차이를 이해하는 것은 중요하기 때문에 명시적으로 말해보겠다. 첫 번째 방법 — 물리적 토큰 — 은 사물의 상태를 직접적으로 나타낸다. 두 번째 방법 — 원장 — 은 사물의 상태를 간접적으로 반영한다. 각 방법에는 장단점이 있다. 예를 들어 토큰은 물리적이고 분산되어 있으며, 원장은 정보를 제공하고 중앙화 되어있다. 토큰은 본질적으로 무신뢰이지만, 원장은 그렇지 않다.
마케팅 전문가들이 이는 사실이 아니라며 아무리 강력히 설득해도, 디지털 영역에서 우리는 오직원장만 사용할 수 있다. 이건 물리의 영역이 아닌 정보의 영역이다. 설령 특정한 정보를 “토큰”이라 부를지라도, 여전히 정보를 저장하고 그 정보를 효과적으로 기록하는 하드 드라이브나 다른 매체에 쓰여진 유연한 정보의 하나일 뿐이다.
모든 디지털 정보에서 원장과 같은 특성은 이중지불 문제의 근본 원인이다. 정보는 세계의 상태를 직접적으로 나타내지 않는다. 또한 정보의 이동은 복사를 의미한다. 정보는 한 공간에 존재하며, “이동”하려면 그 정보를 다른 곳으로 복사하고 원본을 지워야 한다. 물리적인 세계에서는 실제 물건을 A에서 B로 옮길 수 있기 때문에 이러한 문제가 존재하지 않는다. 정보의 영역에서는 이런 속성이 없다. 정보를 A목록에서 B목록으로 “이동”하려면 A에서 B로 복사해야 한다. 이 방법 외에는 다른 도리가 없다.
우리는 독창성이라는 측면에서도 생각해 볼 수 있다. 물리적인 토큰은 쉽게 복제할 수 없는 고유한 원자의 합성물이다. 정보에는 이런 속성이 없다. 만약 어떤 정보를 읽을 수 있다면, 그 정보를 완벽하게 복사할 수도 있다. 실질적으로 물리적 토큰은 고유하고, 디지털 토큰은 그렇지 않다. 나는 심지어 “디지털 토큰”이 잘못된 명칭이라고 주장하기도 한다. 토큰은 비밀 정보를 표시할 수도 있지만, 복사할 수 없는 고유한 단일 정보는 표시하지 않을 것이다.
이러한 속성의 차이는 정보를 실제로 “건넬 수 있는 방법”이 없다는 것을 보여준다. 기존 소유자가 정보를 지웠는지 확신할 수 없기 때문에, 물리적인 토큰을 전달하는 것처럼 디지털 토큰을전달하는 것은 불가능하다. 모든 정보와 마찬가지로 디지털 토큰은 아이디어처럼 전파될 수만 있다.
“…당신에게 사과가 있고, 나도 사과가 있다. 그리고 우리가 사과를 교환한다면 — 우리는 결국 사과 하나씩만 갖게 된다. 하지만 당신과 나에게 아이디어가 있고, 우리가 아이디어를 교환한다면 — 우리는 두 가지 아이디어를 갖게 된다.” — 찰스 F. 브래넌(1949)
물리적 무기명 자산 혹은 “현금”이라 불르는 물리적 토큰은 이런 딜레마에서 자유롭다. 만약 현실 세계에서 당신이 나에게 동전을 건넨다면 당신은 더 이상 동전을 갖고있지 않게 된다. 동전 복제 같은 마법은 없으니, 나에게 동전을 주는 유일한 방법은 물리적으로 전달하는 것뿐이다. 물리법칙은 이중지불을 허용하지 않는다.
브루클린 다리와 다른 랜드마크들을 “이중지불”한 것으로 유명한 사기꾼 조지 파커처럼 디지털 영역이 아닌 곳에서도 이중지불이 존재하기는 하지만, 그렇기 위해선 정교한 속임수와 속이기 쉬운 사람들이 필요하다. 하지만 디지털 영역에서는 그렇지 않다.
디지털 영역에서 우리는 항상 정보를 다루기 때문에 이중지불은 본질적인 문제이다. 파일을 복사해봤거나 복사하여 붙여넣기 기능을 알고있는 사람이라면 누구나 알고 있듯이, 정보는 완벽하게 복사할 수 있는 것이며, 이는 정보를 갖고있던 매체에 구속받지 않는다. 예를 들어, 당신이 디지털 사진을 갖고 있다고 해보자. 그 사진을 백만번 복사하고, 일부 복사본은 USB에 저장할 수 있다. 그리고 그것을 수천 명의 다른 사람들에게 보낼 수도 있다. 정보는 결함 없는 오류 수정이 가능하기 때문에 완벽한 복사가 가능하다. 무엇보다도 복제 비용이 거의 없고, 원본이 무엇인지 알 수 있는 방법이 없다.
다시 말하지만, 정보에 관해서는 복사만 하면 된다. 디지털 정보를 단순히 A에서 B로 옮기는 방법은 없다. 정보는 항상 A에서 B로 복사되고, 만약 복사 과정이 성공적이라면, A의 원본은 삭제된다. 이것이 이중지불 문제가 까다로운 이유이다. 중앙 권한이 없다면, 무신뢰 측면에서 무언가를 A에서 B로 옮길 수 있는 방법이 없다. 당신은 원본이 지워졌을 거라고 항상 믿어야만 한다. 자연스러운 부작용은 디지털 정보에 관해서는 사본의 수와 위치를 알기 어렵다는 것이다.
이렇기 때문에 디지털 “토큰”을 돈으로써 사용하는 일은 일어날 수 없고 일어나지 않을 것이다. 토큰은 토큰 고유의 물리적인 구조물로 재생산이 어려워 신뢰할 수 있는데, 디지털 영역에서는 이 이점이 사라진다. 디지털 영역에서 토큰은 신뢰할 수 없다. 정보의 본질적인 속성 때문에 디지털 화폐를 실현 가능케하는 형태는 토큰이 아닌 원장이다. 그리고 이 원장은 시간이라는 문제를 야기시킨다.
토큰은 시간에 구애받지 않지만, 원장은 그렇다
“보이는 것은 잠깐이요 보이지 않는 것은 영원하니라.” — 사도 바울, 고린도전서 4:18
물리적인 토큰의 경우, 거래 시간은 중요하지 않다. 동전을 주머니에 갖고 있거나, 갖고 있지 않거나 둘 중 하나일 뿐이다. 그 동전을 사용하거나, 사용하지 않을 수 있다. 단순한 소유의 행위는 소비를 위한 전제 조건일 뿐이다. 그 외 나머지는 자연의 법칙이 처리한다. 그런 의미에서 물리적 토큰은 무신뢰이고(trustless), 시간에 구애 받지 않는다(timeless).
원장에서는 물리적 소유의 개념이 저 멀리로 밀려난다. 원장을 관리하는 사람이 누구든지 간에 원장이 순서대로 잘 정리되어 있어야한다. 물리적 법칙에 의해 달리 주어진 것, 즉 소유하지 않은 돈을 사용하지 못 하고 이미 사용한 돈을 사용하지 못하는 것은 사람이 만든 규칙에 의해 시행되어야 한다. 원장의 질서정연한 운영과 유지를 지속시키는 것은 물리적 법칙이 아니라 이런 규칙들이다.
물리적 법칙에서 사람이 만든 규칙으로 옮겨가는 것은 문제의 핵심이다. 사람이 만든 규칙은 바뀌거나 어길수 있지만, 물리적 법칙은 그렇지 않다. 예를 들어, 물리적인 금화를 단순히 “만들어” 낼 수는 없다. 금화를 만들려면 땅을 파야 한다. 하지만 틀림없이 종이에서는 금화를 만들어 낼 수 있다. 그러기 위해서는 원장에 항목을 추가해 자신에게 두어개의 동전을 주기만 하면 된다. 혹은 중앙은행의 경우, 손쉽게 몇 번의 키 입력으로 2조 달러를 추가할 수 있을 것이다. 있어 보이는 금융인들은 이를 “재담보 설정”, “부분지금 준비제”, 혹은 “양전완화”라고 부른다. 하지만 속지 말아야 할 것은, 이 모든 것이 결국엔 동일하게 돈을 찍어낸다는 것이다.
원장과 원장을 관리하는 사람을 정직하게 유지하려면 정기적이고 독립적인 감사가 필요하다. 원장의 모든 항목을 설명하는 능력은 사치가 아니다. 감사관은 원장을 올바르게 기능적으로 유지하기 위해 원장을 검토할 수 있어야 한다. 신뢰할 수 있는 타임스탬프가 없으면 원장이 일괄적인지 검증하는 것은 불가능하다. 명확한 질서를 설립하는 메커니즘은 필수적이다.
절대적인 시간이라는 감각 없이는 거래의 순서를 정의할 수 있는 방법은 없다. 그리고 거래의 순서가 정의되지 않고서는 원장의 규칙을 만들 수 없다. 실제로 얼마나 많은 돈이 있는지 어떻게 확인할 것인가? 다른 방법으로 상황이 올바른지 어떻게 확인할 것인가?
토큰과 원장의 차이점은 시간 파악의 필요성에 있다. 물리의 영역에서 동전은 감독관 없이도 교환할 수 있는 시간에 구애받지 않는 인공물이다. 디지털 영역에서 동전 주조(coinstamping)는 타임스탬프(timestamping)를 필요로 한다.
중앙 집권적인 동전 주조
“시간: 훌륭한 조각가, 혹은 지우개” — 야히아 라바비디(b. 1973)
이중지불 문제(디지털 전송이 한 번만 발생하도록 하는 것)를 해결하기 위한 가장 일반적인 방법은 중앙 집권적인 거래 내역을 갖는 것이다. 이는 고유한 사실의 정보가 담긴 하나의 원장을 갖는 것이다. 이중지불 문제를 해결하는 것은 목록은 살펴보고 모든 것이 정확하게 합산되었다는 것을 확인하는 것 만큼 쉽다. 이런 중앙 권한을 통해 페이팔, 벤모, 알리페이 그리고 중앙 은행을 포함한 이 세계의 모든 은행들이 이중지불 문제를 해결한다.
“물론 문제는 수취인이 소유자 중 한 명이 코인을 이중으로 사용하지 않았다는 것을 확인할 수 없다는 것입니다. 일반적인 해결책은 모든 거래에 이중지불이 있는지 확인하는 신뢰할 수 있는 중앙 기관 또는 조폐국을 도입하는 것입니다. […] 이 해결책의 문제는 전체 화폐 시스템의 운명이 은행처럼 모든 거래를 거쳐야 하는 조폐국을 운영하는 회사에 달려 있다는 것입니다.” — 사토시 나카모토(2009)
사토시가 정보를 복사 가능하게 만든 것은 주목할 만한 가치가 있다. 비트코인의 모든 부분(소스코드, 원장, 개인키 등)은 복사될 수 있다. 이 모든 것들은 복제되고 변경될 수 있다. 하지만 사토시는 규칙을 위반한 복사는 완전히 쓸모없게 만드는 시스템을 구축했다. 비트코인 네트워크는 어떤 복사본이 유용한지 아닌지 결정하기 위해 복잡한 춤을 추고, 이 춤은 디지털 영역에 희소성을 가져온다. 그리고 여느 다른 춤과 마찬가지고, 리듬을 맞추기 위해 시간을 측정하는 막대가 필요하다.
중앙 집권적인 원장이라도 시간을 관리할 수 있는 지속적인 방법이 있는 경우에만 이중지불 문제를 해결할 수 있다. 항상 누가 누구에게 얼마를 주었는지 알아야하며, 가장 중요한 것은 언제 주었는지를 알아야 한다. 정보의 영역에서 타임스탬프(time-stamping) 없이는 동전 주조(coin-stamping)도 없다.
“분산 시스템에서 이벤트를 특정 시점과 연결시키는 것이 불가능했는데, 이는 탈중앙화 된 원장을 만들 수 없는 이유였습니다. 그리고 이 문제를 사토시 나카모토가 해결했다는 것을 강조하지 않을 수 없습니다. ” — 그레고리 트루베츠코이(2018)
탈중앙화 된 시간
“시간은 모든 것을 지나가게 한다.” 아이스킬로스(기원전 525–456년)
시간과 질서는 매우 밀접한 관계가 있다. 레슬리 램포트는 그의 1978년에 출간한 논문 ‘분산 시스템에서 시간, 시계, 그리고 사건의 순서’에서 다음과 같이 언급했다: “시간 개념은 우리 사고 방식의 기본입니다. 시간 개념을 규정하는 중심점이 없으면 “이전”, “이후”, 그리고 “동시에”라는 직관적인 개념이 무너집니다.” 램포트의 말처럼, ’이전에 발생했다’라는 개념은 분산 다중 프로세스 시스템에서 사건의 변하지 않는 순서를 정의한다.
즉, 만약 책임지는 것이 불가능 하다면 누가 시간을 책임질 것인가? 만약 기준이 되는 중심점이 없다면 어떻게 신뢰할 수 있는 시계를 만들 것인가?
누구나 자신의 시계를 이용할 수 있으니, 이 문제를 쉽게 해결할 수 있다고 생각할 수도 있다. 이는 모두의 시계가 정확하고, 더욱이 모두가 정직하게 행동할 때만 가능하다. 적대적 시스템에서 개인의 시계에 의존하는 것은 재앙이 될 것이다. 그리고 시간의 상대성 때문에 넓은 공간에서는 이 해결책이 통하지 않는다.
하나의 사고 실험으로 모든 사람이 자신의 시간을 스스로 파악한다고 했을 때, 어떻게 시스템을 속일 수 있는지 생각해보자. 당신은 지금 발생하는 거래가 어떤 이유로 늦어진 어제의 거래라고 말하고, 오늘 사용한 돈을 사용하지 않았다고 할 수 있다. 모든 탈중앙화 시스템에 내제된 비동시성 통신 때문에 이 시나리오는 이론적인 사고 실험 그 이상이다. 메시지는 실제 지연되고, 타임스탬프는 정확하지 않으며, 상대론적 효과와 우주의 자연적인 속도 제한 때문에, 중앙 기관이나 관찰자 없이는 사물의 순서를 구별하는 것이 결코 쉬운 일이 아니다.
“누구세요? 똑똑” — 동시에 일어나지 않은 농담
문제의 불가능성을 더 잘 설명하기 위해 구체적인 예시를 들어보겠다. 당신과 당신의 사업 파트너는 둘 다 사업자 통장에 접근이 가능하다고 생각해보자. 당신은 전 세계적으로 사업을 해서 사업자 통장은 스위스에 있고, 당신은 뉴욕에 있으며, 당신의 사업 파트너는 시드니에 있다. 당신은 1월 3일이고, 호텔에서 평안한 일요일 저녁 시간을 즐기고 있다. 당신의 사업 파트너는 이미 월요일 아침이어서 사업자 통장에 연결된 카드로 아침 식사를 계산하려고 한다. 아침 식사는 27달러, 통장 잔고는 615달러, 현지 시간은 오전 8시 21분이다.
같은 시간에 당신은 사업자 통장에 연결된 다른 카드로 호텔 비용을 내려고 한다. 호텔 비용은 599달러, 통장 잔고는615달러, 현지 시간은 오후 5시 21분이다.
이 둘은 정확히 같은 순간에 이 카드를 긁는다. 어떤 일이 생길까?(친애하는 물리학자님들께, “같은 순간”이란 단어를 사용한 걸 용서해주세요. 저희는 상대성 이론과 현재 우리 지구에 절대적인 시간이 없다는 사실을 무시할 것 입니다. 또한 동시에 발생하는 사건의 개념이 존재하지 않는다는 사실도 무시할 것 입니다. 비트코인은 있는 그대로도 이미 충분히 복잡합니다.)
은행의 중앙 원장은 아마도 하나의 거래를 먼저 받을 것이다. 둘 중 하나는 운이 좋을 것이고, 다른 하나는 그렇지 않을 것이다. 만약 거래가 밀리초 단위로 같은 시간에 도착한다면, 은행은 누구의 돈을 사용할 것인지 결정해야 한다.
그럼 은행이 없다면 어떻게 될까? 먼저 누구의 카드를 받을지 결정하는 사람은 누구일까? 만약 당신과 당신의 사업 파트너가 아닌, 수백만 혹은 수천만 사람들을 조정해야 한다면 어떻게 될까? 만약 당신이 이런 사람들을 신뢰할 수 없다면 어떻게 될까? 만약 이런 사람들이 시계를 다시 설정해서 몇 분 전에 돈을 사용한 것처럼 속이려 한다면 어떻게 될까?
“표준 순서를 설정하고 중앙 조정자가 없는 상태에서 고유한 기록을 적용하려면 시간 관련 도구가 필요합니다.” — 자코모 주코, 비트코인 발견(2019)
이 문제는 디지털 현금을 만드는 시도에 중앙 명부가 필요했던 이유를 말해준다. 순서를 정확히 식별하려면 항상 누군가를 신뢰해야만 했다. 시간을 관리하기 위해서는 중앙 집권적인 정당이 필요했다.
비트코인은 시간 자체를 재발명하면서 이 문제를 해결한다. 여기에서 시간은 초가 아닌 블록(blocks)이다.
시간을 파악하는 것, 시간 하나에 한 블록 씩
“시간의 영광은 다투는 왕들을 진정시키는 것이며,
거짓을 폭로하고 진실을 밝히기 위해
오래된 것들에 시간의 인장을 찍기 위해,
아침을 깨우고 밤을 파수꾼을 깨우고,
잘못한 사람이 옳은 일을 할 때까지 잘못을 저지르는 것입니다.” — 윌리엄 셰익스피어, 루크리스의 능욕(1594)
모든 시계는 “틱(똑딱거림)”이라고 부를 수 있는 주기적인 과정에 의존한다. 할아버지 시계의 익숙한 똑딱 소리는 본질적으로 현대의 쿼츠와 세슘 시계의 몰큘라 원자의 윙윙거리는 소리와 동일하다. 어떤 것이 흔들리거나 진동하고, 우리는 단순히 1분 또는 1초가 될 때까지 이러한 흔들림을 계산한다.
큰 추시계의 추는 길어서 보기가 쉽다. 작거나 더 전문화된 시계의 경우는 특수 장비가 필요하다. 시계가 얼마나 자주 똑딱거리는지는 사용하는 환경에 따라 다르다.
대부분의 시계는 고정된 빈도가 있다. 결국 우리는 시간을 정확히 알고 싶어한다. 하지만 빈도가 다양한 시계들이 있다. 예를 들어 메트로놈은 사용 전 다양한 빈도를 설정할 수 있다. 메트로놈은 한 번 설정되면 그 속도를 유지하는 반면, 비트코인의 시간은 내부 메커니즘이 확률적이기 때문에 그 빈도가 다양하다. 하지만 목적은 모두 같다. 음악을 유지해서 계속 춤을 출 수 있게 하는 것이다.
비트코인이 시계라는 사실은 알아채기 힘들다. 실제로 사토시는 비트코인 전체 네트워크가 하나의 시계의 역할, 또는 그의 말을 빌리자면 분산 타임스탬프 서버의 역할을 한다고 언급했다.
“이 논문에서 우리는 거래시간 순서의 계산 증거를 만드는 P2P 분산 타임스탬프 서버를 사용하여 이중지불 문제에 대한 해결책을 제시합니다.” — 사토시 나카모토(2009)
타임스탬프가 해결해야 할 근본적인 문제였다는 것은 비트코인 백서 끝 부분에 있는 참조를 봐도 명백하다. 전체 8개의 참조 중 3개가 타임스탬프에 관한 것이다.
- 디지털 문서에 타임스탬프를 찍는 방법(S. 하버, W.S. 스토네타, 1991년)
- 디지털 타임 스탬프의 효율성과 신뢰성 향상(D. 바이엘, S. 하버, W.S. 스토네타, 1992년)
- 최소한의 신뢰를 필요조건으로 하는 안전한 타임스탬프 서비스 설계(H. 마시아스, X.S. 아빌라, J.-J. 퀴스쿼터, 1999년 5월)
하버와 스토네타가 1991년에 언급했듯이, 디지털 타임스탬프는 사용자 또는 해커들이 디지털 문서의 날짜를 앞뒤로 변경하지 못하게 하는 실용적인 절차에 관한 것이다. 물리적인 문서와 달리, 디지털 문서는 조작이 쉽고, 조작된 부분은 어떠한 흔적도 남기지 않는다. 디지털 영역에서 위조와 조작은 완벽할 수 있다.
정보의 가단성(새로운 형태로 쉽게 변형되는 성질)은 디지털 문서에 타임스탬핑하는 것을 세밀하고 정교한 과정으로 만든다. 순수한 해결책은 통하지 않는다. 예를 들어 한 문서가 있다고 해보자. 나 자신을 포함한 모든 사람은 단순히 미래의 날짜를 바꿀 수 있다는 이유로 문서 끝에 날짜를 추가할 수 없다. 또한 처음에 아무 날짜나 만들 수도 있다.
시간은 인과적인 연결고리이다.
“극단적으로 보면 세상은 연결고리일 뿐, 그 이상 그 이하도 아니다.” — 팀 버너스-리, 웹 위빙(1999)
디지털 영역이 아니더라도, 날짜를 만드는 것은 일반적인 문제이다. 납치의 세계에서 “신문을 통한 인증”으로 알려진 것은 임의적의 타임스탬프 문제에 대한 일반적인 해결책이다.
이는 신문이 위조하기 어렵고 확인하기 쉽기 때문에 가능하다. 오늘 자 신문 1면은 어제의 사건을 언급하기 때문에 위조하기 어렵다. 만약 사진이 몇 주 전 사진이라면 납치범이 예상할 수 없었던 사건이다. 사건의 대리인으로서 사진은 신문이 나온 날 인질이 여전히 살아있다는 증거이다.
이 방법은 시간과 관련된 핵심 개념 중 하나인 인과성을 강조한다. 시간의 화살표는 사건의 인과관계를 설명한다. 인과관계가 없으면, 시간도 없다. 또한 인과성은 사이버 공간에서 문서를 타임스탬핑할 때, 암호화 해시 함수가 매우 중요한 이유이기도 하다. 이는 인과관계를 보여준다. 문서 없이는 유효한 암호화 해시를 생성하는 것이 사실상 불가능하기 때문에 문서와 해시의 인과관계를 보여준다. 문제의 데이터가 먼저 존재했고, 해시는 나중에 생성되었다. 즉, 단방향 함수의 계산적 비가역성(되돌릴 수 없는 과정)이 없다면 사이버 공간에 인과성이란 없을 것이다.
이 인과적 구성 요소가 있으면, A에서 B와 C를 인과적으로 연결하는 등 일련의 사건을 만드는 계획을 세울 수 있다. 그런 의미에서 안전한 디지털 타임스탬프는 우리를 창공의 시간에 구애받지 않는 장소에서 디지털 역사의 영역으로 이동시킨다.
“인과관계는 사건을 시간적으로 고칩니다. 만약 한 사건이 특정 이전 사건에 의해 결정되고, 특정 후속 사건을 결정한다면, 이 사건은 역사의 제자리에 안전하게 끼워집니다.” — 바이엘, 하버, 스토네타(1992)
경제적 계산에서 인과관계가 가장 중요한 요소라는 것은 두말할 필요가 없다. 그리고 원장은 여러 협조적인 참여자의 경제적인 계산의 구체화에 불과하기 때문에, 인과관계는 모든 원장에서 필수적이다.
“참가자들이 단일 기록에 동의할 수 있는 시스템이 필요합니다 […]. 우리가 제안하는 해결책은 타임스탬프 서버에서 시작됩니다.” — 나카모토 사토시(2009)
비트코인을 작동하게 하는 모든 퍼즐 조각이 이미 존재했다는 사실은 흥미롭다. 일찍이 1991년에 하버와 스토네타는 “가짜 타임스탬프를 생성하기 어렵거나 불가능하게” 만드는 두 가지 계획을 소개했다. 첫 번째는 신뢰할 수 있는 제 3자에 의존하는 것, 두 번째는 보다 정교한 “분산된 신뢰”에 의존하는 것이다. 심지어 저자들은 사건의 인과관계를 신뢰하는 본질적인 문제와 역사를 다시 쓰는 데 필요한 사항까지 찾아냈다. 그들의 말에 따르면, “유일하게 가능한 도용은 예상할 수 있는 가장 의심스러운 사람을 지치게 만드는 긴 가짜 타임스탬프 체인을 준비하는 것”이라 했다. 오늘날 비트코인에는 유사한 공격 벡터가 51% 공격 형태로 존재한다(자세한 내용은 이후 장에서 알아보자).
1년 후 바이엘, 하버, 그리고 스토네타는 그들의 이전 작업을 기반으로 간단한 연결 목록 대신 트리를 사용하여 사건들을 함께 묶을 것을 제안했다. 오늘날 우리가 머클트리로 알고 있는 것은 여러 해시에서 결정론적으로 하나의 해시를 생성하는 효율적인 데이터 구조이다. 타임스탬프의 경우 여러 사건을 하나의 “틱”으로 효율적으로 묶을 수 있다는 것을 의미한다. 같은 논문에서 저자들은 1991년에 소개된 분산 신뢰 모델의 결과를 신문과 같이 공개된 장소에 널리 게시하는 단 한 명의 “승자”를 결정하기 위한 “세계 챔피언십 토너먼트”를 수행하여 개선될 수 있다고 제안한다. 익숙하게 들리는가?
앞으로 살펴보겠지만, 신문은 시간의 두 번째 요소인 예측 불가능성에 대해 생각해 볼 수 있는 훌륭한 방법이기도 하다.
인과성과 예측 불가능성
“시간은 실제[hupostasis]가 아니라 개념[noêma] 또는 척도[metron]이다…” — 안티폰 소피스트, 진리에 관하여(기원후 3세기)
인과성은 필수적이지만 충분 조건은 아니다. 시간이 흐르기 위해선 예측 불가능성 또한 필요하다. 물리적 영역에서는 시간의 흐름을 설명하기 위해 자연적인 과정들을 관찰한다. 우리는 엔트로피가 일반적으로 증가하는 것을 관찰하고 그것을 시간의 화살표라 부른다. 자연 법칙에서 대부분 이 화살표 방향을 망각하고 있는 것처럼 보이지만, 실질적으로 되돌릴 수 없는 것들이 있다. 그들이 말하는 것처럼 문제를 해결할 수 없다.
마찬가지로, 디지털 영역에서 시간의 화살표를 설정하려면 엔트로피 증가 함수가 필요하다. 사실상 이 문제를 해결할 수 없는 것처럼, SHA256 해시나 암호화 서명을 해독하는 것도 불가능하다.
이런 엔트로피 증가가 없으면 우리는 시간을 마음대로 앞뒤로 움직일 수 있다. 예를 들어, 피보나치 수열은 인과적이지만 엔트로피적이지 않다. 이 수열의 모든 숫자는 그 앞에 오는 두 개의 숫자에 의해 발생한다. 그런 의미에서 인과관계다. 하지만 이는 완전히 예측 가능하기 때문에 시간을 말할 때는 유용하지 않다. 같은 의미에서 납치범은 오늘 날짜가 표시된 달력 앞에 단순히 서있을 수 없는 것처럼, 우리는 시간 증명을 위해 예측 가능한 방법을 사용할 수 없다. 우리는 오늘 신문 1면 같이 미리 예측할 수 없는 무언가에 항상 의존해야 한다.
비트코인은 두 개의 예측 불가능성 원천에 의존한다. 이 둘은 거래와 작업증명이다. 내일 신문이 어떤 모습일지 아무도 예측할 수 없는 것처럼 다음 비트코인 블록이 어떤 모습일지 아무도 예측할 수 없다. 미래에 어떤 거래가 발송될지 예측할 수 없기 때문에 어떤 거래가 포함될지 예측할 수 없다. 그리고 더 중요한 것은 현재 작업증명 퍼즐의 해결책을 누가 찾을것이며 어떤 해결책일지 예측할 수 없다는 것이다.
하지만 납치범의 신문과 달리 작업증명은 직접 발생한 사건에 물리적으로 연결되어 있다. 단지 사건의 기록이 아니라 사건 그 자체이다. 방정식에서 신뢰를 제거하는 것은 작업증명의 확률론적인 단순명쾌함이다. 유효한 작업증명을 찾는 유일한 방법은 많은 추측을 하는 것이고 하나의 추측에는 어느정도의 시간이 걸린다. 이 추측들의 확률적인 합이 비트코인이라는 타임체인을 구성한다.
해시체인의 인과성과 작업증명의 예측 불가능성을 활용해 비트코인 네트워크는 논란의 여지가 없는 입증된 사건의 기록을 만드는 메커니즘을 제공한다. 인과관계 없이 무엇이 먼저이고 나중인지 구별할 수 없다. 예측 불가능성이 없다면 인과관계는 무의미하다.
1992년 바이엘, 하버, 그리고 스토네타는 모든 납치범들이 직관적으로 이해하고 있는 바를 명시적으로 언급했다: “문서가 특정 시간 이후에 작성되었다는 것을 확인하기 위해서는, 발생 전 예측할 수 없던 사건을 보고해야 합니다.”
시간에 구애 받지 않는 디지털 영역에서 인과성과 예측 불가능성의 조합은 인공적인 “지금”을 만들어 낸다. 1991년 바이엘, 하버, 그리고 스토네타는 그들의 논문에서 다음과 같이 언급했다: “타임스탬프를 요청하는 클라이언트 수열과 그들이 전송하는 해시는 미리 알 수 없습니다. 따라서 서명된 인증서에 이전 클라이언트 요청한 수열의 비트를 포함하고 있다면, 타임스탬프가 그 요청 이후에 발생했다는 것을 알 수 있습니다. […] 그러나 인증서에 이전 문서의 비트를 포함해야 하는 필요조건은 다른 방향으로 시간을 제한하는 문제를 해결하는데도 사용할 수 있습니다. 타임 스탬프 회사는 현재 요청이 없으면 나중에 인증서를 발급할 수 없기 때문입니다.”
모든 퍼즐 조각들은 이미 존재했다. 사토시가 한 일은 방정식 한 곳에 그들을 모아넣어 “타임스탬프 회사”를 제외시킨 것이다.
시간증명
“카우사 라떼: vis est notissima.
원인은 숨겨져 있지만 결과는 알려져 있습니다.” — 오비디우스, 변신, IV. 287 (서기 8세기)
요약하자면, 디지털 영역에서 돈을 사용하려면 원장에 의존해야 한다는 것이다. 원장을 신뢰하기 위해선 명확한 순서가 필요하다. 순서를 설정하려면 타임스탬프가 필수적이다. 따라서 디지털 영역에서 무신뢰의 돈을 갖으려면, 우리는 타임스탬프를 만들거나 관리하는 모든 개체와 시간 자체를 담당하는 단일 개체를 없애야 한다.
해결책을 깨닫는 데는 사토시 나카모토 같은 천재가 필요했다. “P2P 기반으로 분산 타임스탬프를 구현하려면, 아담 백의 해시캐시와 비슷한 작업증명 시스템을 이용해야 합니다.”
우리는 디지털 영역의 고유한 무언가가 필요하기 때문에 작업증명을 사용해야 한다. 디지털 영역이 사실상 정보 제공이라는 것을 이해하고 나면, 우리가 가진 것은 계산 뿐이라는 명백한 결론에 도달한다. 만약 당신의 세계가 데이터로 만들어졌다면, 데이터 조작은 존재한다.
작업증명은 무신뢰이기 때문에 P2P 환경에서 작동한다, 그리고 시계를 보거나 신문을 보는 것과 같은 모든 외부 입력으로부터 단절되기 때문에 무신뢰이다. 작업증명은 오직 하나에만 의존하다. 계산은 작업이 필요하다, 그리고 우리 우주에서 작업은 에너지와 시간이 필요하다.
시간 연결하기
“나는 그것이 통한다는 것을 알고 있습니다.
다리 — 불타는 다리 — 를 건너면서
우리 뒤에 불꽃과 함께,
우리는 최전선에 있습니다.
그래 너와 나 뿐이야, 세상에 맞서는 거야.” — 케이트 부시, 불타는 다리(1985)
작업증명이 없으면 물리 영역과 정보 영역이 영원히 연결되지 않기 때문에 항상 오라클 문제에 부딪힐 것이다. 양 목록의 표시는 실제 양이 아니고, 지도는 실제 영토가 아니며, 어제 자 신문에 적힌 내용이 반드시 현실 세계에서 발생했던 일이 아니다. 같은 방식으로 타임스탬프를 적기 위해 실제 시계를 사용한다고 해서 실제로 그 시간이었다는 것을 의미하지 않는다.
솔직히, 문제의 현실이 데이터 자체에 내제되어 있는 경우를 제외하고는 데이터가 현실을 나타낸다는 사실을 단순하게 믿을 수 있는 방법은 없다. 비트코인의 난이도가 조정된 작업증명의 뛰어난 점은 자체 공간 및 시간과 함께 자체 현실을 만드는 것이다.
작업증명은 디지털 영역과 물리 영역 사이에 직접적으로 연결한다. 더 심오하게 말하자면, 무신뢰 방법으로 할 수 있는 유일한 연결이다. 그 외 다른 모든 것은 항상 외부 입력에 의존한다.
새로운 비트코인 블록을 채굴하는 난이도는 비트코인의 시간과 우리의 시간 사이의 얇은 실이 망가지지 않도록 조정된다. 마치 시계처럼 채굴 난이도는 2016틱 마다 재조정된다. 이 조정의 목표는 틱 사이의 평균 시간을 10분으로 유지하는 것이다. 이 10분은 물리 영역과 정보 영역을 안정적으로 연결시킨다. 결과적으로 비트코인 시계의 틱을 재조정하려면 인간의 시간 감각이 필요하다. 순수한 블록 기반의 조정은 인간 세상과 완전히 단절되어서는 작동하지 않을 것이다. 그리고 재조정의 모든 목적은 기발한 사람들이 블록이 너무 느리거나 빠른지 찾아내지 못하게 하는 것이다.
아이슈타인이 보여준 것처럼, 시간은 고정된 것이 아니다. 우리가 의존할 수 있는 보편적인 시간이란 것은 없다. 시간은 상대적이고, 동시에 존재하지 않는다. 이 사실은 적의가 있는 사람이 없더라도 모든 타임스탬프(특히 먼 거리를 거칠 경우)를 본질적으로 믿을 수 없게 한다. (참고로, 그래서 GPS 위성 타임스탬프가 끊임없이 조정되는 것이다.)
비트코인의 경우, 인간의 타임스탬프가 부정확하다는 사실은 크게 중요하지 않다. 또한 처음부터절대적인 참조 프레임이 없다는 것도 마찬가지다. 비트코인은 오직 2016 블록 전체에서 신뢰할 수 있는 평균을 계산할 수 있을 만큼 정확하면 된다. 이를 보장하기 위해 블록의 “실생활(meatspace)” 타임스탬프는 두 가지 조건이 충족될 때만 허락된다:
- 타임스탬프는 이전 11블록의 타임스탬프 중간 값보다 커야 한다.
- 타임스탬프는 네트워크 조정 시간에 2시간을 더한 것 보다 작아야 한다(“네트워크 조정 시간”은 당신에게 연결된 모든 노드에서 반환된 타임스탬프의 중간 값이다.).
다른 말로, 난이도 조정은 일정한 수준의 안전성, 난이도 혹은 에너지 소모가 아닌 일정한 시간을 유지하는 것이다. 돈의 가치는 에너지가 아닌 시간이 많이 소요 되어야 하기 때문에 이는 독창적이다. 에너지 생산성이 개선될 때마다 더 많은 돈을 만들 수 있기 때문에 돈을 에너지에 연결하는 것만으로는 절대적인 희소성을 만드는데 충분하지 않다. 시간은 우리가 더 이상 만들 수 없는 유일한 것이다. 줄리안 시몬이 말한 것처럼 시간은 궁극적인 자원이다. 비트코인 발행은 시간이라는 우주의 궁극적인 자원과 직접 연결되기 때문에 비트코인을 궁극적으로 돈의 형태로 만든다.
난이도 조정이 없다면, 비트코인 내부 시계는 더 많은 채굴자가 모여들거나 채굴 장치 효율성이 향상됨에 따라 점점 빨라지는 경향이 있다. 그렇기 때문에 난이도 조정은 필수적이다. 우리는 비트코인이 해결하고자 하는 난이도 조정 문제에 빠르게 직면할 것이다. 블록 시간이 특정 임계값 밑으로 떨어지면, 예를 들어 50밀리초라고 해보자, 이론상으로도 공유 상태에 동의하는 것은 불가능할 것이다. 빛이 지구의 한 쪽에서 다른 쪽으로 이동하는데 66밀리초 정도가 걸린다. 따라서 컴퓨터와 라우터가 완벽하더라도, 상황은 원점으로 돌아갈 것이다. 두 가지 사건이 주어졌을 때 어떤 사건이 먼저 혹은 나중에 발생했는지 말하는 것이 무의미할 것이다. 비트코인 틱을 정기적으로 조정하지 않으면 광속보다 빠르게 난이도 조정 문제를 해결해야 하는 절망적인 문제에 봉착할 것이다. 시간은 또한 1장에서 설명한 것처럼 암호화 불안정성의 근본적인 원인이다. 암호화는 시간의 비대칭성 때문에 작동한다. 열쇠가 있지 않는 한, 암호화 벽을 구축하는 것이 무너뜨리는 것보다 짧은 시간이 걸린다.
따라서 어느 면에서는 작업증명과 난이도 조정은 시간을 인위적으로 느리게 만든다, 적어도 비트코인 네트워크에서는 그렇다. 다른 말로 하자면, 비트코인은 느린 주기가 개인 간 통신 대기시간의 충분한 완충제가 될 수 있도록 내부 리듬을 조정한다. 2016블록마다 비트코인의 내부 시계는 재조정 되어, 평균적으로 10분마다 하나의 유효한 블록만 발견된다.
외부의 관점에서 비트코인은 자체 규칙과 시공간 감각에 의해 제한되는 평행 우주에 전 세계적으로 송출된 비동기 메시지의 혼란을 퍼뜨린다. 비트코인 네트워크 관점에서 멤풀(mempool)의 거래는 시간에 구애 받지 않는다. 거래가 유효한 블록에 포함될 때만 그 블록 숫자에 해당하는 시간이 할당된다.
얼마나 이 명쾌한 해결책인지 강조하지 않을 수 없다. 시간에 대한 자신만의 정의를 만들 수 있게되면 이전과 이후를 구별하는 것은 중요치 않다. 따라서 어떤 일이 일어났는지, 어떤 순서인지, 그리고 결과적으로 누가 누구에게 얼마나 빌렸는지 동의하는 것 또한 사소한 문제가 된다.
난이도 조정은 비트코인 내부 메트로놈의 틱이 어느정도 일정하게 만든다. 난이도 조정은 비트코인 오케스트라의 지휘자이다. 이는 음악을 계속 살아있게 만든다.
하지만 왜 처음부터 작업에 의존할 수 있을까? 그에 대한 답은 3가지에 있다. 계산에는 작업이 필요하고, 작업은 시간이 필요하며, 문제의 작업(난수를 추측하는 것)은 효율적으로 수행 될 수 없기 때문에 우리는 이에 의존할 수 있다.
확률론적 시간
“시간은 무수한 미래를 향해 끊임없이 갈라진다.” — 조지 루이스 보르헤스, 갈림길의 정원(1941)
비트코인 블록의 유효한 임시값을 찾는 것은 추측 게임이다. 이것은 주사위를 굴리거나, 동전을 던지거나, 혹은 룰렛을 돌리는 것과 비슷하다. 본질적으로 이건 천문학적으로 큰 난수를 찾으려고 하는 것과 같다. 해결책을 찾으려고 해도 진전이 없을 것이다. 잭팟을 터뜨리거나, 혹은 아니거나 둘 중 하나의 결과이다.
동전을 20번 던져서 전부 앞면이 나온다 할지라도, 동전을 던질 때마다 동전의 앞면이나 뒷면이 나올 확률은 50%이다. 마찬가지로 비트코인 블록이 들어오는 것을 기다릴 때, 매 초마다 블록을 발견할 확률은 약 0.16%이다. 마지막 블록이 언제 발견되었는지는 중요하지 않다. 다음 블록까지의 대략적인 대기시간은 항상 약 10분으로 같기 때문이다.
따라서 이 시계의 개별 틱은 예측 불가능하다는 결론을 가져온다. 인간의 시계와 다르게, 이 시계는 즉각적이고 부정확해 보인다. 그레고리 트루베츠코이가 언급한 것처럼 이는 무관하다: “이 시계가 부정확한지는 중요하지 않습니다. 중요한 것은 모든 사람에게 동일한 시계이고 체인의 상태가 시계의 틱과 분명히 연결되어 있는 것입니다.” 비트코인의 시계는 확률적일 수 있지만, 환상적이지는 않다.
“시간은 환상이고,
점심시간은 두 배 더 환상이다.” — 더글러스 아담스 (1979)
하지만 비트코인에서 현재 순간은 완전하게 환상일 수 있다. 네트워크에 중앙 기관이 없기 때문에, 이상한 상황이 발생할 수 있다. 가능성은 낮지만, 유효한 블록이 같은 시간(다시 한번, 물리학자들께 양해를 구합니다.)에 발견되는 것이 가능하며, 이는 시계가 한번에 두 개의 다른 위치에서 앞으로 똑딱거리게 될 것이다. 그러나 두 개의 다른 블록이 담고 있는 내용은 다를 가능성이 높다. 이 두 블록은 두 개의 다른 기록을 갖고 있겠지만, 동일하게 유효하다.
이는 체인 스플릿(chain split)으로 알려져 있고, 나카모토 합의의 자연스러운 과정이다. 잠시 두 그룹으로 갈라졌다 다시 합쳐지는 새 떼처럼, 비트코인 네트워크의 노드들도 추측의 확률적 특성 때문에 어느 정도 시간이 지나면 결국 공유된 기록으로 수렴할 것이다.
나카모토 합의의 올바른 기록은 가장 무거운 체인, 즉 최고로 많은 양의 작업증명이 담긴 체인에서 찾을 수 있다고 말한다. 따라서 A와 B라는 두 개의 기록이 있다면, 일부 채굴자들은 기록 A를 구축하려고 할 것이고, 또 다른 채굴자들은 기록 B를 구축하려고 할 것이다. 두 그룹 중 하나가 다음 유효한 블록을 찾으면, 다른 그룹은 그들이 잘못된 기록에 있었고 무거운 체인으로 옮겨지게 프로그램밍 된다. 여기서 체인은 실제로 어떤 일이 생겼는지를 의미한다. 비트코인에서 기록은 승자에 의해 쓰여진 역사이다.
“수취인은 각 거래 시점에 대다수의 노드가 첫 번째 수신에 동의했다는 증거가 필요합니다. […] 동일한 트랜잭션에 여러 이중지불이 있으면, 하나의 이중지불만 유효합니다. 지불을 받는 사람은 그것이 유효하다고 믿기까지 1시간 정도 기다려야 합니다. 네트워크는 그때까지 가능한 모든 이중지불 경쟁을 해결할 것입니다.” — 나카모토 사토시 (2009)
이 간단한 설명에 분산 조정 문제의 비밀이 있다. 이것이 사토시가 앞에서 본 사업 파트너가 겪었던 “동시 지불” 문제를 해결한 방법이다. 그는 그것을 단번에 해결했다. 상대론적 효과는 빌어먹을!
비트코인 시계의 확률적 특성 때문에 현재 순간(체인 팁)은 항상 불확실하고, 과거(체인 팁 밑에 묻힌 블록)는 더 확실해졌다.
“더 철저한 이해가 필요할수록, 더 많은 시간을 거슬러 올라가야 합니다.“ — 고든 클라크, <인간과 사물에 대한 기독교적 견해>, p. 58. (1951)
결과적으로 비트코인 시계는 때때로 일부 개인의 경우 한두 번 되감을 수도 있다. 만약 당신 시계의 체인 팁(현재)이 경쟁 체인 팁에 지는 경우, 시계는 당신이 과거라고 생각한 마지막 몇 똑딱거림을 무시하고, 먼저 되감은 후 앞으로 뛰어갈 것이다. 만약 당신의 시계가 확률적이라면, 과거에 대한 이해도 필요하다.
“똑딱똑딱- 시간은 무엇입니까?
똑딱똑딱… c619로 끝납니다.
진짜 괜찮아요? 저희 늦은 것 같은데요?
절대적인 것은 중요하지 않습니다: 9보다 8이 먼저 옵니다.
시계는 존재하지 않습니다. 때때로 거꾸로 갑니다.
정확한 시간은 중심을 의미합니다; 그것이 이 저주의 근원입니다!
그래도 이 시계는 똑딱똑딱똑딱 계속 갑니다.
속임수에는 이익이 없습니다; 그냥 똑닥하고 다음 블록.” — 비트코인과 시간에 대한 재미있는 작은 리듬(2020)
결론
“시간은 여전히 물리학에서 가장 큰 미스터리 중 하나이며 물리학이 무엇인지에 대한 정의 자체에 의문을 제기합니다.” — 조지 참과 다니엘 화이트슨: 우리는 모른다: 미지의 우주에 대한 안내서, pp. 117–118 (2017)
정보 영역에서 무엇인가를 파악한다는 것은 시간 파악이 필요한 일련의 사건을 파악한다는 것을 함축한다. 시간을 파악하는 것은 불확실한 미래와 확정된 과거를 영원히 연결하는 순간, 즉 “지금”에 대해 동의할 필요가 있다. 비트코인에서 “지금”이란 가장 무거운 작업증명 체인의 끝이다.
시간 구조에서 인과관계와 예측 불가능한 사건이라는 두 가지 요소는 필수적이다. 과거를 정의하려면 인과관계가 필요하고, 미래를 구축하려면 예측 불가능한 사건이 필요하다. 만약 사건의 순서가 예상 가능하다면, 미리 건너 뛸 수 있을 것이다. 만약 순서의 각 단계가 연결되지 않았다면, 과거를 바꾸는 것은 간단한 문제일 것이다. 내부적인 시간 감각은 비트코인을 속이는 것을 미치도록 어렵게 만들었다. 비트코인을 속이려면 과거를 다시 쓰거나 미래를 예측해야 하는데, 비트코인의 타임체인은 이 두 가지 모두를 방지한다.
시간이라는 렌즈를 통해 비트코인을 바라보는 것은 여러 사건을 인과적으로 연결하는 데이터 구조, 즉 “블록체인”이 주요 혁신이 아니었다는 것을 확실하게 한다. 과거 타임스탬프 문헌을 연구하면서 알 수 있듯이, 이는 새로운 아이디어도 아니었다.
“블록체인은 블록들의 체인이다.” — 피터 토드
사토시가 알아낸 새로운 아이디어는 중앙의 조정 없이 사건의 역사에 독립적으로 동의하는 방법이다. 그는 (a)타임스탬프 회사나 서버가 필요하지 않으면서, (b)증거로 신문이나 다른 물리적인 매체도 필요하지 않고, © 심지어 더 빠른 CPU 시간 환경에서도 어느정도 일정한 틱을 유지할 수 있는 탈중앙 타임스탬프 방식을 찾아냈다.
시간관리는 인과관계, 예측 불가능성, 그리고 조정이 필요하다. 비트코인에서 인과관계는 단방향 함수, 즉 프로토콜의 중심에 있는 암화화 해시 함수와 디지털 서명이 만든다. 예측 불가능성은 작업증명 문제의 답이 무엇인지 미리 알 수 없는 작업증명 문제와 다른 이들이 무엇을 할지 미리 알 수 없는 다른 개인들의 상호작용이 만든다. 조정은 비트코인의 시간과 우리를 연결시키는 마법의 소스인 난이도 조정이 만든다. 물리 영역과 정보 영역의 연결 없었다면 데이터에 의존하는 시간에 대한 합의를 이룰 수 없었을 것이다.
비트코인은 하나가 아닌 여러 면에서 시간이다. 이 구성 단위는 시간이 돈이기 때문에 저장된 시간이다. 그리고 비트코인 네트워크는 탈중앙 시계이기 때문에 시간이다. 끊임 없는 시계의 똑딱거림은 비트코인의 마법 같은 성질을 가져다 준다. 이런 것들 없이는 비트코인의 복잡한 춤은 무너질 것이다. 이런 것들은 지구의 모든 사람들을 놀라운 마법 같은 인터넷 화폐에 접근할 수 있도록 도와준다.
Gigi의 원본 번역 — Bitcoin Is Time
CC BY-SA 4.0 라이선스에 따라 게시됨https://creativecommons.org/licenses/by-sa/4.0/