Skip to content
This repository was archived by the owner on Jun 16, 2025. It is now read-only.

Commit 5cd7bcd

Browse files
davidrebandDavid Reband
andauthored
added Doichain testnet, regtest (#1)
* added Doichain testnet, regtest * Testnet und Regtest in coins.py Co-authored-by: David Reband <david.reband@webanizer.de>
1 parent a049a0d commit 5cd7bcd

3 files changed

Lines changed: 83 additions & 1 deletion

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,4 @@ docs/_build
1212
.vscode/
1313
.mypy_cache/
1414
.idea/
15+
/certs

electrumX.egg-info/top_level.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
electrumx

electrumx/lib/coins.py

Lines changed: 81 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1156,7 +1156,7 @@ class Doichain(NameIndexMixin, AuxPowMixin, Coin):
11561156
XPRV_VERBYTES = bytes.fromhex("0488ADE4")
11571157
P2PKH_VERBYTE = bytes.fromhex("34")
11581158
P2SH_VERBYTES = [bytes.fromhex("0d")]
1159-
WIF_BYTE = bytes.fromhex("e4")
1159+
WIF_BYTE = bytes.fromhex("b4")
11601160
GENESIS_HASH = ('000006fdd8b4d786fd9bdde5bae9486c464e3aa4336c5f8415dfdd3fc1679134'
11611161
)
11621162
DESERIALIZER = lib_tx.DeserializerAuxPowSegWit
@@ -1188,6 +1188,86 @@ class Doichain(NameIndexMixin, AuxPowMixin, Coin):
11881188
NAME_DOI_OPS
11891189
]
11901190

1191+
class DoichainTestnet(NameIndexMixin, AuxPowMixin, Coin):
1192+
NAME = "Doichain"
1193+
SHORTNAME = "DOI"
1194+
NET = "testnet"
1195+
XPUB_VERBYTES = bytes.fromhex("0488B21E")
1196+
XPRV_VERBYTES = bytes.fromhex("0488ADE4")
1197+
P2PKH_VERBYTE = bytes.fromhex("6F")
1198+
P2SH_VERBYTES = [bytes.fromhex("C4")]
1199+
WIF_BYTE = bytes.fromhex("EF")
1200+
GENESIS_HASH = ('0000cd7572b3ecc78b7cddf49eda95e718d4df77c236ca2e375125e111e7e9c4'
1201+
)
1202+
DESERIALIZER = lib_tx.DeserializerAuxPowSegWit
1203+
TX_COUNT = 1
1204+
TX_COUNT_HEIGHT = 1
1205+
TX_PER_BLOCK = 10
1206+
RPC_PORT = 18338
1207+
PEERS = [ ]
1208+
BLOCK_PROCESSOR = block_proc.NameIndexBlockProcessor
1209+
1210+
# Name opcodes
1211+
OP_NAME_NEW = OpCodes.OP_1
1212+
OP_NAME_FIRSTUPDATE = OpCodes.OP_2
1213+
OP_NAME_UPDATE = OpCodes.OP_3
1214+
OP_NAME_DOI = OpCodes.OP_10
1215+
1216+
# Valid name prefixes.
1217+
NAME_NEW_OPS = [OP_NAME_NEW, -1, OpCodes.OP_2DROP]
1218+
NAME_FIRSTUPDATE_OPS = [OP_NAME_FIRSTUPDATE, "name", -1, -1,
1219+
OpCodes.OP_2DROP, OpCodes.OP_2DROP]
1220+
NAME_UPDATE_OPS = [OP_NAME_UPDATE, "name", -1, OpCodes.OP_2DROP,
1221+
OpCodes.OP_DROP]
1222+
NAME_DOI_OPS = [OP_NAME_DOI, "name", -1, OpCodes.OP_2DROP,
1223+
OpCodes.OP_DROP]
1224+
NAME_OPERATIONS = [
1225+
NAME_NEW_OPS,
1226+
NAME_FIRSTUPDATE_OPS,
1227+
NAME_UPDATE_OPS,
1228+
NAME_DOI_OPS
1229+
]
1230+
1231+
class DoichainRegtest(NameIndexMixin, AuxPowMixin, Coin):
1232+
NAME = "Doichain"
1233+
SHORTNAME = "DOI"
1234+
NET = "regtest"
1235+
XPUB_VERBYTES = bytes.fromhex("0488B21E")
1236+
XPRV_VERBYTES = bytes.fromhex("0488ADE4")
1237+
P2PKH_VERBYTE = bytes.fromhex("6F") #111
1238+
P2SH_VERBYTES = [bytes.fromhex("C4")] #196
1239+
WIF_BYTE = bytes.fromhex("EF") #239
1240+
GENESIS_HASH = ('0231881e96d6690eb00bb69cd8e221df3564e2cd95829d47d131ed5110a34e9d'
1241+
)
1242+
DESERIALIZER = lib_tx.DeserializerAuxPowSegWit
1243+
TX_COUNT = 1
1244+
TX_COUNT_HEIGHT = 1
1245+
TX_PER_BLOCK = 10
1246+
RPC_PORT = 18332
1247+
PEERS = [ ]
1248+
BLOCK_PROCESSOR = block_proc.NameIndexBlockProcessor
1249+
1250+
# Name opcodes
1251+
OP_NAME_NEW = OpCodes.OP_1
1252+
OP_NAME_FIRSTUPDATE = OpCodes.OP_2
1253+
OP_NAME_UPDATE = OpCodes.OP_3
1254+
OP_NAME_DOI = OpCodes.OP_10
1255+
1256+
# Valid name prefixes.
1257+
NAME_NEW_OPS = [OP_NAME_NEW, -1, OpCodes.OP_2DROP]
1258+
NAME_FIRSTUPDATE_OPS = [OP_NAME_FIRSTUPDATE, "name", -1, -1,
1259+
OpCodes.OP_2DROP, OpCodes.OP_2DROP]
1260+
NAME_UPDATE_OPS = [OP_NAME_UPDATE, "name", -1, OpCodes.OP_2DROP,
1261+
OpCodes.OP_DROP]
1262+
NAME_DOI_OPS = [OP_NAME_DOI, "name", -1, OpCodes.OP_2DROP,
1263+
OpCodes.OP_DROP]
1264+
NAME_OPERATIONS = [
1265+
NAME_NEW_OPS,
1266+
NAME_FIRSTUPDATE_OPS,
1267+
NAME_UPDATE_OPS,
1268+
NAME_DOI_OPS
1269+
]
1270+
11911271

11921272
class Dogecoin(AuxPowMixin, Coin):
11931273
NAME = "Dogecoin"

0 commit comments

Comments
 (0)