Merge pull request #7 from bart-is/master
Fixed calculating user share target by using bignum
This commit is contained in:
commit
070d7c2f2a
@ -86,13 +86,13 @@ var JobManager = module.exports = function JobManager(options){
|
|||||||
var diffDividend = (function(){
|
var diffDividend = (function(){
|
||||||
switch(options.algorithm){
|
switch(options.algorithm){
|
||||||
case 'sha256':
|
case 'sha256':
|
||||||
return 0x00000000ffff0000000000000000000000000000000000000000000000000000;
|
return '00000000ffff0000000000000000000000000000000000000000000000000000';
|
||||||
case 'scrypt':
|
case 'scrypt':
|
||||||
case 'scrypt-jane':
|
case 'scrypt-jane':
|
||||||
return 0x0000ffff00000000000000000000000000000000000000000000000000000000;
|
return '0000ffff00000000000000000000000000000000000000000000000000000000';
|
||||||
case 'quark':
|
case 'quark':
|
||||||
case 'x11':
|
case 'x11':
|
||||||
return 0x000000ffff000000000000000000000000000000000000000000000000000000;
|
return '000000ffff000000000000000000000000000000000000000000000000000000';
|
||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
|
|
||||||
@ -214,7 +214,7 @@ var JobManager = module.exports = function JobManager(options){
|
|||||||
blockHash = util.reverseBuffer(util.doublesha(headerBuffer)).toString('hex');
|
blockHash = util.reverseBuffer(util.doublesha(headerBuffer)).toString('hex');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
var targetUser = bignum(diffDividend / difficulty);
|
var targetUser = bignum(diffDividend, 16).div(difficulty);
|
||||||
if (headerBigNum.gt(targetUser)){
|
if (headerBigNum.gt(targetUser)){
|
||||||
return shareError([23, 'low difficulty share']);
|
return shareError([23, 'low difficulty share']);
|
||||||
}
|
}
|
||||||
@ -245,4 +245,4 @@ var JobManager = module.exports = function JobManager(options){
|
|||||||
return {result: true, error: null, solution: blockHash};
|
return {result: true, error: null, solution: blockHash};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
JobManager.prototype.__proto__ = events.EventEmitter.prototype;
|
JobManager.prototype.__proto__ = events.EventEmitter.prototype;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user