Bitcoin Mining Difficulty - What is it And How Does it Work?

Updated on: May 2nd, 2020
This content has been Fact-Checked.
Bitcoin Mining Difficulty - What is it And How Does it Work?

비트 코인 채굴 어려움이 무엇을 의미하는지 이해하기 전에 광업이 어떻게 작동하는지 알아야합니다. 이전에이 주제를 자세히 다루었 기 때문에 어려움의 다른 뉘앙스에 들어가기 전에 약간의 개요를 제공 할 것입니다. 그 다음에는 광산 난이도가 어떻게 계산되는지, 네트워크의 요구에 맞게 어떻게 변경되는지 살펴보겠습니다.

광업은 어떻게 작동합니까? 1 비트코인을 채굴하는 데 얼마나 걸립니까?

Bitcoin의 네트워크에는 암호로 어려운 퍼즐을 풀기 위해 특수 장비를 사용하는 “광부”라는 몇 가지 특수 노드가 있습니다. 성공하면 BTC 블록 체인에 블록을 성공적으로 추가 할 수 있습니다. 이것이 작동하는 방식입니다.

광부는 mempool 에서 기다리는 트랜잭션을 선택하고이를 해시합니다.

해시 앞에 임의의 16 진수 값을 추가하고 전체 값을 해시합니다.

이 해시는 “난이도”라고 하는 특정 값보다 작아야 합니다.

비트 코인 마이닝 어려움을 결정하는 것은 무엇입니까? BTC 난이도가 증가하는 이유는 무엇입니까?

#1 네트워크 무결성을 유지하기 위해

비트코인 마이닝 난이도는 프로토콜 내에서 마이닝의 용이성에 따라 증가하거나 감소합니다. 기억하세요. 비트코인은 10분의 일정한 블록 시간을 가져야 합니다. 즉, 새로운 BTC를 10 분마다 순환 공급 장치에 주입 할 수 있습니다. 이 타이밍이 비트코인 프로토콜을 변경하지 않는지 확인하려면:

광부가 채굴하기 쉬워지면 네트워크 난이도가 증가합니다.

광부들이 광산하기가 어려워지면 네트워크 난이도를 줄입니다.

비트 코인 네트워크에는 보편적 인 블록 어려움이 있습니다. 모든 유효한 블록은 대상 아래에 해시가 있어야합니다. 마이닝 풀에는 공유 하한을 설정하는 데 어려움이 있습니다.

#2 해시 속도와의 관계

작업 증명 네트워크의 상태를 판단하는 중요한 지표 중 하나는 해시 속도입니다. 간단히 말해, 해시 레이트는 광부가 네트워크 내에서 얼마나 강력한 지 보여줍니다. 비트 코인 네트워크 해시 속도가 높을수록 전반적인 보안 및 속도가 높아집니다. 그러나 이러한 네트워크는 일관된 블록 생산을 위해 해시레이트를 제어해야합니다. 이것이 해시레이트가 높아지면 비트 코인 어려움도 결국 높아져서 광부가 네트워크 내에서 쉽게 채굴하는 것이 더 어려워지는 이유입니다.

반대의 경우도 마찬가지입니다.

비트코인의 해시레이트가 감소하면 네트워크 난이도 줄어들 것입니다. 다음과 같은 이유로 인해 해시 속도가 감소 할 수 있습니다.

비트코인은 현재 난이도가 높기 때문에 광부들이 시스템에서 채굴을 하는 데 어려움을 겪고 있습니다.

BTC의 가격은 내려갔습니다. 그래서 많은 광부들이 채굴을 중단했습니다.

둘 사이의 상관 관계를 이해하기 위해 그래프를 살펴 보겠습니다. 우선, 우리는 해시 속도를 가지고 있습니다.

그 후, 우리는 비트 코인 난이도 차트를 가지고 있습니다:

보시다시피, 둘 사이에는 매우 가까운 상관 관계가 있습니다. 3월 26일 무렵, 네트워크 난이도는 16.55조에서 13.9조로 16% 하락했습니다. 이는 2013년 초부터 네트워크 난이도에서 가장 큰 충돌이었습니다. 왜 이런 일이 일어 났는지 이해하려면 비트 코인 난이도가 떨어지기 직전에 해시 레이트를 어떻게 떨어 뜨렸는지 살펴보십시오. 이 딥은 비트 코인의 가격 추락 때문에 발생하여 많은 광부들이 작업을 중단하도록 강요했습니다.

비트코인은 어떻게 난이도를 계산하나요?

비트코인의 네트워크 난이도는 2016 블록마다 변화합니다. 난이도를 계산하기 위해 네트워크에서 사용하는 공식은 다음과 같습니다.

난이도 = 난이_1_목표/현재_목표

위의 공식에서:

대상은 256 비트 숫자입니다. Bitcoin의 프로토콜에 따라 타겟은 제한된 정확도를 가진 사용자 정의 부동 소수점 유형입니다. Bitcoin 고객은이 사실에 근거하여 어려움을 근사합니다. 이 값을 bdiff 라고도 합니다.

어려움_1_target은 난이도를 측정하는 방법에 따라 다를 수 있습니다. 전통적으로 선행 32 비트가 0이고 나머지는 1 인 해시를 나타냅니다. 사실 이 값은 풀 난이도 또는 pdiff 라고도 합니다.

모든 단일 블록은 비트 코인 난이도의 포장 된 표현을 “비트”라고 불리는 블록에 저장합니다. 이 대상은 일반적으로 0x1b0404cb (리틀 엔디안 순서: cb 04 04 1b) 로 나타납니다.

블록은 미리 결정된 공식을 통해 목표 값을 계산합니다. 예. 위에 주어진 압축 된 대상, 즉 0x1b0404cb. 16 진수 대상은 다음과 같습니다.

세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세번째 세

이제 bdiff와 pdiff를 계산해 보겠습니다.

가능한 가장 높은 대상 (난이_1_target) 은 0x1d00ffff 또는 16진수 형식으로 정의됩니다.

시애드, 시애드, 시애드, 시애드, 시애드, 시애드, 시애드, 시애드, 시애드, 시애드 등

이제 우리는이 값을 알고, 우리는 난이도 = 난이_1_대상/현재 _target 수식을 사용하여 우리의 bdiff를 계산하는 데 사용할 수 있습니다

우리는 이전 섹션에서 정의 한 바와 같이 이제, 현재 타겟은 0x1천000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

따라서 현재의 어려움을 계산하려면 다음을 수행하십시오.

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

= 1630523983은

따라서, bdiff는 16307.420938523983입니다.

이제 pdiff를 계산해 보겠습니다. 마이닝 풀은 잘리지 않은 대상을 사용하는 경향이 있습니다. 이 경우, 피플 풀은 비잘림 없는 대상을 사용하는 경향이 있습니다.

그렇다면 동일한 current_target에 대해, 우리의 pdiff는 다음과 같습니다:

오프라인/오프라인/오프라인/오프라인/오프라인/오프라인/오프

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

= 16307.6697738172

다음은 Bitcoin Wiki에서 가져온 프로그램 코드입니다. 로그로 인해 어려움을 쉽게 계산할 수 있습니다.

#include 이오스트림

#include cmath

인라인 플로트 fast_log (플로트 발)

{

INT* const EXPR = 재 해석 _캐스팅 INT* (및 발);

INT X = *EXP_PTR;

const INT 로그 _2 = ((엑스 23) 과 255) - 128;

x 및 = ~ (255 23);

엑스 += 127 23;

*EXP_PTR = X;

발 = ((-1.0f/3) * 발 + 2) * 발 - 2.0f/3;

반환 ((발 + 로그 2) * 0.69314718f);

}

부동 어려움 (부호없는 int 비트)

{

정적 더블 맥스_바디 = 패스트_로그 (0x00ffff), 스칼라 = 패스트_로그 (256);

반환 특급 (맥스 바디 - 패스트 로그 (비트 및 0x00ffff) + 스칼라 * (0x1d - ((비트 및 0xff000000) 24))));

}

메인 ()

{

표준:: 쿠트 난이도 (0x1b0404cb) 표준:: 끝;

0을 반환합니다.

}

광업 어려움을 어떻게 설정합니까?

광부들은 비트코인을 채굴하기 위해 특수 ASIC 하드웨어를 사용합니다. 이 기계는 매우 빠르며 매 초마다 테트라 해시를 생산합니다. 시스템이 모든 필요한 조건을 만족하는지 여부를 확인하기 위해 모든 것을 열심히 검사하는 것은 극히 비실용적입니다. 이는 광산 풀의 경우 기하급수적으로 적용됩니다. 그들은 매 초마다 비트 코인 광부가 생성 한 모든 해시를 확인할 수 없습니다. 이것이 마이닝 풀에서 “공유 시간”이라는 개념을 사용하는 이유입니다.

이제 비트코인 마이닝 풀이 공유 시간을 5초로 설정했다고 상상해 봅시다. 즉, 광업 풀은 평균적으로 광부에게 5초마다 공유를 제출해야 합니다.

이것이 정확히 어떻게 이루어 집니까?

귀하의 비트코인 마이닝 풀은 모든 광부에게 Share Hiita라는 값을 설정합니다. 광부의 공유 어려움은 개별 해시 속도에 직접 비례합니다. 따라서, 높은 광부의 해시 속도, 높은 자신의 공유 난이도. 아이디어는 광부가 장비를 사용하여 수많은 해시를 생성한다는 것입니다. 목표 공유 난이도를 충족하는 해시를 발견하면 해시를 풀로 보냅니다.

광부들은 어떻게 보상을 받습니까?

수영장에서 광부는 “주당 지불" (PPS) 기준으로 보상됩니다. 이 시스템에서, 광부는 그들이 제출 주식에 대한 보상을받을. 주식의 값은 공유를 발견하는 것이 얼마나 어려운지에 전적으로 의존한다.

이 작동 방식을 살펴 보겠습니다.

개별 해시율이 50 th/s 인 광부라고 가정합니다.

가입 한 광산 풀은 공유 난이도를 1,000,000으로 설정했습니다.

당신이 1,000,000 이상의 주식을 얻는 순간, 당신은 수영장에서 보상을받을 것입니다.

풀은 주식을 너무 빨리 제출하지 않는지 확인하기 위해 어려움을 바꿀 수 있습니다.

이제 새로운 장비를 구입하고 해시 속도를 150 th/s로 높이면 수영장이 어려움을 3,000,000으로 증가시킵니다. 이전에 제출했던 것과 동일한 비율로 주식을 제출하게 됩니다. 그러나 제출한 주식에 대해 이전에 받은 보상의 3배를 받게 됩니다.

풀이 빠른 하드웨어의 경우 더 높은 어려움을 권장하는 이유는 광부의 시스템과 풀 모두에서 네트워크 부하를 줄이기 위해서입니다. 또한 다음 작업 단위를 준비할 때 마이닝 하드웨어의 재시작 지연이 줄어듭니다. 동시에, 수영장은 오래된 주식을 많이 초래할 것이다 너무 높은 난이도를 설정하지 않도록주의해야합니다.

주: 공유 목표 = 1/ 공유 난이도

나카모토의 난이도의 중요성

비트코인의 생태계에 얼마나 심각한 어려움이 있는지 이해하려면 나카모토 합의가 어떻게 작동하는지 알아야합니다. 중앙 집중식 엔티티가없는 광역 네트워크의 경우 합의 프로토콜은 모든 형태의 거버넌스를 유지할 수있는 유일한 방법입니다. 뗏목과 같은 전통적인 합의 알고리즘은 광역 암호 경제 프로토콜을 유지하는 데 이상적이지 않습니다. 이것이 비트 코인의 창시자 인 사토시 나카모토 (Satoshi Nakamoto의 합의를 생각해 낸 이유입니다. 나카모토 합의 중심 교리는 시스템에 참여하려면 가격을 지불해야한다는 것입니다. 작업 증명 (POW), 즉 Bitcoin의 합의 경우 광부는 “작업”으로 가격을 지불합니다. 이 경우 작업은 광부가 비트코인 하나를 채굴하기 위해 소비해야 하는 엄청난 양의 계산 에너지입니다. 이것은 어려움이 오는 곳입니다. 어려움은 비트코인 채굴을 어렵게 만드는 메트릭이며, 이것이 나카모토 합의가 이중 지출 문제를 해결하기 위해 활용하는 것입니다.

이중 지출이란 무엇입니까?

이중 지출은 분산 된 암호 화폐를 만들기위한 모든 시도가 비트 코인 이전에 비참하게 실패한 이유입니다. 간단히 말해, 한 비트 코인이 동시에 두 번 이상 소비 될 수있는 결함입니다. 실제 현금을 처리하는 동안이 문제가 발생하지 않았습니다. 결국, 10 달러짜리 지폐로 물건을 사면, 같은 지폐로 다른 것을 동시에 구입할 수 없습니다. 그렇죠?

그러나 디지털 토큰에는 쉽게 복제 할 수있는 디지털 파일이 있으므로 피할 수없는 이중 지출이 발생합니다. 당신이 상상할 수 있듯이, 이중 지출은 생태계의 경제에 몇 가지 파괴적인 영향을 미칠 수 있습니다:

첫째, 생태계 내에서 동전의 총 공급을 팽창시켜 공급 수요 방정식을 통제 불량 발생시킵니다.

둘째, 누구든지 제한없이 동일한 동전을 사용할 수 있다면 그 통화의 신성화에 대한 사람들의 신앙이 줄어들 것입니다.

비트코인은 모든 거래가 반드시 블록체인에 포함되어야 합니다. 이를 통해 네트워크의 모든 사람이 모든 비트코인을 그 출처로 추적할 수 있습니다. 이러한 높은 수준의 투명성은 아무도 전체 네트워크 알지 못해도 지출을 두 배로 늘릴 수 없도록합니다. 그러나 더 악마 같은 것을 생각해 봅시다. 누군가가 포크 아웃하여 블록 체인을 납치하고 모든 Bitcoins를 두 배로 사용하기로 결정한다고 가정 해보십시오.

그러면 무슨 일이 일어날까요?

음, 네트워크 어려움으로 인해 공격자가 체인을 인수해야하는 자원과 돈의 양은 기하 급수적 일 것입니다. 따라서 시스템의 이익을 상대로 행동하는 것이 경제적으로 가치가 없을 것입니다. 이것이 네트워크 난이도로 Nakamoto Consensus가 네트워크 보안 및 무결성을 유지하는 데 필요한 화력을 제공하는 방법입니다.

결론 - 비트 코인 마이닝 어려움

이 기사에서 많은 가치를 발견했기를 바랍니다. 의문이 생기면 언제든지 저희에게 연락하십시오.

Ameer Rosic
#SerialEntrepreneur, Investor, #Digitalmarketing Adviser and Cofounder of @Blockgks a #blockchain innovation hub

Like what you read? Give us one like or share it to your friends and get +16

0
Hungry for knowledge?
New guides and courses each week
Looking to invest?
Market data, analysis, and reports
Just curious?
A community of blockchain experts to help

Get started today

Already have an account? Sign In