-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy pathXelisHashV2_NiceHash_v1.0.txt
97 lines (85 loc) · 2.49 KB
/
XelisHashV2_NiceHash_v1.0.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
-------------------------------------------------------------------------
NiceHash presents
=========================================================================
XelisHashV2 mining protocol modification v1.0
=========================================================================
I. Introduction & Concept
II. Specifications (RFC)
III. Contact
I. Introduction & Concept
-------------------------
This specification is placing additional restriction for nonce length provided by the pools.
II. Specifications (RFC)
-------------------------
To prevent duplicate shares and properly distribute work load, NiceHash adds additional bytes
to nonceprefix for the miners, which sets nonceprefix to the expected 32 bytes. Pools must provide
nonceprefix of length 31 bytes or less.
Pool traffic:
-> subscribe
{
"id": 1,
"method": "mining.subscribe",
"params": [
"NiceHash/1.0.0"
]
}
<- subscribe response
{
"id": 1,
"error": null,
"result": [
"",
"30c874c31a2f2fbb02dbcb2db0b7a41641b3be88abb9b7f33d6bcc8839ca",
30,
"a8eba492f6bfd72ee3bd0587161aff6a5f05b83b8f4fcb715cb0976f55673a03"
]
}
-> submit
{
"id": 3,
"method": "mining.submit",
"params": [
"xel:ys4peuzztwl67rzhsdu0yxfzwcfmgt85uu53hycpeeary7n8qvysqmxznt0",
"7",
"13639ca53f21df75b94a"
]
}
Miner traffic:
-> subscribe
{
"id": 0,
"method": "mining.subscribe",
"params": [
"Rigel/1.19.3-nicehash"
]
}
<- subscribe response
{
"id": 0,
"error": null,
"result": [
"47dee1473361f8d2677cdbd7e4eb8413",
"b94a30c874c31a2f2fbb02dbcb2db0b7a41641b3be88abb9b7f33d6bcc8839ca",
32,
"a8eba492f6bfd72ee3bd0587161aff6a5f05b83b8f4fcb715cb0976f55673a03"
]
}
-> submit
{
"id": 36,
"method": "mining.submit",
"params": [
"",
"00000000ec3f3fa7",
"13639ca53f21df75"
]
}
In the provided traffic example, the pool provides nonceprefix "30c874c31a2f2fbb02dbcb2db0b7a41641b3be88abb9b7f33d6bcc8839ca"
which is 30 bytes long. NiceHash prepends additional bytes, "b94a", prior sending nonceprefix to the miners to
match the expected 32 bytes long nonceprefix. Miner submits nonce "13639ca53f21df75" which is 8 bytes long. Prior sending submit
to the pool, NiceHash appends additional bytes, "b94a", to the submit nonce, making it 10 bytes long. The sum of pool nonceprefix
and pool submit nonce size is always 40 bytes.
III. Contact
-----------
www.nicehash.com