세계적으로 여러 마이닝 풀들이 존재합니다.
각 풀들별로 특징들이 다 다르죠.
간단하게는 수수료 정책부터 시작해서 Reward 방식, Difficulty 변경 여부 등..
그 중에서도 Share Reward 방식 중 몇 가지에 대해 알아보려고 합니다.
대표적으로 많이 사용되는 PPS, PPLNS, PPLNSG, Score, CPPSRB, Prop.에 대해 알아보도록 하겠습니다.
1. PPS (Pay Per Share)
Worker가 유효한 Share를 만들어낼 때 마다 지불하는 방식입니다.
1Share 당 가격은 25BTC/difficulty에서 수수료를 뺀 값으로 계산됩니다.
이는 1Share당 기대값이기 때문에 Pool 운영자 입장에서는 Pool Luck이 나쁠 때를 대비하기 위한 Buffer를 만들어 둬야 하기 때문에 수수료가 다른 방식들에 비해 비교적 높습니다.
장점 : Share를 만든 직후에 바로 돈이 올라가는 게 보입니다. Pool Luck이 나쁠 때에도 그보다 높은 가격을 받을 수 있습니다.
단점 : 다른 방식에 비해 수수료가 높다.
2. PPLNS (Pay Per Last N Shares)
Share들이 들어온 순서대로 줄을 세웁니다.
그리고 Block의 채굴에 성공한다면 비트코인이 쌓입니다.
쉐어가 N개가 되는 순간 쌓인 비트코인을 N으로 나누어 Miner들에게 나누어줍니다.
Pool Luck에 따른 손익을 전체가 아닌 부분적으로 처리하려는 목적인 것 같습니다.
이 때, N은 Block과 정확히 일치하지 않을 수 있습니다.
가령 N이 20이라고 하고, 각 Block 당 2~3개의 Share로 이루어져 있다고 하고 총 벌어들인 Block의 수가 8개라고 하면
1~7번째 Block에서 1~19번째 Share를 가진다 할 때
20번째 Share가 처리되는 순간 7개의 Block의 비트코인이 20개의 Share로 나뉘어 분배됩니다.
그리고 21, 22번쨰 Share에 8번째 Block이 채굴된다면
8번째 Block의 Share 중 첫번째 Share는 1~7번째 Block의 가격의 기여에 속하고, 8번째 Block의 2,3번째 Share는 8~14(다음 N=20 개가 되는 시점의 Block 번호)번째 Block의 기여분으로 계산됩니다.
장점 : Pool Luck이 좋으면 더 받을 수 있다.
단점 : N개가 쌓일 때 까지 기다려야 한다. Pool Luck이 나쁘면 낮게 받는다. 같은 Block에 대한 Share라도 가격이 다를 수 있다.
3. PPLNSG (Pay Per Last N Group)
PNS와 기본 방식은 같습니다.
하지만 PPLNSG는 정해진 N으로 자르는 것이 아니라, 정해진 N이 지나고 Block이 채굴 완료 되는 Shares까지 묶어서 지불된다고 생각하시면 됩니다.
PPLNS의 예에서, 1~7Block은 1개의 그룹으로 묶여 있습니다.
그리고 N=20일 때 8번째 Block의 채굴이 진행중이므로, 8번째 Block의 채굴이 끝난 22번째 Share까지 하나의 그룹으로 묶여서 지불됩니다.
즉, 1~7 Blcok이 아닌 1~8 Block이 한 그룹으로 묶여서 8개 Block의 코인에 해당하는 돈을 22로 나누어 각 miner들에게 지불되는 것입니다.
장점 : Pool Luck이 좋으면 더 받는다.
단점 : Pool Luck이 나쁘면 덜 받는다. N개의 Group이 모두 모일 때 까지 기다려야 한다.
4. Score
Slush's Pool에서 사용하는 방식입니다.
score += exp(t/C) 로 계산됩니다.
이게 무슨 말이냐 하면, 채굴이 시작한 시각으로 부터 경과한 시간에 따라 기하급수적으로 증가한다는 이야깁니다.
C=10분=600초라고 두고, Pool에 채굴하는 사람들의 채굴 속도는 모두 동일하다고 가정하고 10명이 존재한다고 가정합시다.
만약 0:00:00에 채굴이 시작되었고, 당신이 1초 후에 1 Share를 만들어낸다면, 당신의 Score는 exp(1/600)입니다.
이 때 다른 사람들은 10명이 있다고 가정하면 현재 총 Score는 10*exp(1/600) 이 됩니다.
2초 째 10명이 또 1 Share를 만들어 냈습니다.
그렇다면 당신의 Share는 exp(1/600)+exp(2/600)이고 총 Share는 10*(exp(1/600)+exp(2/600))입니다.
그런데 당신이 컴퓨터를 59분동안 꺼두었고 다른 사람들은 모두 채굴을 시행하고 있다고 가정하면
59분 59초 째의 당신의 Share는 exp(1/600) + exp(2/600)이고
전체 Score는 exp(1/600) + exp(2/600)+9(exp(1/600) + exp(2/600)+exp(3/600)+....+exp(3599/600))이 될 것입니다.
그리고 이 순간 Block이 채굴에 성공하였다고 가정하고
당신의 지분을 계산하면, 2.0100입니다.
전체 지분은 2171298.068이고 당신의 지분은 9.2571E-7 입니다.
0.0000000925만큼의 지분을 가지고 있다는 소립니다.
분명 처음할 때만 해도 (2초간) 1/10의 지분을 갖고 있었는데 고작 1시간 꺼뒀다고 거의 0이 되어버린겁니다.
(1 Block에 25비트코인을 준다고 가정하고, 1BTC=150만원이라고 가정하면 2초까지만 해도 4백만원을 가질 수 있는 것을 1시간이 지나서 35원으로 만들어버리신것이라고 이해하면 됩니다.)
하지만 만약에 당신이 59분 58초에 들어와서 1 Share을 만들어낸다면?
당신의 Share = 2+402 => 지분 : 0.000185142
마지막 1초에 획득한 Share의 지분은 처음 2초동안 얻어낸 지분의 401배가 됩니다.
즉, 가장 좋은 경우는 자신의 Share가 Blcok 채굴을 끝내는 것입니다.
그리고 1시간이 지나면 표준화가 됩니다.
표준화가 정확히 어떻게 되는지는 모르겠는데, 대충 봤을 때 1시간이 지날 때 마다 exp(3600/600)로 나누어 주는 것 같습니다.
장점 : 마지막에 채굴할 수록 가중치가 부여된다.
단점 : 초반에 채굴한 Share에 대해서는 보상을 받지 못할 수도 있다.
5. CPPSRB (Capped Pay Per Share with Recent Backpay)
PPS가 정해져 있는데 대신 보상 시기가 Block을 획득한 후 입니다.
획득 후에 줄 수 있는 PPS만큼은 모두 나누어 주고 만약 Pool Luck이 나빠서 코인이 모자라게 된다면 기록을 남겨뒀다가 다음번에 코인을 얻으면 그 때 지급하는 것이고, 만약 Pool Luck이 좋아서 모두 지불하고도 코인이 남는다면 다음 번 보상 지불을 위해 이월시키는 방식입니다.
장점 : Pool Luck이 나빠도 정해진 PPS는 보장받을 수 있다.
단점 : Block이 획독된 후에 보상이 이루엉진다. Pool Luck이 나쁜 경우 보상이 지연될 수 있다.
6. Prop. (Propotional)
비율에 따라 지불하는 방식입니다.
가장 계산하기 쉽습니다.
그냥 자기가 기여한 Share/전체 Share 한 만큼의 코인을 지급합니다.
장점 : 기여한만큼 번다는 느낌이 강하다.
단점 : Pool Luck에 영향을 많이 받는다.
Miner별 추천하는 Reward 방식
1. 채굴을 오래 하시는 분
채굴을 오래하시는 분들은 PPS는 비추입니다.
수수료가 은근히 높기 때문에 2,3,5,6을 추천해드립니다.
이들의 경우는 Pool Luck의 영향을 많이 받긴 하지만 채굴을 오래하면 어차피 Pool Luck이 좋을 때도 있고 나쁠 때도 있기 때문에 결국 평균적으로는 수수료를 제한 PPS단가보다는 높게 나옵니다.
2. 채굴 속도가 빠르신분
Score 추천해드립니다.
채굴속도가 빠르면 Block이 발견되는 시점과 본인의 마지막 채굴 시각 사이의 간격이 적기 때문에 본인의 기여를 더 크게 만들 수 있습니다.
3. 채굴을 적게 하시는 분, 안정적인 것을 원하시는 분
PPS를 추천드립니다.
비록 수수료가 약간 더 세긴 하지만 Pool Luck이 최악인 경우에도 PPS 단가 만큼은 보장해주기 때문에 잠깐 동안 채굴을 하시거나 안정적인 것을 추구하시는 분들에게는 PPS가 적절합니다.