본문으로 건너뛰기
buybitcoinsmart

용어집 / 채굴과 합의

채굴 난이도

별칭은 Mining difficulty, Difficulty, 난이도입니다.

채굴 난이도란 무엇입니까?
채굴 난이도는 해시레이트가 많든 적든 블록이 약 10분 간격으로 도착하도록 네트워크가 2,016개 블록마다 돌리는 다이얼입니다.

난이도는 블록을 찾는 일이 2009년 1월에 사토시가 마주했던 것보다 얼마나 더 어려운지를 나타내는 하나의 숫자입니다. 난이도는 2,016개 블록마다, 대략 2주마다, 직전 2,016개 블록이 실제로 걸린 시간을 기준으로 다시 계산되며, 한 번에 어느 방향으로든 최대 4배까지만 움직일 수 있습니다. 그래서 10분 블록은 채굴 출력이 100조 배 늘어난 뒤에도 유지되었습니다.

작동 방식

난이도는 비율이며, 프로토콜은 과정 어디에도 사람의 개입 없이 타임스탬프만으로 이를 계산합니다.

그 아래에는 목표값이 있습니다. 블록 헤더 해시가 이 값 아래로 내려와야 하는 256비트 숫자이며, 헤더에는 nBits라는 4바이트짜리 압축 필드로 저장됩니다. 난이도는 난이도 1 목표값을 현재 목표값으로 나눈 값으로 정의되므로, 난이도가 126조라는 것은 유효한 헤더가 네트워크 첫 주보다 126조 배 더 희귀하다는 뜻입니다. 노드는 실제로 난이도를 검사하지 않습니다. 노드는 헤더 해시를 목표값과 비교합니다. 난이도가 존재하는 이유는 비율은 읽을 수 있고 256비트 기준값은 그렇지 않기 때문입니다.

재조정은 블록 높이가 2,016의 배수일 때마다 일어납니다. 노드는 그 구간이 실제로 걸린 시간을 측정해 의도된 20,160분과 비교하고, 그 비율만큼 목표값을 조정합니다. 이때 한 번의 조정으로 4배 넘게 쉬워지거나 4배 넘게 어려워질 수 없도록 제한됩니다. 이 계산에는 유명한 off by one 오류가 있습니다. 시간 폭은 구간의 첫 블록과 마지막 블록 사이로 측정되는데, 이는 2,016개가 아니라 2,015개 간격에 해당하므로 네트워크는 실제로 블록당 약 10.0049분을 목표로 하게 됩니다. 이를 바로잡는 것은 반올림 오류를 위한 하드 포크가 되므로, 그대로 유지됩니다.

역사는 이 메커니즘이 양방향으로 작동함을 보여 줍니다. 난이도는 2009년 12월 30일의 블록 32,256에서 첫 재조정이 일어날 때까지 거의 1년 동안 1에 머물렀고, 그때 약 1.18로 올랐습니다. 이후 120조를 넘어섰습니다. 기록상 가장 큰 하락은 2021년 7월 3일에 있었는데, 중국이 자국 채굴 산업을 축출하면서 난이도가 한 번에 27.94% 떨어져 약 19.93조에서 14.36조로 내려갔습니다.

비트코인을 구매할 때 이것이 중요한 이유

난이도는 출금이 몇 시간이 아니라 몇 분 안에 확인되는 이유이며, 난이도가 뒤처져 있기 때문에 때로는 그렇게 되지 않는 이유이기도 합니다.

이 메커니즘은 사후에만 바로잡습니다. 해시레이트의 큰 부분이 꺼지면 블록은 이전 난이도로 계속 도착해 각각 10분보다 오래 걸리며, 다음 재조정이 최대 2주 뒤에 올 때까지 그렇게 이어집니다. 그 몇 주 동안 확인은 느려지고, 멤풀은 채워지는 속도보다 느리게 비워지며, 같은 블록 공간이 덜 자주 경매되므로 수수료율이 올라갑니다. 2021년 7월에 거래소에서 출금한 사람은 이를 직접 겪었습니다. 그 구간의 블록은 평균 약 14분이 걸렸습니다.

반대의 경우는 더 조용하지만 더 흔합니다. 새 장비가 연결되면 난이도가 따라잡을 때까지 블록이 10분보다 빨리 도착하므로, 확인은 잠시 일정이 시사하는 것보다 더 저렴하고 빠릅니다.

난이도가 하지 않는 두 가지 일을 분명히 밝힐 필요가 있습니다. 난이도는 시간이 아니라 블록을 세는 반감기 일정에 아무런 영향을 주지 않으며, 가격 신호가 아닙니다. 난이도는 채굴업자들이 몇 달 전에 수익성이 있던 장비를 샀기 때문에 오릅니다. 이를 예측으로 읽는 것은 백미러를 보는 것입니다.

2021년 7월 3일 재조정

2021년 7월 3일의 재조정은 충격이 막대했고 조정이 자동으로 이루어졌기 때문에, 이 메커니즘을 가장 명확히 보여 주는 사례입니다.

중국의 단속은 2021년 중반 몇 주 만에 세계 채굴 장비의 큰 비중을 오프라인으로 밀어냈습니다. 장비는 텍사스, 카자흐스탄, 파라과이로 향하는 컨테이너에 실렸고, 운송 중에는 아무것도 해시하지 않았습니다. 네트워크는 멈추지도, 누구에게 도움을 청하지도 않았습니다. 단지 블록을 더 느리게 생성했을 뿐입니다. 27.94% 감소는 이전 구간이 10분이 아니라 블록당 약 13.9분을 평균했음을 의미합니다. 재조정 시점에 난이도는 14.36조로 떨어졌고, 10분 페이스는 몇 시간 안에 돌아왔으며, 그해 여름의 연속 네 차례 하향 조정은 합쳐서 그 숫자에서 약 45%를 깎아냈습니다. 반대 방향의 조정들은 누구도 그래야 한다고 결정하지 않은 채 이후 몇 달에 걸쳐 하락분 전체를 지웠습니다.

채굴 난이도 vs 난이도 조정

채굴 난이도는 숫자이고, 난이도 조정은 그 숫자를 바꾸는 사건입니다. 난이도는 2,016개 블록의 한 에포크 전체에서 일정하게 유지되는 값이므로, 그 에포크의 모든 블록은 다른 모든 블록과 정확히 같은 난이도를 가집니다. 조정은 에포크 경계에서 일어나는 재계산이며, 채굴업자들이 주시하는 대상입니다. 장비당 수익이 바뀌는 순간이기 때문입니다. 화요일에 난이도가 올랐다고 말하는 것은 그 화요일에 조정이 일어났다고 말하는 줄임말입니다.

채굴 난이도 vs 목표 기준값

채굴 난이도는 사람을 위한 편의이고, 소프트웨어가 강제하는 것은 목표값입니다. 목표값은 블록 해시가 그 아래로 내려와야 하는 실제 256비트 상한이며, 모든 블록 헤더에 nBits 필드로 압축되어 나타납니다. 난이도는 이를 나눠서 도출되며 블록 어디에도 나타나지 않습니다. 어떤 기사 제목이 난이도가 5% 올랐다고 말할 때, 그 바탕의 변화는 목표값이 약 5% 작아진 것이고, 지구상의 모든 채굴업자가 블록당 약 5% 더 많은 시도를 조용히 필요로 하게 된 것입니다.

혼동하기 쉬운 용어

자주 묻는 질문

난이도가 높아지면 제 트랜잭션의 확인이 더 느려집니까?

아닙니다. 난이도는 블록이 지나치게 빨리 도착했기 때문에 정확히 상승하며, 이 조정은 평균을 다시 10분으로 되돌립니다. 확인이 느려지는 것은 반대의 경우, 즉 해시레이트가 이탈했는데 난이도가 아직 그에 맞게 하락하지 않았을 때입니다.

난이도가 낮아질 수 있습니까?

예, 그리고 급격히 낮아진 적이 있습니다. 단일 조정 기준 최대 하락은 중국이 자국의 채굴 산업을 축출한 뒤인 2021년 7월 3일에 있었던 27.94%였으며, 원칙적으로 한 번의 조정으로 채굴이 네 배 더 쉬워질 수 있습니다.

난이도를 얼마로 해야 하는지는 누가 결정합니까?

아무도 결정하지 않습니다. 모든 노드가 동일한 산술 방식으로 이전 2,016개 블록의 타임스탬프에서 같은 값을 계산하며, 난이도가 잘못된 블록은 거부됩니다. 위원회도, 투표도, 수동 재정의도 없습니다.

다음에 읽을 글

관련 용어

채굴과 합의 분야의 다른 용어

이 페이지를 영어로 읽기