블록체인이 도대체 뭔가요?
- 비트코인은 무엇이고 블록체인은 또 무엇입니까? -
사토시 나카모토가 비트코인을 세상에 발표한 논문의 제목은 ‘비트코인 : 개인 대 개인 전자 화폐 시스템’입니다.
그는 금융기관을 거치지 않고 거래 상대방에게 직접 전달되는 순수한 개인 대 개인 버전의 전자화폐 방식으로 온라인 결제(payments)를 실현했다고 발표한 것입니다. 기존 금융기관에 의해 시행되던 이중 지불(double-spending)을 막기 위한 전자서명을 제거해 버린 것입니다.
그는 개인 대 개인으로 연결된 네트워크를 이용해 이중 지불 문제를 해결했습니다. 그간 많이 사용되고 있던 peer to peer 네트워크에서 거래를 암호화하여 정확한 거래시간 확인을 위한 타임스탬프를 기록해 해시(암호) 기반 작업증명(proof-of-work)을 연결한 체인으로 만들었습니다. 이것이 나중에 ‘블록체인이란 용어로 발전’한 것입니다.
타임스탬프에 의해 거래시간을 소급할 수 없을 뿐 아니라, 일정한 시간이 소요되는 작업증명을 다시 수행하지 않고서는 기록을 변경할 수 없는 거래기록을 생성토록 한 것입니다.
여기에서 가장 긴 체인은 목격(실행)된 사건의 순서를 증명할 뿐 아니라, 그게 가장 광대한 CPU 파워풀에서 비롯된 것임을 증명하기도 합니다. 과반수의 CPU 파워가 네트워크 공격에 협력하지 않는 노드에 의해 통제되는 한, 그 힘은 가장 긴 사슬을 만들어내며 공격자(거래기록을 위조, 변조하려는 해커)를 압도할 수 있습니다.
이 네트워크 스스로는 최소한의 구조만을 요구합니다. 메시지는 최선의 노력을 다해(on a best effort basis) 퍼져나가고, 개별 노드(개인 PC 또는 단말)는 자기가 빠진 사이에 벌어진 거래의 증명으로 가장 긴 작업증명 체인을 선택함으로써 임의로 네트워크를 떠났다가 다시 합류할 수 있습니다.
지금 설명해 드린 것이 바로 비트코인의 논문 초록에 있는 개인 대 개인 전자 화폐 시스템의 핵심 개요입니다.
지금까지의 인터넷 기반 상거래는 전자결제를 처리할 신뢰받는 제 3 자 역할을 거의 전적으로 금융기관에 의존해 왔습니다. 이 시스템은 대다수 거래에 충분히 잘 동작하지만, 여전히 신뢰 기반 모델의 태생적 약점을 극복하지 못합니다.
기존 금융기관은 분쟁 중재를 피할 수 없습니다. 왜냐하면 거래 기록의 위조 또는 변조를 피할 수 없는 가역성 때문입니다. 완전한 비가역 거래는 실제로 가능하지 않습니다. 따라서 가역성을 보완하거나 분쟁이 발생할 경우의 중재 비용을 감안하여 거래 비용을 높이거나, 비가역 서비스에 맞는 비가역 결제기능의 부족으로 더 큰 비용이 발생하는 것입니다.
여기에서 가역성은 위변조 가능 또는 이전 거래로 되돌릴 수 있는 성질, 비가역성은 어떤 경우라도 위변조 또는 이전 거래로 되돌릴 수 없는 성질로 이해하면 좀 더 쉽게 이해할 수 있습니다. 대부분의 사기사건은 가역성에 의한 위변조에서 비롯됩니다.
가역성 때문에 신뢰 결핍(the need for trust)이 더 널리 퍼집니다. 상거래인은 많은 정보를 요구하지 않을 경우보다 더 그를 괴롭히는 고객을 경계해야 합니다. 일정한 비율의 사기사건은 불가피한 것으로 간주됩니다. 이런 많은 금융비용과 결제의 불확실성은 대면 거래에서 물리적 통화(currency)를 사용해 피할 수 있지만, 통신 채널로 신뢰받는 중개자 없이 결제를 수행할 방법은 존재하지 않습니다.
그래서 사토시가 필요하다고 생각한 것은 신뢰 대신 암호학적 증명(cryptographic proof)에 의해 거래 의사가 있는 두 당사자가 신뢰받는 제 3 자를 필요로 하지 않고 서로 직접 거래하게 해주는 개인 대 개인 간의 전자화폐시스템이었습니다.
철회가 전산적으로 불가능한 거래는 사기로부터 판매자를 보호하고, 통상적인 제 3 자 예치(escrow) 방법은 구매자를 보호하기 위해 쉽게 구현될 수 있습니다. 이 논문에서 사토시는 거래 시간순의 전산적 증명을 생성하는 개인 대 개인 간 분산 타임스탬프 서버를 사용한 이중 지불 문제의 솔루션을 제안했습니다. 이 시스템은 정직한 노드가 공격자 노드의 협력 그룹보다 총체적으로 더 많은 CPU 파워를 통제하는 한 보안상 안전하다는 걸 증명한 겁니다.
결론적으로 사토시는 신뢰에 의존하지 않는 전자거래용 시스템을 제안했습니다. 강력한 소유권 통제를 제공하는 디지털 서명으로 만든 화폐(coins made from digital signatures)라는 평범한 프레임워크로 시작했지만, 이는 이중 지불 방지수단 없이는 불완전합니다.
이를 해결하기 위해 그는 정직한 노드가 CPU 파워 대부분을 통제하면 공격자가 위조 또는 변조하여 신속하게 바꾸는 것이 계산적으로 불가능해지는 공중 거래이력(a public history of transactions) 기록에 작업증명을 사용하는 개인 대 개인 네트워크를 제안했습니다.
이 네트워크의 견고함은 그 통일성 없는 단순함(unstructured simplicity)에 있습니다. 노드는 거의 조정(coordination)없이 한 번에 모두 동작합니다. 이들은 메시지가 경로를 지정받아 어떤 특정 위치로 가는 게 아니라 단지 최선의 노력을 다해 전달되면 그만이기 때문에 따로 식별될 필요가 없습니다.
노드는 마음대로 네트워크를 떠났다가 그가 없는 동안 벌어진 일의 증명으로 작업증명 체인을 받아들여 다시 합류할 수 있습니다. 이들은 CPU 파워를 사용한 투표로, 유효한 블록을 연장하는 작업을 통해 그걸 승인했음을 나타냅니다. 그리고 유효하지 않은 블록에 대한 작업을 거부함으로써 그것을 기각합니다. 이러한 합의 메커니즘(consensus mechanism)을 통해 필요한 모든 규칙과 인센티브를 시행 할 수 있습니다.
비트코인의 논문은 모두 9 페이지로 구성되어 있습니다. 앞에서는 핵심개요(abstract), 1장 서론 그리고 12장 결론을 쉽게 풀어서 설명한 것입니다. 그 외에 2. 거래, 3. 타임스탬프 서버, 4. 작업증명, 5. 네트워크, 6. 인센티브, 7. 디스크 공간 회수, 8. 간소화한 결제 검증, 9. 가치 합치기와 나누기, 10. 프라이버시, 11. 계산을 설명한 총 12개의 장으로 구성되어 있습니다.