비트코인과 난이도 개념

비트코인은 채굴에 난이도란 것이 설정되어 있습니다
암호를 풀면 블록이 발행되는데
그 암호를 푸는데 모든 네트워크가 참여했을때
10분이 걸리도록 설정한 것이죠

이는 초저속 인터넷 속도를 자랑하는 오지의 사람들까지
블록이 골고루 전파되는 시간을 고려한 것입니다.
또한 빠른 블록생성은 전파시간과의 괴리로 인해
체인분리.. 즉 포크를 더욱 자주 발생시키므로
하나의 체인으로 확정되기까지 더 많은 확인이
필요하게 됩니다.

예를들어

미쿡 뉴욕에서 제이슨이 블록을 하나 만드는데
성공하여 주위의 축하를 받으며 전세계로 나눠줍니다

하지만 전라남도 완도군 약산면 한옥마을에
블록이 배달되기전
김영감(89)이 수제블록을 완성하게 됩니다.

김영감은 수제블록을 마을 사람에게 골고루 돌리죠
마을사람들은 이미 새블록을 받았으므로 제이슨의 블록은
똥통으로 들어가게 됩니다.

그렇게 되면 뉴욕과 산골마을간에
블록체인이 일시적 분리(포크)가 됩니다.

이게 10분에 한번 만들어질 난이도라면
김영감이 블록을 완성 못한 시점에 제이슨 블록이
배달될 확률이 크지만
1분짜리라면 배달오기전에 영감블록이 나눠져서
일시적 체인분리가 발생하겠죠

이러한 일시적 체인분리는
사실 그다지 심각한 문제는 아닙니다
지갑프로그램이 금새 하나로 통합해줍니다
약육강식 으로..
즉 더 많은 이들이 인정하는 것으로 통합해주니까
산골마을 것은 버려지겠죠

다만 이 버려진다는 것이 좀 문제입니다.
계속 수제블록을 만들어 이어붙이던
김영감은 어느날 청천벽력같은 소리를 듣게 됩니다
제이슨류 블록체인이 채택되어서
영감님껀 죄다 똥통에 들어갔다는 소식이죠.

지금까지 만든게 전부 쓰레기가 됐다는 소리입니다

즉 이러한 쓸데없는 노동력의 낭비를
막고자하는 이유도 있습니다.
물론 더 짧은 블록타임은 여러 이점도 많습니다

여튼 이렇게 블록타임을 일정하게 하기 위해서
블록을 풀어내는 암호의 난이도를 조절합니다

조절법은 간단합니다

일단 문제를 내어보고
그걸 10분보다 빨리 풀면 난이도를 올리고
10분보다 늦게 풀면 난이도를 낮추는 겁니다

비트코인의 경우 난이도 조정을 2주마다 합니다
2주는 20160분이므로
1개의 블록을 10분에 풀것을 염두에 두면
2016개의 블록을 기준으로 하죠.

다시 정리하면

2016개의 블록을 발행한 시점에서
타임체크를 실시,
2주보다 빨리 걸렸으면 난이도 상승
2주보다 늦게 걸렸으면 난이도 하락

이 되는 것입니다.

이때 채굴을 일부러 중단해서 난이도를 0으로
만들거나 채굴이 불가능할 정도로 높아지는 걸 막기위해
1회 변경 상한선이 존재합니다.
지금 당장 거의 모든 채굴자가 사라져서
2주에 한개 캐는 수준이 되더라도
난이도가 그 정도로 낮아질려면 1회에는 불가능하고
여러번에 걸쳐 몇달이 걸린다는 것이죠

근데 우지한이 같은 작자는 이걸 이용해서
장난질을 치기도 합니다.
https://bitcoinwisdom.com/bitcoin/difficulty

위는 비트코인의 난이도 그래프인데
빨간색이 2주동안 유지되는 난이도
파란색,회색이 블록채굴에 걸리는 시간입니다

이전까진 슬슬 오르다가 11월전
채굴역량을 결집하여 난이도를 대폭 올려버립니다

채산성을 악화시켜 많은 채굴자를 bch 치킨코인으로
이동시키고
'이런 난이도에서 우리가 빠지면 어케될까 응?'
이라고 슬금슬금 협박도 했죠.
실제 저렇고 올려놓고 도망쳐서 비트코인 전송속도가
개판이 되기도 했습니다.

뭐 그렇다하더라도 하드포크 해버린다던지 대책도 있고
시장 상황은 난이도가 오르면 결국은 비싸지는
경향이 있으므로 주공격이 되진 않습니다
다만 얘네들이 뭘할려는지
이것처럼 적나라하게 나오는 것도 없으니까
좋은 지표가 되긴하죠

이상 오랜만의 포스팅이네요
오버워치하다 감기 걸려서 -ㅅ-;;
이제 다시 슬슬 포스팅해야겠슴다 ㅎㅎ

H2
H3
H4
3 columns
2 columns
1 column
29 Comments