Bitcoin의 Proof of Work는 블록 헤더의 이중 SHA-256 해시가 목표 조건을 만족함을 증명합니다. 난이도는 예상 시도 횟수를 나타내며 정확한 전력 소비나 거래 유효성을 뜻하지 않습니다.
Proof of Work는 전기료 납부나 블록 유효성을 증명하지 않습니다. 노드는 헤더 해시의 수치가 nBits에 인코딩된 목표를 넘지 않는지 검사합니다. 검증은 저렴하지만 탐색은 확률적이며 목표가 낮을수록 평균적으로 더 많은 시도가 필요합니다. [Bitcoin whitepaper] [Bitcoin Core v29.0: Proof of Work]
ASIC은 4바이트 헤더 nonce를 모두 시도하고도 실패할 수 있습니다. 그러면 채굴 소프트웨어는 coinbase 거래의 extra nonce 등을 바꿉니다. Merkle Root와 다음에 탐색할 헤더가 함께 변하므로, 채굴은 한 숫자를 무한히 증가시키는 과정이 아닙니다. [Bitcoin Developer Guide: Mining]
nBits는 목표의 압축 표현입니다. 목표가 작으면 허용되는 해시가 적어 난이도가 높아집니다. 연산 능력의 비율, 0의 개수, 줄 단위 에너지를 직접 나타내지 않습니다. 각 시도는 독립적이므로 높은 hashrate도 다음 블록 발견자를 보장하지 않습니다. [Bitcoin Core v29.0: Proof of Work] [Bitcoin whitepaper]
노드는 작업량 외에도 구조, 서명, 미사용 입력, coinbase 규칙을 검사합니다. 구현의 검사 순서가 이 모든 검사가 해시 검사보다 먼저라는 뜻은 아닙니다. 목표 이하 해시로 잘못된 서명이나 이중 지불을 고칠 수 없으며, 유효한 후보라도 작업량이 부족하면 활성 체인에 들어가지 못합니다. [Bitcoin whitepaper] [Bitcoin Core v29.0: block validation]
유효한 분기가 경쟁하면 노드는 길이뿐 아니라 블록 목표에서 계산한 누적 작업량을 비교합니다. 확정된 이력을 바꾸려면 대체 유효 블록을 만들고 정직한 분기에 계속 쌓이는 작업량을 따라잡아 넘어야 합니다. 이는 경제적·확률적 장벽이지 즉각적인 불가역성이 아닙니다. [Bitcoin whitepaper] [Bitcoin Core v29.0: chainwork]
mainnet에서 Bitcoin Core는 난이도 구간 경계에서 목표를 바꿉니다. 관측 시간과 예정 시간을 비교하고 관측 시간을 예정 시간의 4분의 1에서 4배 사이로 제한하며 새 목표에 mainnet 상한도 적용합니다. BTC 가격, 노드 수, 채굴자 투표가 이 계산을 결정하지 않습니다. [Bitcoin Core v29.0: Proof of Work]
풀은 기여도를 추정하기 위해 더 쉬운 내부 share 목표를 사용할 수 있습니다. 대부분의 share는 네트워크 목표를 충족하지 않아 블록체인에 들어가지 않습니다. 네트워크 목표를 충족하면 풀은 전체 후보 블록을 전파하고 독립 노드가 수락 여부를 판단합니다. [Bitcoin Developer Guide: Mining]
자신의 노드나 공개 데이터로 헤더 해시, bits, 목표, 높이, chainwork를 비교할 수 있습니다. 성공한 해시만으로 정확한 에너지, 실제 채굴자의 신원이나 위치는 알 수 없습니다. 보안 주장에는 결제 금액, 확인 수, 정직한 작업량 우세라는 전제가 필요합니다. [Bitcoin Core v29.0: Proof of Work] [Bitcoin whitepaper]
더 정확히 이해하려면 이 항목과 함께 다음도 읽어 보세요 비트코인 채굴, 난이도 조정, Timechain / Blockchain, Full Node, 블록 보상의 신규 발행분. 다음 항목에서도 이 글을 참조합니다 Bitcoin, Satoshi Nakamoto, Bitcoin Whitepaper, Timechain / Blockchain.
01Bitcoin에 Proof of Work가 필요한 이유는 무엇인가요?+
Proof of Work는 독립 노드가 경쟁하는 유효한 이력을 객관적으로 비교하는 방법을 제공합니다. 이력을 교체하려면 그 작업을 다시 수행하고 경쟁 분기를 따라잡아야 합니다. 누적 작업량에 따른 선택에는 중앙 시계나 투표자 명부가 필요하지 않습니다.