From 2143978b1259758a487ce4792ce33813809aa408 Mon Sep 17 00:00:00 2001 From: Milan Rossa Date: Thu, 31 Oct 2019 18:02:58 +0100 Subject: [PATCH 01/22] core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection. --- core/src/trezor/ui/loader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/trezor/ui/loader.py b/core/src/trezor/ui/loader.py index 85b24e911..679dfb99f 100644 --- a/core/src/trezor/ui/loader.py +++ b/core/src/trezor/ui/loader.py @@ -82,7 +82,7 @@ class Loader(ui.Component): display.loader( r, False, Y, s.fg_color, s.bg_color, res.load(s.icon), s.icon_fg_color ) - if r == 0: + if (r == 0) and (self.stop_ms is not None): self.start_ms = None self.stop_ms = None self.on_start() From 18c926a34b31530846c61c254461d2e04a0fe38a Mon Sep 17 00:00:00 2001 From: apollo Date: Thu, 31 Oct 2019 20:18:03 -0300 Subject: [PATCH 02/22] common/defs: fix zcore signing (#669) --- common/defs/bitcoin/zcore.json | 2 +- core/src/apps/common/coininfo.py | 2 +- python/src/trezorlib/coins.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/common/defs/bitcoin/zcore.json b/common/defs/bitcoin/zcore.json index 6a93131c6..97b980737 100644 --- a/common/defs/bitcoin/zcore.json +++ b/common/defs/bitcoin/zcore.json @@ -10,7 +10,7 @@ "address_type_p2sh": 145, "maxfee_kb": 1000000, "minfee_kb": 1000, - "signed_message_header": "ZCore Genesis Block mined by Mosqueiro", + "signed_message_header": "DarkNet Signed Message:\n", "hash_genesis_block": "695b79c8c234b45b2eeb4722f33373e471c9b686ff78efeb39da95f824a9f81b", "xprv_magic": 78791432, "xpub_magic": 78792518, diff --git a/core/src/apps/common/coininfo.py b/core/src/apps/common/coininfo.py index fa42bd6ff..a75b66bad 100644 --- a/core/src/apps/common/coininfo.py +++ b/core/src/apps/common/coininfo.py @@ -1629,7 +1629,7 @@ def by_name(name: str) -> CoinInfo: address_type=142, address_type_p2sh=145, maxfee_kb=1000000, - signed_message_header="ZCore Genesis Block mined by Mosqueiro", + signed_message_header="DarkNet Signed Message:\n", xpub_magic=0x04b24746, xpub_magic_segwit_p2sh=None, xpub_magic_segwit_native=None, diff --git a/python/src/trezorlib/coins.json b/python/src/trezorlib/coins.json index ba341a204..a059f4e9a 100644 --- a/python/src/trezorlib/coins.json +++ b/python/src/trezorlib/coins.json @@ -1 +1 @@ -[{"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": ["https://btc1.trezor.io", "https://btc2.trezor.io", "https://btc3.trezor.io", "https://btc4.trezor.io", "https://btc5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin", "coin_name": "Bitcoin", "coin_shortcut": "BTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin", "negative_fee": false, "segwit": true, "shortcut": "BTC", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 0, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "bcrt", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Regtest", "coin_name": "Regtest", "coin_shortcut": "REGTEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206", "key": "bitcoin:REGTEST", "maintainer": "Thomas Kerin ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Regtest", "negative_fee": false, "segwit": true, "shortcut": "REGTEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": ["https://tbtc1.trezor.io", "https://tbtc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Testnet", "coin_name": "Testnet", "coin_shortcut": "TEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TEST", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Testnet", "negative_fee": false, "segwit": true, "shortcut": "TEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 53, "address_type_p2sh": 55, "bech32_prefix": "acm", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Actinium", "coin_name": "Actinium", "coin_shortcut": "ACM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Actinium-project/Actinium", "hash_genesis_block": "28d77872e23714562f49a1be792c276623c1bbe3fdcf21b6035cfde78b00b824", "key": "bitcoin:ACM", "maintainer": "Harris Brakmic ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Actinium", "negative_fee": false, "segwit": true, "shortcut": "ACM", "signed_message_header": "Actinium Signed Message:\n", "slip44": 228, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "actinium", "website": "https://actinium.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 55, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Axe", "coin_name": "Axe", "coin_shortcut": "AXE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/axerunners/axe", "hash_genesis_block": "00000c33631ca6f2f61368991ce2dc03306b5bb50bf7cede5cfbba6db38e52e6", "key": "bitcoin:AXE", "maintainer": "Kirill Orlov ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Axe", "negative_fee": false, "segwit": false, "shortcut": "AXE", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 4242, "support": {"connect": true, "trezor1": "1.7.3", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "axe", "website": "https://axerunners.com", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 85, "bech32_prefix": "bm", "bip115": false, "bitcore": [], "blockbook": ["https://bellcoin-blockbook.ilmango.work", "https://bell.blockbook.ovh"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Bellcoin", "coin_name": "Bellcoin", "coin_shortcut": "BELL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bellcoin-org/bellcoin", "hash_genesis_block": "000008f3b6bd10c2d03b06674a006b8d9731f6cb58179ef1eee008cee2209603", "key": "bitcoin:BELL", "maintainer": "ilmango-doge ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bellcoin", "negative_fee": false, "segwit": true, "shortcut": "BELL", "signed_message_header": "Bellcoin Signed Message:\n", "slip44": 25252, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bellcoin", "website": "https://bellcoin.web4u.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 6, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BitGreen", "coin_name": "Bitgreen", "coin_shortcut": "BITG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitgreen/bitgreen", "hash_genesis_block": "000008467c3a9c587533dea06ad9380cded3ed32f9742a6c0c1aebc21bf2bc9b", "key": "bitcoin:BITG", "maintainer": "Dennis R ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitGreen", "negative_fee": false, "segwit": false, "shortcut": "BITG", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 222, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "bitg", "website": "https://bitg.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 81, "address_type_p2sh": 5, "bech32_prefix": "bz", "bip115": false, "bitcore": ["https://insight.bitzeny.jp", "https://zeny.insight.monaco-ex.org"], "blockbook": ["https://zny.blockbook.ovh"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "BitZeny", "coin_name": "BitZeny", "coin_shortcut": "ZNY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BitzenyCoreDevelopers/bitzeny", "hash_genesis_block": "000009f7e55e9e3b4781e22bd87a7cfa4acada9e4340d43ca738bf4e9fb8f5ce", "key": "bitcoin:ZNY", "maintainer": "y-chan ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitZeny", "negative_fee": false, "segwit": true, "shortcut": "ZNY", "signed_message_header": "BitZeny Signed Message:\n", "slip44": 123, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitzeny", "website": "https://bitzeny.tech", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://bch1.trezor.io", "https://bch2.trezor.io", "https://bch3.trezor.io", "https://bch4.trezor.io", "https://bch5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": "bitcoincash", "coin_label": "Bitcoin Cash", "coin_name": "Bcash", "coin_shortcut": "BCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash", "negative_fee": false, "segwit": false, "shortcut": "BCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 145, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": "bchtest", "coin_label": "Bitcoin Cash Testnet", "coin_name": "Bcash Testnet", "coin_shortcut": "TBCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TBCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TBCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 23, "bech32_prefix": "btg", "bip115": false, "bitcore": [], "blockbook": ["https://btg1.trezor.io", "https://btg2.trezor.io", "https://btg3.trezor.io", "https://btg4.trezor.io", "https://btg5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold", "coin_name": "Bgold", "coin_shortcut": "BTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTG", "maintainer": "Saleem Rashid ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold", "negative_fee": false, "segwit": true, "shortcut": "BTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tbtg", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold Testnet", "coin_name": "Bgold Testnet", "coin_shortcut": "TBTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "00000000e0781ebe24b91eedc293adfea2f557b53ec379e78959de3853e6f9f6", "key": "bitcoin:TBTG", "maintainer": "The Bitcoin Gold Developers ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold Testnet", "negative_fee": false, "segwit": true, "shortcut": "TBTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 4901, "address_type_p2sh": 5039, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.btcprivate.org"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcoin Private", "coin_name": "Bprivate", "coin_shortcut": "BTCP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": 42, "github": "https://github.com/BTCPrivate/BitcoinPrivate", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:BTCP", "maintainer": "Chris Sulmone ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Bitcoin Private", "negative_fee": false, "segwit": false, "shortcut": "BTCP", "signed_message_header": "BitcoinPrivate Signed Message:\n", "slip44": 183, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoinprivate", "website": "https://btcprivate.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 61, "address_type_p2sh": 123, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook1.bitcoinrh.org", "https://blockbook2.bitcoinrh.org"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Rhodium", "coin_name": "Brhodium", "coin_shortcut": "XRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://gitlab.com/bitcoinrh/BRhodiumNode", "hash_genesis_block": "baff5bfd9dc43fb672d003ec20fd21428f9282ca46bfa1730d73e1f2c75f5fdd", "key": "bitcoin:XRC", "maintainer": "baff5b ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Rhodium", "negative_fee": false, "segwit": false, "shortcut": "XRC", "signed_message_header": "BitCoin Rhodium Signed Message:\n", "slip44": 10291, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin-rhodium", "website": "https://www.bitcoinrh.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3, "address_type_p2sh": 125, "bech32_prefix": "btx", "bip115": false, "bitcore": ["https://insight.bitcore.cc"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcore", "coin_name": "Bitcore", "coin_shortcut": "BTX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/LIMXTEC/BitCore", "hash_genesis_block": "604148281e5c4b7f2487e5d03cd60d8e6f69411d613f6448034508cea52e9574", "key": "bitcoin:BTX", "maintainer": "limxdev ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcore", "negative_fee": false, "segwit": true, "shortcut": "BTX", "signed_message_header": "BitCore Signed Message:\n", "slip44": 160, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcore", "website": "https://bitcore.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 26, "address_type_p2sh": 5, "bech32_prefix": "bst", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BlockStamp", "coin_name": "BlockStamp", "coin_shortcut": "BST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 1000, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BlockStamp/bst", "hash_genesis_block": "8000000049a2e26b0185be50b4b8ed58b707c8893762959f0b1673641cae1828", "key": "bitcoin:BST", "maintainer": "Krzysztof Kuchta ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BlockStamp", "negative_fee": false, "segwit": true, "shortcut": "BST", "signed_message_header": "BST Signed Message:\n", "slip44": 254, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "blockstamp", "website": "https://blockstamp.info", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 30, "bech32_prefix": "cpu", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.cpuchain.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "CPUchain", "coin_name": "CPUchain", "coin_shortcut": "CPU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/cpuchain/cpuchain", "hash_genesis_block": "000024d8766043ea0e1c9ad42e7ea4b5fdb459887bd80b8f9756f3d87e128f12", "key": "bitcoin:CPU", "maintainer": "Min Khang Aung ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "CPUchain", "negative_fee": false, "segwit": true, "shortcut": "CPU", "signed_message_header": "CPUchain Signed Message:\n", "slip44": 363, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "cpuchain", "website": "https://cpuchain.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 35, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.capricoin.org", "https://blockbook2.capricoin.org", "https://blockbook3.capricoin.org", "https://blockbook4.capricoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Capricoin", "coin_name": "Capricoin", "coin_shortcut": "CPC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7, "High": 20, "Low": 1, "Normal": 14}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Capricoinofficial/Capricoin", "hash_genesis_block": "00000d23fa0fc52c90893adb1181c9ddffb6c797a3e41864b9a23aa2f2981fe3", "key": "bitcoin:CPC", "maintainer": "Jozef Knaperek ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Capricoin", "negative_fee": false, "segwit": false, "shortcut": "CPC", "signed_message_header": "Capricoin Signed Message:\n", "slip44": 289, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.10", "webwallet": false}, "uri_prefix": "capricoin", "website": "https://capricoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 95495, "address_type_p2sh": 95473, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight-01.crownplatform.com", "https://insight-02.crownplatform.com", "https://insight-03.crownplatform.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Crown", "coin_name": "Crown", "coin_shortcut": "CRW", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Crowndev/crowncoin", "hash_genesis_block": "0000000085370d5e122f64f4ab19c68614ff3df78c8d13cb814fd7e69a1dc6da", "key": "bitcoin:CRW", "maintainer": "Ashot ", "max_address_length": 40, "maxfee_kb": 2000000, "min_address_length": 36, "minfee_kb": 1000, "name": "Crown", "negative_fee": false, "segwit": false, "shortcut": "CRW", "signed_message_header": "Crown Signed Message:\n", "slip44": 72, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": false}, "uri_prefix": "crown", "website": "https://crownplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://dash1.trezor.io", "https://dash2.trezor.io", "https://dash3.trezor.io", "https://dash4.trezor.io", "https://dash5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash", "coin_name": "Dash", "coin_shortcut": "DASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000ffd590b1485b3caadc19b22e6379c733355108f107a430458cdf3407ab6", "key": "bitcoin:DASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dash", "negative_fee": false, "segwit": false, "shortcut": "DASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 5, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash Testnet", "coin_name": "Dash Testnet", "coin_shortcut": "tDASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000bafbc94add76cb75e2ec92894837288a481e5c005f6563d91623bf8bc2c", "key": "bitcoin:tDASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Dash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tDASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 1855, "address_type_p2sh": 1818, "bech32_prefix": null, "bip115": false, "bitcore": ["https://mainnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred", "coin_name": "Decred", "coin_shortcut": "DCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "298e5cc3d985bfe7f81dc135f360abe089edd4396b86d2de66b0cef42b21d980", "key": "bitcoin:DCR", "maintainer": "Alex Yocom-Piatt ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 10000, "name": "Decred", "negative_fee": false, "segwit": false, "shortcut": "DCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 42, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 50177256, "xpub_magic": 50178342, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3873, "address_type_p2sh": 3836, "bech32_prefix": null, "bip115": false, "bitcore": ["https://testnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred Testnet", "coin_name": "Decred Testnet", "coin_shortcut": "TDCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "a649dce53918caf422e9c711c858837e08d626ecfcd198969b24f7b634a49bac", "key": "bitcoin:TDCR", "maintainer": "Saleem Rashid ", "max_address_length": 35, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Decred Testnet", "negative_fee": false, "segwit": false, "shortcut": "TDCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 70615959, "xpub_magic": 70617041, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 63, "bech32_prefix": "dgb", "bip115": false, "bitcore": [], "blockbook": ["https://dgb1.trezor.io", "https://dgb2.trezor.io"], "blocktime_seconds": 15, "cashaddr_prefix": null, "coin_label": "DigiByte", "coin_name": "DigiByte", "coin_shortcut": "DGB", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/digibyte/digibyte", "hash_genesis_block": "7497ea1b465eb39f1c8f507bc877078fe016d6fcb6dfad3a64c98dcc6e1e8496", "key": "bitcoin:DGB", "maintainer": "DigiByte ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "DigiByte", "negative_fee": false, "segwit": true, "shortcut": "DGB", "signed_message_header": "DigiByte Signed Message:\n", "slip44": 20, "support": {"connect": true, "trezor1": "1.6.3", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "digibyte", "website": "https://digibyte.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 30, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://doge1.trezor.io", "https://doge2.trezor.io", "https://doge3.trezor.io", "https://doge4.trezor.io", "https://doge5.trezor.io"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Dogecoin", "coin_name": "Dogecoin", "coin_shortcut": "DOGE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 100000}, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/dogecoin/dogecoin", "hash_genesis_block": "1a91e3dace36e2be3bf030a65679fe821aa1d6ef92e7c9902eb318182c355691", "key": "bitcoin:DOGE", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dogecoin", "negative_fee": false, "segwit": false, "shortcut": "DOGE", "signed_message_header": "Dogecoin Signed Message:\n", "slip44": 3, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dogecoin", "website": "https://dogecoin.com", "xprv_magic": 49988504, "xpub_magic": 49990397, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 235, "address_type_p2sh": 75, "bech32_prefix": "ert", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Elements", "coin_name": "Elements", "coin_shortcut": "ELEMENTS", "confidential_assets": {"address_prefix": 4, "blech32_prefix": "el"}, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ElementsProject/elements", "hash_genesis_block": "209577bda6bf4b5804bd46f8621580dd6d4e8bfa2d190e1c50e932492baca07d", "key": "bitcoin:ELEMENTS", "maintainer": "Roman Zeyde ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Elements", "negative_fee": false, "segwit": true, "shortcut": "ELEMENTS", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "elements", "website": "https://elementsproject.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 95, "address_type_p2sh": 36, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 180, "cashaddr_prefix": null, "coin_label": "FairCoin", "coin_name": "FairCoin", "coin_shortcut": "FAIR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 800000}, "dust_limit": 500000, "force_bip143": false, "fork_id": 0, "github": "https://github.com/faircoin/faircoin", "hash_genesis_block": "beed44fa5e96150d95d56ebd5d2625781825a9407a5215dd7eda723373a0a1d7", "key": "bitcoin:FAIR", "maintainer": "Santi Nore\u00f1a ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "FairCoin", "negative_fee": false, "segwit": false, "shortcut": "FAIR", "signed_message_header": "FairCoin Signed Message:\n", "slip44": 298, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "faircoin", "website": "https://www.faircoin.world", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 14, "address_type_p2sh": 5, "bech32_prefix": "fc", "bip115": false, "bitcore": ["https://bitcore.feathercoin.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Feathercoin", "coin_name": "Feathercoin", "coin_shortcut": "FTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "duplicate": true, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/FeatherCoin/Feathercoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:FTC", "maintainer": "Lucas Betschart ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Feathercoin", "negative_fee": false, "segwit": true, "shortcut": "FTC", "signed_message_header": "Feathercoin Signed Message:\n", "slip44": 8, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "feathercoin", "website": "https://feathercoin.com", "xprv_magic": 76077806, "xpub_magic": 76069926, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 35, "address_type_p2sh": 94, "bech32_prefix": "flo", "bip115": false, "bitcore": ["https://livenet.flocha.in"], "blockbook": [], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "Flo", "coin_name": "Florincoin", "coin_shortcut": "FLO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/floblockchain/flo", "hash_genesis_block": "09c7781c9df90708e278c35d38ea5c9041d7ecfcdd1c56ba67274b7cff3e1cea", "key": "bitcoin:FLO", "maintainer": "Robert English ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Flo", "negative_fee": false, "segwit": true, "shortcut": "FLO", "signed_message_header": "Florincoin Signed Message:\n", "slip44": 216, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "florincoin", "website": "https://flo.cash", "xprv_magic": 15264107, "xpub_magic": 1526049, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 16, "bech32_prefix": "fc", "bip115": false, "bitcore": [], "blockbook": ["https://explorer.fujicoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Fujicoin", "coin_name": "Fujicoin", "coin_shortcut": "FJC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 20000, "High": 100000, "Low": 10000, "Normal": 50000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/fujicoin/fujicoin", "hash_genesis_block": "adb6d9cfd74075e7f91608add4bd2a2ea636f70856183086842667a1597714a0", "key": "bitcoin:FJC", "maintainer": "motty ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 10000000, "name": "Fujicoin", "negative_fee": false, "segwit": true, "shortcut": "FJC", "signed_message_header": "FujiCoin Signed Message:\n", "slip44": 75, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "fujicoin", "website": "https://fujicoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 10, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gincoin.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "GIN", "coin_name": "Gincoin", "coin_shortcut": "GIN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/gincoin-dev/gincoin-core", "hash_genesis_block": "00000cd6bde619b2c3b23ad2e384328a450a37fa28731debf748c3b17f91f97d", "key": "bitcoin:GIN", "maintainer": "Dragos Badea ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "GIN", "negative_fee": false, "segwit": false, "shortcut": "GIN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 2000, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "gincoin", "website": "https://gincoin.io", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 62, "bech32_prefix": "game", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gamecredits.network"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "GameCredits", "coin_name": "GameCredits", "coin_shortcut": "GAME", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/gamecredits-project/gamecredits", "hash_genesis_block": "91ec5f25ee9a0ffa1af7d4da4db9a552228dd2dc77cdb15b738be4e1f55f30ee", "key": "bitcoin:GAME", "maintainer": "Samad Sajanlal ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "GameCredits", "negative_fee": false, "segwit": true, "shortcut": "GAME", "signed_message_header": "GameCredits Signed Message:\n", "slip44": 101, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "gamecredits", "website": "https://gamecredits.org", "xprv_magic": 27108450, "xpub_magic": 27106558, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 5, "bech32_prefix": "grs", "bip115": false, "bitcore": ["https://groestlsight.groestlcoin.org", "https://grsblocks.com"], "blockbook": ["https://blockbook.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin", "coin_name": "Groestlcoin", "coin_shortcut": "GRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "00000ac5927c594d49cc0bdb81759d0da8297eb614683d3acb62f0703b639023", "key": "bitcoin:GRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin", "negative_fee": false, "segwit": true, "shortcut": "GRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 17, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tgrs", "bip115": false, "bitcore": ["https://groestlsight-test.groestlcoin.org"], "blockbook": ["https://blockbook-test.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin Testnet", "coin_name": "Groestlcoin Testnet", "coin_shortcut": "tGRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "000000ffbb50fc9898cdd36ec163e6ba23230164c0052a28876255b7dcf2cd36", "key": "bitcoin:tGRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tGRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch", "coin_name": "Hatch", "coin_shortcut": "HATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "000000fa6116f5d6c6ce9b60bd431469e40b4fe55feeeda59e33cd2f0b863196", "key": "bitcoin:HATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Hatch", "negative_fee": false, "segwit": false, "shortcut": "HATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 88888888, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch Testnet", "coin_name": "Hatch Testnet", "coin_shortcut": "tHATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "00000bf8b02180fa3860e3f4fbfaab76db14fbfd1323d1d3ad06d83b828b6644", "key": "bitcoin:tHATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Hatch Testnet", "negative_fee": false, "segwit": false, "shortcut": "tHATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 8329, "address_type_p2sh": 8342, "bech32_prefix": null, "bip115": true, "bitcore": ["https://explorer.horizen.global"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Horizen", "coin_name": "Horizen", "coin_shortcut": "ZEN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ZencashOfficial/zen", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:ZEN", "maintainer": "Power_VANO ", "max_address_length": 95, "maxfee_kb": 2000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Horizen", "negative_fee": false, "segwit": false, "shortcut": "ZEN", "signed_message_header": "Zcash Signed Message:\n", "slip44": 121, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "horizen", "website": "https://www.horizen.global", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 60, "address_type_p2sh": 85, "bech32_prefix": null, "bip115": false, "bitcore": ["https://api.kmd.dev"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Komodo", "coin_name": "Komodo", "coin_shortcut": "KMD", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/komodoplatform/komodo", "hash_genesis_block": "027e3758c3a65b12aa1046462b486d0a63bfa1beae327897f56c5cfb7daaae71", "key": "bitcoin:KMD", "maintainer": "Kadan Stadelmann ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Komodo", "negative_fee": true, "segwit": false, "shortcut": "KMD", "signed_message_header": "Komodo Signed Message:\n", "slip44": 141, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "komodo", "website": "https://komodoplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 6198, "address_type_p2sh": 6203, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.kotocoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Koto", "coin_name": "Koto", "coin_shortcut": "KOTO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/KotoDevelopers/koto", "hash_genesis_block": "6d424c350729ae633275d51dc3496e16cd1b1d195c164da00f39c499a2e9959e", "key": "bitcoin:KOTO", "maintainer": "WO ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Koto", "negative_fee": false, "segwit": false, "shortcut": "KOTO", "signed_message_header": "Koto Signed Message:\n", "slip44": 510, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "koto", "website": "https://ko-to.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 48, "address_type_p2sh": 50, "bech32_prefix": "ltc", "bip115": false, "bitcore": [], "blockbook": ["https://ltc1.trezor.io", "https://ltc2.trezor.io", "https://ltc3.trezor.io", "https://ltc4.trezor.io", "https://ltc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin", "coin_name": "Litecoin", "coin_shortcut": "LTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:LTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Litecoin", "negative_fee": false, "segwit": true, "shortcut": "LTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 2, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 27106558, "xpub_magic": 27108450, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 111, "address_type_p2sh": 58, "bech32_prefix": "tltc", "bip115": false, "bitcore": ["https://testnet.litecore.io"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin Testnet", "coin_name": "Litecoin Testnet", "coin_shortcut": "tLTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "4966625a4b2851d9fdee139e56211a0d88575f59ed816ff5e6a63deb4e3e29a0", "key": "bitcoin:tLTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Litecoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tLTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 50, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Metaverse ETP", "coin_name": "MetaverseETP", "coin_shortcut": "ETP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/mvs-org/metaverse", "hash_genesis_block": "b81848ef9ae86e84c3da26564bc6ab3a79efc628239d11471ab5cd25c0684c2d", "key": "bitcoin:ETP", "maintainer": "Sven Mutzl ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 100, "name": "Metaverse ETP", "negative_fee": false, "segwit": false, "shortcut": "ETP", "signed_message_header": "Metaverse Signed Message:\n", "slip44": 2302, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "etp", "website": "https://mvs.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 55, "bech32_prefix": "mona", "bip115": false, "bitcore": ["https://mona.chainsight.info", "https://insight.electrum-mona.org"], "blockbook": ["https://blockbook.electrum-mona.org"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "Monacoin", "coin_name": "Monacoin", "coin_shortcut": "MONA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/monacoinproject/monacoin", "hash_genesis_block": "ff9f1c0116d19de7c9963845e129f9ed1bfc0b376eb54fd7afa42e0d418c8bb6", "key": "bitcoin:MONA", "maintainer": "cryptcoin-junkey ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Monacoin", "negative_fee": false, "segwit": true, "shortcut": "MONA", "signed_message_header": "Monacoin Signed Message:\n", "slip44": 22, "support": {"connect": true, "trezor1": "1.6.0", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "monacoin", "website": "https://monacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 16, "address_type_p2sh": 76, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.monetaryunit.org"], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "MonetaryUnit", "coin_name": "MonetaryUnit", "coin_shortcut": "MUE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/muecoin/MUE", "hash_genesis_block": "0b58ed450b3819ca54ab0054c4d220ca4f887d21c9e55d2a333173adf76d987f", "key": "bitcoin:MUE", "maintainer": "Sotiris Blad ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "MonetaryUnit", "negative_fee": false, "segwit": false, "shortcut": "MUE", "signed_message_header": "MonetaryUnit Signed Message:\n", "slip44": 31, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "monetaryunit", "website": "https://www.monetaryunit.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 9, "bech32_prefix": "my", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Myriad", "coin_name": "Myriad", "coin_shortcut": "XMY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/myriadteam/myriadcoin", "hash_genesis_block": "00000ffde4c020b5938441a0ea3d314bf619eff0b38f32f78f7583cffa1ea485", "key": "bitcoin:XMY", "maintainer": "Adam Hickerson ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Myriad", "negative_fee": false, "segwit": true, "shortcut": "XMY", "signed_message_header": "Myriadcoin Signed Message:\n", "slip44": 90, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "myriadcoin", "website": "https://www.myriadcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 53, "bech32_prefix": "nix", "bip115": false, "bitcore": ["https://blockchain.nixplatform.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "NIX", "coin_name": "NIX", "coin_shortcut": "NIX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/nixplatform/nixcore", "hash_genesis_block": "dd28ad86def767c3cfc34267a950d871fc7462bc57ea4a929fc3596d9b598e41", "key": "bitcoin:NIX", "maintainer": "mattt21 ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 0, "name": "NIX", "negative_fee": false, "segwit": true, "shortcut": "NIX", "signed_message_header": "NIX Signed Message:\n", "slip44": 400, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "nix", "website": "https://nixplatform.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 52, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://nmc1.trezor.io", "https://nmc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Namecoin", "coin_name": "Namecoin", "coin_shortcut": "NMC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 2940, "force_bip143": false, "fork_id": null, "github": "https://github.com/namecoin/namecoin-core", "hash_genesis_block": "000000000062b72c5e2ceb45fbc8587e807c155b0da735e6483dfba2f0a9c770", "key": "bitcoin:NMC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Namecoin", "negative_fee": false, "segwit": false, "shortcut": "NMC", "signed_message_header": "Namecoin Signed Message:\n", "slip44": 7, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "namecoin", "website": "https://namecoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 13, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX", "coin_name": "PIVX", "coin_shortcut": "PIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:PIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX", "negative_fee": false, "segwit": false, "shortcut": "PIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 119, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 35729707, "xpub_magic": 36513075, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 139, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook-testnet.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX Testnet", "coin_name": "PIVX Testnet", "coin_shortcut": "tPIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:tPIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX Testnet", "negative_fee": false, "segwit": false, "shortcut": "tPIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 981489719, "xpub_magic": 981492128, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 56, "address_type_p2sh": 60, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl", "coin_name": "Particl", "coin_shortcut": "PART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000ee0784c195317ac95623e22fddb8c7b8825dc3998e0bb924d66866eccf4c", "key": "bitcoin:PART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl", "negative_fee": false, "segwit": true, "shortcut": "PART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 44, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 1768850129, "xpub_magic": 2401087160, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 118, "address_type_p2sh": 122, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl Testnet", "coin_name": "Particl Testnet", "coin_shortcut": "tPART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000594ada5310b367443ee0afd4fa3d0bbd5850ea4e33cdc7d6a904a7ec7c90", "key": "bitcoin:tPART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl Testnet", "negative_fee": false, "segwit": true, "shortcut": "tPART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 3779229696, "xpub_magic": 76059768, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 47, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": ["https://live.pesetacoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Pesetacoin", "coin_name": "Pesetacoin", "coin_shortcut": "PTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/FundacionPesetacoin/PesetacoinCore", "hash_genesis_block": "edfe5830b53251bfff733600b1cd5c192e761c011b055f07924634818c906438", "key": "bitcoin:PTC", "maintainer": "Rw ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Pesetacoin", "negative_fee": false, "segwit": false, "shortcut": "PTC", "signed_message_header": "Pesetacoin Signed Message:\n", "slip44": 109, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "pesetacoin", "website": "https://pesetacoin.info", "xprv_magic": 76079604, "xpub_magic": 76071982, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 55, "address_type_p2sh": 56, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.polispay.org"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Polis", "coin_name": "Polis", "coin_shortcut": "POLIS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/polispay/polis", "hash_genesis_block": "000009701eb781a8113b1af1d814e2f060f6408a2c990db291bc5108a1345c1e", "key": "bitcoin:POLIS", "maintainer": "Cronos ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Polis", "negative_fee": false, "segwit": false, "shortcut": "POLIS", "signed_message_header": "Polis Signed Message:\n", "slip44": 1997, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "polis", "website": "https://www.polispay.org", "xprv_magic": 65165637, "xpub_magic": 65166718, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 23, "address_type_p2sh": 83, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Primecoin", "coin_name": "Primecoin", "coin_shortcut": "XPM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/primecoin/primecoin", "hash_genesis_block": "963d17ba4dc753138078a2f56afb3af9674e2546822badff26837db9a0152106", "key": "bitcoin:XPM", "maintainer": "James Skrowvedeht ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 26, "minfee_kb": 1000, "name": "Primecoin", "negative_fee": false, "segwit": false, "shortcut": "XPM", "signed_message_header": "Primecoin Signed Message:\n", "slip44": 24, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "primecoin", "website": "https://primecoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 58, "address_type_p2sh": 50, "bech32_prefix": "qc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum", "coin_name": "Qtum", "coin_shortcut": "QTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "duplicate": true, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "000075aef83cf2853580f8ae8ce6f8c3096cfa21d98334d6e3f95e5582ed986c", "key": "bitcoin:QTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum", "negative_fee": false, "segwit": true, "shortcut": "QTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 2301, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": true}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 120, "address_type_p2sh": 110, "bech32_prefix": "tq", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum Testnet", "coin_name": "Qtum Testnet", "coin_shortcut": "tQTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "0000e803ee215c0684ca0d2f9220594d3f828617972aad66feb2ba51f5e14222", "key": "bitcoin:tQTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum Testnet", "negative_fee": false, "segwit": true, "shortcut": "tQTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 60, "address_type_p2sh": 122, "bech32_prefix": null, "bip115": false, "bitcore": ["https://ravencoin.network"], "blockbook": ["https://blockbook.ravencoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ravencoin", "coin_name": "Ravencoin", "coin_shortcut": "RVN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RavenProject/Ravencoin", "hash_genesis_block": "0000006b444bc2f2ffe627be9d9e7e7a0730000870ef6eb6da46c8eae389df90", "key": "bitcoin:RVN", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ravencoin", "negative_fee": false, "segwit": false, "shortcut": "RVN", "signed_message_header": "Raven Signed Message:\n", "slip44": 175, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "raven", "website": "https://ravencoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 105, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.ritocoin.org"], "blockbook": ["https://blockbook.ritocoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ritocoin", "coin_name": "Ritocoin", "coin_shortcut": "RITO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RitoProject", "hash_genesis_block": "00000075e344bdf1c0e433f453764b1830a7aa19b2a5213e707502a22b779c1b", "key": "bitcoin:RITO", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ritocoin", "negative_fee": false, "segwit": false, "shortcut": "RITO", "signed_message_header": "Rito Signed Message:\n", "slip44": 19169, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "rito", "website": "https://ritocoin.org", "xprv_magic": 87326380, "xpub_magic": 87353290, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 63, "address_type_p2sh": 18, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.smartcash.cc"], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash", "coin_name": "SmartCash", "coin_shortcut": "SMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "000007acc6970b812948d14ea5a0a13db0fdd07d5047c7e69101fa8b361e05a4", "key": "bitcoin:SMART", "maintainer": "Leandro Reinaux ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash", "negative_fee": false, "segwit": false, "shortcut": "SMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "smart", "website": "https://smartcash.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 21, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash Testnet", "coin_name": "SmartCash Testnet", "coin_shortcut": "tSMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "0000027235b5679bcd28c90d03d4bf1a9ba4c07c4efcc1c87d6c68cce25e6e5d", "key": "bitcoin:tSMART", "maintainer": "Leandro Reinaux ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tSMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "testsmart", "website": "https://smartcash.cc", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": "xc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Stakenet", "coin_name": "Stakenet", "coin_shortcut": "XSN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 1000, "force_bip143": false, "fork_id": null, "github": "https://github.com/X9Developers/XSN", "hash_genesis_block": "00000c822abdbb23e28f79a49d29b41429737c6c7e15df40d1b1f1b35907ae34", "key": "bitcoin:XSN", "maintainer": "Alexis Hernandez ", "max_address_length": 47, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Stakenet", "negative_fee": false, "segwit": true, "shortcut": "XSN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 199, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "stakenet", "website": "https://stakenet.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 63, "address_type_p2sh": 5, "bech32_prefix": "sys", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Syscoin", "coin_name": "Syscoin", "coin_shortcut": "SYS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 200, "High": 2000, "Low": 100, "Normal": 400}, "dust_limit": 1820, "force_bip143": false, "fork_id": null, "github": "https://github.com/syscoin/syscoin", "hash_genesis_block": "0000022642db0346b6e01c2a397471f4f12e65d4f4251ec96c1f85367a61a7ab", "key": "bitcoin:SYS", "maintainer": "Jagdeep Sidhu ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Syscoin", "negative_fee": false, "segwit": true, "shortcut": "SYS", "signed_message_header": "Syscoin Signed Message:\n", "slip44": 57, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "syscoin", "website": "https://syscoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.terracoin.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Terracoin", "coin_name": "Terracoin", "coin_shortcut": "TRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/terracoin/terracoin", "hash_genesis_block": "00000000804bbc6a621a9dbb564ce469f492e1ccf2d70f8a6b241e26a277afa2", "key": "bitcoin:TRC", "maintainer": "The Terracoin Foundation ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Terracoin", "negative_fee": false, "segwit": false, "shortcut": "TRC", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 83, "support": {"connect": false, "trezor1": false, "trezor2": false, "webwallet": false}, "uri_prefix": "terracoin", "website": "https://terracoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 68, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.umbru.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Umbru", "coin_name": "Umbru", "coin_shortcut": "UMBRU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/umbru/umbru-core", "hash_genesis_block": "00000cb7859c07ebc3950ff150f5d6dc31150c5da14435fbf200d51be8f4208f", "key": "bitcoin:UMBRU", "maintainer": "Ryxor ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "Umbru", "negative_fee": false, "segwit": false, "shortcut": "UMBRU", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 395, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.5", "webwallet": false}, "uri_prefix": "umbru", "website": "https://umbru.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 130, "address_type_p2sh": 30, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.flurbo.xyz", "https://blockbook.unobtanium.uno"], "blocktime_seconds": 30, "cashaddr_prefix": null, "coin_label": "Unobtanium", "coin_name": "Unobtanium", "coin_shortcut": "UNO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 50, "High": 160, "Low": 10, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/unobtanium-official/unobtanium", "hash_genesis_block": "000004c2fc5fffb810dccc197d603690099a68305232e552d96ccbe8e2c52b75", "key": "bitcoin:UNO", "maintainer": "choicesz ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Unobtanium", "negative_fee": false, "segwit": false, "shortcut": "UNO", "signed_message_header": "Unobtanium Signed Message:\n", "slip44": 92, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "unobtanium", "website": "https://unobtanium.uno", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 70, "address_type_p2sh": 50, "bech32_prefix": "vips", "bip115": false, "bitcore": ["https://insight.vipstarco.in"], "blockbook": ["https://vips.blockbook.japanesecoin-pool.work"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "VIPSTARCOIN", "coin_name": "VIPSTARCOIN", "coin_shortcut": "VIPS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/VIPSTARCOIN/VIPSTARCOIN", "hash_genesis_block": "0000d068e1d30f79fb64446137106be9c6ee69a6a722295c131506b1ee09b77c", "key": "bitcoin:VIPS", "maintainer": "y-chan ", "max_address_length": 36, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "VIPSTARCOIN", "negative_fee": false, "segwit": true, "shortcut": "VIPS", "signed_message_header": "VIPSTARCOIN Signed Message:\n", "slip44": 1919, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "vipstarcoin", "website": "https://vipstarcoin.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 5, "bech32_prefix": "vtc", "bip115": false, "bitcore": [], "blockbook": ["https://vtc1.trezor.io", "https://vtc2.trezor.io", "https://vtc3.trezor.io", "https://vtc4.trezor.io", "https://vtc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Vertcoin", "coin_name": "Vertcoin", "coin_shortcut": "VTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/vertcoin-project/vertcoin-core", "hash_genesis_block": "4d96a915f49d40b1e5c2844d1ee2dccb90013a990ccea12c492d22110489f0c4", "key": "bitcoin:VTC", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Vertcoin", "negative_fee": false, "segwit": true, "shortcut": "VTC", "signed_message_header": "Vertcoin Signed Message:\n", "slip44": 28, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "vertcoin", "website": "https://vertcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 33, "bech32_prefix": "via", "bip115": false, "bitcore": ["https://explorer.viacoin.org"], "blockbook": [], "blocktime_seconds": 24, "cashaddr_prefix": null, "coin_label": "Viacoin", "coin_name": "Viacoin", "coin_shortcut": "VIA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7000, "High": 20000, "Low": 1000, "Normal": 14000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/viacoin", "hash_genesis_block": "4e9b54001f9976049830128ec0331515eaabe35a70970d79971da1539a400ba1", "key": "bitcoin:VIA", "maintainer": "romanornr ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Viacoin", "negative_fee": false, "segwit": true, "shortcut": "VIA", "signed_message_header": "Viacoin Signed Message:\n", "slip44": 14, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "viacoin", "website": "https://viacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 142, "address_type_p2sh": 145, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zcore.cash"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "ZCore", "coin_name": "ZCore", "coin_shortcut": "ZCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcore-coin/zcore-2.0", "hash_genesis_block": "695b79c8c234b45b2eeb4722f33373e471c9b686ff78efeb39da95f824a9f81b", "key": "bitcoin:ZCR", "maintainer": "Erick Costa ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 34, "minfee_kb": 1000, "name": "ZCore", "negative_fee": false, "segwit": false, "shortcut": "ZCR", "signed_message_header": "ZCore Genesis Block mined by Mosqueiro", "slip44": 428, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": true}, "uri_prefix": "zcore", "website": "https://zcore.cash", "xprv_magic": 78791432, "xpub_magic": 78792518, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://zec1.trezor.io", "https://zec2.trezor.io", "https://zec3.trezor.io", "https://zec4.trezor.io", "https://zec5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash", "coin_name": "Zcash", "coin_shortcut": "ZEC", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "00040fe8ec8471911baa1db1266ea15dd06b4a8a5c453883c000b031973dce08", "key": "bitcoin:ZEC", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash", "negative_fee": false, "segwit": false, "shortcut": "ZEC", "signed_message_header": "Zcash Signed Message:\n", "slip44": 133, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7461, "address_type_p2sh": 7354, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.testnet.z.cash"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash Testnet", "coin_name": "Zcash Testnet", "coin_shortcut": "TAZ", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "05a60a92d99d85997cce3b87616c089f6124d7342af37106edc76126334a2c38", "key": "bitcoin:TAZ", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TAZ", "signed_message_header": "Zcash Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 82, "address_type_p2sh": 7, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.zcoin.io"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin", "coin_name": "Zcoin", "coin_shortcut": "XZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "4381deb85b1b2c9843c222944b616d997516dcbd6a964e1eaf0def0830695233", "key": "bitcoin:XZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin", "negative_fee": false, "segwit": false, "shortcut": "XZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 136, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcoin", "website": "https://zcoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 178, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin Testnet", "coin_name": "Zcoin Testnet", "coin_shortcut": "tXZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "7ac038c193c2158c428c59f9ae0c02a07115141c6e9dc244ae96132e99b4e642", "key": "bitcoin:tXZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin Testnet", "negative_fee": false, "segwit": false, "shortcut": "tXZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "testzcoin", "website": "https://zcoin.io", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zel.network"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Zel", "coin_name": "ZelCash", "coin_shortcut": "ZEL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zelcash", "hash_genesis_block": "00052461a5006c2e3b74ce48992a08695607912d5604c3eb8da25749b0900444", "key": "bitcoin:ZEL", "maintainer": "Cabecinha84 ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zel", "negative_fee": false, "segwit": false, "shortcut": "ZEL", "signed_message_header": "Zcash Signed Message:\n", "slip44": 19167, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "zelcash", "website": "https://zel.network", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}] +[{"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": ["https://btc1.trezor.io", "https://btc2.trezor.io", "https://btc3.trezor.io", "https://btc4.trezor.io", "https://btc5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin", "coin_name": "Bitcoin", "coin_shortcut": "BTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin", "negative_fee": false, "segwit": true, "shortcut": "BTC", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 0, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "bcrt", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Regtest", "coin_name": "Regtest", "coin_shortcut": "REGTEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206", "key": "bitcoin:REGTEST", "maintainer": "Thomas Kerin ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Regtest", "negative_fee": false, "segwit": true, "shortcut": "REGTEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": ["https://tbtc1.trezor.io", "https://tbtc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Testnet", "coin_name": "Testnet", "coin_shortcut": "TEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TEST", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Testnet", "negative_fee": false, "segwit": true, "shortcut": "TEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 53, "address_type_p2sh": 55, "bech32_prefix": "acm", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Actinium", "coin_name": "Actinium", "coin_shortcut": "ACM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Actinium-project/Actinium", "hash_genesis_block": "28d77872e23714562f49a1be792c276623c1bbe3fdcf21b6035cfde78b00b824", "key": "bitcoin:ACM", "maintainer": "Harris Brakmic ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Actinium", "negative_fee": false, "segwit": true, "shortcut": "ACM", "signed_message_header": "Actinium Signed Message:\n", "slip44": 228, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "actinium", "website": "https://actinium.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 55, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Axe", "coin_name": "Axe", "coin_shortcut": "AXE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/axerunners/axe", "hash_genesis_block": "00000c33631ca6f2f61368991ce2dc03306b5bb50bf7cede5cfbba6db38e52e6", "key": "bitcoin:AXE", "maintainer": "Kirill Orlov ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Axe", "negative_fee": false, "segwit": false, "shortcut": "AXE", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 4242, "support": {"connect": true, "trezor1": "1.7.3", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "axe", "website": "https://axerunners.com", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 85, "bech32_prefix": "bm", "bip115": false, "bitcore": [], "blockbook": ["https://bellcoin-blockbook.ilmango.work", "https://bell.blockbook.ovh"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Bellcoin", "coin_name": "Bellcoin", "coin_shortcut": "BELL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bellcoin-org/bellcoin", "hash_genesis_block": "000008f3b6bd10c2d03b06674a006b8d9731f6cb58179ef1eee008cee2209603", "key": "bitcoin:BELL", "maintainer": "ilmango-doge ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bellcoin", "negative_fee": false, "segwit": true, "shortcut": "BELL", "signed_message_header": "Bellcoin Signed Message:\n", "slip44": 25252, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bellcoin", "website": "https://bellcoin.web4u.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 6, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BitGreen", "coin_name": "Bitgreen", "coin_shortcut": "BITG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitgreen/bitgreen", "hash_genesis_block": "000008467c3a9c587533dea06ad9380cded3ed32f9742a6c0c1aebc21bf2bc9b", "key": "bitcoin:BITG", "maintainer": "Dennis R ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitGreen", "negative_fee": false, "segwit": false, "shortcut": "BITG", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 222, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "bitg", "website": "https://bitg.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 81, "address_type_p2sh": 5, "bech32_prefix": "bz", "bip115": false, "bitcore": ["https://insight.bitzeny.jp", "https://zeny.insight.monaco-ex.org"], "blockbook": ["https://zny.blockbook.ovh"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "BitZeny", "coin_name": "BitZeny", "coin_shortcut": "ZNY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BitzenyCoreDevelopers/bitzeny", "hash_genesis_block": "000009f7e55e9e3b4781e22bd87a7cfa4acada9e4340d43ca738bf4e9fb8f5ce", "key": "bitcoin:ZNY", "maintainer": "y-chan ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitZeny", "negative_fee": false, "segwit": true, "shortcut": "ZNY", "signed_message_header": "BitZeny Signed Message:\n", "slip44": 123, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitzeny", "website": "https://bitzeny.tech", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://bch1.trezor.io", "https://bch2.trezor.io", "https://bch3.trezor.io", "https://bch4.trezor.io", "https://bch5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": "bitcoincash", "coin_label": "Bitcoin Cash", "coin_name": "Bcash", "coin_shortcut": "BCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash", "negative_fee": false, "segwit": false, "shortcut": "BCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 145, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": "bchtest", "coin_label": "Bitcoin Cash Testnet", "coin_name": "Bcash Testnet", "coin_shortcut": "TBCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TBCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TBCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 23, "bech32_prefix": "btg", "bip115": false, "bitcore": [], "blockbook": ["https://btg1.trezor.io", "https://btg2.trezor.io", "https://btg3.trezor.io", "https://btg4.trezor.io", "https://btg5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold", "coin_name": "Bgold", "coin_shortcut": "BTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTG", "maintainer": "Saleem Rashid ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold", "negative_fee": false, "segwit": true, "shortcut": "BTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tbtg", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold Testnet", "coin_name": "Bgold Testnet", "coin_shortcut": "TBTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "00000000e0781ebe24b91eedc293adfea2f557b53ec379e78959de3853e6f9f6", "key": "bitcoin:TBTG", "maintainer": "The Bitcoin Gold Developers ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold Testnet", "negative_fee": false, "segwit": true, "shortcut": "TBTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 4901, "address_type_p2sh": 5039, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.btcprivate.org"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcoin Private", "coin_name": "Bprivate", "coin_shortcut": "BTCP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": 42, "github": "https://github.com/BTCPrivate/BitcoinPrivate", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:BTCP", "maintainer": "Chris Sulmone ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Bitcoin Private", "negative_fee": false, "segwit": false, "shortcut": "BTCP", "signed_message_header": "BitcoinPrivate Signed Message:\n", "slip44": 183, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoinprivate", "website": "https://btcprivate.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 61, "address_type_p2sh": 123, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook1.bitcoinrh.org", "https://blockbook2.bitcoinrh.org"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Rhodium", "coin_name": "Brhodium", "coin_shortcut": "XRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://gitlab.com/bitcoinrh/BRhodiumNode", "hash_genesis_block": "baff5bfd9dc43fb672d003ec20fd21428f9282ca46bfa1730d73e1f2c75f5fdd", "key": "bitcoin:XRC", "maintainer": "baff5b ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Rhodium", "negative_fee": false, "segwit": false, "shortcut": "XRC", "signed_message_header": "BitCoin Rhodium Signed Message:\n", "slip44": 10291, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin-rhodium", "website": "https://www.bitcoinrh.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3, "address_type_p2sh": 125, "bech32_prefix": "btx", "bip115": false, "bitcore": ["https://insight.bitcore.cc"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcore", "coin_name": "Bitcore", "coin_shortcut": "BTX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/LIMXTEC/BitCore", "hash_genesis_block": "604148281e5c4b7f2487e5d03cd60d8e6f69411d613f6448034508cea52e9574", "key": "bitcoin:BTX", "maintainer": "limxdev ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcore", "negative_fee": false, "segwit": true, "shortcut": "BTX", "signed_message_header": "BitCore Signed Message:\n", "slip44": 160, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcore", "website": "https://bitcore.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 26, "address_type_p2sh": 5, "bech32_prefix": "bst", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BlockStamp", "coin_name": "BlockStamp", "coin_shortcut": "BST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 1000, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BlockStamp/bst", "hash_genesis_block": "8000000049a2e26b0185be50b4b8ed58b707c8893762959f0b1673641cae1828", "key": "bitcoin:BST", "maintainer": "Krzysztof Kuchta ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BlockStamp", "negative_fee": false, "segwit": true, "shortcut": "BST", "signed_message_header": "BST Signed Message:\n", "slip44": 254, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "blockstamp", "website": "https://blockstamp.info", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 30, "bech32_prefix": "cpu", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.cpuchain.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "CPUchain", "coin_name": "CPUchain", "coin_shortcut": "CPU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/cpuchain/cpuchain", "hash_genesis_block": "000024d8766043ea0e1c9ad42e7ea4b5fdb459887bd80b8f9756f3d87e128f12", "key": "bitcoin:CPU", "maintainer": "Min Khang Aung ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "CPUchain", "negative_fee": false, "segwit": true, "shortcut": "CPU", "signed_message_header": "CPUchain Signed Message:\n", "slip44": 363, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "cpuchain", "website": "https://cpuchain.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 35, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.capricoin.org", "https://blockbook2.capricoin.org", "https://blockbook3.capricoin.org", "https://blockbook4.capricoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Capricoin", "coin_name": "Capricoin", "coin_shortcut": "CPC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7, "High": 20, "Low": 1, "Normal": 14}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Capricoinofficial/Capricoin", "hash_genesis_block": "00000d23fa0fc52c90893adb1181c9ddffb6c797a3e41864b9a23aa2f2981fe3", "key": "bitcoin:CPC", "maintainer": "Jozef Knaperek ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Capricoin", "negative_fee": false, "segwit": false, "shortcut": "CPC", "signed_message_header": "Capricoin Signed Message:\n", "slip44": 289, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.10", "webwallet": false}, "uri_prefix": "capricoin", "website": "https://capricoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 95495, "address_type_p2sh": 95473, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight-01.crownplatform.com", "https://insight-02.crownplatform.com", "https://insight-03.crownplatform.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Crown", "coin_name": "Crown", "coin_shortcut": "CRW", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Crowndev/crowncoin", "hash_genesis_block": "0000000085370d5e122f64f4ab19c68614ff3df78c8d13cb814fd7e69a1dc6da", "key": "bitcoin:CRW", "maintainer": "Ashot ", "max_address_length": 40, "maxfee_kb": 2000000, "min_address_length": 36, "minfee_kb": 1000, "name": "Crown", "negative_fee": false, "segwit": false, "shortcut": "CRW", "signed_message_header": "Crown Signed Message:\n", "slip44": 72, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": false}, "uri_prefix": "crown", "website": "https://crownplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://dash1.trezor.io", "https://dash2.trezor.io", "https://dash3.trezor.io", "https://dash4.trezor.io", "https://dash5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash", "coin_name": "Dash", "coin_shortcut": "DASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000ffd590b1485b3caadc19b22e6379c733355108f107a430458cdf3407ab6", "key": "bitcoin:DASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dash", "negative_fee": false, "segwit": false, "shortcut": "DASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 5, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash Testnet", "coin_name": "Dash Testnet", "coin_shortcut": "tDASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000bafbc94add76cb75e2ec92894837288a481e5c005f6563d91623bf8bc2c", "key": "bitcoin:tDASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Dash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tDASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 1855, "address_type_p2sh": 1818, "bech32_prefix": null, "bip115": false, "bitcore": ["https://mainnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred", "coin_name": "Decred", "coin_shortcut": "DCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "298e5cc3d985bfe7f81dc135f360abe089edd4396b86d2de66b0cef42b21d980", "key": "bitcoin:DCR", "maintainer": "Alex Yocom-Piatt ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 10000, "name": "Decred", "negative_fee": false, "segwit": false, "shortcut": "DCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 42, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 50177256, "xpub_magic": 50178342, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3873, "address_type_p2sh": 3836, "bech32_prefix": null, "bip115": false, "bitcore": ["https://testnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred Testnet", "coin_name": "Decred Testnet", "coin_shortcut": "TDCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "a649dce53918caf422e9c711c858837e08d626ecfcd198969b24f7b634a49bac", "key": "bitcoin:TDCR", "maintainer": "Saleem Rashid ", "max_address_length": 35, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Decred Testnet", "negative_fee": false, "segwit": false, "shortcut": "TDCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 70615959, "xpub_magic": 70617041, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 63, "bech32_prefix": "dgb", "bip115": false, "bitcore": [], "blockbook": ["https://dgb1.trezor.io", "https://dgb2.trezor.io"], "blocktime_seconds": 15, "cashaddr_prefix": null, "coin_label": "DigiByte", "coin_name": "DigiByte", "coin_shortcut": "DGB", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/digibyte/digibyte", "hash_genesis_block": "7497ea1b465eb39f1c8f507bc877078fe016d6fcb6dfad3a64c98dcc6e1e8496", "key": "bitcoin:DGB", "maintainer": "DigiByte ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "DigiByte", "negative_fee": false, "segwit": true, "shortcut": "DGB", "signed_message_header": "DigiByte Signed Message:\n", "slip44": 20, "support": {"connect": true, "trezor1": "1.6.3", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "digibyte", "website": "https://digibyte.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 30, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://doge1.trezor.io", "https://doge2.trezor.io", "https://doge3.trezor.io", "https://doge4.trezor.io", "https://doge5.trezor.io"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Dogecoin", "coin_name": "Dogecoin", "coin_shortcut": "DOGE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 100000}, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/dogecoin/dogecoin", "hash_genesis_block": "1a91e3dace36e2be3bf030a65679fe821aa1d6ef92e7c9902eb318182c355691", "key": "bitcoin:DOGE", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dogecoin", "negative_fee": false, "segwit": false, "shortcut": "DOGE", "signed_message_header": "Dogecoin Signed Message:\n", "slip44": 3, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dogecoin", "website": "https://dogecoin.com", "xprv_magic": 49988504, "xpub_magic": 49990397, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 235, "address_type_p2sh": 75, "bech32_prefix": "ert", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Elements", "coin_name": "Elements", "coin_shortcut": "ELEMENTS", "confidential_assets": {"address_prefix": 4, "blech32_prefix": "el"}, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ElementsProject/elements", "hash_genesis_block": "209577bda6bf4b5804bd46f8621580dd6d4e8bfa2d190e1c50e932492baca07d", "key": "bitcoin:ELEMENTS", "maintainer": "Roman Zeyde ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Elements", "negative_fee": false, "segwit": true, "shortcut": "ELEMENTS", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "elements", "website": "https://elementsproject.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 95, "address_type_p2sh": 36, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 180, "cashaddr_prefix": null, "coin_label": "FairCoin", "coin_name": "FairCoin", "coin_shortcut": "FAIR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 800000}, "dust_limit": 500000, "force_bip143": false, "fork_id": 0, "github": "https://github.com/faircoin/faircoin", "hash_genesis_block": "beed44fa5e96150d95d56ebd5d2625781825a9407a5215dd7eda723373a0a1d7", "key": "bitcoin:FAIR", "maintainer": "Santi Nore\u00f1a ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "FairCoin", "negative_fee": false, "segwit": false, "shortcut": "FAIR", "signed_message_header": "FairCoin Signed Message:\n", "slip44": 298, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "faircoin", "website": "https://www.faircoin.world", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 14, "address_type_p2sh": 5, "bech32_prefix": "fc", "bip115": false, "bitcore": ["https://bitcore.feathercoin.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Feathercoin", "coin_name": "Feathercoin", "coin_shortcut": "FTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "duplicate": true, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/FeatherCoin/Feathercoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:FTC", "maintainer": "Lucas Betschart ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Feathercoin", "negative_fee": false, "segwit": true, "shortcut": "FTC", "signed_message_header": "Feathercoin Signed Message:\n", "slip44": 8, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "feathercoin", "website": "https://feathercoin.com", "xprv_magic": 76077806, "xpub_magic": 76069926, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 35, "address_type_p2sh": 94, "bech32_prefix": "flo", "bip115": false, "bitcore": ["https://livenet.flocha.in"], "blockbook": [], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "Flo", "coin_name": "Florincoin", "coin_shortcut": "FLO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/floblockchain/flo", "hash_genesis_block": "09c7781c9df90708e278c35d38ea5c9041d7ecfcdd1c56ba67274b7cff3e1cea", "key": "bitcoin:FLO", "maintainer": "Robert English ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Flo", "negative_fee": false, "segwit": true, "shortcut": "FLO", "signed_message_header": "Florincoin Signed Message:\n", "slip44": 216, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "florincoin", "website": "https://flo.cash", "xprv_magic": 15264107, "xpub_magic": 1526049, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 16, "bech32_prefix": "fc", "bip115": false, "bitcore": [], "blockbook": ["https://explorer.fujicoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Fujicoin", "coin_name": "Fujicoin", "coin_shortcut": "FJC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 20000, "High": 100000, "Low": 10000, "Normal": 50000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/fujicoin/fujicoin", "hash_genesis_block": "adb6d9cfd74075e7f91608add4bd2a2ea636f70856183086842667a1597714a0", "key": "bitcoin:FJC", "maintainer": "motty ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 10000000, "name": "Fujicoin", "negative_fee": false, "segwit": true, "shortcut": "FJC", "signed_message_header": "FujiCoin Signed Message:\n", "slip44": 75, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "fujicoin", "website": "https://fujicoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 10, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gincoin.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "GIN", "coin_name": "Gincoin", "coin_shortcut": "GIN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/gincoin-dev/gincoin-core", "hash_genesis_block": "00000cd6bde619b2c3b23ad2e384328a450a37fa28731debf748c3b17f91f97d", "key": "bitcoin:GIN", "maintainer": "Dragos Badea ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "GIN", "negative_fee": false, "segwit": false, "shortcut": "GIN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 2000, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "gincoin", "website": "https://gincoin.io", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 62, "bech32_prefix": "game", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gamecredits.network"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "GameCredits", "coin_name": "GameCredits", "coin_shortcut": "GAME", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/gamecredits-project/gamecredits", "hash_genesis_block": "91ec5f25ee9a0ffa1af7d4da4db9a552228dd2dc77cdb15b738be4e1f55f30ee", "key": "bitcoin:GAME", "maintainer": "Samad Sajanlal ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "GameCredits", "negative_fee": false, "segwit": true, "shortcut": "GAME", "signed_message_header": "GameCredits Signed Message:\n", "slip44": 101, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "gamecredits", "website": "https://gamecredits.org", "xprv_magic": 27108450, "xpub_magic": 27106558, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 5, "bech32_prefix": "grs", "bip115": false, "bitcore": ["https://groestlsight.groestlcoin.org", "https://grsblocks.com"], "blockbook": ["https://blockbook.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin", "coin_name": "Groestlcoin", "coin_shortcut": "GRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "00000ac5927c594d49cc0bdb81759d0da8297eb614683d3acb62f0703b639023", "key": "bitcoin:GRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin", "negative_fee": false, "segwit": true, "shortcut": "GRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 17, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tgrs", "bip115": false, "bitcore": ["https://groestlsight-test.groestlcoin.org"], "blockbook": ["https://blockbook-test.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin Testnet", "coin_name": "Groestlcoin Testnet", "coin_shortcut": "tGRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "000000ffbb50fc9898cdd36ec163e6ba23230164c0052a28876255b7dcf2cd36", "key": "bitcoin:tGRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tGRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch", "coin_name": "Hatch", "coin_shortcut": "HATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "000000fa6116f5d6c6ce9b60bd431469e40b4fe55feeeda59e33cd2f0b863196", "key": "bitcoin:HATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Hatch", "negative_fee": false, "segwit": false, "shortcut": "HATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 88888888, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch Testnet", "coin_name": "Hatch Testnet", "coin_shortcut": "tHATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "00000bf8b02180fa3860e3f4fbfaab76db14fbfd1323d1d3ad06d83b828b6644", "key": "bitcoin:tHATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Hatch Testnet", "negative_fee": false, "segwit": false, "shortcut": "tHATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 8329, "address_type_p2sh": 8342, "bech32_prefix": null, "bip115": true, "bitcore": ["https://explorer.horizen.global"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Horizen", "coin_name": "Horizen", "coin_shortcut": "ZEN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ZencashOfficial/zen", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:ZEN", "maintainer": "Power_VANO ", "max_address_length": 95, "maxfee_kb": 2000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Horizen", "negative_fee": false, "segwit": false, "shortcut": "ZEN", "signed_message_header": "Zcash Signed Message:\n", "slip44": 121, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "horizen", "website": "https://www.horizen.global", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 60, "address_type_p2sh": 85, "bech32_prefix": null, "bip115": false, "bitcore": ["https://api.kmd.dev"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Komodo", "coin_name": "Komodo", "coin_shortcut": "KMD", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/komodoplatform/komodo", "hash_genesis_block": "027e3758c3a65b12aa1046462b486d0a63bfa1beae327897f56c5cfb7daaae71", "key": "bitcoin:KMD", "maintainer": "Kadan Stadelmann ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Komodo", "negative_fee": true, "segwit": false, "shortcut": "KMD", "signed_message_header": "Komodo Signed Message:\n", "slip44": 141, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "komodo", "website": "https://komodoplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 6198, "address_type_p2sh": 6203, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.kotocoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Koto", "coin_name": "Koto", "coin_shortcut": "KOTO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/KotoDevelopers/koto", "hash_genesis_block": "6d424c350729ae633275d51dc3496e16cd1b1d195c164da00f39c499a2e9959e", "key": "bitcoin:KOTO", "maintainer": "WO ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Koto", "negative_fee": false, "segwit": false, "shortcut": "KOTO", "signed_message_header": "Koto Signed Message:\n", "slip44": 510, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "koto", "website": "https://ko-to.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 48, "address_type_p2sh": 50, "bech32_prefix": "ltc", "bip115": false, "bitcore": [], "blockbook": ["https://ltc1.trezor.io", "https://ltc2.trezor.io", "https://ltc3.trezor.io", "https://ltc4.trezor.io", "https://ltc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin", "coin_name": "Litecoin", "coin_shortcut": "LTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:LTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Litecoin", "negative_fee": false, "segwit": true, "shortcut": "LTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 2, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 27106558, "xpub_magic": 27108450, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 111, "address_type_p2sh": 58, "bech32_prefix": "tltc", "bip115": false, "bitcore": ["https://testnet.litecore.io"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin Testnet", "coin_name": "Litecoin Testnet", "coin_shortcut": "tLTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "4966625a4b2851d9fdee139e56211a0d88575f59ed816ff5e6a63deb4e3e29a0", "key": "bitcoin:tLTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Litecoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tLTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 50, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Metaverse ETP", "coin_name": "MetaverseETP", "coin_shortcut": "ETP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/mvs-org/metaverse", "hash_genesis_block": "b81848ef9ae86e84c3da26564bc6ab3a79efc628239d11471ab5cd25c0684c2d", "key": "bitcoin:ETP", "maintainer": "Sven Mutzl ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 100, "name": "Metaverse ETP", "negative_fee": false, "segwit": false, "shortcut": "ETP", "signed_message_header": "Metaverse Signed Message:\n", "slip44": 2302, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "etp", "website": "https://mvs.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 55, "bech32_prefix": "mona", "bip115": false, "bitcore": ["https://mona.chainsight.info", "https://insight.electrum-mona.org"], "blockbook": ["https://blockbook.electrum-mona.org"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "Monacoin", "coin_name": "Monacoin", "coin_shortcut": "MONA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/monacoinproject/monacoin", "hash_genesis_block": "ff9f1c0116d19de7c9963845e129f9ed1bfc0b376eb54fd7afa42e0d418c8bb6", "key": "bitcoin:MONA", "maintainer": "cryptcoin-junkey ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Monacoin", "negative_fee": false, "segwit": true, "shortcut": "MONA", "signed_message_header": "Monacoin Signed Message:\n", "slip44": 22, "support": {"connect": true, "trezor1": "1.6.0", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "monacoin", "website": "https://monacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 16, "address_type_p2sh": 76, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.monetaryunit.org"], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "MonetaryUnit", "coin_name": "MonetaryUnit", "coin_shortcut": "MUE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/muecoin/MUE", "hash_genesis_block": "0b58ed450b3819ca54ab0054c4d220ca4f887d21c9e55d2a333173adf76d987f", "key": "bitcoin:MUE", "maintainer": "Sotiris Blad ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "MonetaryUnit", "negative_fee": false, "segwit": false, "shortcut": "MUE", "signed_message_header": "MonetaryUnit Signed Message:\n", "slip44": 31, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "monetaryunit", "website": "https://www.monetaryunit.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 9, "bech32_prefix": "my", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Myriad", "coin_name": "Myriad", "coin_shortcut": "XMY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/myriadteam/myriadcoin", "hash_genesis_block": "00000ffde4c020b5938441a0ea3d314bf619eff0b38f32f78f7583cffa1ea485", "key": "bitcoin:XMY", "maintainer": "Adam Hickerson ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Myriad", "negative_fee": false, "segwit": true, "shortcut": "XMY", "signed_message_header": "Myriadcoin Signed Message:\n", "slip44": 90, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "myriadcoin", "website": "https://www.myriadcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 53, "bech32_prefix": "nix", "bip115": false, "bitcore": ["https://blockchain.nixplatform.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "NIX", "coin_name": "NIX", "coin_shortcut": "NIX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/nixplatform/nixcore", "hash_genesis_block": "dd28ad86def767c3cfc34267a950d871fc7462bc57ea4a929fc3596d9b598e41", "key": "bitcoin:NIX", "maintainer": "mattt21 ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 0, "name": "NIX", "negative_fee": false, "segwit": true, "shortcut": "NIX", "signed_message_header": "NIX Signed Message:\n", "slip44": 400, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "nix", "website": "https://nixplatform.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 52, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://nmc1.trezor.io", "https://nmc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Namecoin", "coin_name": "Namecoin", "coin_shortcut": "NMC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 2940, "force_bip143": false, "fork_id": null, "github": "https://github.com/namecoin/namecoin-core", "hash_genesis_block": "000000000062b72c5e2ceb45fbc8587e807c155b0da735e6483dfba2f0a9c770", "key": "bitcoin:NMC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Namecoin", "negative_fee": false, "segwit": false, "shortcut": "NMC", "signed_message_header": "Namecoin Signed Message:\n", "slip44": 7, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "namecoin", "website": "https://namecoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 13, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX", "coin_name": "PIVX", "coin_shortcut": "PIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:PIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX", "negative_fee": false, "segwit": false, "shortcut": "PIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 119, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 35729707, "xpub_magic": 36513075, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 139, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook-testnet.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX Testnet", "coin_name": "PIVX Testnet", "coin_shortcut": "tPIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:tPIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX Testnet", "negative_fee": false, "segwit": false, "shortcut": "tPIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 981489719, "xpub_magic": 981492128, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 56, "address_type_p2sh": 60, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl", "coin_name": "Particl", "coin_shortcut": "PART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000ee0784c195317ac95623e22fddb8c7b8825dc3998e0bb924d66866eccf4c", "key": "bitcoin:PART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl", "negative_fee": false, "segwit": true, "shortcut": "PART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 44, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 1768850129, "xpub_magic": 2401087160, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 118, "address_type_p2sh": 122, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl Testnet", "coin_name": "Particl Testnet", "coin_shortcut": "tPART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000594ada5310b367443ee0afd4fa3d0bbd5850ea4e33cdc7d6a904a7ec7c90", "key": "bitcoin:tPART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl Testnet", "negative_fee": false, "segwit": true, "shortcut": "tPART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 3779229696, "xpub_magic": 76059768, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 47, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": ["https://live.pesetacoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Pesetacoin", "coin_name": "Pesetacoin", "coin_shortcut": "PTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/FundacionPesetacoin/PesetacoinCore", "hash_genesis_block": "edfe5830b53251bfff733600b1cd5c192e761c011b055f07924634818c906438", "key": "bitcoin:PTC", "maintainer": "Rw ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Pesetacoin", "negative_fee": false, "segwit": false, "shortcut": "PTC", "signed_message_header": "Pesetacoin Signed Message:\n", "slip44": 109, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "pesetacoin", "website": "https://pesetacoin.info", "xprv_magic": 76079604, "xpub_magic": 76071982, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 55, "address_type_p2sh": 56, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.polispay.org"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Polis", "coin_name": "Polis", "coin_shortcut": "POLIS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/polispay/polis", "hash_genesis_block": "000009701eb781a8113b1af1d814e2f060f6408a2c990db291bc5108a1345c1e", "key": "bitcoin:POLIS", "maintainer": "Cronos ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Polis", "negative_fee": false, "segwit": false, "shortcut": "POLIS", "signed_message_header": "Polis Signed Message:\n", "slip44": 1997, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "polis", "website": "https://www.polispay.org", "xprv_magic": 65165637, "xpub_magic": 65166718, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 23, "address_type_p2sh": 83, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Primecoin", "coin_name": "Primecoin", "coin_shortcut": "XPM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/primecoin/primecoin", "hash_genesis_block": "963d17ba4dc753138078a2f56afb3af9674e2546822badff26837db9a0152106", "key": "bitcoin:XPM", "maintainer": "James Skrowvedeht ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 26, "minfee_kb": 1000, "name": "Primecoin", "negative_fee": false, "segwit": false, "shortcut": "XPM", "signed_message_header": "Primecoin Signed Message:\n", "slip44": 24, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "primecoin", "website": "https://primecoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 58, "address_type_p2sh": 50, "bech32_prefix": "qc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum", "coin_name": "Qtum", "coin_shortcut": "QTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "duplicate": true, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "000075aef83cf2853580f8ae8ce6f8c3096cfa21d98334d6e3f95e5582ed986c", "key": "bitcoin:QTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum", "negative_fee": false, "segwit": true, "shortcut": "QTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 2301, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": true}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 120, "address_type_p2sh": 110, "bech32_prefix": "tq", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum Testnet", "coin_name": "Qtum Testnet", "coin_shortcut": "tQTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "0000e803ee215c0684ca0d2f9220594d3f828617972aad66feb2ba51f5e14222", "key": "bitcoin:tQTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum Testnet", "negative_fee": false, "segwit": true, "shortcut": "tQTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 60, "address_type_p2sh": 122, "bech32_prefix": null, "bip115": false, "bitcore": ["https://ravencoin.network"], "blockbook": ["https://blockbook.ravencoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ravencoin", "coin_name": "Ravencoin", "coin_shortcut": "RVN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RavenProject/Ravencoin", "hash_genesis_block": "0000006b444bc2f2ffe627be9d9e7e7a0730000870ef6eb6da46c8eae389df90", "key": "bitcoin:RVN", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ravencoin", "negative_fee": false, "segwit": false, "shortcut": "RVN", "signed_message_header": "Raven Signed Message:\n", "slip44": 175, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "raven", "website": "https://ravencoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 105, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.ritocoin.org"], "blockbook": ["https://blockbook.ritocoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ritocoin", "coin_name": "Ritocoin", "coin_shortcut": "RITO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RitoProject", "hash_genesis_block": "00000075e344bdf1c0e433f453764b1830a7aa19b2a5213e707502a22b779c1b", "key": "bitcoin:RITO", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ritocoin", "negative_fee": false, "segwit": false, "shortcut": "RITO", "signed_message_header": "Rito Signed Message:\n", "slip44": 19169, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "rito", "website": "https://ritocoin.org", "xprv_magic": 87326380, "xpub_magic": 87353290, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 63, "address_type_p2sh": 18, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.smartcash.cc"], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash", "coin_name": "SmartCash", "coin_shortcut": "SMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "000007acc6970b812948d14ea5a0a13db0fdd07d5047c7e69101fa8b361e05a4", "key": "bitcoin:SMART", "maintainer": "Leandro Reinaux ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash", "negative_fee": false, "segwit": false, "shortcut": "SMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "smart", "website": "https://smartcash.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 21, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash Testnet", "coin_name": "SmartCash Testnet", "coin_shortcut": "tSMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "0000027235b5679bcd28c90d03d4bf1a9ba4c07c4efcc1c87d6c68cce25e6e5d", "key": "bitcoin:tSMART", "maintainer": "Leandro Reinaux ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tSMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "testsmart", "website": "https://smartcash.cc", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": "xc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Stakenet", "coin_name": "Stakenet", "coin_shortcut": "XSN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 1000, "force_bip143": false, "fork_id": null, "github": "https://github.com/X9Developers/XSN", "hash_genesis_block": "00000c822abdbb23e28f79a49d29b41429737c6c7e15df40d1b1f1b35907ae34", "key": "bitcoin:XSN", "maintainer": "Alexis Hernandez ", "max_address_length": 47, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Stakenet", "negative_fee": false, "segwit": true, "shortcut": "XSN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 199, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "stakenet", "website": "https://stakenet.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 63, "address_type_p2sh": 5, "bech32_prefix": "sys", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Syscoin", "coin_name": "Syscoin", "coin_shortcut": "SYS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 200, "High": 2000, "Low": 100, "Normal": 400}, "dust_limit": 1820, "force_bip143": false, "fork_id": null, "github": "https://github.com/syscoin/syscoin", "hash_genesis_block": "0000022642db0346b6e01c2a397471f4f12e65d4f4251ec96c1f85367a61a7ab", "key": "bitcoin:SYS", "maintainer": "Jagdeep Sidhu ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Syscoin", "negative_fee": false, "segwit": true, "shortcut": "SYS", "signed_message_header": "Syscoin Signed Message:\n", "slip44": 57, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "syscoin", "website": "https://syscoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.terracoin.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Terracoin", "coin_name": "Terracoin", "coin_shortcut": "TRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/terracoin/terracoin", "hash_genesis_block": "00000000804bbc6a621a9dbb564ce469f492e1ccf2d70f8a6b241e26a277afa2", "key": "bitcoin:TRC", "maintainer": "The Terracoin Foundation ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Terracoin", "negative_fee": false, "segwit": false, "shortcut": "TRC", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 83, "support": {"connect": false, "trezor1": false, "trezor2": false, "webwallet": false}, "uri_prefix": "terracoin", "website": "https://terracoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 68, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.umbru.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Umbru", "coin_name": "Umbru", "coin_shortcut": "UMBRU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/umbru/umbru-core", "hash_genesis_block": "00000cb7859c07ebc3950ff150f5d6dc31150c5da14435fbf200d51be8f4208f", "key": "bitcoin:UMBRU", "maintainer": "Ryxor ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "Umbru", "negative_fee": false, "segwit": false, "shortcut": "UMBRU", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 395, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.5", "webwallet": false}, "uri_prefix": "umbru", "website": "https://umbru.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 130, "address_type_p2sh": 30, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.flurbo.xyz", "https://blockbook.unobtanium.uno"], "blocktime_seconds": 30, "cashaddr_prefix": null, "coin_label": "Unobtanium", "coin_name": "Unobtanium", "coin_shortcut": "UNO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 50, "High": 160, "Low": 10, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/unobtanium-official/unobtanium", "hash_genesis_block": "000004c2fc5fffb810dccc197d603690099a68305232e552d96ccbe8e2c52b75", "key": "bitcoin:UNO", "maintainer": "choicesz ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Unobtanium", "negative_fee": false, "segwit": false, "shortcut": "UNO", "signed_message_header": "Unobtanium Signed Message:\n", "slip44": 92, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "unobtanium", "website": "https://unobtanium.uno", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 70, "address_type_p2sh": 50, "bech32_prefix": "vips", "bip115": false, "bitcore": ["https://insight.vipstarco.in"], "blockbook": ["https://vips.blockbook.japanesecoin-pool.work"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "VIPSTARCOIN", "coin_name": "VIPSTARCOIN", "coin_shortcut": "VIPS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/VIPSTARCOIN/VIPSTARCOIN", "hash_genesis_block": "0000d068e1d30f79fb64446137106be9c6ee69a6a722295c131506b1ee09b77c", "key": "bitcoin:VIPS", "maintainer": "y-chan ", "max_address_length": 36, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "VIPSTARCOIN", "negative_fee": false, "segwit": true, "shortcut": "VIPS", "signed_message_header": "VIPSTARCOIN Signed Message:\n", "slip44": 1919, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "vipstarcoin", "website": "https://vipstarcoin.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 5, "bech32_prefix": "vtc", "bip115": false, "bitcore": [], "blockbook": ["https://vtc1.trezor.io", "https://vtc2.trezor.io", "https://vtc3.trezor.io", "https://vtc4.trezor.io", "https://vtc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Vertcoin", "coin_name": "Vertcoin", "coin_shortcut": "VTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/vertcoin-project/vertcoin-core", "hash_genesis_block": "4d96a915f49d40b1e5c2844d1ee2dccb90013a990ccea12c492d22110489f0c4", "key": "bitcoin:VTC", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Vertcoin", "negative_fee": false, "segwit": true, "shortcut": "VTC", "signed_message_header": "Vertcoin Signed Message:\n", "slip44": 28, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "vertcoin", "website": "https://vertcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 33, "bech32_prefix": "via", "bip115": false, "bitcore": ["https://explorer.viacoin.org"], "blockbook": [], "blocktime_seconds": 24, "cashaddr_prefix": null, "coin_label": "Viacoin", "coin_name": "Viacoin", "coin_shortcut": "VIA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7000, "High": 20000, "Low": 1000, "Normal": 14000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/viacoin", "hash_genesis_block": "4e9b54001f9976049830128ec0331515eaabe35a70970d79971da1539a400ba1", "key": "bitcoin:VIA", "maintainer": "romanornr ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Viacoin", "negative_fee": false, "segwit": true, "shortcut": "VIA", "signed_message_header": "Viacoin Signed Message:\n", "slip44": 14, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "viacoin", "website": "https://viacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 142, "address_type_p2sh": 145, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zcore.cash"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "ZCore", "coin_name": "ZCore", "coin_shortcut": "ZCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcore-coin/zcore-2.0", "hash_genesis_block": "695b79c8c234b45b2eeb4722f33373e471c9b686ff78efeb39da95f824a9f81b", "key": "bitcoin:ZCR", "maintainer": "Erick Costa ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 34, "minfee_kb": 1000, "name": "ZCore", "negative_fee": false, "segwit": false, "shortcut": "ZCR", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 428, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": true}, "uri_prefix": "zcore", "website": "https://zcore.cash", "xprv_magic": 78791432, "xpub_magic": 78792518, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://zec1.trezor.io", "https://zec2.trezor.io", "https://zec3.trezor.io", "https://zec4.trezor.io", "https://zec5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash", "coin_name": "Zcash", "coin_shortcut": "ZEC", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "00040fe8ec8471911baa1db1266ea15dd06b4a8a5c453883c000b031973dce08", "key": "bitcoin:ZEC", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash", "negative_fee": false, "segwit": false, "shortcut": "ZEC", "signed_message_header": "Zcash Signed Message:\n", "slip44": 133, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7461, "address_type_p2sh": 7354, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.testnet.z.cash"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash Testnet", "coin_name": "Zcash Testnet", "coin_shortcut": "TAZ", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "05a60a92d99d85997cce3b87616c089f6124d7342af37106edc76126334a2c38", "key": "bitcoin:TAZ", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TAZ", "signed_message_header": "Zcash Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 82, "address_type_p2sh": 7, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.zcoin.io"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin", "coin_name": "Zcoin", "coin_shortcut": "XZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "4381deb85b1b2c9843c222944b616d997516dcbd6a964e1eaf0def0830695233", "key": "bitcoin:XZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin", "negative_fee": false, "segwit": false, "shortcut": "XZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 136, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcoin", "website": "https://zcoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 178, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin Testnet", "coin_name": "Zcoin Testnet", "coin_shortcut": "tXZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "7ac038c193c2158c428c59f9ae0c02a07115141c6e9dc244ae96132e99b4e642", "key": "bitcoin:tXZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin Testnet", "negative_fee": false, "segwit": false, "shortcut": "tXZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "testzcoin", "website": "https://zcoin.io", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zel.network"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Zel", "coin_name": "ZelCash", "coin_shortcut": "ZEL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zelcash", "hash_genesis_block": "00052461a5006c2e3b74ce48992a08695607912d5604c3eb8da25749b0900444", "key": "bitcoin:ZEL", "maintainer": "Cabecinha84 ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zel", "negative_fee": false, "segwit": false, "shortcut": "ZEL", "signed_message_header": "Zcash Signed Message:\n", "slip44": 19167, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "zelcash", "website": "https://zel.network", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}] From d2ba0704247c249f355ead765c9f3bf87d6ce915 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Fri, 1 Nov 2019 12:34:47 +0100 Subject: [PATCH 03/22] vendor: change fido2-tests to our fork --- .gitmodules | 2 +- vendor/fido2-tests | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 646c271d8..22077424f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -23,4 +23,4 @@ ignore = untracked [submodule "vendor/fido2-tests"] path = vendor/fido2-tests - url = https://github.com/solokeys/fido2-tests.git + url = https://github.com/trezor/fido2-tests.git diff --git a/vendor/fido2-tests b/vendor/fido2-tests index cb4560f3e..f414dd2bc 160000 --- a/vendor/fido2-tests +++ b/vendor/fido2-tests @@ -1 +1 @@ -Subproject commit cb4560f3ea569093d0a2be414a4d01a94082d839 +Subproject commit f414dd2bc1094f148b217ed58516ccbf4cf43690 From 2d8f70d49a45b4c011dc2b86f273d9a6795a4e1e Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Fri, 1 Nov 2019 12:54:28 +0000 Subject: [PATCH 04/22] common/defs: add mojeid.cz definition to webauthn --- common/defs/webauthn/apps/mojeid.json | 4 ++++ common/defs/webauthn/apps/mojeid.png | Bin 0 -> 21243 bytes core/src/apps/webauthn/knownapps.py | 3 +++ core/src/apps/webauthn/res/icon_mojeid.toif | Bin 0 -> 1335 bytes legacy/firmware/u2f_knownapps.h | 5 +++++ 5 files changed, 12 insertions(+) create mode 100644 common/defs/webauthn/apps/mojeid.json create mode 100644 common/defs/webauthn/apps/mojeid.png create mode 100644 core/src/apps/webauthn/res/icon_mojeid.toif diff --git a/common/defs/webauthn/apps/mojeid.json b/common/defs/webauthn/apps/mojeid.json new file mode 100644 index 000000000..ff4a10058 --- /dev/null +++ b/common/defs/webauthn/apps/mojeid.json @@ -0,0 +1,4 @@ +{ + "label": "mojeID", + "webauthn": ["mojeid.cz"] +} diff --git a/common/defs/webauthn/apps/mojeid.png b/common/defs/webauthn/apps/mojeid.png new file mode 100644 index 0000000000000000000000000000000000000000..d41338cc83a5d1f65cd27693ed63b70bc8bf18e9 GIT binary patch literal 21243 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 literal 0 HcmV?d00001 diff --git a/core/src/apps/webauthn/knownapps.py b/core/src/apps/webauthn/knownapps.py index df092d629..0f617f855 100644 --- a/core/src/apps/webauthn/knownapps.py +++ b/core/src/apps/webauthn/knownapps.py @@ -105,6 +105,9 @@ knownapps = { "label": "Microsoft", "use_sign_count": False, }, + b"\xab-\xaf\x07C\xdex*p\x18\x9a\x0f^\xfc0\x90/\x92[\x9f\x9a\x18\xc5\xd7\x14\x1b{\x12\xf8\xa0\x10\x0c": { + "label": "mojeID" + }, b"\xa6B\xd2\x1b|mU\xe1\xce#\xc59\x98(\xd2\xc7I\xbfjn\xf2\xfe\x03\xcc\x9e\x10\xcd\xf4\xedS\x08\x8b": { "label": "webauthn.bin.coffee" }, diff --git a/core/src/apps/webauthn/res/icon_mojeid.toif b/core/src/apps/webauthn/res/icon_mojeid.toif new file mode 100644 index 0000000000000000000000000000000000000000..caea946380cb2837d819549e9b964a677b43fb44 GIT binary patch literal 1335 zcmV-71<3kTPf2D#06+jM1pol;(mzZaR~!fMXOJp}3~n2#9z6Icsz733$N&o3+Z-C2HLWc*- zcHiCE=I-9JeH2Go{QZshd+&4ay&nLz)KbgWO#|t$>M*?Mo&%P0x{-uur?fRpSHqXX zJ2(4?rc(Yajp|wIn5mvG{X@TN4Das@;QSp|; ze`@&>zBrMNGxfgROqM|XdC!;eVPf_z_0Ai}1VjeVcdD8X@4$Mk+_}Nx_o#H5^62(s zNa>n`mS5GoJHRPOdXmgJxx^STr^oy5Ikb;xvR==$`4-sDa(@tP2M>&1UvZ|h@LuUZ zaPW`!U1OD2xyDi}c%SVAmPh)r%02+SZ%Vy{dt2_Xk`AD*ai*dlOZ}BPboJ=@^R8yT zAA194`TKEPp8Naa;${6<>JZin@0@AVcX!t7)FJKVNw>bac;sO2(+2->$YmTNJXWFjj_*8s@JSVxt{ch)^_=Pp2KHsn354J=5 zH{QwS?dXT_zI{tEXJ8FP$gDxVQ_{0T_e$U0+qfI(eS`InFun<%`e(K?Cfj@A#n6=e ze%;K5B{`iXG%~$r=~0}c!IoM+1T6IT!FhbA>X)baj$pJcZOP0@m_@K3?82UN(65%t4+3ZIbmOd@H+_)mlF zhob?R<-gzEeSV^{VF`&P2Ix%L`9~`R`h@ zKWg>&af$}IvpG?6{_gcaCLnl|jp~)XAVQ%hpB(@XN_Y|VHz%Oa75X5oF4?E(q)n@H zN5gR9W{mP(>i2Q8m&^Hf^S(+Kx;_TPnd4TqdUCoK_AlS&V)A;uzJ05(LY<*j$+s2m zUD6wc#*f}X5~JJ1nNyxbpKm=$t>EIL8M$|81!CUaFwG;O+4_;p3SOQGlejeJ-2eBSxITlrG{I$7uHRJ!D!8-S&{erm;f zt)7(qOHseMQoMZL=TsTN!`B`bzxAW!|L;fB?m18<`+-bCtG_=2 tRq*-#pvnFkRLCDk5kgztjJC_S%bN97^h0>@AhmpJJpr}UQcEpm@*nJf(n|mU literal 0 HcmV?d00001 diff --git a/legacy/firmware/u2f_knownapps.h b/legacy/firmware/u2f_knownapps.h index e8b2fc457..2b30c03c0 100644 --- a/legacy/firmware/u2f_knownapps.h +++ b/legacy/firmware/u2f_knownapps.h @@ -144,6 +144,11 @@ static const U2FWellKnown u2f_well_known[] = { { 0x35, 0x6c, 0x9e, 0xd4, 0xa0, 0x93, 0x21, 0xb9, 0x69, 0x5f, 0x1e, 0xaf, 0x91, 0x82, 0x03, 0xf1, 0xb5, 0x5f, 0x68, 0x9d, 0xa6, 0x1f, 0xbc, 0x96, 0x18, 0x4c, 0x15, 0x7d, 0xda, 0x68, 0x0c, 0x81 }, "Microsoft" }, + { + // WebAuthn: mojeid.cz + { 0xab, 0x2d, 0xaf, 0x07, 0x43, 0xde, 0x78, 0x2a, 0x70, 0x18, 0x9a, 0x0f, 0x5e, 0xfc, 0x30, 0x90, 0x2f, 0x92, 0x5b, 0x9f, 0x9a, 0x18, 0xc5, 0xd7, 0x14, 0x1b, 0x7b, 0x12, 0xf8, 0xa0, 0x10, 0x0c }, + "mojeID" + }, { // U2F { 0x08, 0xb2, 0xa3, 0xd4, 0x19, 0x39, 0xaa, 0x31, 0x66, 0x84, 0x93, 0xcb, 0x36, 0xcd, 0xcc, 0x4f, 0x16, 0xc4, 0xd9, 0xb4, 0xc8, 0x23, 0x8b, 0x73, 0xc2, 0xf6, 0x72, 0xc0, 0x33, 0x00, 0x71, 0x97 }, From c6d6d6c1d7a04bacc7b50538425823a6313f738b Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Fri, 1 Nov 2019 13:59:12 +0000 Subject: [PATCH 05/22] tests: skip speed tests on T2 --- tests/device_tests/test_bip32_speed.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/device_tests/test_bip32_speed.py b/tests/device_tests/test_bip32_speed.py index 2b0972744..46c01c088 100644 --- a/tests/device_tests/test_bip32_speed.py +++ b/tests/device_tests/test_bip32_speed.py @@ -24,6 +24,7 @@ from trezorlib.tools import H_ @pytest.mark.flaky(max_runs=5) class TestBip32Speed: + @pytest.mark.skip_t2 def test_public_ckd(self, client): btc.get_address(client, "Bitcoin", []) # to compute root node via BIP39 @@ -35,6 +36,7 @@ class TestBip32Speed: print("DEPTH", depth, "EXPECTED DELAY", expected, "REAL DELAY", delay) assert delay <= expected + @pytest.mark.skip_t2 def test_private_ckd(self, client): btc.get_address(client, "Bitcoin", []) # to compute root node via BIP39 From 6cc44b133c2bab941d07a213bc99b10fccb9ec3a Mon Sep 17 00:00:00 2001 From: Andrew Kozlik Date: Fri, 1 Nov 2019 16:13:45 +0100 Subject: [PATCH 06/22] tests/webauthn: Account for the increased limit on the number of resident credentials. --- python/src/trezorlib/cli/trezorctl.py | 2 +- tests/device_tests/data_webauthn.py | 453 ++++++++++++++++++++++++ tests/device_tests/test_msg_webauthn.py | 104 +----- 3 files changed, 465 insertions(+), 94 deletions(-) create mode 100644 tests/device_tests/data_webauthn.py diff --git a/python/src/trezorlib/cli/trezorctl.py b/python/src/trezorlib/cli/trezorctl.py index 5cb4dd35f..83b02e39d 100755 --- a/python/src/trezorlib/cli/trezorctl.py +++ b/python/src/trezorlib/cli/trezorctl.py @@ -2012,7 +2012,7 @@ def webauthn_add_credential(connect, hex_credential_id): @cli.command(help="Remove the resident credential at the given index.") @click.option( - "-i", "--index", required=True, type=click.IntRange(0, 15), help="Credential index." + "-i", "--index", required=True, type=click.IntRange(0, 99), help="Credential index." ) @click.pass_obj def webauthn_remove_credential(connect, index): diff --git a/tests/device_tests/data_webauthn.py b/tests/device_tests/data_webauthn.py new file mode 100644 index 000000000..b7bd26cef --- /dev/null +++ b/tests/device_tests/data_webauthn.py @@ -0,0 +1,453 @@ +# Valid credential +# Relying party ID: example.com +# Relying party name: Example +# User ID: 3082019330820138a0030201023082019330820138a003020102308201933082 +# User name: johnpsmith@example.com +# User display name: John P. Smith +# Creation time: 3 +# hmac-secret enabled: True +# Use signature counter: False +CRED1 = bytes.fromhex( + "f1d00200f8221312f7898e31ea5ec30409527c2b0bde0b9dfdd7eaab4424173f" + "bf75ab67627fff60974460d903d7d96bb9e974c169a01b2c38cf2305da304169" + "d4e28f59053a2564bebb3eb3f06c2182f1ea4a2f7cebd8f92a930a76f3b45334" + "1e3f3285a575a54bcba9cf8a088dbfe24e8e691a5926160174e03aa941828f49" + "e42b47804d" +) + +# Valid credential which has same rpId and userId as credential #1. +# Relying party ID: example.com +# User ID: 3082019330820138a0030201023082019330820138a003020102308201933082 +# User name: johnpsmith@example.com +# Creation time: 2 +# hmac-secret enabled: True +# Use signature counter: False +CRED2 = bytes.fromhex( + "f1d00200eb3b566f4ea0a219552b2efd2c76e1ffc2e641d3bf91ec92d47a4ed4" + "d78cf42845248c4e982a503618bac0cecfb0fa91fa10821df1efe1d59ac8314e" + "b57eb7f32a1a605f91e8692daf1a679b55ab1acadfded5e0c7fd1365e2801759" + "bd3a4450dd5589586ab072da79" +) + +# Valid credential which has same userId as #2, but different rpId. +# Relying party ID: www.example.com +# User ID: 3082019330820138a0030201023082019330820138a003020102308201933082 +# User name: johnpsmith@example.com +# Creation time: 20 +# hmac-secret enabled: True +# Use signature counter: False +CRED3 = bytes.fromhex( + "f1d00200ebee50034eb7affb555602eed0812b63d158b57a4188523ad064a719" + "febf477c52cfcc7ded8d7a7a83af52287ed1ecee9f74f62b7e55ad8e814c062e" + "009bb3b3391dfec79dc93053b0279eca7207358a0962865da55668b2509de773" + "8c819dbeead9997778319ac1f1c7318fd6" +) + +# Relying party ID: example.com +# User ID: 0001 ... 0064 +# User name: jsmith +# Creation time: 1001 ... 1199 +# hmac-secret enabled: False +# Use signature counter: True +CREDS = [ + bytes.fromhex( + "f1d00200d1fa3eeffcf5f9f82bd9be7e108c11fe506efd9be94b8ee50e0f5283" + "8608cee3370ec315cb7554ce1eb845a5d6b1b44c85a0f3defa27a1c20e472347" + ), + bytes.fromhex( + "f1d0020096d55afffd8fcb403811d9b121425c661c30534dbf2f7d88e8348ad6" + "0410610e9f20723edf82099c2c9d927de292b441d589b8c8407337d76e43ff63" + ), + bytes.fromhex( + "f1d00200df6d8a20b26104c669d5f6938a79ca67089d0cc23f2453a17563cc1b" + "34bce1fdf8c9c46898daeb2ee7111ff6613cd483ce2456f306d66a5fe270b549" + ), + bytes.fromhex( + "f1d002007c409ddfaba1388b0e4b6ca89242f71690f9ac26ce57940868dfa5ad" + "5c2eb638cc300e63617c4aefd3b2a5be5a7e834766041298fe7e6d2f079e1cea" + ), + bytes.fromhex( + "f1d002007dbccce4b85323d6b7838d5c420e008c4671fa352ed24903a36fa04c" + "7ce1c7f58df1dc22783a1f32c2df315bb73fa79779f85b37e1f6dc0f7b3898c9" + ), + bytes.fromhex( + "f1d0020032586473e9598db0345a304dd0155fa23498ed89bbe5263c9c2a36d9" + "1299f368a1e065e056113a858774b09ecd21968c6cac8697eef4cdc80043d7ab" + ), + bytes.fromhex( + "f1d002002b6a33d78e798b0495b3d0e82ce05165c12492b8f527e040b9bef0a6" + "61bd6d0395a3e32dcbc0096d4c000f79e80a4639fbfb046d1630dd941fcf614c" + ), + bytes.fromhex( + "f1d002003896a24f37e402bb2a74e12b8b5e6a69a70051047d20fc3d414baf85" + "c5d5891156484c0f79737183be7088f4e9c51f8abd72b7d5c82990d8dff520a8" + ), + bytes.fromhex( + "f1d0020069de9c86b414454b83b8c49a61f5eba20644419aa1ba298bab00d22a" + "9cbf3a32d009b9eb34ca637700d54cfafe95fbc92835e191e973777f78cb6f1d" + ), + bytes.fromhex( + "f1d002000ea8377a15109607702283fbd8adf9069d784c085a3492215fc24062" + "c229ef90484a88efc54c34eb9617d184ee688ad3cf79e9c8deeba617981fda10" + ), + bytes.fromhex( + "f1d00200b74429cdaa5ac7ce014a480531935f1939a8abe20ce9ce92663e93b8" + "5f6e6e94c5e797f54f64a09acd49183b1e72f694128385d74703d4f6ffb17e49" + ), + bytes.fromhex( + "f1d0020034cf7e940331828986a2dde06e58df4a4d37c60c5581f14ffe9a13b7" + "63b9ef25e4a6b788c24f4b555438906b56d9d21811c40ad2c3f36944ec835075" + ), + bytes.fromhex( + "f1d00200956c84d2f0d4f84a8f6359fb41fc49d9dac960cb798a9ebc44744315" + "b29c748725c5544b0b5130ff7cd0755b12723fb20a3529f2238aabc4d50de759" + ), + bytes.fromhex( + "f1d002002a41aa7181fe2435ec4550879dc53dee7d6da20e053978eaa8c622ae" + "c95654ebcea749e3f087911755120dde2947fd6b5f577334330c2448ed1212df" + ), + bytes.fromhex( + "f1d0020083a920a906c16c64ad247384f2d97d3497cd7bc3e32bb3172f8fb738" + "1220a94bbbcaf0010fe9a7fa1da988f43b33a3418b40a7b7965e1f2135e60d0c" + ), + bytes.fromhex( + "f1d00200708783380f7403bd22d2508b1e193dc6eb6dafc49fbcc60337ad5e30" + "292618056159eb365947945552baacb7e6f18891af8cea63d12bc129d25b3a19" + ), + bytes.fromhex( + "f1d0020001b3dac46c70f5d9dbb03c1309476352a44025c475d64ec314558fab" + "112b856c8ab0532c38f7796398000328c351d4fbc68921328fd0422eda045f68" + ), + bytes.fromhex( + "f1d0020086df68432db1e745a8e02f678838b033ccfeb92b205e44f5b8ab6733" + "5c53638905209b0a42432b19d830683aca23ace901c7f56ee1388dcdb0ef95c2" + ), + bytes.fromhex( + "f1d002008f84bee5a2a8e3c1990f0142903acf6b82ee4be4c0a687d2e0aa05bd" + "4f88e82e4fce1f8b306adda855c79b27966f1ab59e58b96ae4e050ba7f998e6d" + ), + bytes.fromhex( + "f1d00200ec9a9fea5bd94fdffe3efa9db90a218f3134ae6450d3731f7678c754" + "3e6f930cc660d2f2c2d6f3a876470b6fbd82f758d0d23c66c8352cf6aeb0d500" + ), + bytes.fromhex( + "f1d00200ad3de50b28038b33670ca88c1ad1ef9a9a0f1ea8532cede675259f0b" + "c192c5839bf53116c3c55fdcaf00103cb5d16184f28f607e840db7ac018375f5" + ), + bytes.fromhex( + "f1d00200227f531419f4a5f3a44e8f914c398daa1d16c8e64f9adb61c3f891b6" + "32f86406e3f97b1423909118037f44edc07fdf134ad83534de6b467f07f29050" + ), + bytes.fromhex( + "f1d00200db01a4b17e4de3c8c5162892086a2dfb5f39d96f1d943e92a23c7355" + "d04b117a054750b7e1738d20b339b0a6738b3ec31ff6ba3186716f5f3dbfef2b" + ), + bytes.fromhex( + "f1d00200a825db1ae7ccf8971a654418b3f98c4fcd4afc8d0746c2537b844c2e" + "f075f4ce3577b71211b1bb39c6b2da2d487f813839066fa3a82f529d908f3357" + ), + bytes.fromhex( + "f1d0020099d8836f24e95e953322a967f177fe91b1cf052a3a9e8dcb3144a591" + "6d9fd56507cfd02ebefaf1b126e8a638aeb7438d487e5bd64628403c85c1022c" + ), + bytes.fromhex( + "f1d00200fe5b192545d32d35e02badd3ff1042c6717572199fd477b5c1057ab2" + "7117f06b2880bbbbc2fae7c3d1341aa1dab25954a23a14373ab2146ac86ff81c" + ), + bytes.fromhex( + "f1d00200678dba619a2b4e563186d005ce22f818f968fc6f3e9cbe53c10fa2dd" + "7a31fcb2e8e78fbc0ec3ed47c6b26235d6ef723f6aadc4eb51ce9ae195d1987e" + ), + bytes.fromhex( + "f1d00200a48313beb3fae3847600614d82b77bd3d15a4343e085f69001adb64d" + "57931fa60ead81035ccacb7935052d86ceabb2d91a8cf5fe8c94128b576976ee" + ), + bytes.fromhex( + "f1d00200c58f1cb960be670e3fdeede488e83ee4aec29a6310b15ff54da2e162" + "326aa0e2f90978da7a7e35ffbbae1a28349f4489bb92321f9776714581159848" + ), + bytes.fromhex( + "f1d002001af21420b19a7fda5c54d5477e19db70249faf4b0c6c06fd9d832e0c" + "20c7e4538b6206518468f67fb12169e0e08aa80bad6c2dffb7c5093fae8a9ee2" + ), + bytes.fromhex( + "f1d0020033d3bfe1f6fe4dc1dde90007a05a4d61457aff3c16a842325f03a858" + "f1fa9f255375c5dfc687a18fc1ca9a98c3ff1cbf1e94122234a6b82b9ed643bb" + ), + bytes.fromhex( + "f1d00200e050f794bf4e173d120da550c0c6b8639d51971992ea4cc181d118cd" + "37241b13846cc19773bb23cab988377ed71543b1972a9a0916051f55eac3bb8b" + ), + bytes.fromhex( + "f1d0020031afc727dc5e29ed8b6cd00691cb601543940a04035cad49bc2f3967" + "7661a3f99cfc4ceb6c321710ff17bd76626fe8c9264c8fbcc3157cdf667a5ea3" + ), + bytes.fromhex( + "f1d0020076fd67505dd6398118e4dcc65fea2e83621d05d4f0494b0741f2229b" + "7ebd687dbf73dacc1aa739f83098ae59faca6314de05039496244612909f4b94" + ), + bytes.fromhex( + "f1d002003fbf11cf92c3af7fc90d8ad91737ca26915d900ca02da27327e59928" + "9b893a3cb0b4c426455034c387b5892a040cbb63a809c126b104cfa4830188f9" + ), + bytes.fromhex( + "f1d002005c6942920bf5c469eec62403dd0cf472c0243c8a024befabc57908c5" + "82183ac1885f72b2b11d6946fc17689e3bda6bd119c5f9a806a1589fa66a656f" + ), + bytes.fromhex( + "f1d00200ddc2bbbc98e630a91739a3d4e53a3d80d536ca64b44383ab15c41d2f" + "a1d877326ffc77e193c031ca1fecff7935818ac53f25e3831e584e64376df72d" + ), + bytes.fromhex( + "f1d00200127a577e4952456d1437de70e0197600c6f51ca28ada429e93e56f1d" + "709f143b62c54d9d89c8effe8c76116ea50a9f7d0532583fd911c0761608536a" + ), + bytes.fromhex( + "f1d002008b7dba296eb57febf5fdf2cbccde7f95d589e2b2adf3f0473c0ce83b" + "95bab01bfac2938b4c7f626d9ef77961c0cc5a577212e220481242fa02edbd76" + ), + bytes.fromhex( + "f1d0020018e9393c975997210aaa8ffe8eb722cc86c3f5758c772de05a629150" + "46758ca8f9ae66e87f2c1395540fe6397d601055624d003a9985ff30fa58ff79" + ), + bytes.fromhex( + "f1d00200c996f9eb94b1d063e3ef3ccc1f62a644229ec49bf723efc4452bc172" + "4ff009a53d6257450212bbc258cf3af53e21721956552fa90b5f159a75ae2f28" + ), + bytes.fromhex( + "f1d00200eea3e76c751ac11150e934a948876ed28fb8a6f90c1bcbea583aa6ac" + "e167067f24684e15f1360d81862d76754603b61f6f38b7c7126b4431afc1c895" + ), + bytes.fromhex( + "f1d00200177abcc78a50e5656106a5a467bcf4f9d53a6217e91ff1488b0f6274" + "2daf383737849be9afb417bfb84604af7d22a281d7e442ba4b5722939d907568" + ), + bytes.fromhex( + "f1d00200142c682563283df266724cd945758b2c4b182038694eb61102d4c77b" + "dc83d5fb2bf39c2589d356ff970b7c9b7277754d61c8574251558bd7011a4a0e" + ), + bytes.fromhex( + "f1d00200f536387dd05b1c5cef7cc42d287e5ad12d02043e78c84bb8bb13dd3e" + "706b666218b672e6742ab9348de1157177d311f84c5eb78b0b622386c975c5aa" + ), + bytes.fromhex( + "f1d002000af7b734e17a2e56ccd6b921bbc050608ef1fd5b76c128589ff1064c" + "ec7d280ad3db773d2aa95b363b7a8e8b48e9c2574d30573eb7bf72789a9d2c98" + ), + bytes.fromhex( + "f1d00200e3609ef6e6503f530db35797cd9374bc6a16d7fa6836e4f9dfbb73e2" + "ec095e39ee563cf8d9f2685fe754f7072d96b17d46201f8fdfa17ff9d066a62b" + ), + bytes.fromhex( + "f1d0020050ce98d86f4d3544021cd57f578381c4dd77c54e24bc5815e357b71a" + "7059767b1c00462deee16324123b486cf55e08dda98137576794c9bae8dae799" + ), + bytes.fromhex( + "f1d0020061ef10a94cc124f23b0cbd0dd3f87da13abd0a5c93000fe06728e3a1" + "d428af29fcfe8cb36b8499d6d32c4e159f55da76449827331b9bc8b8b120db58" + ), + bytes.fromhex( + "f1d00200662f1ff88dffdce3881b3fd1b3927d443d93af22321074791895b55b" + "4d2c5db565c2b876c1d862a3e8f20df75d548ce32e6e82f81cd6ac15df5f874d" + ), + bytes.fromhex( + "f1d00200ef1d37f782b27facf9cfbc4e69d8ab322d843f6c2db6cae0baaee2af" + "2f292740734287c01eff348ec5643ca2a6ea7133348dc4fd696c9046360a05d8" + ), + bytes.fromhex( + "f1d00200ccab14d4bbf4da04dee2529f39352a600ce9a050f10e7516b1a19e8b" + "50bcdb7289bd17765cb52c720a3d1549f34dae6685e0a3aac4ee8ad295d28d66" + ), + bytes.fromhex( + "f1d002000d4c6bbe08fe7315c7095259095edd40707746f81fdbd9c69a9898ea" + "adc1b3b9ec15a1a2103d9912190a5b50918411fa0b709daa0eee80c8c4cd706d" + ), + bytes.fromhex( + "f1d00200024987ac7974960784134cf153cfe8f18e09e9b55a1f0ea2d84c4075" + "a6eba109758f0f7ad9f4d98d02d110c5ee83e74224bb49b7ad93e12ecbb190ca" + ), + bytes.fromhex( + "f1d002003bddb93f5eb1c72125696cd6faf2091ec8f50d2830d6addbf9533dd1" + "065db96e625030a45da63b86ba7ce3c330c90c63afdf0a80fcfb6ed48517f424" + ), + bytes.fromhex( + "f1d0020088e01d70478ab1c2fa427a5df05c37f5259318e37b07feda27ea2240" + "39bced35732f1e8b855cad4e691ce8c592cbacb22da84f8f90940a1db45ae90d" + ), + bytes.fromhex( + "f1d00200f91829dc046ec93a9321e338708288a3ab7ebc935440f0114387eeb0" + "b36cd1b15c0b6d9bf517acf9af4dd77317a8031a8f1545e84c30c3847bd7b689" + ), + bytes.fromhex( + "f1d00200de7f09f5a5e58af3c05a195f0205c3a503de9c886e5c796d83444167" + "12d0ce1f73acbeb5caba771ced77958ab6c76d655747801ea30f0e4d14c43942" + ), + bytes.fromhex( + "f1d00200c70a02b07ac9430a91ca1071eddc6250605b13ad15e2a26aae4fd192" + "d56ec3c162633aa5dbe4adbecb904f6e047d329b5bc8e8d2bf4e6aecbecd7e85" + ), + bytes.fromhex( + "f1d0020084c8abcc13baf0a756f8a6d9afcc33839ec30ab48aa82dc41330605b" + "bd9c1b72d08e22e4b0ecb59de3c34db1e5f9d42569f16f75dd3ee5ce326746b0" + ), + bytes.fromhex( + "f1d002002562128b40ad15359f3fd07c81a0a0a45041cdf42bcdd9c0be45c903" + "7761ce4c335198db6d1d12aebc53dce9406bef0eb2451f4d2f3f77a7e0d6ffdc" + ), + bytes.fromhex( + "f1d00200fa4f4a4a119f7c6d3ccdccfb2c84eeda5304e76f43d65780ab096282" + "9036153e70751f3fdf2e5092517145bb0e1b1cb8e2996b0a776cf115ce6f2fca" + ), + bytes.fromhex( + "f1d0020093521f24d6b6479d3d80d2a6e3ae0865052f0339001eaeded9f845af" + "24c65975b321a16b8ae58bd138a1801ecd3f927aa1463144fcf0eeb111b3b374" + ), + bytes.fromhex( + "f1d00200c0ff66221f7050fff2fe3733944b9afbe2cf87ed6a470d00ed506135" + "92093ed4de0c1028e24453033a14d8622cd6fb582528517f24fd1d422f24b599" + ), + bytes.fromhex( + "f1d0020091730144bc97b68deb8f850089eb7f0f6d162be6b385038fa01a5f36" + "51124c42d57b45dd1f4046960d0a241b8e21b874f989ca27feee9ef5dd6318f3" + ), + bytes.fromhex( + "f1d00200567595ebbd2c2c35f886f5e7797d8008744ee2a2d4cba66d2e5d6f78" + "836915eebc583c76c7c5a43678606b0ab2bdeee6d75cbe0b2058f3742ee0d95b" + ), + bytes.fromhex( + "f1d002009fa021117275aa30295604185d3de969d7cdec36d2d689de8ab94712" + "9e8b2383ce1e8e3073d2ed5e4a209b0f63a4192b81a08f166e10487fce7e2720" + ), + bytes.fromhex( + "f1d002003c62e5126bd8142fce922b116708e06da1299f9178bee0f3d48fa01f" + "bc571e70ff369beae6ce813b42674879d92d559791b1c5d26560860e5d004f2e" + ), + bytes.fromhex( + "f1d002003dd94e2e7849f337777ec72f1e3382e1ac69df227a85a6b0e5d94021" + "8fcaa17ee11f25ace0f3f58cc4b21804198a59713ff280dcc0471c0437a57ee9" + ), + bytes.fromhex( + "f1d00200f2eb3955a95a04aff4e347b639e28dbb8bbc5cb212a20f4d2eb7e572" + "a7356e8ce1f39504044e27f6a0f5cc0b67b02f9d25462a36fa2246d7d5025a4d" + ), + bytes.fromhex( + "f1d00200eb2025184e41627855580fe0e889d72725aa5bf0555e581900d22bee" + "83731d45596362b2d21338bca6a8aa5ba1228f1b51178cd888a52bc7f89f8422" + ), + bytes.fromhex( + "f1d00200f80b26d4f75e5a56ea2ffbe611a9d53affbeb34866165f08e9b167df" + "264cc4924ffc18677ce157cb10ab1c320843d73b5eefcc9334e0ef401d3f5fca" + ), + bytes.fromhex( + "f1d00200295f7da2741eb8bb43b73e1a6d124aa516ab017b65a67bc2b817abf2" + "2a5e5ed122f80c3b4758c0e4e3155210bdb87ccf41d2b0538d462c156630b38a" + ), + bytes.fromhex( + "f1d00200ceef2538d534069f308099f18ca66837cbd73510e6dca90fa6e822a4" + "63d3b2d9ccca10d31eaba9ab4f5b3eba9e209b69671b90c96913cb624b91d3e4" + ), + bytes.fromhex( + "f1d00200773f9ebb6a966003c1d29e94034840e1da6d0c749dfcbaa957ca1cc8" + "3d95730b74ec9af06c7210e5106f8600e2c5b69770a1089098a927c7813cef07" + ), + bytes.fromhex( + "f1d00200f4584d53c3afa1f84692b772b1964b2fddb0e9e6e85e88b05deddeef" + "fc0a6d465b2cb74e6c29ea43ba3420a96ede4db2771d7677064fe68c07fc3eb7" + ), + bytes.fromhex( + "f1d002005511263db0b292334f2644c1072ea93f198085b58abd3b0bab63925e" + "8f633fc2179618da8484831c2214d2a378f7de77ac5d70b7e57fa1932722bee7" + ), + bytes.fromhex( + "f1d00200eafcc22e4107f5ffac371d9217b7419d5e5a50b81353f9ed13b423d2" + "9862713c776e82dbbf084c9c6c4a04d57964e3f3dc1a39b694e8ee609903edbb" + ), + bytes.fromhex( + "f1d0020043a8e5a2c630ae716d510c2d5099936ce8ae20b31588729f06ffce29" + "133d560779b9665713e5f86426909f9484cb3e13d536f2901abbc92f8ddc7429" + ), + bytes.fromhex( + "f1d0020030e5a0aacfb69b63e2b5643091fdd241a149a2f53f312f7cc9b14d32" + "da85cb400cd98b79314e361b0fd6daa65e1af40601ec9d31d7585a49261b6c33" + ), + bytes.fromhex( + "f1d00200c13b248e2ce2edb99bf7ec8bed66a9f106f241452b5df2c8d34fd5fd" + "a60d2fd9181f31fc51a8ca113161a569d94857f4848658a1a7097d58f0354279" + ), + bytes.fromhex( + "f1d0020046cf11abed5dc2426826df3d5677423b19e1bb93bf35f7597555d8f0" + "0a845f4427156e00d0bbec00b34646a8cf3ab6687d0c4358043522d176afe1a3" + ), + bytes.fromhex( + "f1d002004f470418620cc71f59a00b5e4e266c39db094b53890614d34f5f6f43" + "7238b441ccb4d26a5a4094f798f6d207ecbc5f42ef63dd71953cd0ad97f43619" + ), + bytes.fromhex( + "f1d00200ac8cc3861ba035bbbed695be922e4900a9e615ae973b39407a053638" + "f361261856eed733f4652ad3467f04a315ae9423d837a08c55ee90d25f69199a" + ), + bytes.fromhex( + "f1d002006d6a01b0e8c88d212797560de12f16bd07920ef73d3554946034d901" + "8a8f649f16d918f91c0e3511c06496f673e57b2340992676a1383fb94daa3157" + ), + bytes.fromhex( + "f1d00200e26206dad9043a8264a880703b905e752115899348f027c318b2651e" + "b6b4bda5cad639e0a05e6d7255c95ec47088c0f9b38104e8f8b09b8459030cfc" + ), + bytes.fromhex( + "f1d002009b48bfab3e65364385cb9635dcb59a31b946dc2ce083d6c942d9c8a7" + "cd3a964a8e803a21f285fc208d2c95fac10c103e1df2b32d4232804a4349aae2" + ), + bytes.fromhex( + "f1d00200686b3157a7d7e4d7da704970c300a47656ef5063ef7367f3714e1161" + "6b9990de98088ef19c20c3cae50c898d8d6223bc1a5690bd70bf5aa4c57d0485" + ), + bytes.fromhex( + "f1d002005969a153e4c24b15f3b03289a4f0b0a9b118f7a099859ff23e2351fd" + "b8dc168b9f48f13eb1f4ce42c8f6d8f96f84caf3ca4f2659feb117092e44c891" + ), + bytes.fromhex( + "f1d00200bef323780508ee76a05934e6caa842f03aacce20e2b2ab38814dbc60" + "a647503e27cac10cd991aeb1d94ef25fbe22ee77b40c7e3a747c5bd977366272" + ), + bytes.fromhex( + "f1d002002718e42b5ab772b4f11e1a03d23484fba3b191c9840601676316f4bb" + "701097fa51ce330ee5e94d3644a9ea6fd4022018cbe4ae43073486be40bc9368" + ), + bytes.fromhex( + "f1d0020064ddfb657309336336400588853497f7e33ecf8c0b0faa2a0cad9692" + "f0b16351750ae97d87f3c6c2a326f6bf83aaf320751cf97951f4eb7c541a5855" + ), + bytes.fromhex( + "f1d0020085442e0c206c12fbff3093e2bacf8726dd6d91c3853a3e1cbad04545" + "9eb3587b8aeff00d7cdb516075c204bd31f8686e22c6218d29f2c9a982cebeb5" + ), + bytes.fromhex( + "f1d00200dafd58d371b362371c16fae5c88c830767e0908190e5a0a461d418b5" + "4e5506e306996f8f7031ff6403603b077a28c9de2464339622bcb91f39fb8c20" + ), + bytes.fromhex( + "f1d00200f361d457b6bef9e19d26e0d7df45fcd2899b2777b902b36c52ff17be" + "757e26a82d5a1ded2cec0346b4bbcb9e9582dcba78894b4fc538de08c3915cfc" + ), + bytes.fromhex( + "f1d00200a07ec5327f218aded24032d88d25f9820e30f98712e576c0c54a4b5a" + "97922ddaa38c426cd58e8e9687a5c4fb47b9b16ee84dbfc205af7d34758c8973" + ), + bytes.fromhex( + "f1d00200f14744e79ca019364b43f6e096f40edd2e02eed78e3e77960d261e61" + "32aef6d4eb9a889403b3d7cd3bf5a75921e66f1fac3d28d0296abe951795ccc1" + ), + bytes.fromhex( + "f1d00200363d1b761d937a10d8f91a470bbc3672466719468b3eef3086b240b1" + "5210cf8c7470d99562ded2773d983087d128ab59cdfb6859cfa8dfde325510a0" + ), + bytes.fromhex( + "f1d00200ff1152ff5277aca889aebd2b63e3de24b4d71e0e3ba8d7bc69d3c4fd" + "8ec7589ad2f0c0baf41063d44b2da593dc5f615af7d2bc9d4ce8d9b17ca6e6cb" + ), + bytes.fromhex( + "f1d002001c2bfeaccb4b4080aeaeb8c47aae7c469672abeb0b28bb921e3ff91b" + "aa4e90200faeafda36fbaff7140dd6e727bc05942baafe8a9f45b43ed4ef8caf" + ), +] diff --git a/tests/device_tests/test_msg_webauthn.py b/tests/device_tests/test_msg_webauthn.py index 4ba0b6ecc..dd3dd92e4 100644 --- a/tests/device_tests/test_msg_webauthn.py +++ b/tests/device_tests/test_msg_webauthn.py @@ -20,91 +20,9 @@ from trezorlib import webauthn from trezorlib.exceptions import Cancelled, TrezorFailure from ..common import MNEMONIC12 +from .data_webauthn import CRED1, CRED2, CRED3, CREDS -CRED1 = bytes.fromhex( - "f1d00200f8221312f7898e31ea5ec30409527c2b0bde0b9dfdd7eaab4424173f" - "bf75ab67627fff60974460d903d7d96bb9e974c169a01b2c38cf2305da304169" - "d4e28f59053a2564bebb3eb3f06c2182f1ea4a2f7cebd8f92a930a76f3b45334" - "1e3f3285a575a54bcba9cf8a088dbfe24e8e691a5926160174e03aa941828f49" - "e42b47804d" -) - -CRED2 = bytes.fromhex( - "f1d00200eb3b566f4ea0a219552b2efd2c76e1ffc2e641d3bf91ec92d47a4ed4" - "d78cf42845248c4e982a503618bac0cecfb0fa91fa10821df1efe1d59ac8314e" - "b57eb7f32a1a605f91e8692daf1a679b55ab1acadfded5e0c7fd1365e2801759" - "bd3a4450dd5589586ab072da79" -) - -CRED3 = bytes.fromhex( - "f1d00200ebee50034eb7affb555602eed0812b63d158b57a4188523ad064a719" - "febf477c52cfcc7ded8d7a7a83af52287ed1ecee9f74f62b7e55ad8e814c062e" - "009bb3b3391dfec79dc93053b0279eca7207358a0962865da55668b2509de773" - "8c819dbeead9997778319ac1f1c7318fd6" -) - -CREDS = [ - bytes.fromhex( - "f1d0020029a297837485bf2b43f2a8cc53b759a03201cf6902cf25794a375214" - "aea1357cee1e2fa9188e8fb74e5b5501767ca740cd1f0c745bb72afd" - ), - bytes.fromhex( - "f1d00200ce4e44a4d5076b7d3037ca039894738183f18b0ef5edfa84b59ba4e9" - "2e9ce5fe02ddd6cd397c459636dfb45af740d268bd67610578581cc1" - ), - bytes.fromhex( - "f1d00200776ac8476ac5a621c135e9ab3d5c5c1d836843eddad88f94ff044989" - "cc941f5971bd3df1a3008e12ad16a11753cdfe113d023784a29bbbe0" - ), - bytes.fromhex( - "f1d00200f4bf428bc3ea21a64691bc1cfb3ae14d4ed29621777856ea81b8936e" - "51293fb8b073ab1c03fe7016b01f9e2bcac796f3c3c33515ffbf88c2" - ), - bytes.fromhex( - "f1d0020055e4d0a8b06951564f71dd601287929b396013d1b1cfd1ab237a6e1d" - "b53b7f562465ed53b3fc8ba7f0b5e05498fd13badfaac358694e76f2" - ), - bytes.fromhex( - "f1d00200ea2b8789416aa55dac3e8446da76a9fba3f52722329bf4820480faf1" - "ed35f2eb8577a0e3bbcecd6177d1a4c21faafc3411281ebbc2a8f100" - ), - bytes.fromhex( - "f1d0020043e37bb7c62fd11b6d446da96741123b38ab9123d695537357373970" - "8d0e7aaff1ed90306da2779c23fde88c68cd37171c871af4f6c6cc08" - ), - bytes.fromhex( - "f1d00200309ced39cf016b1ae284cd63e48310dd73e14f5f3af681fcfd84e121" - "6cbab4b1d00f505445b839bca1909521e4ba06209fd161bb98eb2b7d" - ), - bytes.fromhex( - "f1d00200c19e3a3e2ce982419b52487e84ceb42a92bbda1c029b1bb3e832ffa7" - "0321c22edfb6163ee5ec2be03b1b291f451667a6020a720c41653745" - ), - bytes.fromhex( - "f1d0020046ce52d1ed50a900687d6ba20863cc9c0cd6ee9fb72129a0f63eb598" - "dcd3cd79c449d251240e2098f4b29e4cfa28ab7b45b77f045589312d" - ), - bytes.fromhex( - "f1d002004f92099262dbedc059237e3aff412204131dad9cbad98147322b00ed" - "988cd7f7b2ea2f34b0388b3efa1246477d058e4d94773a38355bc2e7" - ), - bytes.fromhex( - "f1d00200ac93867d1bfbe6a6be75d943354f280e32fafce204bcee65db097666" - "e805b80d38f4f3094f334fb310d4f5cc80ccef603fdd6ba320b4eb73" - ), - bytes.fromhex( - "f1d002006d5d6efbe81fe81927029727409d0f242a4da827947ec55e118cd65c" - "e6f0d1ae4c7ac578f3682806b5e0e5bfaaf7d0416960ece3fc219516" - ), - bytes.fromhex( - "f1d00200e231eba4d9875231644ff1e38c83be7ce3508401b6184320a2ea3dc2" - "6092f807aba192c6fc5e7286dfc0e5ccc4738d6d8c8a1a440140b47a" - ), - bytes.fromhex( - "f1d002008841311e477753cbfa4b21779d4c04e7c5532f956f2c6995b99e1392" - "1143b64b4099c98b4b1c012ef06c1bfa673f192fec193f05cf26c0cc" - ), -] +RK_CAPACITY = 100 @pytest.mark.skip_t1 @@ -155,7 +73,7 @@ class TestMsgWebAuthn: with pytest.raises(Cancelled): webauthn.add_credential(client, CRED1[:-2]) - # Check that the credential was not added. + # Check that the invalid credential was not added. creds = webauthn.list_credentials(client) assert len(creds) == 1 @@ -166,28 +84,28 @@ class TestMsgWebAuthn: creds = webauthn.list_credentials(client) assert len(creds) == 2 - # Fill up with 14 more valid credentials. - for cred in CREDS[:14]: + # Fill up the credential storage to maximum capacity. + for cred in CREDS[: RK_CAPACITY - 2]: webauthn.add_credential(client, cred) # Adding one more valid credential to full storage should fail. with pytest.raises(TrezorFailure): - webauthn.add_credential(client, CREDS[14]) + webauthn.add_credential(client, CREDS[-1]) - # Remove index 16 should fail. + # Removing the index, which is one past the end, should fail. with pytest.raises(TrezorFailure): - webauthn.remove_credential(client, 16) + webauthn.remove_credential(client, RK_CAPACITY) # Remove index 2. webauthn.remove_credential(client, 2) # Check that the credential was removed. creds = webauthn.list_credentials(client) - assert len(creds) == 15 + assert len(creds) == RK_CAPACITY - 1 # Adding another valid credential should succeed now. - webauthn.add_credential(client, CREDS[14]) + webauthn.add_credential(client, CREDS[-1]) # Check that the credential was added. creds = webauthn.list_credentials(client) - assert len(creds) == 16 + assert len(creds) == RK_CAPACITY From 0040b916d2ea514c987823fbf8ea5d979bf7fb06 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 3 Nov 2019 10:44:22 +0000 Subject: [PATCH 07/22] common/defs: remove inactive coins --- common/defs/bitcoin/myriad.json | 44 ----------------------------- common/defs/bitcoin/myriad.png | Bin 7234 -> 0 bytes common/defs/bitcoin/umbru.json | 43 ----------------------------- common/defs/bitcoin/umbru.png | Bin 5222 -> 0 bytes common/defs/wallets.json | 4 +++ core/src/apps/common/coininfo.py | 46 ------------------------------- python/src/trezorlib/coins.json | 2 +- 7 files changed, 5 insertions(+), 134 deletions(-) delete mode 100644 common/defs/bitcoin/myriad.json delete mode 100644 common/defs/bitcoin/myriad.png delete mode 100644 common/defs/bitcoin/umbru.json delete mode 100644 common/defs/bitcoin/umbru.png diff --git a/common/defs/bitcoin/myriad.json b/common/defs/bitcoin/myriad.json deleted file mode 100644 index e179292db..000000000 --- a/common/defs/bitcoin/myriad.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "coin_name": "Myriad", - "coin_shortcut": "XMY", - "coin_label": "Myriad", - "curve_name": "secp256k1", - "website": "https://www.myriadcoin.org", - "github": "https://github.com/myriadteam/myriadcoin", - "maintainer": "Adam Hickerson ", - "address_type": 50, - "address_type_p2sh": 9, - "maxfee_kb": 2000000, - "minfee_kb": 1000, - "signed_message_header": "Myriadcoin Signed Message:\n", - "hash_genesis_block": "00000ffde4c020b5938441a0ea3d314bf619eff0b38f32f78f7583cffa1ea485", - "xprv_magic": 76066276, - "xpub_magic": 76067358, - "xpub_magic_segwit_p2sh": 77429938, - "xpub_magic_segwit_native": 78792518, - "bech32_prefix": "my", - "cashaddr_prefix": null, - "slip44": 90, - "segwit": true, - "decred": false, - "fork_id": null, - "force_bip143": false, - "bip115": false, - "default_fee_b": { - "Low": 10, - "Economy": 70, - "Normal": 140, - "High": 200 - }, - "dust_limit": 546, - "blocktime_seconds": 60, - "uri_prefix": "myriadcoin", - "min_address_length": 27, - "max_address_length": 34, - "bitcore": [], - "blockbook": [], - "negative_fee": false, - "cooldown": 100, - "consensus_branch_id": null, - "confidential_assets": null -} diff --git a/common/defs/bitcoin/myriad.png b/common/defs/bitcoin/myriad.png deleted file mode 100644 index d24fb5221f0f43180b7d3e572496c89154852080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7234 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%0Dja4QM%%X5S5@#Ai!U`k{-k4rbL(_kx!iZ? zoWHwT+azGg)06hf;qo}h_+#H23<8$Zt?wzZY83$JA7p9p=_BFv$G4_&mju^;`9X9? ziK1gqfl0HqX=X&Aii%)fxOfVVVUe1ihs+_9Bfbhc-7=3%1XG%MP1LBUZ}uzk(i{`J z19!t`viqh*;--5?Nu(AJhY*+8j-5zyNXzNQ&uwK}CBbKJ2?fYSW=kO5!}?x+Lb z%DsKW8|$xWQQm)W5bkpjHkwK(^D59=K|rn51P2R_j><-KM3A~f)@$G9YM08g5=Si|QB}d6yW~p3e=~aY-c5an z7E43YeK-!JEn62?0~jObZhl?-l>0elmxq91hT!IFZHR_L-axu1hv0Hiqs2EOK#~lo zii^X;^KsQ>pOoJ*{>f+}1B<@^FbT(twD~nw(wOdRIm?k|%-J}WN?jw6U)>2raqt;6 zd)Ob&GME8d15Z46>|s>bsRJ?Z>ywlLlZhe84p_`P*&6aIpLxbwW$L4!5s@Dg?!fUV zNAyK*`WqXP>32seJpLgF@F4j0p4jU=@FFgv1B4g?=pGIEjZ5m?gE)U^3|CjLMs;-; zFaz=N;PB9LNr*K<(|#7QF`HGNe?8uQt%Q!!Lz3f`fPJxn#H@`f`JEBiT^)+vu@@UV z92ZDFaS7}$Gm2a_zxvk&a9#(J%@z;xxgp?CzpCbA@zEoeocRc>649H&ooo+g9El$cwIVmUQr2HN7|5^%Gyj|9j QF#rGn07*qoM6N<$f^odvhX4Qo diff --git a/common/defs/bitcoin/umbru.json b/common/defs/bitcoin/umbru.json deleted file mode 100644 index e9f42ec2c..000000000 --- a/common/defs/bitcoin/umbru.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "coin_name": "Umbru", - "coin_shortcut": "UMBRU", - "coin_label": "Umbru", - "website": "https://umbru.io", - "github": "https://github.com/umbru/umbru-core", - "maintainer": "Ryxor ", - "curve_name": "secp256k1", - "address_type": 68, - "address_type_p2sh": 5, - "maxfee_kb": 100000, - "minfee_kb": 100, - "signed_message_header": "DarkCoin Signed Message:\n", - "hash_genesis_block": "00000cb7859c07ebc3950ff150f5d6dc31150c5da14435fbf200d51be8f4208f", - "xprv_magic": 76066276, - "xpub_magic": 76067358, - "xpub_magic_segwit_p2sh": null, - "xpub_magic_segwit_native": null, - "bech32_prefix": null, - "cashaddr_prefix": null, - "slip44": 395, - "segwit": false, - "decred": false, - "fork_id": null, - "force_bip143": false, - "bip115": false, - "default_fee_b": { - "Normal": 10 - }, - "dust_limit": 5460, - "blocktime_seconds": 120, - "uri_prefix": "umbru", - "min_address_length": 27, - "max_address_length": 34, - "bitcore": [], - "blockbook": [ - "https://blockbook.umbru.io" - ], - "negative_fee": false, - "cooldown": 100, - "consensus_branch_id": null, - "confidential_assets": null -} diff --git a/common/defs/bitcoin/umbru.png b/common/defs/bitcoin/umbru.png deleted file mode 100644 index 233c6650d003e55fc32fcf73202228625533daf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5222 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 g0b`7D28=QO7b$h91= CoinInfo: curve_name='secp256k1', confidential_assets=None, ) - elif name == "Myriad": - return CoinInfo( - coin_name=name, - coin_shortcut="XMY", - address_type=50, - address_type_p2sh=9, - maxfee_kb=2000000, - signed_message_header="Myriadcoin Signed Message:\n", - xpub_magic=0x0488b21e, - xpub_magic_segwit_p2sh=0x049d7cb2, - xpub_magic_segwit_native=0x04b24746, - bech32_prefix="my", - cashaddr_prefix=None, - slip44=90, - segwit=True, - fork_id=None, - force_bip143=False, - bip115=False, - decred=False, - negative_fee=False, - curve_name='secp256k1', - confidential_assets=None, - ) elif name == "NIX": return CoinInfo( coin_name=name, @@ -1507,29 +1484,6 @@ def by_name(name: str) -> CoinInfo: curve_name='secp256k1', confidential_assets=None, ) - elif name == "Umbru": - return CoinInfo( - coin_name=name, - coin_shortcut="UMBRU", - address_type=68, - address_type_p2sh=5, - maxfee_kb=100000, - signed_message_header="DarkCoin Signed Message:\n", - xpub_magic=0x0488b21e, - xpub_magic_segwit_p2sh=None, - xpub_magic_segwit_native=None, - bech32_prefix=None, - cashaddr_prefix=None, - slip44=395, - segwit=False, - fork_id=None, - force_bip143=False, - bip115=False, - decred=False, - negative_fee=False, - curve_name='secp256k1', - confidential_assets=None, - ) elif name == "Unobtanium": return CoinInfo( coin_name=name, diff --git a/python/src/trezorlib/coins.json b/python/src/trezorlib/coins.json index a059f4e9a..08e3a36f6 100644 --- a/python/src/trezorlib/coins.json +++ b/python/src/trezorlib/coins.json @@ -1 +1 @@ -[{"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": ["https://btc1.trezor.io", "https://btc2.trezor.io", "https://btc3.trezor.io", "https://btc4.trezor.io", "https://btc5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin", "coin_name": "Bitcoin", "coin_shortcut": "BTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin", "negative_fee": false, "segwit": true, "shortcut": "BTC", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 0, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "bcrt", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Regtest", "coin_name": "Regtest", "coin_shortcut": "REGTEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206", "key": "bitcoin:REGTEST", "maintainer": "Thomas Kerin ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Regtest", "negative_fee": false, "segwit": true, "shortcut": "REGTEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": ["https://tbtc1.trezor.io", "https://tbtc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Testnet", "coin_name": "Testnet", "coin_shortcut": "TEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TEST", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Testnet", "negative_fee": false, "segwit": true, "shortcut": "TEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 53, "address_type_p2sh": 55, "bech32_prefix": "acm", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Actinium", "coin_name": "Actinium", "coin_shortcut": "ACM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Actinium-project/Actinium", "hash_genesis_block": "28d77872e23714562f49a1be792c276623c1bbe3fdcf21b6035cfde78b00b824", "key": "bitcoin:ACM", "maintainer": "Harris Brakmic ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Actinium", "negative_fee": false, "segwit": true, "shortcut": "ACM", "signed_message_header": "Actinium Signed Message:\n", "slip44": 228, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "actinium", "website": "https://actinium.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 55, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Axe", "coin_name": "Axe", "coin_shortcut": "AXE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/axerunners/axe", "hash_genesis_block": "00000c33631ca6f2f61368991ce2dc03306b5bb50bf7cede5cfbba6db38e52e6", "key": "bitcoin:AXE", "maintainer": "Kirill Orlov ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Axe", "negative_fee": false, "segwit": false, "shortcut": "AXE", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 4242, "support": {"connect": true, "trezor1": "1.7.3", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "axe", "website": "https://axerunners.com", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 85, "bech32_prefix": "bm", "bip115": false, "bitcore": [], "blockbook": ["https://bellcoin-blockbook.ilmango.work", "https://bell.blockbook.ovh"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Bellcoin", "coin_name": "Bellcoin", "coin_shortcut": "BELL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bellcoin-org/bellcoin", "hash_genesis_block": "000008f3b6bd10c2d03b06674a006b8d9731f6cb58179ef1eee008cee2209603", "key": "bitcoin:BELL", "maintainer": "ilmango-doge ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bellcoin", "negative_fee": false, "segwit": true, "shortcut": "BELL", "signed_message_header": "Bellcoin Signed Message:\n", "slip44": 25252, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bellcoin", "website": "https://bellcoin.web4u.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 6, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BitGreen", "coin_name": "Bitgreen", "coin_shortcut": "BITG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitgreen/bitgreen", "hash_genesis_block": "000008467c3a9c587533dea06ad9380cded3ed32f9742a6c0c1aebc21bf2bc9b", "key": "bitcoin:BITG", "maintainer": "Dennis R ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitGreen", "negative_fee": false, "segwit": false, "shortcut": "BITG", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 222, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "bitg", "website": "https://bitg.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 81, "address_type_p2sh": 5, "bech32_prefix": "bz", "bip115": false, "bitcore": ["https://insight.bitzeny.jp", "https://zeny.insight.monaco-ex.org"], "blockbook": ["https://zny.blockbook.ovh"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "BitZeny", "coin_name": "BitZeny", "coin_shortcut": "ZNY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BitzenyCoreDevelopers/bitzeny", "hash_genesis_block": "000009f7e55e9e3b4781e22bd87a7cfa4acada9e4340d43ca738bf4e9fb8f5ce", "key": "bitcoin:ZNY", "maintainer": "y-chan ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitZeny", "negative_fee": false, "segwit": true, "shortcut": "ZNY", "signed_message_header": "BitZeny Signed Message:\n", "slip44": 123, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitzeny", "website": "https://bitzeny.tech", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://bch1.trezor.io", "https://bch2.trezor.io", "https://bch3.trezor.io", "https://bch4.trezor.io", "https://bch5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": "bitcoincash", "coin_label": "Bitcoin Cash", "coin_name": "Bcash", "coin_shortcut": "BCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash", "negative_fee": false, "segwit": false, "shortcut": "BCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 145, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": "bchtest", "coin_label": "Bitcoin Cash Testnet", "coin_name": "Bcash Testnet", "coin_shortcut": "TBCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TBCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TBCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 23, "bech32_prefix": "btg", "bip115": false, "bitcore": [], "blockbook": ["https://btg1.trezor.io", "https://btg2.trezor.io", "https://btg3.trezor.io", "https://btg4.trezor.io", "https://btg5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold", "coin_name": "Bgold", "coin_shortcut": "BTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTG", "maintainer": "Saleem Rashid ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold", "negative_fee": false, "segwit": true, "shortcut": "BTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tbtg", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold Testnet", "coin_name": "Bgold Testnet", "coin_shortcut": "TBTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "00000000e0781ebe24b91eedc293adfea2f557b53ec379e78959de3853e6f9f6", "key": "bitcoin:TBTG", "maintainer": "The Bitcoin Gold Developers ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold Testnet", "negative_fee": false, "segwit": true, "shortcut": "TBTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 4901, "address_type_p2sh": 5039, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.btcprivate.org"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcoin Private", "coin_name": "Bprivate", "coin_shortcut": "BTCP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": 42, "github": "https://github.com/BTCPrivate/BitcoinPrivate", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:BTCP", "maintainer": "Chris Sulmone ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Bitcoin Private", "negative_fee": false, "segwit": false, "shortcut": "BTCP", "signed_message_header": "BitcoinPrivate Signed Message:\n", "slip44": 183, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoinprivate", "website": "https://btcprivate.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 61, "address_type_p2sh": 123, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook1.bitcoinrh.org", "https://blockbook2.bitcoinrh.org"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Rhodium", "coin_name": "Brhodium", "coin_shortcut": "XRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://gitlab.com/bitcoinrh/BRhodiumNode", "hash_genesis_block": "baff5bfd9dc43fb672d003ec20fd21428f9282ca46bfa1730d73e1f2c75f5fdd", "key": "bitcoin:XRC", "maintainer": "baff5b ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Rhodium", "negative_fee": false, "segwit": false, "shortcut": "XRC", "signed_message_header": "BitCoin Rhodium Signed Message:\n", "slip44": 10291, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin-rhodium", "website": "https://www.bitcoinrh.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3, "address_type_p2sh": 125, "bech32_prefix": "btx", "bip115": false, "bitcore": ["https://insight.bitcore.cc"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcore", "coin_name": "Bitcore", "coin_shortcut": "BTX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/LIMXTEC/BitCore", "hash_genesis_block": "604148281e5c4b7f2487e5d03cd60d8e6f69411d613f6448034508cea52e9574", "key": "bitcoin:BTX", "maintainer": "limxdev ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcore", "negative_fee": false, "segwit": true, "shortcut": "BTX", "signed_message_header": "BitCore Signed Message:\n", "slip44": 160, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcore", "website": "https://bitcore.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 26, "address_type_p2sh": 5, "bech32_prefix": "bst", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BlockStamp", "coin_name": "BlockStamp", "coin_shortcut": "BST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 1000, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BlockStamp/bst", "hash_genesis_block": "8000000049a2e26b0185be50b4b8ed58b707c8893762959f0b1673641cae1828", "key": "bitcoin:BST", "maintainer": "Krzysztof Kuchta ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BlockStamp", "negative_fee": false, "segwit": true, "shortcut": "BST", "signed_message_header": "BST Signed Message:\n", "slip44": 254, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "blockstamp", "website": "https://blockstamp.info", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 30, "bech32_prefix": "cpu", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.cpuchain.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "CPUchain", "coin_name": "CPUchain", "coin_shortcut": "CPU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/cpuchain/cpuchain", "hash_genesis_block": "000024d8766043ea0e1c9ad42e7ea4b5fdb459887bd80b8f9756f3d87e128f12", "key": "bitcoin:CPU", "maintainer": "Min Khang Aung ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "CPUchain", "negative_fee": false, "segwit": true, "shortcut": "CPU", "signed_message_header": "CPUchain Signed Message:\n", "slip44": 363, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "cpuchain", "website": "https://cpuchain.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 35, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.capricoin.org", "https://blockbook2.capricoin.org", "https://blockbook3.capricoin.org", "https://blockbook4.capricoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Capricoin", "coin_name": "Capricoin", "coin_shortcut": "CPC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7, "High": 20, "Low": 1, "Normal": 14}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Capricoinofficial/Capricoin", "hash_genesis_block": "00000d23fa0fc52c90893adb1181c9ddffb6c797a3e41864b9a23aa2f2981fe3", "key": "bitcoin:CPC", "maintainer": "Jozef Knaperek ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Capricoin", "negative_fee": false, "segwit": false, "shortcut": "CPC", "signed_message_header": "Capricoin Signed Message:\n", "slip44": 289, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.10", "webwallet": false}, "uri_prefix": "capricoin", "website": "https://capricoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 95495, "address_type_p2sh": 95473, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight-01.crownplatform.com", "https://insight-02.crownplatform.com", "https://insight-03.crownplatform.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Crown", "coin_name": "Crown", "coin_shortcut": "CRW", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Crowndev/crowncoin", "hash_genesis_block": "0000000085370d5e122f64f4ab19c68614ff3df78c8d13cb814fd7e69a1dc6da", "key": "bitcoin:CRW", "maintainer": "Ashot ", "max_address_length": 40, "maxfee_kb": 2000000, "min_address_length": 36, "minfee_kb": 1000, "name": "Crown", "negative_fee": false, "segwit": false, "shortcut": "CRW", "signed_message_header": "Crown Signed Message:\n", "slip44": 72, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": false}, "uri_prefix": "crown", "website": "https://crownplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://dash1.trezor.io", "https://dash2.trezor.io", "https://dash3.trezor.io", "https://dash4.trezor.io", "https://dash5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash", "coin_name": "Dash", "coin_shortcut": "DASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000ffd590b1485b3caadc19b22e6379c733355108f107a430458cdf3407ab6", "key": "bitcoin:DASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dash", "negative_fee": false, "segwit": false, "shortcut": "DASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 5, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash Testnet", "coin_name": "Dash Testnet", "coin_shortcut": "tDASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000bafbc94add76cb75e2ec92894837288a481e5c005f6563d91623bf8bc2c", "key": "bitcoin:tDASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Dash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tDASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 1855, "address_type_p2sh": 1818, "bech32_prefix": null, "bip115": false, "bitcore": ["https://mainnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred", "coin_name": "Decred", "coin_shortcut": "DCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "298e5cc3d985bfe7f81dc135f360abe089edd4396b86d2de66b0cef42b21d980", "key": "bitcoin:DCR", "maintainer": "Alex Yocom-Piatt ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 10000, "name": "Decred", "negative_fee": false, "segwit": false, "shortcut": "DCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 42, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 50177256, "xpub_magic": 50178342, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3873, "address_type_p2sh": 3836, "bech32_prefix": null, "bip115": false, "bitcore": ["https://testnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred Testnet", "coin_name": "Decred Testnet", "coin_shortcut": "TDCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "a649dce53918caf422e9c711c858837e08d626ecfcd198969b24f7b634a49bac", "key": "bitcoin:TDCR", "maintainer": "Saleem Rashid ", "max_address_length": 35, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Decred Testnet", "negative_fee": false, "segwit": false, "shortcut": "TDCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 70615959, "xpub_magic": 70617041, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 63, "bech32_prefix": "dgb", "bip115": false, "bitcore": [], "blockbook": ["https://dgb1.trezor.io", "https://dgb2.trezor.io"], "blocktime_seconds": 15, "cashaddr_prefix": null, "coin_label": "DigiByte", "coin_name": "DigiByte", "coin_shortcut": "DGB", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/digibyte/digibyte", "hash_genesis_block": "7497ea1b465eb39f1c8f507bc877078fe016d6fcb6dfad3a64c98dcc6e1e8496", "key": "bitcoin:DGB", "maintainer": "DigiByte ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "DigiByte", "negative_fee": false, "segwit": true, "shortcut": "DGB", "signed_message_header": "DigiByte Signed Message:\n", "slip44": 20, "support": {"connect": true, "trezor1": "1.6.3", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "digibyte", "website": "https://digibyte.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 30, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://doge1.trezor.io", "https://doge2.trezor.io", "https://doge3.trezor.io", "https://doge4.trezor.io", "https://doge5.trezor.io"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Dogecoin", "coin_name": "Dogecoin", "coin_shortcut": "DOGE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 100000}, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/dogecoin/dogecoin", "hash_genesis_block": "1a91e3dace36e2be3bf030a65679fe821aa1d6ef92e7c9902eb318182c355691", "key": "bitcoin:DOGE", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dogecoin", "negative_fee": false, "segwit": false, "shortcut": "DOGE", "signed_message_header": "Dogecoin Signed Message:\n", "slip44": 3, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dogecoin", "website": "https://dogecoin.com", "xprv_magic": 49988504, "xpub_magic": 49990397, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 235, "address_type_p2sh": 75, "bech32_prefix": "ert", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Elements", "coin_name": "Elements", "coin_shortcut": "ELEMENTS", "confidential_assets": {"address_prefix": 4, "blech32_prefix": "el"}, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ElementsProject/elements", "hash_genesis_block": "209577bda6bf4b5804bd46f8621580dd6d4e8bfa2d190e1c50e932492baca07d", "key": "bitcoin:ELEMENTS", "maintainer": "Roman Zeyde ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Elements", "negative_fee": false, "segwit": true, "shortcut": "ELEMENTS", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "elements", "website": "https://elementsproject.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 95, "address_type_p2sh": 36, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 180, "cashaddr_prefix": null, "coin_label": "FairCoin", "coin_name": "FairCoin", "coin_shortcut": "FAIR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 800000}, "dust_limit": 500000, "force_bip143": false, "fork_id": 0, "github": "https://github.com/faircoin/faircoin", "hash_genesis_block": "beed44fa5e96150d95d56ebd5d2625781825a9407a5215dd7eda723373a0a1d7", "key": "bitcoin:FAIR", "maintainer": "Santi Nore\u00f1a ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "FairCoin", "negative_fee": false, "segwit": false, "shortcut": "FAIR", "signed_message_header": "FairCoin Signed Message:\n", "slip44": 298, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "faircoin", "website": "https://www.faircoin.world", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 14, "address_type_p2sh": 5, "bech32_prefix": "fc", "bip115": false, "bitcore": ["https://bitcore.feathercoin.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Feathercoin", "coin_name": "Feathercoin", "coin_shortcut": "FTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "duplicate": true, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/FeatherCoin/Feathercoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:FTC", "maintainer": "Lucas Betschart ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Feathercoin", "negative_fee": false, "segwit": true, "shortcut": "FTC", "signed_message_header": "Feathercoin Signed Message:\n", "slip44": 8, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "feathercoin", "website": "https://feathercoin.com", "xprv_magic": 76077806, "xpub_magic": 76069926, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 35, "address_type_p2sh": 94, "bech32_prefix": "flo", "bip115": false, "bitcore": ["https://livenet.flocha.in"], "blockbook": [], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "Flo", "coin_name": "Florincoin", "coin_shortcut": "FLO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/floblockchain/flo", "hash_genesis_block": "09c7781c9df90708e278c35d38ea5c9041d7ecfcdd1c56ba67274b7cff3e1cea", "key": "bitcoin:FLO", "maintainer": "Robert English ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Flo", "negative_fee": false, "segwit": true, "shortcut": "FLO", "signed_message_header": "Florincoin Signed Message:\n", "slip44": 216, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "florincoin", "website": "https://flo.cash", "xprv_magic": 15264107, "xpub_magic": 1526049, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 16, "bech32_prefix": "fc", "bip115": false, "bitcore": [], "blockbook": ["https://explorer.fujicoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Fujicoin", "coin_name": "Fujicoin", "coin_shortcut": "FJC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 20000, "High": 100000, "Low": 10000, "Normal": 50000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/fujicoin/fujicoin", "hash_genesis_block": "adb6d9cfd74075e7f91608add4bd2a2ea636f70856183086842667a1597714a0", "key": "bitcoin:FJC", "maintainer": "motty ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 10000000, "name": "Fujicoin", "negative_fee": false, "segwit": true, "shortcut": "FJC", "signed_message_header": "FujiCoin Signed Message:\n", "slip44": 75, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "fujicoin", "website": "https://fujicoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 10, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gincoin.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "GIN", "coin_name": "Gincoin", "coin_shortcut": "GIN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/gincoin-dev/gincoin-core", "hash_genesis_block": "00000cd6bde619b2c3b23ad2e384328a450a37fa28731debf748c3b17f91f97d", "key": "bitcoin:GIN", "maintainer": "Dragos Badea ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "GIN", "negative_fee": false, "segwit": false, "shortcut": "GIN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 2000, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "gincoin", "website": "https://gincoin.io", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 62, "bech32_prefix": "game", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gamecredits.network"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "GameCredits", "coin_name": "GameCredits", "coin_shortcut": "GAME", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/gamecredits-project/gamecredits", "hash_genesis_block": "91ec5f25ee9a0ffa1af7d4da4db9a552228dd2dc77cdb15b738be4e1f55f30ee", "key": "bitcoin:GAME", "maintainer": "Samad Sajanlal ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "GameCredits", "negative_fee": false, "segwit": true, "shortcut": "GAME", "signed_message_header": "GameCredits Signed Message:\n", "slip44": 101, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "gamecredits", "website": "https://gamecredits.org", "xprv_magic": 27108450, "xpub_magic": 27106558, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 5, "bech32_prefix": "grs", "bip115": false, "bitcore": ["https://groestlsight.groestlcoin.org", "https://grsblocks.com"], "blockbook": ["https://blockbook.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin", "coin_name": "Groestlcoin", "coin_shortcut": "GRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "00000ac5927c594d49cc0bdb81759d0da8297eb614683d3acb62f0703b639023", "key": "bitcoin:GRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin", "negative_fee": false, "segwit": true, "shortcut": "GRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 17, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tgrs", "bip115": false, "bitcore": ["https://groestlsight-test.groestlcoin.org"], "blockbook": ["https://blockbook-test.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin Testnet", "coin_name": "Groestlcoin Testnet", "coin_shortcut": "tGRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "000000ffbb50fc9898cdd36ec163e6ba23230164c0052a28876255b7dcf2cd36", "key": "bitcoin:tGRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tGRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch", "coin_name": "Hatch", "coin_shortcut": "HATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "000000fa6116f5d6c6ce9b60bd431469e40b4fe55feeeda59e33cd2f0b863196", "key": "bitcoin:HATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Hatch", "negative_fee": false, "segwit": false, "shortcut": "HATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 88888888, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch Testnet", "coin_name": "Hatch Testnet", "coin_shortcut": "tHATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "00000bf8b02180fa3860e3f4fbfaab76db14fbfd1323d1d3ad06d83b828b6644", "key": "bitcoin:tHATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Hatch Testnet", "negative_fee": false, "segwit": false, "shortcut": "tHATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 8329, "address_type_p2sh": 8342, "bech32_prefix": null, "bip115": true, "bitcore": ["https://explorer.horizen.global"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Horizen", "coin_name": "Horizen", "coin_shortcut": "ZEN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ZencashOfficial/zen", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:ZEN", "maintainer": "Power_VANO ", "max_address_length": 95, "maxfee_kb": 2000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Horizen", "negative_fee": false, "segwit": false, "shortcut": "ZEN", "signed_message_header": "Zcash Signed Message:\n", "slip44": 121, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "horizen", "website": "https://www.horizen.global", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 60, "address_type_p2sh": 85, "bech32_prefix": null, "bip115": false, "bitcore": ["https://api.kmd.dev"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Komodo", "coin_name": "Komodo", "coin_shortcut": "KMD", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/komodoplatform/komodo", "hash_genesis_block": "027e3758c3a65b12aa1046462b486d0a63bfa1beae327897f56c5cfb7daaae71", "key": "bitcoin:KMD", "maintainer": "Kadan Stadelmann ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Komodo", "negative_fee": true, "segwit": false, "shortcut": "KMD", "signed_message_header": "Komodo Signed Message:\n", "slip44": 141, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "komodo", "website": "https://komodoplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 6198, "address_type_p2sh": 6203, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.kotocoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Koto", "coin_name": "Koto", "coin_shortcut": "KOTO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/KotoDevelopers/koto", "hash_genesis_block": "6d424c350729ae633275d51dc3496e16cd1b1d195c164da00f39c499a2e9959e", "key": "bitcoin:KOTO", "maintainer": "WO ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Koto", "negative_fee": false, "segwit": false, "shortcut": "KOTO", "signed_message_header": "Koto Signed Message:\n", "slip44": 510, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "koto", "website": "https://ko-to.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 48, "address_type_p2sh": 50, "bech32_prefix": "ltc", "bip115": false, "bitcore": [], "blockbook": ["https://ltc1.trezor.io", "https://ltc2.trezor.io", "https://ltc3.trezor.io", "https://ltc4.trezor.io", "https://ltc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin", "coin_name": "Litecoin", "coin_shortcut": "LTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:LTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Litecoin", "negative_fee": false, "segwit": true, "shortcut": "LTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 2, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 27106558, "xpub_magic": 27108450, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 111, "address_type_p2sh": 58, "bech32_prefix": "tltc", "bip115": false, "bitcore": ["https://testnet.litecore.io"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin Testnet", "coin_name": "Litecoin Testnet", "coin_shortcut": "tLTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "4966625a4b2851d9fdee139e56211a0d88575f59ed816ff5e6a63deb4e3e29a0", "key": "bitcoin:tLTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Litecoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tLTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 50, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Metaverse ETP", "coin_name": "MetaverseETP", "coin_shortcut": "ETP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/mvs-org/metaverse", "hash_genesis_block": "b81848ef9ae86e84c3da26564bc6ab3a79efc628239d11471ab5cd25c0684c2d", "key": "bitcoin:ETP", "maintainer": "Sven Mutzl ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 100, "name": "Metaverse ETP", "negative_fee": false, "segwit": false, "shortcut": "ETP", "signed_message_header": "Metaverse Signed Message:\n", "slip44": 2302, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "etp", "website": "https://mvs.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 55, "bech32_prefix": "mona", "bip115": false, "bitcore": ["https://mona.chainsight.info", "https://insight.electrum-mona.org"], "blockbook": ["https://blockbook.electrum-mona.org"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "Monacoin", "coin_name": "Monacoin", "coin_shortcut": "MONA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/monacoinproject/monacoin", "hash_genesis_block": "ff9f1c0116d19de7c9963845e129f9ed1bfc0b376eb54fd7afa42e0d418c8bb6", "key": "bitcoin:MONA", "maintainer": "cryptcoin-junkey ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Monacoin", "negative_fee": false, "segwit": true, "shortcut": "MONA", "signed_message_header": "Monacoin Signed Message:\n", "slip44": 22, "support": {"connect": true, "trezor1": "1.6.0", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "monacoin", "website": "https://monacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 16, "address_type_p2sh": 76, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.monetaryunit.org"], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "MonetaryUnit", "coin_name": "MonetaryUnit", "coin_shortcut": "MUE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/muecoin/MUE", "hash_genesis_block": "0b58ed450b3819ca54ab0054c4d220ca4f887d21c9e55d2a333173adf76d987f", "key": "bitcoin:MUE", "maintainer": "Sotiris Blad ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "MonetaryUnit", "negative_fee": false, "segwit": false, "shortcut": "MUE", "signed_message_header": "MonetaryUnit Signed Message:\n", "slip44": 31, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "monetaryunit", "website": "https://www.monetaryunit.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 9, "bech32_prefix": "my", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Myriad", "coin_name": "Myriad", "coin_shortcut": "XMY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/myriadteam/myriadcoin", "hash_genesis_block": "00000ffde4c020b5938441a0ea3d314bf619eff0b38f32f78f7583cffa1ea485", "key": "bitcoin:XMY", "maintainer": "Adam Hickerson ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Myriad", "negative_fee": false, "segwit": true, "shortcut": "XMY", "signed_message_header": "Myriadcoin Signed Message:\n", "slip44": 90, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "myriadcoin", "website": "https://www.myriadcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 53, "bech32_prefix": "nix", "bip115": false, "bitcore": ["https://blockchain.nixplatform.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "NIX", "coin_name": "NIX", "coin_shortcut": "NIX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/nixplatform/nixcore", "hash_genesis_block": "dd28ad86def767c3cfc34267a950d871fc7462bc57ea4a929fc3596d9b598e41", "key": "bitcoin:NIX", "maintainer": "mattt21 ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 0, "name": "NIX", "negative_fee": false, "segwit": true, "shortcut": "NIX", "signed_message_header": "NIX Signed Message:\n", "slip44": 400, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "nix", "website": "https://nixplatform.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 52, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://nmc1.trezor.io", "https://nmc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Namecoin", "coin_name": "Namecoin", "coin_shortcut": "NMC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 2940, "force_bip143": false, "fork_id": null, "github": "https://github.com/namecoin/namecoin-core", "hash_genesis_block": "000000000062b72c5e2ceb45fbc8587e807c155b0da735e6483dfba2f0a9c770", "key": "bitcoin:NMC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Namecoin", "negative_fee": false, "segwit": false, "shortcut": "NMC", "signed_message_header": "Namecoin Signed Message:\n", "slip44": 7, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "namecoin", "website": "https://namecoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 13, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX", "coin_name": "PIVX", "coin_shortcut": "PIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:PIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX", "negative_fee": false, "segwit": false, "shortcut": "PIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 119, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 35729707, "xpub_magic": 36513075, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 139, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook-testnet.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX Testnet", "coin_name": "PIVX Testnet", "coin_shortcut": "tPIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:tPIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX Testnet", "negative_fee": false, "segwit": false, "shortcut": "tPIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 981489719, "xpub_magic": 981492128, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 56, "address_type_p2sh": 60, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl", "coin_name": "Particl", "coin_shortcut": "PART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000ee0784c195317ac95623e22fddb8c7b8825dc3998e0bb924d66866eccf4c", "key": "bitcoin:PART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl", "negative_fee": false, "segwit": true, "shortcut": "PART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 44, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 1768850129, "xpub_magic": 2401087160, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 118, "address_type_p2sh": 122, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl Testnet", "coin_name": "Particl Testnet", "coin_shortcut": "tPART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000594ada5310b367443ee0afd4fa3d0bbd5850ea4e33cdc7d6a904a7ec7c90", "key": "bitcoin:tPART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl Testnet", "negative_fee": false, "segwit": true, "shortcut": "tPART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 3779229696, "xpub_magic": 76059768, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 47, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": ["https://live.pesetacoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Pesetacoin", "coin_name": "Pesetacoin", "coin_shortcut": "PTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/FundacionPesetacoin/PesetacoinCore", "hash_genesis_block": "edfe5830b53251bfff733600b1cd5c192e761c011b055f07924634818c906438", "key": "bitcoin:PTC", "maintainer": "Rw ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Pesetacoin", "negative_fee": false, "segwit": false, "shortcut": "PTC", "signed_message_header": "Pesetacoin Signed Message:\n", "slip44": 109, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "pesetacoin", "website": "https://pesetacoin.info", "xprv_magic": 76079604, "xpub_magic": 76071982, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 55, "address_type_p2sh": 56, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.polispay.org"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Polis", "coin_name": "Polis", "coin_shortcut": "POLIS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/polispay/polis", "hash_genesis_block": "000009701eb781a8113b1af1d814e2f060f6408a2c990db291bc5108a1345c1e", "key": "bitcoin:POLIS", "maintainer": "Cronos ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Polis", "negative_fee": false, "segwit": false, "shortcut": "POLIS", "signed_message_header": "Polis Signed Message:\n", "slip44": 1997, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "polis", "website": "https://www.polispay.org", "xprv_magic": 65165637, "xpub_magic": 65166718, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 23, "address_type_p2sh": 83, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Primecoin", "coin_name": "Primecoin", "coin_shortcut": "XPM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/primecoin/primecoin", "hash_genesis_block": "963d17ba4dc753138078a2f56afb3af9674e2546822badff26837db9a0152106", "key": "bitcoin:XPM", "maintainer": "James Skrowvedeht ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 26, "minfee_kb": 1000, "name": "Primecoin", "negative_fee": false, "segwit": false, "shortcut": "XPM", "signed_message_header": "Primecoin Signed Message:\n", "slip44": 24, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "primecoin", "website": "https://primecoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 58, "address_type_p2sh": 50, "bech32_prefix": "qc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum", "coin_name": "Qtum", "coin_shortcut": "QTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "duplicate": true, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "000075aef83cf2853580f8ae8ce6f8c3096cfa21d98334d6e3f95e5582ed986c", "key": "bitcoin:QTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum", "negative_fee": false, "segwit": true, "shortcut": "QTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 2301, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": true}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 120, "address_type_p2sh": 110, "bech32_prefix": "tq", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum Testnet", "coin_name": "Qtum Testnet", "coin_shortcut": "tQTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "0000e803ee215c0684ca0d2f9220594d3f828617972aad66feb2ba51f5e14222", "key": "bitcoin:tQTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum Testnet", "negative_fee": false, "segwit": true, "shortcut": "tQTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 60, "address_type_p2sh": 122, "bech32_prefix": null, "bip115": false, "bitcore": ["https://ravencoin.network"], "blockbook": ["https://blockbook.ravencoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ravencoin", "coin_name": "Ravencoin", "coin_shortcut": "RVN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RavenProject/Ravencoin", "hash_genesis_block": "0000006b444bc2f2ffe627be9d9e7e7a0730000870ef6eb6da46c8eae389df90", "key": "bitcoin:RVN", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ravencoin", "negative_fee": false, "segwit": false, "shortcut": "RVN", "signed_message_header": "Raven Signed Message:\n", "slip44": 175, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "raven", "website": "https://ravencoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 105, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.ritocoin.org"], "blockbook": ["https://blockbook.ritocoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ritocoin", "coin_name": "Ritocoin", "coin_shortcut": "RITO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RitoProject", "hash_genesis_block": "00000075e344bdf1c0e433f453764b1830a7aa19b2a5213e707502a22b779c1b", "key": "bitcoin:RITO", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ritocoin", "negative_fee": false, "segwit": false, "shortcut": "RITO", "signed_message_header": "Rito Signed Message:\n", "slip44": 19169, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "rito", "website": "https://ritocoin.org", "xprv_magic": 87326380, "xpub_magic": 87353290, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 63, "address_type_p2sh": 18, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.smartcash.cc"], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash", "coin_name": "SmartCash", "coin_shortcut": "SMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "000007acc6970b812948d14ea5a0a13db0fdd07d5047c7e69101fa8b361e05a4", "key": "bitcoin:SMART", "maintainer": "Leandro Reinaux ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash", "negative_fee": false, "segwit": false, "shortcut": "SMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "smart", "website": "https://smartcash.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 21, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash Testnet", "coin_name": "SmartCash Testnet", "coin_shortcut": "tSMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "0000027235b5679bcd28c90d03d4bf1a9ba4c07c4efcc1c87d6c68cce25e6e5d", "key": "bitcoin:tSMART", "maintainer": "Leandro Reinaux ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tSMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "testsmart", "website": "https://smartcash.cc", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": "xc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Stakenet", "coin_name": "Stakenet", "coin_shortcut": "XSN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 1000, "force_bip143": false, "fork_id": null, "github": "https://github.com/X9Developers/XSN", "hash_genesis_block": "00000c822abdbb23e28f79a49d29b41429737c6c7e15df40d1b1f1b35907ae34", "key": "bitcoin:XSN", "maintainer": "Alexis Hernandez ", "max_address_length": 47, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Stakenet", "negative_fee": false, "segwit": true, "shortcut": "XSN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 199, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "stakenet", "website": "https://stakenet.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 63, "address_type_p2sh": 5, "bech32_prefix": "sys", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Syscoin", "coin_name": "Syscoin", "coin_shortcut": "SYS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 200, "High": 2000, "Low": 100, "Normal": 400}, "dust_limit": 1820, "force_bip143": false, "fork_id": null, "github": "https://github.com/syscoin/syscoin", "hash_genesis_block": "0000022642db0346b6e01c2a397471f4f12e65d4f4251ec96c1f85367a61a7ab", "key": "bitcoin:SYS", "maintainer": "Jagdeep Sidhu ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Syscoin", "negative_fee": false, "segwit": true, "shortcut": "SYS", "signed_message_header": "Syscoin Signed Message:\n", "slip44": 57, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "syscoin", "website": "https://syscoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.terracoin.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Terracoin", "coin_name": "Terracoin", "coin_shortcut": "TRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/terracoin/terracoin", "hash_genesis_block": "00000000804bbc6a621a9dbb564ce469f492e1ccf2d70f8a6b241e26a277afa2", "key": "bitcoin:TRC", "maintainer": "The Terracoin Foundation ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Terracoin", "negative_fee": false, "segwit": false, "shortcut": "TRC", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 83, "support": {"connect": false, "trezor1": false, "trezor2": false, "webwallet": false}, "uri_prefix": "terracoin", "website": "https://terracoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 68, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.umbru.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Umbru", "coin_name": "Umbru", "coin_shortcut": "UMBRU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/umbru/umbru-core", "hash_genesis_block": "00000cb7859c07ebc3950ff150f5d6dc31150c5da14435fbf200d51be8f4208f", "key": "bitcoin:UMBRU", "maintainer": "Ryxor ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "Umbru", "negative_fee": false, "segwit": false, "shortcut": "UMBRU", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 395, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.5", "webwallet": false}, "uri_prefix": "umbru", "website": "https://umbru.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 130, "address_type_p2sh": 30, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.flurbo.xyz", "https://blockbook.unobtanium.uno"], "blocktime_seconds": 30, "cashaddr_prefix": null, "coin_label": "Unobtanium", "coin_name": "Unobtanium", "coin_shortcut": "UNO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 50, "High": 160, "Low": 10, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/unobtanium-official/unobtanium", "hash_genesis_block": "000004c2fc5fffb810dccc197d603690099a68305232e552d96ccbe8e2c52b75", "key": "bitcoin:UNO", "maintainer": "choicesz ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Unobtanium", "negative_fee": false, "segwit": false, "shortcut": "UNO", "signed_message_header": "Unobtanium Signed Message:\n", "slip44": 92, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "unobtanium", "website": "https://unobtanium.uno", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 70, "address_type_p2sh": 50, "bech32_prefix": "vips", "bip115": false, "bitcore": ["https://insight.vipstarco.in"], "blockbook": ["https://vips.blockbook.japanesecoin-pool.work"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "VIPSTARCOIN", "coin_name": "VIPSTARCOIN", "coin_shortcut": "VIPS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/VIPSTARCOIN/VIPSTARCOIN", "hash_genesis_block": "0000d068e1d30f79fb64446137106be9c6ee69a6a722295c131506b1ee09b77c", "key": "bitcoin:VIPS", "maintainer": "y-chan ", "max_address_length": 36, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "VIPSTARCOIN", "negative_fee": false, "segwit": true, "shortcut": "VIPS", "signed_message_header": "VIPSTARCOIN Signed Message:\n", "slip44": 1919, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "vipstarcoin", "website": "https://vipstarcoin.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 5, "bech32_prefix": "vtc", "bip115": false, "bitcore": [], "blockbook": ["https://vtc1.trezor.io", "https://vtc2.trezor.io", "https://vtc3.trezor.io", "https://vtc4.trezor.io", "https://vtc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Vertcoin", "coin_name": "Vertcoin", "coin_shortcut": "VTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/vertcoin-project/vertcoin-core", "hash_genesis_block": "4d96a915f49d40b1e5c2844d1ee2dccb90013a990ccea12c492d22110489f0c4", "key": "bitcoin:VTC", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Vertcoin", "negative_fee": false, "segwit": true, "shortcut": "VTC", "signed_message_header": "Vertcoin Signed Message:\n", "slip44": 28, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "vertcoin", "website": "https://vertcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 33, "bech32_prefix": "via", "bip115": false, "bitcore": ["https://explorer.viacoin.org"], "blockbook": [], "blocktime_seconds": 24, "cashaddr_prefix": null, "coin_label": "Viacoin", "coin_name": "Viacoin", "coin_shortcut": "VIA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7000, "High": 20000, "Low": 1000, "Normal": 14000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/viacoin", "hash_genesis_block": "4e9b54001f9976049830128ec0331515eaabe35a70970d79971da1539a400ba1", "key": "bitcoin:VIA", "maintainer": "romanornr ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Viacoin", "negative_fee": false, "segwit": true, "shortcut": "VIA", "signed_message_header": "Viacoin Signed Message:\n", "slip44": 14, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "viacoin", "website": "https://viacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 142, "address_type_p2sh": 145, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zcore.cash"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "ZCore", "coin_name": "ZCore", "coin_shortcut": "ZCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcore-coin/zcore-2.0", "hash_genesis_block": "695b79c8c234b45b2eeb4722f33373e471c9b686ff78efeb39da95f824a9f81b", "key": "bitcoin:ZCR", "maintainer": "Erick Costa ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 34, "minfee_kb": 1000, "name": "ZCore", "negative_fee": false, "segwit": false, "shortcut": "ZCR", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 428, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": true}, "uri_prefix": "zcore", "website": "https://zcore.cash", "xprv_magic": 78791432, "xpub_magic": 78792518, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://zec1.trezor.io", "https://zec2.trezor.io", "https://zec3.trezor.io", "https://zec4.trezor.io", "https://zec5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash", "coin_name": "Zcash", "coin_shortcut": "ZEC", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "00040fe8ec8471911baa1db1266ea15dd06b4a8a5c453883c000b031973dce08", "key": "bitcoin:ZEC", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash", "negative_fee": false, "segwit": false, "shortcut": "ZEC", "signed_message_header": "Zcash Signed Message:\n", "slip44": 133, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7461, "address_type_p2sh": 7354, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.testnet.z.cash"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash Testnet", "coin_name": "Zcash Testnet", "coin_shortcut": "TAZ", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "05a60a92d99d85997cce3b87616c089f6124d7342af37106edc76126334a2c38", "key": "bitcoin:TAZ", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TAZ", "signed_message_header": "Zcash Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 82, "address_type_p2sh": 7, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.zcoin.io"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin", "coin_name": "Zcoin", "coin_shortcut": "XZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "4381deb85b1b2c9843c222944b616d997516dcbd6a964e1eaf0def0830695233", "key": "bitcoin:XZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin", "negative_fee": false, "segwit": false, "shortcut": "XZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 136, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcoin", "website": "https://zcoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 178, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin Testnet", "coin_name": "Zcoin Testnet", "coin_shortcut": "tXZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "7ac038c193c2158c428c59f9ae0c02a07115141c6e9dc244ae96132e99b4e642", "key": "bitcoin:tXZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin Testnet", "negative_fee": false, "segwit": false, "shortcut": "tXZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "testzcoin", "website": "https://zcoin.io", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zel.network"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Zel", "coin_name": "ZelCash", "coin_shortcut": "ZEL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zelcash", "hash_genesis_block": "00052461a5006c2e3b74ce48992a08695607912d5604c3eb8da25749b0900444", "key": "bitcoin:ZEL", "maintainer": "Cabecinha84 ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zel", "negative_fee": false, "segwit": false, "shortcut": "ZEL", "signed_message_header": "Zcash Signed Message:\n", "slip44": 19167, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "zelcash", "website": "https://zel.network", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}] +[{"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": ["https://btc1.trezor.io", "https://btc2.trezor.io", "https://btc3.trezor.io", "https://btc4.trezor.io", "https://btc5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin", "coin_name": "Bitcoin", "coin_shortcut": "BTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin", "negative_fee": false, "segwit": true, "shortcut": "BTC", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 0, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "bcrt", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Regtest", "coin_name": "Regtest", "coin_shortcut": "REGTEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206", "key": "bitcoin:REGTEST", "maintainer": "Thomas Kerin ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Regtest", "negative_fee": false, "segwit": true, "shortcut": "REGTEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": ["https://tbtc1.trezor.io", "https://tbtc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Testnet", "coin_name": "Testnet", "coin_shortcut": "TEST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitcoin/bitcoin", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TEST", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Testnet", "negative_fee": false, "segwit": true, "shortcut": "TEST", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://bitcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 53, "address_type_p2sh": 55, "bech32_prefix": "acm", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Actinium", "coin_name": "Actinium", "coin_shortcut": "ACM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Actinium-project/Actinium", "hash_genesis_block": "28d77872e23714562f49a1be792c276623c1bbe3fdcf21b6035cfde78b00b824", "key": "bitcoin:ACM", "maintainer": "Harris Brakmic ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Actinium", "negative_fee": false, "segwit": true, "shortcut": "ACM", "signed_message_header": "Actinium Signed Message:\n", "slip44": 228, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "actinium", "website": "https://actinium.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 55, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Axe", "coin_name": "Axe", "coin_shortcut": "AXE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/axerunners/axe", "hash_genesis_block": "00000c33631ca6f2f61368991ce2dc03306b5bb50bf7cede5cfbba6db38e52e6", "key": "bitcoin:AXE", "maintainer": "Kirill Orlov ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Axe", "negative_fee": false, "segwit": false, "shortcut": "AXE", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 4242, "support": {"connect": true, "trezor1": "1.7.3", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "axe", "website": "https://axerunners.com", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 85, "bech32_prefix": "bm", "bip115": false, "bitcore": [], "blockbook": ["https://bellcoin-blockbook.ilmango.work", "https://bell.blockbook.ovh"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Bellcoin", "coin_name": "Bellcoin", "coin_shortcut": "BELL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bellcoin-org/bellcoin", "hash_genesis_block": "000008f3b6bd10c2d03b06674a006b8d9731f6cb58179ef1eee008cee2209603", "key": "bitcoin:BELL", "maintainer": "ilmango-doge ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bellcoin", "negative_fee": false, "segwit": true, "shortcut": "BELL", "signed_message_header": "Bellcoin Signed Message:\n", "slip44": 25252, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bellcoin", "website": "https://bellcoin.web4u.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 6, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BitGreen", "coin_name": "Bitgreen", "coin_shortcut": "BITG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/bitgreen/bitgreen", "hash_genesis_block": "000008467c3a9c587533dea06ad9380cded3ed32f9742a6c0c1aebc21bf2bc9b", "key": "bitcoin:BITG", "maintainer": "Dennis R ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitGreen", "negative_fee": false, "segwit": false, "shortcut": "BITG", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 222, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "bitg", "website": "https://bitg.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 81, "address_type_p2sh": 5, "bech32_prefix": "bz", "bip115": false, "bitcore": ["https://insight.bitzeny.jp", "https://zeny.insight.monaco-ex.org"], "blockbook": ["https://zny.blockbook.ovh"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "BitZeny", "coin_name": "BitZeny", "coin_shortcut": "ZNY", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BitzenyCoreDevelopers/bitzeny", "hash_genesis_block": "000009f7e55e9e3b4781e22bd87a7cfa4acada9e4340d43ca738bf4e9fb8f5ce", "key": "bitcoin:ZNY", "maintainer": "y-chan ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BitZeny", "negative_fee": false, "segwit": true, "shortcut": "ZNY", "signed_message_header": "BitZeny Signed Message:\n", "slip44": 123, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitzeny", "website": "https://bitzeny.tech", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://bch1.trezor.io", "https://bch2.trezor.io", "https://bch3.trezor.io", "https://bch4.trezor.io", "https://bch5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": "bitcoincash", "coin_label": "Bitcoin Cash", "coin_name": "Bcash", "coin_shortcut": "BCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash", "negative_fee": false, "segwit": false, "shortcut": "BCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 145, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": "bchtest", "coin_label": "Bitcoin Cash Testnet", "coin_name": "Bcash Testnet", "coin_shortcut": "TBCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": true, "fork_id": 0, "github": "https://github.com/Bitcoin-ABC/bitcoin-abc", "hash_genesis_block": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943", "key": "bitcoin:TBCH", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Cash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TBCH", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "bitcoincash", "website": "https://www.bitcoincash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 23, "bech32_prefix": "btg", "bip115": false, "bitcore": [], "blockbook": ["https://btg1.trezor.io", "https://btg2.trezor.io", "https://btg3.trezor.io", "https://btg4.trezor.io", "https://btg5.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold", "coin_name": "Bgold", "coin_shortcut": "BTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", "key": "bitcoin:BTG", "maintainer": "Saleem Rashid ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold", "negative_fee": false, "segwit": true, "shortcut": "BTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tbtg", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Gold Testnet", "coin_name": "Bgold Testnet", "coin_shortcut": "TBTG", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": true, "fork_id": 79, "github": "https://github.com/BTCGPU/BTCGPU", "hash_genesis_block": "00000000e0781ebe24b91eedc293adfea2f557b53ec379e78959de3853e6f9f6", "key": "bitcoin:TBTG", "maintainer": "The Bitcoin Gold Developers ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Gold Testnet", "negative_fee": false, "segwit": true, "shortcut": "TBTG", "signed_message_header": "Bitcoin Gold Signed Message:\n", "slip44": 156, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcoingold", "website": "https://bitcoingold.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 4901, "address_type_p2sh": 5039, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.btcprivate.org"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcoin Private", "coin_name": "Bprivate", "coin_shortcut": "BTCP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": 42, "github": "https://github.com/BTCPrivate/BitcoinPrivate", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:BTCP", "maintainer": "Chris Sulmone ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Bitcoin Private", "negative_fee": false, "segwit": false, "shortcut": "BTCP", "signed_message_header": "BitcoinPrivate Signed Message:\n", "slip44": 183, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "bitcoinprivate", "website": "https://btcprivate.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 61, "address_type_p2sh": 123, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook1.bitcoinrh.org", "https://blockbook2.bitcoinrh.org"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Bitcoin Rhodium", "coin_name": "Brhodium", "coin_shortcut": "XRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://gitlab.com/bitcoinrh/BRhodiumNode", "hash_genesis_block": "baff5bfd9dc43fb672d003ec20fd21428f9282ca46bfa1730d73e1f2c75f5fdd", "key": "bitcoin:XRC", "maintainer": "baff5b ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcoin Rhodium", "negative_fee": false, "segwit": false, "shortcut": "XRC", "signed_message_header": "BitCoin Rhodium Signed Message:\n", "slip44": 10291, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "bitcoin-rhodium", "website": "https://www.bitcoinrh.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3, "address_type_p2sh": 125, "bech32_prefix": "btx", "bip115": false, "bitcore": ["https://insight.bitcore.cc"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Bitcore", "coin_name": "Bitcore", "coin_shortcut": "BTX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/LIMXTEC/BitCore", "hash_genesis_block": "604148281e5c4b7f2487e5d03cd60d8e6f69411d613f6448034508cea52e9574", "key": "bitcoin:BTX", "maintainer": "limxdev ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Bitcore", "negative_fee": false, "segwit": true, "shortcut": "BTX", "signed_message_header": "BitCore Signed Message:\n", "slip44": 160, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "bitcore", "website": "https://bitcore.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 26, "address_type_p2sh": 5, "bech32_prefix": "bst", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "BlockStamp", "coin_name": "BlockStamp", "coin_shortcut": "BST", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 1000, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/BlockStamp/bst", "hash_genesis_block": "8000000049a2e26b0185be50b4b8ed58b707c8893762959f0b1673641cae1828", "key": "bitcoin:BST", "maintainer": "Krzysztof Kuchta ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "BlockStamp", "negative_fee": false, "segwit": true, "shortcut": "BST", "signed_message_header": "BST Signed Message:\n", "slip44": 254, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "blockstamp", "website": "https://blockstamp.info", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 30, "bech32_prefix": "cpu", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.cpuchain.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "CPUchain", "coin_name": "CPUchain", "coin_shortcut": "CPU", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 20}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/cpuchain/cpuchain", "hash_genesis_block": "000024d8766043ea0e1c9ad42e7ea4b5fdb459887bd80b8f9756f3d87e128f12", "key": "bitcoin:CPU", "maintainer": "Min Khang Aung ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "CPUchain", "negative_fee": false, "segwit": true, "shortcut": "CPU", "signed_message_header": "CPUchain Signed Message:\n", "slip44": 363, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "cpuchain", "website": "https://cpuchain.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 28, "address_type_p2sh": 35, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.capricoin.org", "https://blockbook2.capricoin.org", "https://blockbook3.capricoin.org", "https://blockbook4.capricoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Capricoin", "coin_name": "Capricoin", "coin_shortcut": "CPC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7, "High": 20, "Low": 1, "Normal": 14}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Capricoinofficial/Capricoin", "hash_genesis_block": "00000d23fa0fc52c90893adb1181c9ddffb6c797a3e41864b9a23aa2f2981fe3", "key": "bitcoin:CPC", "maintainer": "Jozef Knaperek ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Capricoin", "negative_fee": false, "segwit": false, "shortcut": "CPC", "signed_message_header": "Capricoin Signed Message:\n", "slip44": 289, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.10", "webwallet": false}, "uri_prefix": "capricoin", "website": "https://capricoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 95495, "address_type_p2sh": 95473, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight-01.crownplatform.com", "https://insight-02.crownplatform.com", "https://insight-03.crownplatform.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Crown", "coin_name": "Crown", "coin_shortcut": "CRW", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Crowndev/crowncoin", "hash_genesis_block": "0000000085370d5e122f64f4ab19c68614ff3df78c8d13cb814fd7e69a1dc6da", "key": "bitcoin:CRW", "maintainer": "Ashot ", "max_address_length": 40, "maxfee_kb": 2000000, "min_address_length": 36, "minfee_kb": 1000, "name": "Crown", "negative_fee": false, "segwit": false, "shortcut": "CRW", "signed_message_header": "Crown Signed Message:\n", "slip44": 72, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": false}, "uri_prefix": "crown", "website": "https://crownplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://dash1.trezor.io", "https://dash2.trezor.io", "https://dash3.trezor.io", "https://dash4.trezor.io", "https://dash5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash", "coin_name": "Dash", "coin_shortcut": "DASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000ffd590b1485b3caadc19b22e6379c733355108f107a430458cdf3407ab6", "key": "bitcoin:DASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dash", "negative_fee": false, "segwit": false, "shortcut": "DASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 5, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Dash Testnet", "coin_name": "Dash Testnet", "coin_shortcut": "tDASH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/dashpay/dash", "hash_genesis_block": "00000bafbc94add76cb75e2ec92894837288a481e5c005f6563d91623bf8bc2c", "key": "bitcoin:tDASH", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Dash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tDASH", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "dash", "website": "https://www.dash.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 1855, "address_type_p2sh": 1818, "bech32_prefix": null, "bip115": false, "bitcore": ["https://mainnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred", "coin_name": "Decred", "coin_shortcut": "DCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "298e5cc3d985bfe7f81dc135f360abe089edd4396b86d2de66b0cef42b21d980", "key": "bitcoin:DCR", "maintainer": "Alex Yocom-Piatt ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 10000, "name": "Decred", "negative_fee": false, "segwit": false, "shortcut": "DCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 42, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 50177256, "xpub_magic": 50178342, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 3873, "address_type_p2sh": 3836, "bech32_prefix": null, "bip115": false, "bitcore": ["https://testnet.decred.org"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Decred Testnet", "coin_name": "Decred Testnet", "coin_shortcut": "TDCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_decred", "decred": true, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/decred/dcrd", "hash_genesis_block": "a649dce53918caf422e9c711c858837e08d626ecfcd198969b24f7b634a49bac", "key": "bitcoin:TDCR", "maintainer": "Saleem Rashid ", "max_address_length": 35, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Decred Testnet", "negative_fee": false, "segwit": false, "shortcut": "TDCR", "signed_message_header": "Decred Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "bitcoin", "website": "https://www.decred.org", "xprv_magic": 70615959, "xpub_magic": 70617041, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 63, "bech32_prefix": "dgb", "bip115": false, "bitcore": [], "blockbook": ["https://dgb1.trezor.io", "https://dgb2.trezor.io"], "blocktime_seconds": 15, "cashaddr_prefix": null, "coin_label": "DigiByte", "coin_name": "DigiByte", "coin_shortcut": "DGB", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/digibyte/digibyte", "hash_genesis_block": "7497ea1b465eb39f1c8f507bc877078fe016d6fcb6dfad3a64c98dcc6e1e8496", "key": "bitcoin:DGB", "maintainer": "DigiByte ", "max_address_length": 34, "maxfee_kb": 500000, "min_address_length": 27, "minfee_kb": 1000, "name": "DigiByte", "negative_fee": false, "segwit": true, "shortcut": "DGB", "signed_message_header": "DigiByte Signed Message:\n", "slip44": 20, "support": {"connect": true, "trezor1": "1.6.3", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "digibyte", "website": "https://digibyte.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 30, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://doge1.trezor.io", "https://doge2.trezor.io", "https://doge3.trezor.io", "https://doge4.trezor.io", "https://doge5.trezor.io"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Dogecoin", "coin_name": "Dogecoin", "coin_shortcut": "DOGE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 100000}, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/dogecoin/dogecoin", "hash_genesis_block": "1a91e3dace36e2be3bf030a65679fe821aa1d6ef92e7c9902eb318182c355691", "key": "bitcoin:DOGE", "maintainer": "Karel Bilek ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Dogecoin", "negative_fee": false, "segwit": false, "shortcut": "DOGE", "signed_message_header": "Dogecoin Signed Message:\n", "slip44": 3, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "dogecoin", "website": "https://dogecoin.com", "xprv_magic": 49988504, "xpub_magic": 49990397, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 235, "address_type_p2sh": 75, "bech32_prefix": "ert", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Elements", "coin_name": "Elements", "coin_shortcut": "ELEMENTS", "confidential_assets": {"address_prefix": 4, "blech32_prefix": "el"}, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ElementsProject/elements", "hash_genesis_block": "209577bda6bf4b5804bd46f8621580dd6d4e8bfa2d190e1c50e932492baca07d", "key": "bitcoin:ELEMENTS", "maintainer": "Roman Zeyde ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Elements", "negative_fee": false, "segwit": true, "shortcut": "ELEMENTS", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "elements", "website": "https://elementsproject.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 95, "address_type_p2sh": 36, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 180, "cashaddr_prefix": null, "coin_label": "FairCoin", "coin_name": "FairCoin", "coin_shortcut": "FAIR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 800000}, "dust_limit": 500000, "force_bip143": false, "fork_id": 0, "github": "https://github.com/faircoin/faircoin", "hash_genesis_block": "beed44fa5e96150d95d56ebd5d2625781825a9407a5215dd7eda723373a0a1d7", "key": "bitcoin:FAIR", "maintainer": "Santi Nore\u00f1a ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "FairCoin", "negative_fee": false, "segwit": false, "shortcut": "FAIR", "signed_message_header": "FairCoin Signed Message:\n", "slip44": 298, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "faircoin", "website": "https://www.faircoin.world", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 14, "address_type_p2sh": 5, "bech32_prefix": "fc", "bip115": false, "bitcore": ["https://bitcore.feathercoin.com"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Feathercoin", "coin_name": "Feathercoin", "coin_shortcut": "FTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "duplicate": true, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/FeatherCoin/Feathercoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:FTC", "maintainer": "Lucas Betschart ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Feathercoin", "negative_fee": false, "segwit": true, "shortcut": "FTC", "signed_message_header": "Feathercoin Signed Message:\n", "slip44": 8, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "feathercoin", "website": "https://feathercoin.com", "xprv_magic": 76077806, "xpub_magic": 76069926, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 35, "address_type_p2sh": 94, "bech32_prefix": "flo", "bip115": false, "bitcore": ["https://livenet.flocha.in"], "blockbook": [], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "Flo", "coin_name": "Florincoin", "coin_shortcut": "FLO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/floblockchain/flo", "hash_genesis_block": "09c7781c9df90708e278c35d38ea5c9041d7ecfcdd1c56ba67274b7cff3e1cea", "key": "bitcoin:FLO", "maintainer": "Robert English ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Flo", "negative_fee": false, "segwit": true, "shortcut": "FLO", "signed_message_header": "Florincoin Signed Message:\n", "slip44": 216, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "florincoin", "website": "https://flo.cash", "xprv_magic": 15264107, "xpub_magic": 1526049, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 16, "bech32_prefix": "fc", "bip115": false, "bitcore": [], "blockbook": ["https://explorer.fujicoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Fujicoin", "coin_name": "Fujicoin", "coin_shortcut": "FJC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 20000, "High": 100000, "Low": 10000, "Normal": 50000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/fujicoin/fujicoin", "hash_genesis_block": "adb6d9cfd74075e7f91608add4bd2a2ea636f70856183086842667a1597714a0", "key": "bitcoin:FJC", "maintainer": "motty ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 10000000, "name": "Fujicoin", "negative_fee": false, "segwit": true, "shortcut": "FJC", "signed_message_header": "FujiCoin Signed Message:\n", "slip44": 75, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "fujicoin", "website": "https://fujicoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 38, "address_type_p2sh": 10, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gincoin.io"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "GIN", "coin_name": "Gincoin", "coin_shortcut": "GIN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/gincoin-dev/gincoin-core", "hash_genesis_block": "00000cd6bde619b2c3b23ad2e384328a450a37fa28731debf748c3b17f91f97d", "key": "bitcoin:GIN", "maintainer": "Dragos Badea ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "GIN", "negative_fee": false, "segwit": false, "shortcut": "GIN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 2000, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "gincoin", "website": "https://gincoin.io", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 62, "bech32_prefix": "game", "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.gamecredits.network"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "GameCredits", "coin_name": "GameCredits", "coin_shortcut": "GAME", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/gamecredits-project/gamecredits", "hash_genesis_block": "91ec5f25ee9a0ffa1af7d4da4db9a552228dd2dc77cdb15b738be4e1f55f30ee", "key": "bitcoin:GAME", "maintainer": "Samad Sajanlal ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "GameCredits", "negative_fee": false, "segwit": true, "shortcut": "GAME", "signed_message_header": "GameCredits Signed Message:\n", "slip44": 101, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "gamecredits", "website": "https://gamecredits.org", "xprv_magic": 27108450, "xpub_magic": 27106558, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 36, "address_type_p2sh": 5, "bech32_prefix": "grs", "bip115": false, "bitcore": ["https://groestlsight.groestlcoin.org", "https://grsblocks.com"], "blockbook": ["https://blockbook.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin", "coin_name": "Groestlcoin", "coin_shortcut": "GRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "00000ac5927c594d49cc0bdb81759d0da8297eb614683d3acb62f0703b639023", "key": "bitcoin:GRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin", "negative_fee": false, "segwit": true, "shortcut": "GRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 17, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 111, "address_type_p2sh": 196, "bech32_prefix": "tgrs", "bip115": false, "bitcore": ["https://groestlsight-test.groestlcoin.org"], "blockbook": ["https://blockbook-test.groestlcoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Groestlcoin Testnet", "coin_name": "Groestlcoin Testnet", "coin_shortcut": "tGRS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_groestl", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/Groestlcoin/groestlcoin", "hash_genesis_block": "000000ffbb50fc9898cdd36ec163e6ba23230164c0052a28876255b7dcf2cd36", "key": "bitcoin:tGRS", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Groestlcoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tGRS", "signed_message_header": "GroestlCoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.6.2", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "groestlcoin", "website": "https://www.groestlcoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch", "coin_name": "Hatch", "coin_shortcut": "HATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "000000fa6116f5d6c6ce9b60bd431469e40b4fe55feeeda59e33cd2f0b863196", "key": "bitcoin:HATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Hatch", "negative_fee": false, "segwit": false, "shortcut": "HATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 88888888, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 50221816, "xpub_magic": 50221772, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 140, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Hatch Testnet", "coin_name": "Hatch Testnet", "coin_shortcut": "tHATCH", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/hatchpay/hatch", "hash_genesis_block": "00000bf8b02180fa3860e3f4fbfaab76db14fbfd1323d1d3ad06d83b828b6644", "key": "bitcoin:tHATCH", "maintainer": "Hatch Support ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Hatch Testnet", "negative_fee": false, "segwit": false, "shortcut": "tHATCH", "signed_message_header": "Hatch Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "hatch", "website": "https://hatch.ga", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 8329, "address_type_p2sh": 8342, "bech32_prefix": null, "bip115": true, "bitcore": ["https://explorer.horizen.global"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Horizen", "coin_name": "Horizen", "coin_shortcut": "ZEN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/ZencashOfficial/zen", "hash_genesis_block": "0007104ccda289427919efc39dc9e4d499804b7bebc22df55f8b834301260602", "key": "bitcoin:ZEN", "maintainer": "Power_VANO ", "max_address_length": 95, "maxfee_kb": 2000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Horizen", "negative_fee": false, "segwit": false, "shortcut": "ZEN", "signed_message_header": "Zcash Signed Message:\n", "slip44": 121, "support": {"connect": true, "trezor1": false, "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "horizen", "website": "https://www.horizen.global", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 60, "address_type_p2sh": 85, "bech32_prefix": null, "bip115": false, "bitcore": ["https://api.kmd.dev"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Komodo", "coin_name": "Komodo", "coin_shortcut": "KMD", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/komodoplatform/komodo", "hash_genesis_block": "027e3758c3a65b12aa1046462b486d0a63bfa1beae327897f56c5cfb7daaae71", "key": "bitcoin:KMD", "maintainer": "Kadan Stadelmann ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Komodo", "negative_fee": true, "segwit": false, "shortcut": "KMD", "signed_message_header": "Komodo Signed Message:\n", "slip44": 141, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "komodo", "website": "https://komodoplatform.com", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 6198, "address_type_p2sh": 6203, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.kotocoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Koto", "coin_name": "Koto", "coin_shortcut": "KOTO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/KotoDevelopers/koto", "hash_genesis_block": "6d424c350729ae633275d51dc3496e16cd1b1d195c164da00f39c499a2e9959e", "key": "bitcoin:KOTO", "maintainer": "WO ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Koto", "negative_fee": false, "segwit": false, "shortcut": "KOTO", "signed_message_header": "Koto Signed Message:\n", "slip44": 510, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "koto", "website": "https://ko-to.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 48, "address_type_p2sh": 50, "bech32_prefix": "ltc", "bip115": false, "bitcore": [], "blockbook": ["https://ltc1.trezor.io", "https://ltc2.trezor.io", "https://ltc3.trezor.io", "https://ltc4.trezor.io", "https://ltc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin", "coin_name": "Litecoin", "coin_shortcut": "LTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2", "key": "bitcoin:LTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Litecoin", "negative_fee": false, "segwit": true, "shortcut": "LTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 2, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 27106558, "xpub_magic": 27108450, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 111, "address_type_p2sh": 58, "bech32_prefix": "tltc", "bip115": false, "bitcore": ["https://testnet.litecore.io"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Litecoin Testnet", "coin_name": "Litecoin Testnet", "coin_shortcut": "tLTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/litecoin-project/litecoin", "hash_genesis_block": "4966625a4b2851d9fdee139e56211a0d88575f59ed816ff5e6a63deb4e3e29a0", "key": "bitcoin:tLTC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Litecoin Testnet", "negative_fee": false, "segwit": true, "shortcut": "tLTC", "signed_message_header": "Litecoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "litecoin", "website": "https://litecoin.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 50, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Metaverse ETP", "coin_name": "MetaverseETP", "coin_shortcut": "ETP", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/mvs-org/metaverse", "hash_genesis_block": "b81848ef9ae86e84c3da26564bc6ab3a79efc628239d11471ab5cd25c0684c2d", "key": "bitcoin:ETP", "maintainer": "Sven Mutzl ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 100, "name": "Metaverse ETP", "negative_fee": false, "segwit": false, "shortcut": "ETP", "signed_message_header": "Metaverse Signed Message:\n", "slip44": 2302, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "etp", "website": "https://mvs.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 50, "address_type_p2sh": 55, "bech32_prefix": "mona", "bip115": false, "bitcore": ["https://mona.chainsight.info", "https://insight.electrum-mona.org"], "blockbook": ["https://blockbook.electrum-mona.org"], "blocktime_seconds": 90, "cashaddr_prefix": null, "coin_label": "Monacoin", "coin_name": "Monacoin", "coin_shortcut": "MONA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/monacoinproject/monacoin", "hash_genesis_block": "ff9f1c0116d19de7c9963845e129f9ed1bfc0b376eb54fd7afa42e0d418c8bb6", "key": "bitcoin:MONA", "maintainer": "cryptcoin-junkey ", "max_address_length": 34, "maxfee_kb": 5000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Monacoin", "negative_fee": false, "segwit": true, "shortcut": "MONA", "signed_message_header": "Monacoin Signed Message:\n", "slip44": 22, "support": {"connect": true, "trezor1": "1.6.0", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "monacoin", "website": "https://monacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 16, "address_type_p2sh": 76, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.monetaryunit.org"], "blocktime_seconds": 40, "cashaddr_prefix": null, "coin_label": "MonetaryUnit", "coin_name": "MonetaryUnit", "coin_shortcut": "MUE", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/muecoin/MUE", "hash_genesis_block": "0b58ed450b3819ca54ab0054c4d220ca4f887d21c9e55d2a333173adf76d987f", "key": "bitcoin:MUE", "maintainer": "Sotiris Blad ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "MonetaryUnit", "negative_fee": false, "segwit": false, "shortcut": "MUE", "signed_message_header": "MonetaryUnit Signed Message:\n", "slip44": 31, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "monetaryunit", "website": "https://www.monetaryunit.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 38, "address_type_p2sh": 53, "bech32_prefix": "nix", "bip115": false, "bitcore": ["https://blockchain.nixplatform.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "NIX", "coin_name": "NIX", "coin_shortcut": "NIX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/nixplatform/nixcore", "hash_genesis_block": "dd28ad86def767c3cfc34267a950d871fc7462bc57ea4a929fc3596d9b598e41", "key": "bitcoin:NIX", "maintainer": "mattt21 ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 0, "name": "NIX", "negative_fee": false, "segwit": true, "shortcut": "NIX", "signed_message_header": "NIX Signed Message:\n", "slip44": 400, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "nix", "website": "https://nixplatform.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 52, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://nmc1.trezor.io", "https://nmc2.trezor.io"], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Namecoin", "coin_name": "Namecoin", "coin_shortcut": "NMC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 2940, "force_bip143": false, "fork_id": null, "github": "https://github.com/namecoin/namecoin-core", "hash_genesis_block": "000000000062b72c5e2ceb45fbc8587e807c155b0da735e6483dfba2f0a9c770", "key": "bitcoin:NMC", "maintainer": "Pavol Rusnak ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Namecoin", "negative_fee": false, "segwit": false, "shortcut": "NMC", "signed_message_header": "Namecoin Signed Message:\n", "slip44": 7, "support": {"connect": true, "trezor1": "1.5.2", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "namecoin", "website": "https://namecoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 30, "address_type_p2sh": 13, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX", "coin_name": "PIVX", "coin_shortcut": "PIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:PIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX", "negative_fee": false, "segwit": false, "shortcut": "PIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 119, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 35729707, "xpub_magic": 36513075, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 139, "address_type_p2sh": 19, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook-testnet.pivx.link"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "PIVX Testnet", "coin_name": "PIVX Testnet", "coin_shortcut": "tPIVX", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/PIVX-Project/PIVX", "hash_genesis_block": "0000041e482b9b9691d98eefb48473405c0b8ec31b76df3797c74a78680ef818", "key": "bitcoin:tPIVX", "maintainer": "Random Zebra ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 100, "name": "PIVX Testnet", "negative_fee": false, "segwit": false, "shortcut": "tPIVX", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "pivx", "website": "https://pivx.org", "xprv_magic": 981489719, "xpub_magic": 981492128, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 56, "address_type_p2sh": 60, "bech32_prefix": "bc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl", "coin_name": "Particl", "coin_shortcut": "PART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000ee0784c195317ac95623e22fddb8c7b8825dc3998e0bb924d66866eccf4c", "key": "bitcoin:PART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl", "negative_fee": false, "segwit": true, "shortcut": "PART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 44, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 1768850129, "xpub_magic": 2401087160, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 28471030}, {"address_type": 118, "address_type_p2sh": 122, "bech32_prefix": "tb", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Particl Testnet", "coin_name": "Particl Testnet", "coin_shortcut": "tPART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/particl/particl-core", "hash_genesis_block": "0000594ada5310b367443ee0afd4fa3d0bbd5850ea4e33cdc7d6a904a7ec7c90", "key": "bitcoin:tPART", "maintainer": "Ryno ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Particl Testnet", "negative_fee": false, "segwit": true, "shortcut": "tPART", "signed_message_header": "Bitcoin Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "particl", "website": "https://particl.io", "xprv_magic": 3779229696, "xpub_magic": 76059768, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 47, "address_type_p2sh": 22, "bech32_prefix": null, "bip115": false, "bitcore": ["https://live.pesetacoin.info"], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Pesetacoin", "coin_name": "Pesetacoin", "coin_shortcut": "PTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 10000000, "force_bip143": false, "fork_id": null, "github": "https://github.com/FundacionPesetacoin/PesetacoinCore", "hash_genesis_block": "edfe5830b53251bfff733600b1cd5c192e761c011b055f07924634818c906438", "key": "bitcoin:PTC", "maintainer": "Rw ", "max_address_length": 34, "maxfee_kb": 1000000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Pesetacoin", "negative_fee": false, "segwit": false, "shortcut": "PTC", "signed_message_header": "Pesetacoin Signed Message:\n", "slip44": 109, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "pesetacoin", "website": "https://pesetacoin.info", "xprv_magic": 76079604, "xpub_magic": 76071982, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 55, "address_type_p2sh": 56, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.polispay.org"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Polis", "coin_name": "Polis", "coin_shortcut": "POLIS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/polispay/polis", "hash_genesis_block": "000009701eb781a8113b1af1d814e2f060f6408a2c990db291bc5108a1345c1e", "key": "bitcoin:POLIS", "maintainer": "Cronos ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 1000, "name": "Polis", "negative_fee": false, "segwit": false, "shortcut": "POLIS", "signed_message_header": "Polis Signed Message:\n", "slip44": 1997, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "polis", "website": "https://www.polispay.org", "xprv_magic": 65165637, "xpub_magic": 65166718, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 23, "address_type_p2sh": 83, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Primecoin", "coin_name": "Primecoin", "coin_shortcut": "XPM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/primecoin/primecoin", "hash_genesis_block": "963d17ba4dc753138078a2f56afb3af9674e2546822badff26837db9a0152106", "key": "bitcoin:XPM", "maintainer": "James Skrowvedeht ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 26, "minfee_kb": 1000, "name": "Primecoin", "negative_fee": false, "segwit": false, "shortcut": "XPM", "signed_message_header": "Primecoin Signed Message:\n", "slip44": 24, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "primecoin", "website": "https://primecoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 58, "address_type_p2sh": 50, "bech32_prefix": "qc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum", "coin_name": "Qtum", "coin_shortcut": "QTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "duplicate": true, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "000075aef83cf2853580f8ae8ce6f8c3096cfa21d98334d6e3f95e5582ed986c", "key": "bitcoin:QTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum", "negative_fee": false, "segwit": true, "shortcut": "QTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 2301, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": true}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 120, "address_type_p2sh": 110, "bech32_prefix": "tq", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 128, "cashaddr_prefix": null, "coin_label": "Qtum Testnet", "coin_name": "Qtum Testnet", "coin_shortcut": "tQTUM", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/qtumproject/qtum", "hash_genesis_block": "0000e803ee215c0684ca0d2f9220594d3f828617972aad66feb2ba51f5e14222", "key": "bitcoin:tQTUM", "maintainer": "CodeFace ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "Qtum Testnet", "negative_fee": false, "segwit": true, "shortcut": "tQTUM", "signed_message_header": "Qtum Signed Message:\n", "slip44": 1, "support": {"connect": false, "trezor1": "1.8.1", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "qtum", "website": "https://qtum.org", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": 73342198, "xpub_magic_segwit_p2sh": 71979618}, {"address_type": 60, "address_type_p2sh": 122, "bech32_prefix": null, "bip115": false, "bitcore": ["https://ravencoin.network"], "blockbook": ["https://blockbook.ravencoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ravencoin", "coin_name": "Ravencoin", "coin_shortcut": "RVN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RavenProject/Ravencoin", "hash_genesis_block": "0000006b444bc2f2ffe627be9d9e7e7a0730000870ef6eb6da46c8eae389df90", "key": "bitcoin:RVN", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ravencoin", "negative_fee": false, "segwit": false, "shortcut": "RVN", "signed_message_header": "Raven Signed Message:\n", "slip44": 175, "support": {"connect": true, "trezor1": "1.7.2", "trezor2": "2.0.10", "webwallet": true}, "uri_prefix": "raven", "website": "https://ravencoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 25, "address_type_p2sh": 105, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.ritocoin.org"], "blockbook": ["https://blockbook.ritocoin.org"], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Ritocoin", "coin_name": "Ritocoin", "coin_shortcut": "RITO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Low": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/RitoProject", "hash_genesis_block": "00000075e344bdf1c0e433f453764b1830a7aa19b2a5213e707502a22b779c1b", "key": "bitcoin:RITO", "maintainer": "Scotty ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Ritocoin", "negative_fee": false, "segwit": false, "shortcut": "RITO", "signed_message_header": "Rito Signed Message:\n", "slip44": 19169, "support": {"connect": true, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "rito", "website": "https://ritocoin.org", "xprv_magic": 87326380, "xpub_magic": 87353290, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 63, "address_type_p2sh": 18, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.smartcash.cc"], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash", "coin_name": "SmartCash", "coin_shortcut": "SMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "duplicate": true, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "000007acc6970b812948d14ea5a0a13db0fdd07d5047c7e69101fa8b361e05a4", "key": "bitcoin:SMART", "maintainer": "Leandro Reinaux ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash", "negative_fee": false, "segwit": false, "shortcut": "SMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "smart", "website": "https://smartcash.cc", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 21, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 55, "cashaddr_prefix": null, "coin_label": "SmartCash Testnet", "coin_name": "SmartCash Testnet", "coin_shortcut": "tSMART", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1_smart", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/SmartCash/Core-Smart", "hash_genesis_block": "0000027235b5679bcd28c90d03d4bf1a9ba4c07c4efcc1c87d6c68cce25e6e5d", "key": "bitcoin:tSMART", "maintainer": "Leandro Reinaux ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "SmartCash Testnet", "negative_fee": false, "segwit": false, "shortcut": "tSMART", "signed_message_header": "SmartCash Signed Message:\n", "slip44": 224, "support": {"connect": false, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": false}, "uri_prefix": "testsmart", "website": "https://smartcash.cc", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 76, "address_type_p2sh": 16, "bech32_prefix": "xc", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Stakenet", "coin_name": "Stakenet", "coin_shortcut": "XSN", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 70, "High": 200, "Low": 10, "Normal": 140}, "dust_limit": 1000, "force_bip143": false, "fork_id": null, "github": "https://github.com/X9Developers/XSN", "hash_genesis_block": "00000c822abdbb23e28f79a49d29b41429737c6c7e15df40d1b1f1b35907ae34", "key": "bitcoin:XSN", "maintainer": "Alexis Hernandez ", "max_address_length": 47, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Stakenet", "negative_fee": false, "segwit": true, "shortcut": "XSN", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 199, "support": {"connect": true, "trezor1": "1.8.0", "trezor2": "2.0.11", "webwallet": false}, "uri_prefix": "stakenet", "website": "https://stakenet.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 63, "address_type_p2sh": 5, "bech32_prefix": "sys", "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 60, "cashaddr_prefix": null, "coin_label": "Syscoin", "coin_name": "Syscoin", "coin_shortcut": "SYS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 200, "High": 2000, "Low": 100, "Normal": 400}, "dust_limit": 1820, "force_bip143": false, "fork_id": null, "github": "https://github.com/syscoin/syscoin", "hash_genesis_block": "0000022642db0346b6e01c2a397471f4f12e65d4f4251ec96c1f85367a61a7ab", "key": "bitcoin:SYS", "maintainer": "Jagdeep Sidhu ", "max_address_length": 34, "maxfee_kb": 10000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Syscoin", "negative_fee": false, "segwit": true, "shortcut": "SYS", "signed_message_header": "Syscoin Signed Message:\n", "slip44": 57, "support": {"connect": false, "trezor1": "1.8.4", "trezor2": "2.1.8", "webwallet": false}, "uri_prefix": "syscoin", "website": "https://syscoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 0, "address_type_p2sh": 5, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.terracoin.io"], "blockbook": [], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Terracoin", "coin_name": "Terracoin", "coin_shortcut": "TRC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "duplicate": true, "dust_limit": 5460, "force_bip143": false, "fork_id": null, "github": "https://github.com/terracoin/terracoin", "hash_genesis_block": "00000000804bbc6a621a9dbb564ce469f492e1ccf2d70f8a6b241e26a277afa2", "key": "bitcoin:TRC", "maintainer": "The Terracoin Foundation ", "max_address_length": 34, "maxfee_kb": 100000, "min_address_length": 27, "minfee_kb": 10000, "name": "Terracoin", "negative_fee": false, "segwit": false, "shortcut": "TRC", "signed_message_header": "DarkCoin Signed Message:\n", "slip44": 83, "support": {"connect": false, "trezor1": false, "trezor2": false, "webwallet": false}, "uri_prefix": "terracoin", "website": "https://terracoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 130, "address_type_p2sh": 30, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.flurbo.xyz", "https://blockbook.unobtanium.uno"], "blocktime_seconds": 30, "cashaddr_prefix": null, "coin_label": "Unobtanium", "coin_name": "Unobtanium", "coin_shortcut": "UNO", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 50, "High": 160, "Low": 10, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/unobtanium-official/unobtanium", "hash_genesis_block": "000004c2fc5fffb810dccc197d603690099a68305232e552d96ccbe8e2c52b75", "key": "bitcoin:UNO", "maintainer": "choicesz ", "max_address_length": 34, "maxfee_kb": 2000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Unobtanium", "negative_fee": false, "segwit": false, "shortcut": "UNO", "signed_message_header": "Unobtanium Signed Message:\n", "slip44": 92, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.6", "webwallet": false}, "uri_prefix": "unobtanium", "website": "https://unobtanium.uno", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 70, "address_type_p2sh": 50, "bech32_prefix": "vips", "bip115": false, "bitcore": ["https://insight.vipstarco.in"], "blockbook": ["https://vips.blockbook.japanesecoin-pool.work"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "VIPSTARCOIN", "coin_name": "VIPSTARCOIN", "coin_shortcut": "VIPS", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 500, "High": 2000, "Low": 410, "Normal": 600}, "dust_limit": 218400, "force_bip143": false, "fork_id": null, "github": "https://github.com/VIPSTARCOIN/VIPSTARCOIN", "hash_genesis_block": "0000d068e1d30f79fb64446137106be9c6ee69a6a722295c131506b1ee09b77c", "key": "bitcoin:VIPS", "maintainer": "y-chan ", "max_address_length": 36, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 400000, "name": "VIPSTARCOIN", "negative_fee": false, "segwit": true, "shortcut": "VIPS", "signed_message_header": "VIPSTARCOIN Signed Message:\n", "slip44": 1919, "support": {"connect": false, "trezor1": "1.8.2", "trezor2": "2.1.1", "webwallet": false}, "uri_prefix": "vipstarcoin", "website": "https://vipstarcoin.jp", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 5, "bech32_prefix": "vtc", "bip115": false, "bitcore": [], "blockbook": ["https://vtc1.trezor.io", "https://vtc2.trezor.io", "https://vtc3.trezor.io", "https://vtc4.trezor.io", "https://vtc5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Vertcoin", "coin_name": "Vertcoin", "coin_shortcut": "VTC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 1000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/vertcoin-project/vertcoin-core", "hash_genesis_block": "4d96a915f49d40b1e5c2844d1ee2dccb90013a990ccea12c492d22110489f0c4", "key": "bitcoin:VTC", "maintainer": "Jochen Hoenicke ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 100000, "name": "Vertcoin", "negative_fee": false, "segwit": true, "shortcut": "VTC", "signed_message_header": "Vertcoin Signed Message:\n", "slip44": 28, "support": {"connect": true, "trezor1": "1.6.1", "trezor2": "2.0.5", "webwallet": true}, "uri_prefix": "vertcoin", "website": "https://vertcoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 71, "address_type_p2sh": 33, "bech32_prefix": "via", "bip115": false, "bitcore": ["https://explorer.viacoin.org"], "blockbook": [], "blocktime_seconds": 24, "cashaddr_prefix": null, "coin_label": "Viacoin", "coin_name": "Viacoin", "coin_shortcut": "VIA", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 7000, "High": 20000, "Low": 1000, "Normal": 14000}, "dust_limit": 54600, "force_bip143": false, "fork_id": null, "github": "https://github.com/viacoin", "hash_genesis_block": "4e9b54001f9976049830128ec0331515eaabe35a70970d79971da1539a400ba1", "key": "bitcoin:VIA", "maintainer": "romanornr ", "max_address_length": 34, "maxfee_kb": 40000000, "min_address_length": 27, "minfee_kb": 1000, "name": "Viacoin", "negative_fee": false, "segwit": true, "shortcut": "VIA", "signed_message_header": "Viacoin Signed Message:\n", "slip44": 14, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "viacoin", "website": "https://viacoin.org", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": 78792518, "xpub_magic_segwit_p2sh": 77429938}, {"address_type": 142, "address_type_p2sh": 145, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zcore.cash"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "ZCore", "coin_name": "ZCore", "coin_shortcut": "ZCR", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcore-coin/zcore-2.0", "hash_genesis_block": "695b79c8c234b45b2eeb4722f33373e471c9b686ff78efeb39da95f824a9f81b", "key": "bitcoin:ZCR", "maintainer": "Erick Costa ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 34, "minfee_kb": 1000, "name": "ZCore", "negative_fee": false, "segwit": false, "shortcut": "ZCR", "signed_message_header": "DarkNet Signed Message:\n", "slip44": 428, "support": {"connect": true, "trezor1": "1.8.4", "trezor2": "2.1.7", "webwallet": true}, "uri_prefix": "zcore", "website": "https://zcore.cash", "xprv_magic": 78791432, "xpub_magic": 78792518, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://zec1.trezor.io", "https://zec2.trezor.io", "https://zec3.trezor.io", "https://zec4.trezor.io", "https://zec5.trezor.io"], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash", "coin_name": "Zcash", "coin_shortcut": "ZEC", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "00040fe8ec8471911baa1db1266ea15dd06b4a8a5c453883c000b031973dce08", "key": "bitcoin:ZEC", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash", "negative_fee": false, "segwit": false, "shortcut": "ZEC", "signed_message_header": "Zcash Signed Message:\n", "slip44": 133, "support": {"connect": true, "trezor1": "1.7.1", "trezor2": "2.0.8", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7461, "address_type_p2sh": 7354, "bech32_prefix": null, "bip115": false, "bitcore": ["https://explorer.testnet.z.cash"], "blockbook": [], "blocktime_seconds": 150, "cashaddr_prefix": null, "coin_label": "Zcash Testnet", "coin_name": "Zcash Testnet", "coin_shortcut": "TAZ", "confidential_assets": null, "consensus_branch_id": {"1": 0, "2": 0, "3": 1537743641, "4": 1991772603}, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcash/zcash", "hash_genesis_block": "05a60a92d99d85997cce3b87616c089f6124d7342af37106edc76126334a2c38", "key": "bitcoin:TAZ", "maintainer": "Pavol Rusnak ", "max_address_length": 95, "maxfee_kb": 10000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zcash Testnet", "negative_fee": false, "segwit": false, "shortcut": "TAZ", "signed_message_header": "Zcash Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcash", "website": "https://z.cash", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 82, "address_type_p2sh": 7, "bech32_prefix": null, "bip115": false, "bitcore": ["https://insight.zcoin.io"], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin", "coin_name": "Zcoin", "coin_shortcut": "XZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "4381deb85b1b2c9843c222944b616d997516dcbd6a964e1eaf0def0830695233", "key": "bitcoin:XZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 34, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin", "negative_fee": false, "segwit": false, "shortcut": "XZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 136, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": true}, "uri_prefix": "zcoin", "website": "https://zcoin.io", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 65, "address_type_p2sh": 178, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": [], "blocktime_seconds": 600, "cashaddr_prefix": null, "coin_label": "Zcoin Testnet", "coin_name": "Zcoin Testnet", "coin_shortcut": "tXZC", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Economy": 10, "High": 200, "Low": 1, "Normal": 100}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zcoinofficial/zcoin", "hash_genesis_block": "7ac038c193c2158c428c59f9ae0c02a07115141c6e9dc244ae96132e99b4e642", "key": "bitcoin:tXZC", "maintainer": "Yura Pakhuchiy ", "max_address_length": 35, "maxfee_kb": 1000000, "min_address_length": 27, "minfee_kb": 0, "name": "Zcoin Testnet", "negative_fee": false, "segwit": false, "shortcut": "tXZC", "signed_message_header": "Zcoin Signed Message:\n", "slip44": 1, "support": {"connect": true, "trezor1": "1.6.2", "trezor2": "2.0.7", "webwallet": false}, "uri_prefix": "testzcoin", "website": "https://zcoin.io", "xprv_magic": 70615956, "xpub_magic": 70617039, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}, {"address_type": 7352, "address_type_p2sh": 7357, "bech32_prefix": null, "bip115": false, "bitcore": [], "blockbook": ["https://blockbook.zel.network"], "blocktime_seconds": 120, "cashaddr_prefix": null, "coin_label": "Zel", "coin_name": "ZelCash", "coin_shortcut": "ZEL", "confidential_assets": null, "consensus_branch_id": null, "cooldown": 100, "curve_name": "secp256k1", "decred": false, "default_fee_b": {"Normal": 10}, "dust_limit": 546, "force_bip143": false, "fork_id": null, "github": "https://github.com/zelcash", "hash_genesis_block": "00052461a5006c2e3b74ce48992a08695607912d5604c3eb8da25749b0900444", "key": "bitcoin:ZEL", "maintainer": "Cabecinha84 ", "max_address_length": 95, "maxfee_kb": 1000000, "min_address_length": 35, "minfee_kb": 1000, "name": "Zel", "negative_fee": false, "segwit": false, "shortcut": "ZEL", "signed_message_header": "Zcash Signed Message:\n", "slip44": 19167, "support": {"connect": false, "trezor1": "1.8.3", "trezor2": "2.1.4", "webwallet": false}, "uri_prefix": "zelcash", "website": "https://zel.network", "xprv_magic": 76066276, "xpub_magic": 76067358, "xpub_magic_segwit_native": null, "xpub_magic_segwit_p2sh": null}] From 1523f09b376e64ae35bfda51709ae69139eb6820 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 3 Nov 2019 10:44:54 +0000 Subject: [PATCH 08/22] git subrepo push common subrepo: subdir: "common" merged: "47de95caa" upstream: origin: "git+ssh://git@github.com/trezor/trezor-common" branch: "master" commit: "47de95caa" git-subrepo: version: "0.4.0" origin: "https://github.com/ingydotnet/git-subrepo" commit: "5d6aba9" --- common/.gitrepo | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/.gitrepo b/common/.gitrepo index 7b29b7b7e..26e80d15c 100644 --- a/common/.gitrepo +++ b/common/.gitrepo @@ -6,7 +6,7 @@ [subrepo] remote = git+ssh://git@github.com/trezor/trezor-common branch = master - commit = 23ee4ad593dc52750d0f1f9ab7c66032f10e2c20 - parent = c617035a3e2f9d727a90f1c873e5056730fe2ac0 + commit = 47de95caa38890949d4a0c4bae89a5f640ea236d + parent = 0040b916d2ea514c987823fbf8ea5d979bf7fb06 method = rebase cmdver = 0.4.0 From 159b6d0308d2f8a0061a7b65ff052936f0428d31 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 3 Nov 2019 11:12:25 +0000 Subject: [PATCH 09/22] common/defs: fix support.json --- common/defs/support.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/common/defs/support.json b/common/defs/support.json index 95bd7221b..863a65681 100644 --- a/common/defs/support.json +++ b/common/defs/support.json @@ -36,7 +36,6 @@ "bitcoin:UNO": true, "bitcoin:VIA": true, "bitcoin:VTC": true, - "bitcoin:XMY": true, "bitcoin:XPM": true, "bitcoin:XRC": true, "bitcoin:XSN": true, @@ -140,12 +139,10 @@ "bitcoin:TBTG": "1.7.1", "bitcoin:TDCR": "1.6.2", "bitcoin:TEST": "1.5.2", - "bitcoin:UMBRU": "1.8.3", "bitcoin:UNO": "1.8.4", "bitcoin:VIA": "1.6.2", "bitcoin:VIPS": "1.8.2", "bitcoin:VTC": "1.6.1", - "bitcoin:XMY": "1.7.1", "bitcoin:XPM": "1.8.0", "bitcoin:XRC": "1.8.2", "bitcoin:XSN": "1.8.0", @@ -1611,12 +1608,10 @@ "bitcoin:TBTG": "2.0.8", "bitcoin:TDCR": "2.0.8", "bitcoin:TEST": "2.0.5", - "bitcoin:UMBRU": "2.1.5", "bitcoin:UNO": "2.1.6", "bitcoin:VIA": "2.0.7", "bitcoin:VIPS": "2.1.1", "bitcoin:VTC": "2.0.5", - "bitcoin:XMY": "2.0.8", "bitcoin:XPM": "2.0.11", "bitcoin:XRC": "2.1.1", "bitcoin:XSN": "2.0.11", From e1c072221ec7b5833eb89620258edf28f39dcdb3 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Sun, 3 Nov 2019 11:12:38 +0000 Subject: [PATCH 10/22] git subrepo push common subrepo: subdir: "common" merged: "e2a545110" upstream: origin: "git+ssh://git@github.com/trezor/trezor-common" branch: "master" commit: "e2a545110" git-subrepo: version: "0.4.0" origin: "https://github.com/ingydotnet/git-subrepo" commit: "5d6aba9" --- common/.gitrepo | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/.gitrepo b/common/.gitrepo index 26e80d15c..f0773df1d 100644 --- a/common/.gitrepo +++ b/common/.gitrepo @@ -6,7 +6,7 @@ [subrepo] remote = git+ssh://git@github.com/trezor/trezor-common branch = master - commit = 47de95caa38890949d4a0c4bae89a5f640ea236d - parent = 0040b916d2ea514c987823fbf8ea5d979bf7fb06 + commit = e2a54511010109877f029e9ca1afab7952067b09 + parent = 159b6d0308d2f8a0061a7b65ff052936f0428d31 method = rebase cmdver = 0.4.0 From a799be335a1cc55abbeb9c9a0185859337dad23d Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Tue, 5 Nov 2019 10:23:11 +0100 Subject: [PATCH 11/22] ci: add core debug fw build --- ci/build.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ci/build.yml b/ci/build.yml index 4466150af..c8cf22df2 100644 --- a/ci/build.yml +++ b/ci/build.yml @@ -53,6 +53,21 @@ core fw regular build: - trezor-fw-regular-*.*.*-$CI_COMMIT_SHORT_SHA.bin expire_in: 1 week +core fw regular debug build: + stage: build + <<: *only_changes_core + script: + - cd core + - PYOPT=0 pipenv run make build_firmware + - cd .. + - export VERSION=$(./tools/version.sh core/embed/firmware/version.h) + - cp core/build/firmware/firmware.bin trezor-fw-regular-debug-$VERSION-$CI_COMMIT_SHORT_SHA.bin + artifacts: + name: "$CI_JOB_NAME-$CI_COMMIT_SHORT_SHA" + paths: + - trezor-fw-regular-debug-*.*.*-$CI_COMMIT_SHORT_SHA.bin + expire_in: 1 week + core fw btconly build: stage: build <<: *only_changes_core From 905a405cb33d177d48135ae67da6d761b8d18728 Mon Sep 17 00:00:00 2001 From: ciny Date: Mon, 4 Nov 2019 15:45:54 +0100 Subject: [PATCH 12/22] tests: click tests for basic and advanced slip39 --- tests/buttons.py | 10 +- tests/click_tests/reset.py | 71 +++++++ .../click_tests/test_reset_slip39_advanced.py | 193 ++++++++++++++++++ tests/click_tests/test_reset_slip39_basic.py | 174 ++++++++++++++++ 4 files changed, 446 insertions(+), 2 deletions(-) create mode 100644 tests/click_tests/reset.py create mode 100644 tests/click_tests/test_reset_slip39_advanced.py create mode 100644 tests/click_tests/test_reset_slip39_basic.py diff --git a/tests/buttons.py b/tests/buttons.py index fe8169644..e65371e16 100644 --- a/tests/buttons.py +++ b/tests/buttons.py @@ -21,8 +21,14 @@ INFO = (MID, BOTTOM) CONFIRM_WORD = (MID, TOP) -MINUS = (LEFT, grid(DISPLAY_HEIGHT, 5, 2)) -PLUS = (RIGHT, grid(DISPLAY_HEIGHT, 5, 2)) +RESET_MINUS = (LEFT, grid(DISPLAY_HEIGHT, 5, 1)) +RESET_PLUS = (RIGHT, grid(DISPLAY_HEIGHT, 5, 1)) + +RESET_WORD_CHECK = [ + (MID, grid(DISPLAY_HEIGHT, 6, 3)), + (MID, grid(DISPLAY_HEIGHT, 6, 4)), + (MID, grid(DISPLAY_HEIGHT, 6, 5)), +] BUTTON_LETTERS = ("ab", "cd", "ef", "ghij", "klm", "nopq", "rs", "tuv", "wxyz") diff --git a/tests/click_tests/reset.py b/tests/click_tests/reset.py new file mode 100644 index 000000000..75cbb97af --- /dev/null +++ b/tests/click_tests/reset.py @@ -0,0 +1,71 @@ +import shamir_mnemonic as shamir + +from trezorlib import messages + +from .. import buttons + + +def confirm_wait(debug, startswith): + layout = debug.wait_layout() + assert layout.text.startswith(startswith) + debug.click(buttons.OK, wait=True) + + +def confirm_read(debug, startswith): + layout = debug.read_layout() + assert layout.text.startswith(startswith) + debug.click(buttons.OK, wait=True) + + +def set_selection(debug, button, diff): + layout = debug.read_layout() + assert layout.text.startswith("Slip39NumInput") + for _ in range(diff): + debug.click(button, wait=False) + debug.click(buttons.OK, wait=True) + + +def read_words(debug, is_advanced=False): + words = [] + layout = debug.read_layout() + if is_advanced: + assert layout.text.startswith("Group") + else: + assert layout.text.startswith("Recovery share") + for i in range(6): + lines = debug.read_layout().lines + if i == 0: + words.append(lines[3].split()[1]) + words.append(lines[4].split()[1]) + debug.input(swipe=messages.DebugSwipeDirection.UP, wait=True) + elif i == 5: + words.append(lines[1].split()[1]) + words.append(lines[2].split()[1]) + else: + words.append(lines[1].split()[1]) + words.append(lines[2].split()[1]) + words.append(lines[3].split()[1]) + words.append(lines[4].split()[1]) + debug.input(swipe=messages.DebugSwipeDirection.UP, wait=True) + debug.press_yes() + + return words + + +def confirm_words(debug, words): + # confirm words + layout = debug.wait_layout() + layout.text.startswith("Check share") + for _ in range(3): + word_pos = int(debug.state().layout_lines[1].split()[2]) + button_pos = debug.state().layout_lines.index(words[word_pos - 1]) - 2 + debug.click(buttons.RESET_WORD_CHECK[button_pos], wait=True) + + +def validate_mnemonics(mnemonics, expected_ems): + # We expect these combinations to recreate the secret properly + # In case of click tests the mnemonics are always XofX so no need for combinations + ms = shamir.combine_mnemonics(mnemonics) + identifier, iteration_exponent, _, _, _ = shamir._decode_mnemonics(mnemonics) + ems = shamir._encrypt(ms, b"", iteration_exponent, identifier) + assert ems == expected_ems diff --git a/tests/click_tests/test_reset_slip39_advanced.py b/tests/click_tests/test_reset_slip39_advanced.py new file mode 100644 index 000000000..feea93e99 --- /dev/null +++ b/tests/click_tests/test_reset_slip39_advanced.py @@ -0,0 +1,193 @@ +# This file is part of the Trezor project. +# +# Copyright (C) 2012-2019 SatoshiLabs and contributors +# +# This library is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the License along with this library. +# If not, see . + +from unittest import mock + +import pytest + +from trezorlib import device, messages + +from .. import buttons +from ..common import generate_entropy +from . import reset + +EXTERNAL_ENTROPY = b"zlutoucky kun upel divoke ody" * 2 + + +@pytest.mark.skip_t1 +@pytest.mark.setup_client(uninitialized=True) +def test_reset_slip39_advanced_2of2groups_2of2shares(device_handler): + features = device_handler.features() + debug = device_handler.debuglink() + + assert features.initialized is False + + os_urandom = mock.Mock(return_value=EXTERNAL_ENTROPY) + with mock.patch("os.urandom", os_urandom), device_handler: + device_handler.run( + device.reset, + strength=128, + backup_type=messages.BackupType.Slip39_Advanced, + pin_protection=False, + ) + + # confirm new wallet + reset.confirm_wait(debug, "Create new wallet") + + # confirm back up + reset.confirm_wait(debug, "Success") + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set num of groups + reset.set_selection(debug, buttons.RESET_MINUS, 3) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set group threshold + reset.set_selection(debug, buttons.RESET_MINUS, 0) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set share num and threshold for groups + for _ in range(2): + # set num of shares + reset.set_selection(debug, buttons.RESET_MINUS, 3) + + # set share threshold + reset.set_selection(debug, buttons.RESET_MINUS, 0) + + # confirm backup warning + reset.confirm_read(debug, "Caution") + + all_words = [] + for _ in range(2): + for _ in range(2): + # read words + words = reset.read_words(debug, True) + + # confirm words + reset.confirm_words(debug, words) + + # confirm share checked + reset.confirm_read(debug, "Success") + + all_words.append(" ".join(words)) + + # confirm backup done + reset.confirm_read(debug, "Success") + + # generate secret locally + internal_entropy = debug.state().reset_entropy + secret = generate_entropy(128, internal_entropy, EXTERNAL_ENTROPY) + + # validate that all combinations will result in the correct master secret + reset.validate_mnemonics(all_words, secret) + + assert device_handler.result() == "Initialized" + + features = device_handler.features() + assert features.initialized is True + assert features.needs_backup is False + assert features.pin_protection is False + assert features.passphrase_protection is False + assert features.backup_type is messages.BackupType.Slip39_Advanced + + +@pytest.mark.skip_t1 +@pytest.mark.setup_client(uninitialized=True) +def test_reset_slip39_advanced_16of16groups_16of16shares(device_handler): + features = device_handler.features() + debug = device_handler.debuglink() + + assert features.initialized is False + + os_urandom = mock.Mock(return_value=EXTERNAL_ENTROPY) + with mock.patch("os.urandom", os_urandom), device_handler: + device_handler.run( + device.reset, + strength=128, + backup_type=messages.BackupType.Slip39_Advanced, + pin_protection=False, + ) + + # confirm new wallet + reset.confirm_wait(debug, "Create new wallet") + + # confirm back up + reset.confirm_wait(debug, "Success") + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set num of groups + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set group threshold + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set share num and threshold for groups + for _ in range(16): + # set num of shares + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # set share threshold + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # confirm backup warning + reset.confirm_read(debug, "Caution") + + all_words = [] + for _ in range(16): + for _ in range(16): + # read words + words = reset.read_words(debug, True) + + # confirm words + reset.confirm_words(debug, words) + + # confirm share checked + reset.confirm_read(debug, "Success") + + all_words.append(" ".join(words)) + + # confirm backup done + reset.confirm_read(debug, "Success") + + # generate secret locally + internal_entropy = debug.state().reset_entropy + secret = generate_entropy(128, internal_entropy, EXTERNAL_ENTROPY) + + # validate that all combinations will result in the correct master secret + reset.validate_mnemonics(all_words, secret) + + assert device_handler.result() == "Initialized" + + features = device_handler.features() + assert features.initialized is True + assert features.needs_backup is False + assert features.pin_protection is False + assert features.passphrase_protection is False + assert features.backup_type is messages.BackupType.Slip39_Advanced diff --git a/tests/click_tests/test_reset_slip39_basic.py b/tests/click_tests/test_reset_slip39_basic.py new file mode 100644 index 000000000..92993078f --- /dev/null +++ b/tests/click_tests/test_reset_slip39_basic.py @@ -0,0 +1,174 @@ +# This file is part of the Trezor project. +# +# Copyright (C) 2012-2019 SatoshiLabs and contributors +# +# This library is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the License along with this library. +# If not, see . + +from unittest import mock + +import pytest + +from trezorlib import device, messages + +from .. import buttons +from ..common import generate_entropy +from . import reset + +EXTERNAL_ENTROPY = b"zlutoucky kun upel divoke ody" * 2 + + +@pytest.mark.skip_t1 +@pytest.mark.setup_client(uninitialized=True) +def test_reset_slip39_basic_1of1(device_handler): + features = device_handler.features() + debug = device_handler.debuglink() + + assert features.initialized is False + + os_urandom = mock.Mock(return_value=EXTERNAL_ENTROPY) + with mock.patch("os.urandom", os_urandom), device_handler: + device_handler.run( + device.reset, + strength=128, + backup_type=messages.BackupType.Slip39_Basic, + pin_protection=False, + ) + + # confirm new wallet + reset.confirm_wait(debug, "Create new wallet") + + # confirm back up + reset.confirm_wait(debug, "Success") + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set num of shares + # default is 5 so we press RESET_MINUS 4 times + reset.set_selection(debug, buttons.RESET_MINUS, 4) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set threshold + # threshold will default to 1 + reset.set_selection(debug, buttons.RESET_MINUS, 0) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # confirm backup warning + reset.confirm_read(debug, "Caution") + + # read words + words = reset.read_words(debug) + + # confirm words + reset.confirm_words(debug, words) + + # confirm share checked + reset.confirm_read(debug, "Success") + + # confirm backup done + reset.confirm_read(debug, "Success") + + # generate secret locally + internal_entropy = debug.state().reset_entropy + secret = generate_entropy(128, internal_entropy, EXTERNAL_ENTROPY) + + # validate that all combinations will result in the correct master secret + validate = [" ".join(words)] + reset.validate_mnemonics(validate, secret) + + assert device_handler.result() == "Initialized" + features = device_handler.features() + assert features.initialized is True + assert features.needs_backup is False + assert features.pin_protection is False + assert features.passphrase_protection is False + assert features.backup_type is messages.BackupType.Slip39_Basic + + +@pytest.mark.skip_t1 +@pytest.mark.setup_client(uninitialized=True) +def test_reset_slip39_basic_16of16(device_handler): + features = device_handler.features() + debug = device_handler.debuglink() + + assert features.initialized is False + + os_urandom = mock.Mock(return_value=EXTERNAL_ENTROPY) + with mock.patch("os.urandom", os_urandom), device_handler: + device_handler.run( + device.reset, + strength=128, + backup_type=messages.BackupType.Slip39_Basic, + pin_protection=False, + ) + + # confirm new wallet + reset.confirm_wait(debug, "Create new wallet") + + # confirm back up + reset.confirm_wait(debug, "Success") + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set num of shares + # default is 5 so we add 11 + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # set threshold + # default is 5 so we add 11 + reset.set_selection(debug, buttons.RESET_PLUS, 11) + + # confirm checklist + reset.confirm_read(debug, "Checklist") + + # confirm backup warning + reset.confirm_read(debug, "Caution") + + all_words = [] + for _ in range(16): + # read words + words = reset.read_words(debug) + + # confirm words + reset.confirm_words(debug, words) + + # confirm share checked + reset.confirm_read(debug, "Success") + + all_words.append(" ".join(words)) + + # confirm backup done + reset.confirm_read(debug, "Success") + + # generate secret locally + internal_entropy = debug.state().reset_entropy + secret = generate_entropy(128, internal_entropy, EXTERNAL_ENTROPY) + + # validate that all combinations will result in the correct master secret + reset.validate_mnemonics(all_words, secret) + + assert device_handler.result() == "Initialized" + features = device_handler.features() + assert features.initialized is True + assert features.needs_backup is False + assert features.pin_protection is False + assert features.passphrase_protection is False + assert features.backup_type is messages.BackupType.Slip39_Basic From 2aab4e5955c08d0f0013896793b09f4831813299 Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Tue, 5 Nov 2019 10:40:06 +0000 Subject: [PATCH 13/22] tests/click: refactor reading lines to a function --- tests/click_tests/reset.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/tests/click_tests/reset.py b/tests/click_tests/reset.py index 75cbb97af..93b02d28a 100644 --- a/tests/click_tests/reset.py +++ b/tests/click_tests/reset.py @@ -26,6 +26,9 @@ def set_selection(debug, button, diff): def read_words(debug, is_advanced=False): + def read_word(line: str): + return line.split()[1] + words = [] layout = debug.read_layout() if is_advanced: @@ -35,17 +38,17 @@ def read_words(debug, is_advanced=False): for i in range(6): lines = debug.read_layout().lines if i == 0: - words.append(lines[3].split()[1]) - words.append(lines[4].split()[1]) + words.append(read_word(lines[3])) + words.append(read_word(lines[4])) debug.input(swipe=messages.DebugSwipeDirection.UP, wait=True) elif i == 5: - words.append(lines[1].split()[1]) - words.append(lines[2].split()[1]) + words.append(read_word(lines[1])) + words.append(read_word(lines[2])) else: - words.append(lines[1].split()[1]) - words.append(lines[2].split()[1]) - words.append(lines[3].split()[1]) - words.append(lines[4].split()[1]) + words.append(read_word(lines[1])) + words.append(read_word(lines[2])) + words.append(read_word(lines[3])) + words.append(read_word(lines[4])) debug.input(swipe=messages.DebugSwipeDirection.UP, wait=True) debug.press_yes() @@ -53,7 +56,6 @@ def read_words(debug, is_advanced=False): def confirm_words(debug, words): - # confirm words layout = debug.wait_layout() layout.text.startswith("Check share") for _ in range(3): From 8928e891c60521051c5a9a4a9c4dd3ebe8990c22 Mon Sep 17 00:00:00 2001 From: Pavol Rusnak Date: Tue, 5 Nov 2019 15:57:31 +0100 Subject: [PATCH 14/22] core/Changelog: add entry --- core/ChangeLog | 1 + 1 file changed, 1 insertion(+) diff --git a/core/ChangeLog b/core/ChangeLog index 187be69bb..880e5efa8 100644 --- a/core/ChangeLog +++ b/core/ChangeLog @@ -5,6 +5,7 @@ Version 2.x.x [not yet released] Version 2.1.8 [Nov 2019] * Support Tezos 005-BABYLON hardfork * Show XPUBs in GetAddress for multisig +* Security improvements Version 2.1.7 [Oct 2019] * Fix low memory issue From 7dba12cb6db0a3701de2eeb3d3f30093944cb660 Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Tue, 5 Nov 2019 17:05:37 +0100 Subject: [PATCH 15/22] core/log: print received message's name --- core/src/trezor/wire/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/trezor/wire/__init__.py b/core/src/trezor/wire/__init__.py index f1a277cff..6d4e38f83 100644 --- a/core/src/trezor/wire/__init__.py +++ b/core/src/trezor/wire/__init__.py @@ -283,7 +283,7 @@ async def handle_session(iface: WireInterface, session_id: int) -> None: "%s:%x receive: %s", iface.iface_num(), session_id, - req_reader.type, + messages.get_type(req_reader.type), ) else: # We have a reader left over from earlier. We should process From ca484b2c061bb8f05a84c3d502c6b41c09babe17 Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Thu, 31 Oct 2019 10:27:59 +0100 Subject: [PATCH 16/22] core: remove persistence boot and set recovery as a default workflow --- core/src/apps/homescreen/__init__.py | 9 +++-- .../management/recovery_device/__init__.py | 12 +++---- .../management/recovery_device/homescreen.py | 12 +++---- core/src/main.py | 34 ++++++------------- core/src/trezor/workflow.py | 18 ++++++++-- 5 files changed, 39 insertions(+), 46 deletions(-) diff --git a/core/src/apps/homescreen/__init__.py b/core/src/apps/homescreen/__init__.py index 8c8c44e28..ce296c760 100644 --- a/core/src/apps/homescreen/__init__.py +++ b/core/src/apps/homescreen/__init__.py @@ -104,10 +104,9 @@ async def handle_Ping(ctx: wire.Context, msg: Ping) -> Success: return Success(message=msg.message) -def boot(features_only: bool = False) -> None: +def boot() -> None: register(MessageType.Initialize, handle_Initialize) register(MessageType.GetFeatures, handle_GetFeatures) - if not features_only: - register(MessageType.Cancel, handle_Cancel) - register(MessageType.ClearSession, handle_ClearSession) - register(MessageType.Ping, handle_Ping) + register(MessageType.Cancel, handle_Cancel) + register(MessageType.ClearSession, handle_ClearSession) + register(MessageType.Ping, handle_Ping) diff --git a/core/src/apps/management/recovery_device/__init__.py b/core/src/apps/management/recovery_device/__init__.py index fc77769cd..8b59c5972 100644 --- a/core/src/apps/management/recovery_device/__init__.py +++ b/core/src/apps/management/recovery_device/__init__.py @@ -27,6 +27,9 @@ async def recovery_device(ctx: wire.Context, msg: RecoveryDevice) -> Success: """ _check_state(msg) + if storage_recovery.is_in_progress(): + return await recovery_process(ctx) + await _continue_dialog(ctx, msg) # for dry run pin needs to be entered @@ -52,9 +55,7 @@ async def recovery_device(ctx: wire.Context, msg: RecoveryDevice) -> Success: if msg.dry_run: storage_recovery.set_dry_run(msg.dry_run) - result = await recovery_process(ctx) - - return result + return await recovery_process(ctx) def _check_state(msg: RecoveryDevice) -> None: @@ -63,11 +64,6 @@ def _check_state(msg: RecoveryDevice) -> None: if msg.dry_run and not storage.is_initialized(): raise wire.NotInitialized("Device is not initialized") - if storage_recovery.is_in_progress(): - raise RuntimeError( - "Function recovery_device should not be invoked when recovery is already in progress" - ) - if msg.enforce_wordlist is False: raise wire.ProcessError( "Value enforce_wordlist must be True, Trezor Core enforces words automatically." diff --git a/core/src/apps/management/recovery_device/homescreen.py b/core/src/apps/management/recovery_device/homescreen.py index c48a9a4bd..d5500dc12 100644 --- a/core/src/apps/management/recovery_device/homescreen.py +++ b/core/src/apps/management/recovery_device/homescreen.py @@ -1,4 +1,4 @@ -from trezor import loop, utils, wire +from trezor import utils, wire, workflow from trezor.crypto import slip39 from trezor.crypto.hashlib import sha256 from trezor.errors import MnemonicError @@ -14,6 +14,7 @@ from apps.common.storage import ( recovery as storage_recovery, recovery_shares as storage_recovery_shares, ) +from apps.homescreen.homescreen import homescreen from apps.management import backup_types from apps.management.recovery_device import layout @@ -25,13 +26,7 @@ if False: async def recovery_homescreen() -> None: # recovery process does not communicate on the wire ctx = wire.DummyContext() - try: - await recovery_process(ctx) - finally: - # clear the loop state, so loop.run will exit - loop.clear() - # clear the registered wire handlers to avoid conflicts - wire.clear() + await recovery_process(ctx) async def recovery_process(ctx: wire.GenericContext) -> Success: @@ -43,6 +38,7 @@ async def recovery_process(ctx: wire.GenericContext) -> Success: storage_recovery.end_progress() else: storage.wipe() + workflow.replace_default(homescreen) raise wire.ActionCancelled("Cancelled") return result diff --git a/core/src/main.py b/core/src/main.py index 1f13f8ac8..55e312125 100644 --- a/core/src/main.py +++ b/core/src/main.py @@ -15,21 +15,7 @@ usb.bus.open() utils.set_mode_unprivileged() -def _boot_recovery() -> None: - # load applications - import apps.homescreen - - # boot applications - apps.homescreen.boot(features_only=True) - if __debug__: - apps.debug.boot() - - from apps.management.recovery_device.homescreen import recovery_homescreen - - loop.schedule(recovery_homescreen()) - - -def _boot_default() -> None: +def _boot_apps() -> None: # load applications import apps.homescreen import apps.management @@ -71,13 +57,19 @@ def _boot_default() -> None: apps.debug.boot() # run main event loop and specify which screen is the default - from apps.homescreen.homescreen import homescreen + from apps.common.storage import recovery + + if recovery.is_in_progress(): + from apps.management.recovery_device.homescreen import recovery_homescreen - workflow.start_default(homescreen) + workflow.start_default(recovery_homescreen) + else: + from apps.homescreen.homescreen import homescreen + + workflow.start_default(homescreen) from trezor import loop, wire, workflow -from apps.common.storage import recovery while True: # initialize the wire codec @@ -85,11 +77,7 @@ while True: if __debug__: wire.setup(usb.iface_debug) - # boot either in recovery or default mode - if recovery.is_in_progress(): - _boot_recovery() - else: - _boot_default() + _boot_apps() loop.run() # loop is empty, reboot diff --git a/core/src/trezor/workflow.py b/core/src/trezor/workflow.py index df7d0e97d..4cb28195f 100644 --- a/core/src/trezor/workflow.py +++ b/core/src/trezor/workflow.py @@ -57,7 +57,7 @@ def start_default(constructor: Callable[[], loop.Task]) -> None: default_constructor = constructor default_task = constructor() if __debug__: - log.debug(__name__, "start default") + log.debug(__name__, "start default: %s", default_task) # Schedule the default task. Because the task can complete on its own, # we need to reset the `default_task` global in a finalizer. loop.schedule(default_task, None, None, _finalize_default) @@ -66,6 +66,20 @@ def start_default(constructor: Callable[[], loop.Task]) -> None: log.debug(__name__, "default already started") +def replace_default(constructor: Callable[[], loop.Task]) -> None: + global default_task + + if __debug__: + if default_task is None: + log.debug(__name__, "replacing default: default not running") + else: + log.debug(__name__, "replacing default: %s", default_task) + + if default_task is not None: + loop.finalize(default_task, None) # TODO: why not close_default() + start_default(constructor) + + def close_default() -> None: """Explicitly close the default workflow task.""" if default_task: @@ -80,7 +94,7 @@ def _finalize_default(task: loop.Task, value: Any) -> None: if default_task is task: if __debug__: - log.debug(__name__, "default closed") + log.debug(__name__, "default closed: %s", task) default_task = None else: if __debug__: From a3930d4bdbedf10c07e387d31a310a65794af6e8 Mon Sep 17 00:00:00 2001 From: matejcik Date: Mon, 4 Nov 2019 15:32:50 +0100 Subject: [PATCH 17/22] core: rename close_default to a more appropriate kill_default --- core/src/apps/common/mnemonic.py | 2 +- core/src/trezor/workflow.py | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/core/src/apps/common/mnemonic.py b/core/src/apps/common/mnemonic.py index d556e68ce..30ca2763b 100644 --- a/core/src/apps/common/mnemonic.py +++ b/core/src/apps/common/mnemonic.py @@ -59,7 +59,7 @@ def _start_progress() -> None: # Because we are drawing to the screen manually, without a layout, we # should make sure that no other layout is running. At this point, only # the homescreen should be on, so shut it down. - workflow.close_default() + workflow.kill_default() ui.backlight_fade(ui.BACKLIGHT_DIM) ui.display.clear() ui.header("Please wait") diff --git a/core/src/trezor/workflow.py b/core/src/trezor/workflow.py index 4cb28195f..852f415f4 100644 --- a/core/src/trezor/workflow.py +++ b/core/src/trezor/workflow.py @@ -79,9 +79,15 @@ def replace_default(constructor: Callable[[], loop.Task]) -> None: loop.finalize(default_task, None) # TODO: why not close_default() start_default(constructor) +def kill_default() -> None: + """Forcefully shut down default task. -def close_default() -> None: - """Explicitly close the default workflow task.""" + The purpose of the call is to prevent the default task from interfering with + a synchronous layout-less workflow (e.g., the progress bar in `mnemonic.get_seed`). + + This function should only be called from a workflow registered with `on_start`. + Otherwise the default will be restarted immediately. + """ if default_task: if __debug__: log.debug(__name__, "close default") From 1c59ba9423b284b9899a2a3d182ac60fad629cc8 Mon Sep 17 00:00:00 2001 From: matejcik Date: Mon, 4 Nov 2019 15:33:15 +0100 Subject: [PATCH 18/22] core/workflow: improve comments and logic --- core/src/trezor/workflow.py | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/core/src/trezor/workflow.py b/core/src/trezor/workflow.py index 852f415f4..aaecf4a46 100644 --- a/core/src/trezor/workflow.py +++ b/core/src/trezor/workflow.py @@ -49,7 +49,11 @@ def on_close(workflow: loop.Task) -> None: def start_default(constructor: Callable[[], loop.Task]) -> None: - """Start a default workflow, created from `constructor`.""" + """Start a default workflow, created from `constructor`. + + If a default task is already running, nothing will happen. Use `replace_default` + to set up a new default task for the next run. + """ global default_task global default_constructor @@ -67,17 +71,12 @@ def start_default(constructor: Callable[[], loop.Task]) -> None: def replace_default(constructor: Callable[[], loop.Task]) -> None: - global default_task - + """Configure a default workflow, which will be started next time it is needed.""" + global default_constructor if __debug__: - if default_task is None: - log.debug(__name__, "replacing default: default not running") - else: - log.debug(__name__, "replacing default: %s", default_task) + log.debug(__name__, "setting a new default: %s", constructor) + default_constructor = constructor - if default_task is not None: - loop.finalize(default_task, None) # TODO: why not close_default() - start_default(constructor) def kill_default() -> None: """Forcefully shut down default task. @@ -96,12 +95,21 @@ def kill_default() -> None: def _finalize_default(task: loop.Task, value: Any) -> None: + """Finalizer for the default task. Cleans up globals and restarts the default + in case no other task is running.""" global default_task if default_task is task: if __debug__: log.debug(__name__, "default closed: %s", task) default_task = None + + if not tasks and default_constructor: + # No registered workflows are running and we are in the default task + # finalizer, so when this function finished, nothing will be running. + # We must schedule a new instance of the default now. + start_default(default_constructor) + else: if __debug__: log.warning( @@ -110,3 +118,9 @@ def _finalize_default(task: loop.Task, value: Any) -> None: task, default_task, ) + + +# TODO +# If required, a function `shutdown_default` should be written, that clears the +# default constructor and shuts down the running default task. +# We currently do not need such function, so I'm just noting how it should work. From 7cb125d1cbb5e3dae29a82b04d3742a8610577ae Mon Sep 17 00:00:00 2001 From: matejcik Date: Mon, 4 Nov 2019 15:33:38 +0100 Subject: [PATCH 19/22] core/recovery: properly replace homescreens --- core/src/apps/management/recovery_device/__init__.py | 8 ++++++-- core/src/apps/management/recovery_device/homescreen.py | 8 +++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/core/src/apps/management/recovery_device/__init__.py b/core/src/apps/management/recovery_device/__init__.py index 8b59c5972..8af6c48df 100644 --- a/core/src/apps/management/recovery_device/__init__.py +++ b/core/src/apps/management/recovery_device/__init__.py @@ -1,4 +1,4 @@ -from trezor import config, ui, wire +from trezor import config, ui, wire, workflow from trezor.messages import ButtonRequestType from trezor.messages.Success import Success from trezor.pin import pin_to_int @@ -12,7 +12,10 @@ from apps.common.request_pin import ( show_pin_invalid, ) from apps.common.storage import device as storage_device, recovery as storage_recovery -from apps.management.recovery_device.homescreen import recovery_process +from apps.management.recovery_device.homescreen import ( + recovery_homescreen, + recovery_process, +) if False: from trezor.messages.RecoveryDevice import RecoveryDevice @@ -55,6 +58,7 @@ async def recovery_device(ctx: wire.Context, msg: RecoveryDevice) -> Success: if msg.dry_run: storage_recovery.set_dry_run(msg.dry_run) + workflow.replace_default(recovery_homescreen) return await recovery_process(ctx) diff --git a/core/src/apps/management/recovery_device/homescreen.py b/core/src/apps/management/recovery_device/homescreen.py index d5500dc12..46ea3064b 100644 --- a/core/src/apps/management/recovery_device/homescreen.py +++ b/core/src/apps/management/recovery_device/homescreen.py @@ -24,6 +24,10 @@ if False: async def recovery_homescreen() -> None: + if not storage.recovery.is_in_progress(): + workflow.replace_default(homescreen) + return + # recovery process does not communicate on the wire ctx = wire.DummyContext() await recovery_process(ctx) @@ -31,16 +35,14 @@ async def recovery_homescreen() -> None: async def recovery_process(ctx: wire.GenericContext) -> Success: try: - result = await _continue_recovery_process(ctx) + return await _continue_recovery_process(ctx) except recover.RecoveryAborted: dry_run = storage_recovery.is_dry_run() if dry_run: storage_recovery.end_progress() else: storage.wipe() - workflow.replace_default(homescreen) raise wire.ActionCancelled("Cancelled") - return result async def _continue_recovery_process(ctx: wire.GenericContext) -> Success: From 5ffa395dec37adee67a64feb52acc922413518ed Mon Sep 17 00:00:00 2001 From: matejcik Date: Mon, 4 Nov 2019 15:34:00 +0100 Subject: [PATCH 20/22] core: catch more exceptions for the purpose of halting --- core/src/boot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/boot.py b/core/src/boot.py index aa8d25c59..96c84595f 100644 --- a/core/src/boot.py +++ b/core/src/boot.py @@ -42,7 +42,7 @@ async def bootscreen() -> None: except (OSError, PinCancelled, SdProtectCancelled) as e: if __debug__: log.exception(__name__, e) - except Exception as e: + except BaseException as e: utils.halt(e.__class__.__name__) From 3349f737dfa06a32a698f109038cd5ae617fa5ba Mon Sep 17 00:00:00 2001 From: matejcik Date: Wed, 6 Nov 2019 16:21:53 +0100 Subject: [PATCH 21/22] python/debuglink: prevent race with recovery homescreen eating debuglink decisions --- python/src/trezorlib/debuglink.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/python/src/trezorlib/debuglink.py b/python/src/trezorlib/debuglink.py index 9a1c847af..43df7f2a5 100644 --- a/python/src/trezorlib/debuglink.py +++ b/python/src/trezorlib/debuglink.py @@ -181,6 +181,27 @@ class DebugUI: def button_request(self, code): if self.input_flow is None: + # XXX + # On Trezor T, in some rare cases, two layouts may be queuing for events at + # the same time. A new workflow will first send out a ButtonRequest, wait + # for a ButtonAck, and only then display a layout (closing the old one). + # That means that if a layout that accepts debuglink decisions is currently + # on screen, it has a good chance of accepting the following `press_yes` + # before it can be closed by the newly open layout from the new workflow. + # + # This happens in particular when the recovery homescreen is on, because + # it is a homescreen that accepts debuglink decisions. + # + # To prevent the issue, we insert a `wait_layout`, which on TT will only + # return after the screen is refreshed, so we are certain that the new + # layout is on. On T1 it is a no-op. + # + # This could run into trouble if some workflow asks for a ButtonRequest + # without refreshing the screen. + # This will also freeze on old bridges, where Read and Write are not + # separate operations, because it relies on ButtonAck being sent without + # waiting for a response. + self.debuglink.wait_layout() self.debuglink.press_yes() elif self.input_flow is self.INPUT_FLOW_DONE: raise AssertionError("input flow ended prematurely") From 7de5cec4b0b0280c281fe909764dbe4c8f44ec0f Mon Sep 17 00:00:00 2001 From: matejcik Date: Wed, 6 Nov 2019 16:36:44 +0100 Subject: [PATCH 22/22] core: halt if the script ever runs out of the loop in main.py --- core/src/main.py | 16 ++++++++-------- core/src/trezor/workflow.py | 7 +++++-- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/core/src/main.py b/core/src/main.py index 55e312125..c22847e6e 100644 --- a/core/src/main.py +++ b/core/src/main.py @@ -71,13 +71,13 @@ def _boot_apps() -> None: from trezor import loop, wire, workflow -while True: - # initialize the wire codec - wire.setup(usb.iface_wire) - if __debug__: - wire.setup(usb.iface_debug) +# initialize the wire codec +wire.setup(usb.iface_wire) +if __debug__: + wire.setup(usb.iface_debug) - _boot_apps() - loop.run() +_boot_apps() +loop.run() - # loop is empty, reboot +# loop is empty. That should not happen +utils.halt("All tasks have died.") diff --git a/core/src/trezor/workflow.py b/core/src/trezor/workflow.py index aaecf4a46..9cc10fe1c 100644 --- a/core/src/trezor/workflow.py +++ b/core/src/trezor/workflow.py @@ -104,11 +104,14 @@ def _finalize_default(task: loop.Task, value: Any) -> None: log.debug(__name__, "default closed: %s", task) default_task = None - if not tasks and default_constructor: + if not tasks: # No registered workflows are running and we are in the default task # finalizer, so when this function finished, nothing will be running. # We must schedule a new instance of the default now. - start_default(default_constructor) + if default_constructor is not None: + start_default(default_constructor) + else: + raise RuntimeError # no tasks and no default constructor else: if __debug__: