Support for Minexcoin (#529)
This commit is contained in:
parent
221f1222a6
commit
83732af4fe
@ -17,7 +17,7 @@ Version 1.6.1 (in progress)
|
|||||||
* cleaner mempool and notification handling
|
* cleaner mempool and notification handling
|
||||||
* aiohttp min version requirement raised to 2.0
|
* aiohttp min version requirement raised to 2.0
|
||||||
* onion peers are ignored if no tor proxy is available
|
* onion peers are ignored if no tor proxy is available
|
||||||
* add Motion coin (ocruzv)
|
* add Motion coin (ocruzv), MinexCoin (joesixpack)
|
||||||
|
|
||||||
Version 1.6 (19 July 2018)
|
Version 1.6 (19 July 2018)
|
||||||
===========================
|
===========================
|
||||||
|
|||||||
@ -1923,3 +1923,52 @@ class Monoeci(Coin):
|
|||||||
'''Given a header return the hash.'''
|
'''Given a header return the hash.'''
|
||||||
import x11_hash
|
import x11_hash
|
||||||
return x11_hash.getPoWHash(header)
|
return x11_hash.getPoWHash(header)
|
||||||
|
|
||||||
|
|
||||||
|
class MinexcoinMixin(object):
|
||||||
|
STATIC_BLOCK_HEADERS = True
|
||||||
|
BASIC_HEADER_SIZE = 209
|
||||||
|
DESERIALIZER = lib_tx.DeserializerEquihash
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def electrum_header(cls, header, height):
|
||||||
|
version, = struct.unpack('<I', header[:4])
|
||||||
|
timestamp, bits = struct.unpack('<II', header[100:108])
|
||||||
|
|
||||||
|
return {
|
||||||
|
'block_height': height,
|
||||||
|
'version': version,
|
||||||
|
'prev_block_hash': hash_to_hex_str(header[4:36]),
|
||||||
|
'merkle_root': hash_to_hex_str(header[36:68]),
|
||||||
|
'timestamp': timestamp,
|
||||||
|
'bits': bits,
|
||||||
|
'nonce': hash_to_hex_str(header[108:140]),
|
||||||
|
'solution': hash_to_hex_str(header[140:209]),
|
||||||
|
}
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def block_header(cls, block, height):
|
||||||
|
'''Return the block header bytes'''
|
||||||
|
deserializer = cls.DESERIALIZER(block)
|
||||||
|
return deserializer.read_header(height, 140)
|
||||||
|
|
||||||
|
|
||||||
|
class Minexcoin(MinexcoinMixin, Coin):
|
||||||
|
NAME = "Minexcoin"
|
||||||
|
SHORTNAME = "MNX"
|
||||||
|
NET = "mainnet"
|
||||||
|
P2PKH_VERBYTE = bytes.fromhex("4b")
|
||||||
|
P2SH_VERBYTES = [bytes.fromhex("05")]
|
||||||
|
WIF_BYTE = bytes.fromhex("80")
|
||||||
|
GENESIS_HASH = ('490a36d9451a55ed197e34aca7414b35'
|
||||||
|
'd775baa4a8e896f1c577f65ce2d214cb')
|
||||||
|
DESERIALIZER = lib_tx.DeserializerEquihash
|
||||||
|
TX_COUNT = 327963
|
||||||
|
TX_COUNT_HEIGHT = 74495
|
||||||
|
TX_PER_BLOCK = 5
|
||||||
|
RPC_PORT = 8022
|
||||||
|
CHUNK_SIZE = 960
|
||||||
|
PEERS = [
|
||||||
|
'elex01-ams.turinex.eu s t',
|
||||||
|
'eu.minexpool.nl s t'
|
||||||
|
]
|
||||||
|
|||||||
26
tests/blocks/minexcoin_mainnet_170999.json
Normal file
26
tests/blocks/minexcoin_mainnet_170999.json
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user