제가 오늘까지 공부하고 있는 비트코인 난이도에 대해서 한 번 정리해 보겠습니다.
난이도를 알기 위해서 일단
1)채굴과
2) 난이도 계산으로 나누어 봅니다.
1. 비트코인 시스템에서 채굴이란?
"특정 조건을 충족시키는 (암호값)을 찾아 내는 행위"
만일 한 블럭의 해시값을 찾아냈다는 것은 다음 채굴자가 찾아내야 할 주소 하나를 완성시킨 것이라고 생각하면 되겠습니다. 무슨 말이냐면, 갑돌이가 오늘 27만 번째 블럭을 찾아냈다면 갑돌이가 찾아낸 27만 번째 블럭은 1에서 26만9천999개의 블럭 주소를 알고 있다는 것이 됩니다. 또한 내일 순돌이가 찾아낼 블럭은 갑돌이의 블럭값까지 포함한 다음 암호를 풀어야 하는 것입니다.
그런데 이때, 갑돌이가 찾아낸 블럭정보는 암호화 되어 순돌이에게 전달되는 방식으로 블럭에서 블럭으로 넘어갈 때는 모든 블럭은 다 암호화 된 상태로 넘어갑니다.
즉, 어제 자유게시판에서 어느 분께서 말씀하신 비트코인을 사용하려면 채굴작업이 계속되어야 한다. 그 말씀이 이 내용입니다.
※ 해시는 해시 함수에 의해 알파벳과 아라비아 숫자(alphanumerical)로 표시된 값을 만들어 냅니다.
6d82e9c97e92296111a85610a1c3d891ad4390df17550d0b0a3cd95294db3
그런데 잠깐 여기에서 채굴된 해시값(거래에서 사용될 해시)와 채굴할 해시값의 형태가 다릅니다.
채굴자는
1) 현 블럭의 해시 값
2) 거래내역 해시값들
3) 각 연결고리를 이어줄 정보까지 포함하여 Target 이라고 블리는 해시 첫 부분의 "0" 을 가진 해시값을 찾아내야 합니다.
즉, 찾아내야 할 해시값 앞에 "0" 이 많아지면 난이도가 상승하는 것이고 줄어들면 난이도가 하락합니다.
일단 이렇게 간단하게 정리한 후 난이도 설명으로 넘어가겠습니다.
비트코인의 블럭 채굴은 앞서 잠깐 설명한 것과 같이 기존 비트코인이 정상 비트코인인지에 대한 검증의 역활을 수행하고 또 아직 생성되지 않은 블럭을 생성함으로서 다음 비트코인이 채굴될 수 있도록 연결 매개체 역활을 하게 되며, 이에 대한 보상으로
1~21만개 블럭까지는 1블럭마다 50 BTC 지급
21~42만개 블럭까지는 보상금이 50% 감소하여 25BTC 지급됩니다.
즉, 설계 당시부터 21만개의 단위마다 50%씩 감소되도록 설계되어 있습니다.
블럭체인에서 표시되고 있는 블럭수 참고해 보면 글을 작성하고 있는 시각 275,532의 블럭이 생성되고 있군요.
그렇다면 (21만 * 50btc)은 이미 채굴됐고 25개씩 지급되는 블럭이 65,532개 채굴됐으니 현재 비트코인의 총수는
(21만 * 50btc = 10,500,000) + (65,532*25=1,638,300) =12,138,300 개의 비트코인이 채굴된 상황입니다.
그런데 난이도 조절을 어떻게 하냐면 서두에 "Target 이라고 블리는 해시 첫 부분의 "0" 을 수"를 가감하여 난이도를 약 10분 만에 문제가 풀리도록 조절되는데 이 첫 부분의 'zero'를 2주마다 업데이트 되도록 하여 난이도를 조절합니다.
2. 난이도 설계
2주 = 2,016개 블럭생성
사토시는 비트코인 설계당시 약 2주에 2,016개가 채굴되기를 원했는데..
2013년 1월 13일 이후부터 난이도 갱신기간은 평균 11.46일로 18% 난이도 상승주기가 짧아졌습니다.
지금 채굴하시는 분들은 2단계, 즉 10분에 25개의 비트코인을 얻을 수 있는 구간에서 채굴작업을 하고있으며..
이 보상기준에 해당하는 시간은 다음 50%감소 구간인 42만개 까지이니
42만 = 기존채굴 27만5천 = 남은량 14만44..
10분 = 1개블럭 (25비트코인)
1시간 =6개 블럭
24시간(하루) = 144블럭
2주일 = 2016블럭
한 달 = 4,380블럭
이런 계산으로 25개의 보상을 받을 수 있는 기간은 32개월이 남았습니다.
(..습니다만 현재 14일 보다 빠른 12일 정도 걸리고 있으니 1블럭 25개의 비트코인을 받는 구간은 훨씬 더 빨리 소멸 될 것 같습니다.. 즉 채굴사업도 2년 내에 더욱 어려워 진다는 것이죠)
자, 그럼 2주 후 다음 난이도는 올라갈 것인가? 내려갈 것인가? 유추해 보려면..
현 시각 채굴되는 블럭수와 하루 후 채굴된 블럭수의 블럭수를 비교해 보는 방법이 있습니다.
아래 사이트에서현재 1블럭 생성시간이 7.7분 소요되고 있군요.
즉 다음 난이도는 현재 생성되는 시간이 그대로 유지된다는 가정하에
10분 소요되야 하는데 7.7분이 소요되고 있으니 29.87% 상승을 유추해 볼 수 있습니다. (산수 틀려서 수정함)
하기 사이트에서는 다음 난이도를 30%로 예측중
자료출처: https://www.ddengle.com/board_free/160514 시간의지문님이 작성하신 글입니다.