@@ -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
11921272class Dogecoin (AuxPowMixin , Coin ):
11931273 NAME = "Dogecoin"
0 commit comments