이 섹션에서는 5과에서 처음 소개된 비트코인 네트워크의 두 가지 매우 중요한 부분(그리고 참여자)에 대해 좀 더 자세히 살펴보겠습니다:
비트코인 노드: 검증의 문지기로서, 이들의 주요 임무는 비트코인 원장 사본을 보관하고 모든 거래가 유효한지, 그리고 모두가 동일한 규칙을 따르는지 확인하는 것입니다. 이 역할을 전 세계 많은 사람들에게 분산함으로써, 비트코인은 중앙집중식 권위에 의존하지 않고도 잠재적인 사기에 강한 시스템을 유지할 수 있습니다. 노드는 시스템이 신뢰할 수 있고 탈중앙화된 정신을 지키도록 도와주며, 어느 한 사람이나 집단이 지나치게 많은 권력을 갖지 않도록 합니다.
비트코인 채굴자: 보안의 설계자로서, 강력한 컴퓨터와 전기를 사용해 암호 퍼즐을 풉니다. 이들은 거래를 확인하고 검증하여 모든 것이 안전하게 이루어지도록 합니다. 이들의 계산 작업은 블록체인(원장)을 변경하는 데 많은 에너지가 들게 만들어, 악의적인 시도로부터 블록체인을 안전하게 지키는 데 기여합니다.
비트코인 노드와 채굴자는 함께 팀을 이루어 탈중앙화되고 안전하며 강력한 시스템을 유지합니다. 이는 전 세계 사람들이 신뢰할 수 있는 진정으로 새로운 통화 시스템입니다. 이 역할들이 비트코인 프로토콜에 어떻게 기여하는지 더 자세히 살펴보겠습니다.
9.1 비트코인 노드와 채굴자
비트코인 노드는 기술적으로 들릴 수 있지만, 실제로는 비트코인 블록체인의 사본을 컴퓨터에 보관하는 소프트웨어일 뿐입니다. 블록체인은 모든 비트코인 거래의 공유 기록입니다.
자신만의 노드를 실행하면, 다른 사람을 신뢰하지 않고 직접 비트코인 거래를 검증할 수 있습니다. 이렇게 하면 더 큰 독립성을 얻을 수 있고, 비트코인 네트워크의 탈중앙화를 유지하는 데 도움이 됩니다.
비트코인 노드를 디지털 교통 경찰관에 비유할 수 있습니다. 몇 가지 중요한 역할을 맡고 있습니다.
노드는 블록체인의 사본을 보관합니다. 블록체인은 모든 비트코인 거래의 기록입니다.
노드는 전 세계의 다른 노드들과 연결되어 정보를 공유합니다. 예를 들어, 아직 확인되지 않은 새로운 거래 목록을 공유하는데, 이를 '메풀(mempool)'이라고 부릅니다.
노드는 모든 거래가 비트코인의 규칙을 따르는지 확인합니다. 거래가 유효하지 않으면, 노드는 그 거래를 거부합니다.
노드는 새로운 노드가 네트워크에 참여할 수 있도록 블록체인을 공유하는 역할도 합니다. 하지만, 모든 새로운 노드는 여전히 모든 규칙을 독립적으로 확인합니다.
누구나 Bitcoin Core와 같은 소프트웨어를 설치하고 블록체인을 다운로드하여 노드를 실행할 수 있습니다. 설정이 완료되면, 노드는 약 10분마다 새로운 블록을 받아 검증한 후 자신의 블록체인 사본에 추가합니다.
노드를 실행하면 더 많은 사람들이 시스템을 독립적으로 검증하게 되어 비트코인 네트워크가 더욱 안전하고 탈중앙화됩니다.
비트코인 노드란?
채굴의 목적은 새로운 비트코인을 만드는 것이 아니라, 그것은 인센티브 시스템입니다. 채굴은 비트코인의 보안이 탈중앙화되는 메커니즘입니다. Andreas M. Antonopoulos
채굴자는 아직 확인되지 않은 거래를 모아 블록을 만들고, 그 블록을 추가하고 안전하게 만들기 위해 에너지를 사용해 키를 찾습니다.
채굴자들은 다음 거래 블록을 블록체인에 추가하기 위해 경쟁합니다. 이를 위해서는 유효한 블록 해시를 만드는 특별한 숫자를 찾아야 합니다. 수십억 개의 가능성 중에서 올바른 열쇠를 찾는 것과 비슷하다고 상상할 수 있습니다. 가장 먼저 올바른 해시를 찾은 채굴자가 경쟁에서 이기고, 자신의 블록을 블록체인에 추가할 권리를 얻습니다.
채굴자가 유효한 해시를 찾으면, 그들은 자신의 블록을 네트워크에 공유합니다. 다른 채굴자들은 그 해답이 맞는지 빠르게 검증합니다. 맞다면, 그 블록은 블록체인에 추가되어 비트코인의 공개 장부를 안전하게 유지하는 데 기여합니다.
채굴자는 두 가지 방법으로 비트코인을 얻습니다:
블록 보상: 새로운 비트코인이 생성되어 블록을 성공적으로 추가한 채굴자에게 지급됩니다.
거래 수수료: 사람들이 비트코인을 보낼 때 소액의 수수료를 포함합니다. 블록을 추가한 채굴자가 해당 블록에 포함된 거래의 수수료를 받게 됩니다.
비트코인 반감기
2009
2012
2016
2020
2024
50 BTC
25 BTC
12.5 BTC
6.25 BTC
3.125 BTC
채굴자가 한 블록을 완성할 때마다 받는 보상은 210,000블록마다, 약 4년마다 절반으로 줄어듭니다.
비트코인은 최대 공급량이 21,000,000개로 고정되어 있지만, 처음부터 모두 만들어진 것은 아닙니다. 대신, 새로운 비트코인은 점진적으로 유통에 도입됩니다 채굴을 통해서입니다.
채굴자가 비트코인 네트워크에 새로운 거래 블록을 성공적으로 추가하면, 블록 보상으로 비트코인을 받게 됩니다. 비트코인 초창기에는 이 보상이 블록당 50비트코인이었습니다. 이 보상은 사람들이 컴퓨팅 파워와 전기를 사용해 네트워크를 안전하게 유지하도록 유도했습니다.
약 210,000블록(대략 4년)마다 블록 보상은 절반으로 줄어듭니다. 이 이벤트를 반감기라고 부릅니다. 반감기는 새로운 비트코인의 생성 속도를 늦추고, 총 공급량이 2,100만 개를 넘지 않도록 보장합니다. 시간이 지날수록 비트코인은 점점 더 희소해집니다.
유통량 은(는) 한 통화의 현재 사용 가능한 총량을 의미합니다. 비트코인의 경우, 전체 유통량은 지금까지 채굴되어 유통 중인 코인의 수를 뜻합니다.
비트코인 공급 일정은(는) 새로운 비트코인이 유통에 도입되는 사전 정해진 공개 계획으로, 시간이 지나도 비트코인의 희소성을 유지하도록 설계되었습니다.
각 반감기 이벤트 이후, 채굴자가 블록을 추가할 때 받는 비트코인 보상은 절반으로 줄어듭니다. 이로 인해 새로운 비트코인의 생성 속도가 감소합니다.
채굴자는 자신이 채굴한 블록에 포함된 거래에서 발생하는 거래 수수료도 계속해서 받습니다. 시간이 지남에 따라 이 수수료가 채굴자의 수입에서 더 큰 비중을 차지할 것으로 예상됩니다.
반감기는 비트코인 프로토콜에 내장되어 있으며 약 4년마다 자동으로 발생합니다. 이로 인해 비트코인의 공급 일정은 예측 가능하고 투명합니다.
이 표는 다가오는 반감기들을 보여주며, 대략적인 날짜, 반감기가 발생하는 블록 번호, 새로운 블록 보상, 그리고 전체 비트코인 공급량 중 채굴된 비율을 포함합니다.
이벤트
날짜
블록
보상
채굴됨
5번째 반감기
2028년
1,050,000
1.5625 BTC
98.44 %
6번째 반감기
2032년
1,260,000
0.78125 BTC
99.22 %
7번째 반감기
2036년
1,470,000
0.390625 BTC
99.61 %
더 많은 비트코인이 채굴될수록 유통량은 계속 증가하다가, 약 2140년경에 최대 공급량인 21,000,000 비트코인에 도달하게 됩니다. 시간이 지날수록 새로 생성되는 비트코인이 줄어들기 때문에, 수요가 증가하면 비트코인 가격이 오를 수 있습니다. 이는 또한 채굴자들이 컴퓨팅 파워를 제공하여 네트워크 보안을 유지하도록 동기를 부여합니다.
비트코인에서 유효한 블록 해시란 무엇인가요?
비트코인에서 채굴자들은 블록 해시라는 특별한 코드를 찾기 위해 경쟁합니다. 이 코드는 거래 블록을 식별하며, 해당 블록이 블록체인에 추가될 수 있도록 해줍니다.
각 블록에는 최근 거래에 대한 정보와 이전 블록의 해시도 포함되어 있습니다. 이로 인해 모든 블록이 서로 연결되어 최초의 블록(제네시스 블록)부터 가장 최근의 블록까지 하나의 체인을 형성합니다.
해시는 디지털 지문처럼 블록의 데이터를 나타냅니다. 블록의 정보가 조금이라도 바뀌면 지문도 달라집니다. 이를 통해 누구나 블록체인의 거래 내역이 변경되지 않았음을 쉽게 확인할 수 있으며, 네트워크의 보안 유지에 도움이 됩니다.
채굴자들은 유효한 블록 해시를 찾기 위해 경쟁합니다. 가장 먼저 찾은 채굴자가 새로운 블록을 블록체인에 추가하고 비트코인 보상을 받게 됩니다.
블록의 해시가 유효하려면 네트워크에서 정한 난이도 목표값보다 낮아야 합니다. 해시는 무작위로 생성되기 때문에, 채굴자들은 조건에 맞는 해시가 나올 때까지 여러 입력값을 계속 시도해야 합니다.
채굴자가 너무 많으면 블록이 너무 빨리 발견되고, 너무 적으면 블록을 찾는 데 너무 오래 걸립니다. 시스템이 원활하게 작동하도록 비트코인은 2,016블록(약 2주)마다 자동으로 난이도를 조정합니다.
이 조정 덕분에 평균적으로 약 10분마다 새로운 블록이 블록체인에 추가됩니다.
난이도는 비트코인 채굴에서 유효한 블록 해시를 찾는 것이 얼마나 어려운지를 나타냅니다. 네트워크는 2,016블록(약 2주)마다 이 난이도를 조정하여 약 10분마다 새로운 블록이 블록체인에 추가되도록 합니다. 난이도가 높을수록 채굴자가 유효한 블록을 찾기 더 어렵습니다.
유효한 블록 해시를 찾음으로써 채굴자는 새로운 블록을 블록체인에 추가하기 위해 필요한 작업을 수행했음을 증명합니다. 이 과정을 작업 증명(PoW)이라고 합니다. 이는 비트코인이 거래를 확인하고 새로운 블록을 블록체인에 추가할 수 있게 해주는 보안 메커니즘입니다. 유효한 해시를 가장 먼저 찾은 채굴자는 블록 보상과 해당 블록에 포함된 거래 수수료를 비트코인으로 받게 됩니다.
작업 증명(PoW)은 네트워크를 속이거나 장악하려는 시도를 매우 비싸게 만들어 비트코인의 보안을 유지합니다. 대신 규칙을 따르는 것이 훨씬 더 이익이 됩니다.
채굴자는 네 가지 주요 역할을 합니다:
거래 수집: 채굴자는 네트워크에 전송된 거래를 선택하여 후보 블록에 넣습니다.
작업 증명 수행: 채굴자는 유효한 블록 해시를 찾기 위해 어려운 수학 퍼즐을 푸는 경쟁을 합니다.
블록을 전파하다: 유효한 해답을 가장 먼저 찾은 채굴자가 새로운 블록을 네트워크에 공유합니다.
보상을 받다: 블록이 유효하다면, 블록체인에 추가되고 채굴자는 새로 생성된 비트코인과 거래 수수료를 받습니다.
전 세계의 많은 채굴자들이 동시에 다음 블록을 만들기 위해 시도합니다. 한 채굴자가 유효한 해답을 찾으면, 네트워크가 그 블록을 확인합니다. 모든 것이 올바르면 블록체인에 추가됩니다. 다른 경쟁 블록들은 폐기됩니다. 이 과정이 네트워크의 합의를 유지하고 이중 지불을 방지합니다.
채굴자는 비트코인의 장부를 유지하고 업데이트하는 데 도움을 주는 컴퓨터입니다.
이들은 거래를 모아 블록으로 묶습니다. 그런 다음 블록의 데이터를 해싱 알고리즘에 넣어 해시라고 불리는 고유한 코드를 만듭니다.
채굴자들은 이 과정을 여러 번 반복하며, 비트코인의 규칙에 맞는 해시를 찾으려고 합니다. 유효한 해시를 가장 먼저 찾은 채굴자가 새로 생성된 비트코인을 보상으로 받고, 그 블록이 블록체인에 추가됩니다.
각 블록의 해시는 이전 블록과도 연결되어 있습니다. 누군가 과거 거래를 변경하려고 하면 해시가 더 이상 일치하지 않아 네트워크가 변경된 체인을 거부합니다. 이것이 비트코인 장부의 보안을 지키는 원리입니다.
9.2 메풀(Mempool)이란 무엇인가요?
비트코인 멤풀은(는) '메모리 풀'의 줄임말로, 비트코인 거래를 위한 대기실과 같습니다. 비트코인을 보낼 때, 거래는 먼저 네트워크에 전파되어 멤풀에 저장됩니다.
식당에서 줄을 서서 기다리는 것과 비슷하다고 생각할 수 있습니다. 이름을 명단에 올리고, 자리가 날 때까지 기다립니다. 이와 마찬가지로, 거래도 멤풀에서 채굴자가 블록에 포함시킬 때까지 기다립니다.
비트코인 노드는 새로운 거래가 유효한지, 그리고 사용되는 비트코인이 이미 사용된 적이 없는지 확인합니다. 거래가 유효하다면, 확인될 때까지 멤풀에 남아 있습니다.
채굴자들은 멤풀에서 거래를 선택해 새로운 블록에 포함시킵니다. 보통 수수료가 더 높은 거래가 먼저 선택됩니다.
거래가 블록에 포함되면, 확인된 것으로 간주되어 비트코인 블록체인에 영구적으로 기록됩니다.
활동: 멤풀 탐험하기
이 활동은 학생들이 기술적인 지식 없이도 사용할 수 있는 무료 오픈소스 도구를 경험하게 합니다. 초보자부터 숙련된 비트코인 사용자까지 모두에게 유용합니다.
핵심 포인트
멤풀은(는) 각 비트코인 노드가 관리하는 미확인 거래 목록을 의미하며, 특정 서비스나 플랫폼을 가리키는 것이 아닙니다.
하나의 단일하고 보편적인 멤풀은 존재하지 않습니다. Mempool.space는 여러 멤풀 중 하나입니다.
Mempool.space는 오픈소스이며 사용하기 쉬운 시각적 블록 탐색기로 잘 알려져 있습니다. 미확인 거래, 수수료율, 기타 네트워크 활동에 대한 실시간 데이터를 제공합니다.
학생 팁
Mempool.space는 블록 시각화 그 이상을 제공합니다. 비트코인 생태계의 다른 부분도 탐험해 보세요: 예를 들어, 라이트닝, 채굴, 해시레이트, 채굴 풀, 블록 공간 '고글' 등입니다.
9.3 거래가 작동하는 방식
이제 공개키와 개인키, 그리고 노드와 채굴자의 역할을 이해했으니, 비트코인 거래가 처음부터 끝까지 어떻게 진행되는지 알아봅시다.
아담은 비트코인을 헤민에게 보내고 싶어 합니다. 그는 헤민의 주소, 보낼 금액, 그리고 수수료를 포함하여 거래를 생성합니다.
아담은 소유권을 증명하기 위해 자신의 개인키로 거래에 서명합니다.
그는 거래를 비트코인 네트워크에 전파합니다.
노드들은 거래를 받아 규칙을 따르는지 확인하며, 여기에는 서명 검증과 아담이 충분한 비트코인을 가지고 있는지 확인하는 과정이 포함됩니다.
유효하다면, 거래는 네트워크 전체에 공유되고, 대기 중인 거래들이 기다리는 메풀(mempool)에 추가됩니다.
채굴자들은 메풀에서 거래를 선택해 자신들이 채굴하려는 블록에 포함시킵니다.
채굴자가 블록을 성공적으로 채굴하면, 그 블록은 네트워크에 공유되고 다른 노드들에 의해 검증됩니다.
유효하다면, 블록은 블록체인에 추가됩니다. 헤민은 비트코인을 받게 됩니다.
더 많은 블록이 추가될수록, 해당 거래는 더 많은 컨펌(확인)을 받아 더욱 안전해집니다.
거래가 블록에 포함되면, 거래는 확정됩니다. 아담은 그 비트코인을 다시 쓸 수 없고, 헤민은 받은 비트코인을 새로운 거래에서 사용할 수 있습니다.
거래 및 수수료 선택 → 지갑에서 서명 후 전송 → 노드가 분산 → 채굴자가 거래를 블록 템플릿에 추가 → 채굴자가 작업증명(Proof-of-Work) 경쟁에서 승리 → 새 블록이 검증됨 → 새 블록이 노드에 의해 분산됨