3분 과학기술 용어 3편, [블록체인 작업증명]입니다.
🤯내가 코인을 샀다고 해서 '참여자(노드)'가 아니라고?
우리가 업비트, 빗썸과 같은 코인거래소에서 현금으로 코인을 사고, '지갑'에 보관한다고 해서 구매한 코인의 블록체인에 참여하게 되지 않습니다. 즉, 일반적으로 코인을 구매하고 전송하는 사람은 노드가 아닙니다.
흔히 블록체인은 "모두"가 블록의 생성이나 검증에 참여하여 높은 투명성과 안정성을 갖는 기술이라고 하지만,
이 모두에는 코인 투자만 하는 '머글' 일반인들이 포함되지 않는다는 얘깁니다.
그렇습니다. 코인을 포함한 다양한 블록체인 네트워크에는 누가 무엇을 하는지에 따라 다양한 역할이 존재하고, 노드는 그중 한 가지 역할일 뿐입니다.
⛏️코인 채굴을 한다는 얘기가 들리지 않는 이유?
2010년대 중반, 코인에 대한 대중 주목도가 하늘을 찔렀을 때 너도 나도 '채굴을 통해 돈을 캔다'는 얘기가 있었습니다.
그런데 2025년 현재, 코인 투자에 있어 '채굴'이란 단어가 예전만큼 많이 들리지 않습니다. 왜 그럴까요?
'캔다' 또는 '채굴'한다는 것은 코인 블록의 생성을 지연하는 작업증명(PoW) 과정에서 '해시 퍼즐'을 푸는 행위를 의미하는데,
현재 비트코인과 같은 PoW 코인의 퍼즐 난이도가 너무 높아져 전문적인 장비와 엄청난 전력이 필요하여
개인용 컴퓨터로는 채굴이 거의 불가능해졌습니다.
이번 글에서는 블록체인 합의 메커니즘 중 하나인 작업증명(PoW)에 대해 구체적으로 알아보겠습니다.
합의 메커니즘의 원조, 작업증명(PoW)과 채굴
작업증명(Proof of Work)이란 네트워크의 모든 참여자가 새로 생성된 블록이 '정당'하다고 동의하는 합의 과정으로, 채굴이란 블록의 수학적 퍼즐을 풀어 '작업을 증명'하는 과정을 통해 이뤄짐. 새로운 블록의 생성을 지연시켜 블록체인에 높은 보안성을 부여함
PoW를 쉽게 이해하기 위해 다음과 같은 코인 거래 상황을 가정하겠습니다:
💡 [현금 10원 → 1코인] 사람 A가 10원을 주고 1코인을 삼.
이 거래(트랜잭션)는 아직 블록체인에 기록되지 않고 [대기 중]의 상태에 있습니다.
📌거래가 블록에 포함되는 과정:
- 위 거래는 트랜잭션 풀(mempool)에 저장됨
- 채굴자들은 이 풀에서 거래들을 모아서 '임시 블록'을 만듦.
- 채굴자는 블록을 생성하면 거래 수수료를 보상으로 받기 때문에 수수료가 높은 거래부터 우선 선택함
- 그래서 트랜잭션 풀에서 거래수수료가 높은 거래부터 먼저 블록에 넣을 가능성이 높음
- [채굴] 채굴자들은 앞다퉈 임시 블록의 해시값을 맞추는 퍼즐을 풀기 위해 경쟁함
- 가장 먼저 퍼즐을 푼 채굴자 B가 블록을 제안하고, 네트워크의 노드들이 이 블록의 유효성을 검증함
- 블록이 검증을 통과하면 공식적으로 블록체인에 기록됨
- 사람 A의 거래를 포함한 블록이 블록체인에 저장되고, 채굴자 B는 퍼즐을 푼 보상으로 채굴 보상과 거래 수수료를 받음
- [거래 성사] 사람 A가 산 코인은 그의 지갑에 기록되고, 모든 노드가 블록체인의 최신 상태로 동기화하며 거래를 인정함
위 과정을 뭉뚱그려 작업증명(PoW)이라 부르는데, 코인 거래가 아닌 다른 정보의 PoW 블록체인도 위와 유사한 과정을 거쳐 새 정보를 블록에 기록합니다.
채굴(mining)이란 PoW에서 새 블록을 생성하기 위해 정보를 담고 있는 '임시 블록'의 해시값을 찾는 연산 작업
위 과정의 3번째 단계가 바로 채굴(mining)입니다. 채굴을 성공한 사람은 채굴 보상으로 [새로운 코인 + 거래수수료]를 얻습니다.
- 각각의 블록은 해시라 하여 길고 복잡한 고유 값을 출력함
- 채굴 목표: 채굴자들의 컴퓨터는 블록의 정확한 해시값이 아닌, 목표값보다 작은 해시값을 찾는 것이 목표
- '임시 블록'에는 거래 목록, 이전 블록의 해시, 계산난이도 목표, 숫자값인 논스(nonce) 등이 '블록 헤더'라는 영역에 저장되어 있음
- 채굴자들의 컴퓨터는 논스를 변경해 가며 난이도 목표를 충족하는 해시값을 찾기 위해 계산을 무한 반복함
누구나 원한다면 채굴자가 될 수 있지만, 현실적으로 일반 컴퓨터(PC)로는 채굴을 성공하기 어렵고 ASIC과 같은 고성능 채굴 장비, 그리고 이를 지지하는 많은 전력(=높은 전기세)이 필요합니다.
그래서 요즘은 채굴장을 운영하는 전문 기업들이 대부분의 채굴을 하고 있으며,
개인은 채굴 풀(mining pool)에 일원으로 참여하여 다른 채굴자들과 연산력을 합쳐 보상을 나눌 수 있습니다.
🙋PoW 속 주요 역할들
풀노드(full node)란 PoW를 사용하는 블록체인 네트워크에서 새 블록의 생성을 검증하는 역할로, 검증자(validator)라고 불리기도 함
블록체인의 모든 사용자가 노드로 참여하지 않습니다. 즉, 사용자는 단순 트랜잭션을 보내는 역할만 맡을 수 있고, 또 원한다면 블록의 생성 및 검증 과정에 참여할 수 있습니다.
- 풀노드는 채굴자가 푼 블록의 유효성을 점검하여 네트워크에 새 블록을 추가할지 결정하는 검증-합의-보관의 핵심적인 역할을 수행
- 채굴자 노드(miner)는 트랜잭션 풀에서 거래를 선택하여 임시 블록을 만들고, 이 블록의 해시값을 맞추는 퍼즐을 풀어 블록이 채택될 수 있도록 함
- 풀노드는 반드시 채굴까지 할 필요가 없으며, 네트워크를 유지하고 검증하는 역할만 해도 됨
풀노드를 운영하려면 채굴만큼은 아니나 24시간 돌아가는 컴퓨터, 전체 블록체인 데이터를 저장하고 유지하기 위한 하드드라이브 용량과 CPU 성능이 요구됩니다. 그러면 이 귀찮은 역할을 왜 도맡아 하는 걸까요?
풀노드는 일반적으로 블록 검증에 대한 금전적인 보상을 받지 못합니다. 대신 정부, 기업, 거래소 등에 의존하지 않고 이들의 간섭과 검열을 피해 직접 블록체인을 운영할 수 있겠죠? 그래서 풀노드의 보상이란 블록체인 기술의 원래 취지인 완전한 독립성과 신뢰성입니다.
복잡한 블록체인에 거들지 않고 간단히 트랜잭션을 확인만 하고 싶다면 풀노드보다 가벼운 방식으로 네트워크에 참여할 수 있습니다.
- 라이트 노드(SPV node)는 블록체인의 전체 데이터를 저장하지 않고 필요한 정보만 저장하며, 블록 검증을 하지 않기에 풀노드에 의존하여 거래 정보를 확인함
이외에도 다양한 노드 역할이 존재합니다만, 이에 대해서는 차차 알아보도록 하겠습니다.
✓ 본 게시물 속 용어 정리
작업증명(PoW) | 블록체인에 새로운 블록을 추가하기 위해 노드가 블록의 해시값을 맞추는 연산 퍼즐을 풀어 '작업(일)을 증명'하는 합의 메커니즘 |
트랜잭션 풀 | 아직 블록에 포함되지 않은 대기 중의 거래들이 저장된 공간 |
채굴 | PoW에서 새로운 블록을 생성하기 위해 정보를 담고 있는 '임시 블록'의 해시값을 찾는 연산 작업 |
채굴자 노드(마이너) | PoW 블록체인 네트워크의 트랜잭션 풀에서 거래를 선택해 블록을 만들고, 퍼즐을 풀어 블록을 채택시키고자 하는 역할 |
논스 | 채굴자가 올바른 해시값을 찾기 위해 변경하는 임의의 숫자값 |
채굴 풀 | 여러 채굴자들이 연산력을 모아 공동으로 채굴하고 보상을 나눠 갖는 협력체 |
풀노드 | 채굴자가 푼 블록의 유효성을 검증하고, 네트워크의 블록체인을 유지관리 및 보관하는 역할 |
라이트 노드 | 블록체인 전체를 저장하는 풀노드와 달리, 일부 데이터만 저장하는 역할 |
블록체인 중엔 대표적으로 비트코인이 아직 PoW 합의 메커니즘을 사용합니다.
하지만 이제는 PoS, DPoS 등을 비롯한 차세대의 합의 메커니즘이 많이 등장하였죠.
이들에 대해서는 앞으로 천천히 살펴보도록 하겠습니다!
이상 중고딩, 문과, 비전공자도 이해가능한 과학기술 용어였습니다.
'과학 이야기 > 과학기술 용어백과' 카테고리의 다른 글
효소처리스테비아, 스테비아 추출물의 차이: 스테비아 화학구조, 0칼로리 원인 대사과정 (1) | 2025.03.28 |
---|---|
노드에 따른 블록체인 유형: 퍼블릭, 프라이빗, 하이브리드, 컨소시엄 (1) | 2025.03.09 |
블록체인의 기초: 해시, 작업증명 PoW, 분산원장, 높은 안정성을 위한 3가지 기술 (0) | 2025.03.05 |