The docs/packaging were largely un-rebranded Hush3 content, with several docs stating facts that are wrong for DragonX. This rewrites them against the verified DragonX source state. Corrections (not just branding): - PoW: RandomX (CPU), not Equihash/ASIC — README, overview.md, randomx.md - Privacy: private from genesis (ac_private=1, Sapling@height1), not "as of block 340000" — overview.md, payment-api.md - Removed the false "coinbase must be shielded" consensus claim (shield-coinbase.md, payment-api.md); coinbase is directly spendable - Fixed default fee 0.0001 (was 0.0010000, 10x); stratum port 22769 (was 19031) - datadir ~/.hush/DRAGONX, DRAGONX.conf, dragonxd/dragonx-cli/dragonx-tx, git.dragonx.is throughout; branch model dev->dragonx - Softened the inherited dPoW reorg claim (no live DragonX notary infra) Packaging: fix build-debian-package.sh + gen-manpages.sh to use the dragonx binaries/manpages; rename bash-completions to dragonx*; drop hush-arrakis-chain from the package. Keep /usr/share/hush (hardcoded in the binary for params). Also: README links/logo, ObsidianDragon + SilentDragonXAndroid wallets, networking/init/dev-process/contrib/util rebrand, and leftover helper scripts. Delete legacy duplicates (hushd.* init/service, HUSH3.conf examples, OLD_WALLETS.md, hsc.md) and rename hush-uri.bat -> dragonx-uri.bat. Out of scope (noted, not changed): historical changelog/copyright, the Hush mainnet airdrop snapshot, seed data files, depends/ source mirrors, and the in-code strCurrencyUnits="HUSH". Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
31 lines
1.1 KiB
Python
Executable File
31 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
# Copyright (c) 2019 Hush developers
|
|
# Released under the GPLv3
|
|
|
|
import sys
|
|
import base58
|
|
from binascii import unhexlify
|
|
from base58 import b58encode, b58decode_check
|
|
from hashlib import sha256
|
|
|
|
# based on https://github.com/KMDLabs/pos64staker/blob/master/stakerlib.py#L89
|
|
def addr_convert(prefix, address, prefix_bytes):
|
|
rmd160_dict = {}
|
|
# ZEC/DRAGONX/etc have 2 prefix bytes, BTC/KMD only have 1
|
|
# NOTE: any changes to this code should be verified against https://dexstats.info/addressconverter.php
|
|
ripemd = b58decode_check(address).hex()[2*prefix_bytes:]
|
|
net_byte = prefix + ripemd
|
|
bina = unhexlify(net_byte)
|
|
sha256a = sha256(bina).hexdigest()
|
|
binb = unhexlify(sha256a)
|
|
sha256b = sha256(binb).hexdigest()
|
|
final = b58encode(unhexlify(net_byte + sha256b[:8]))
|
|
return(final.decode())
|
|
|
|
if len(sys.argv) < 2:
|
|
sys.exit('Usage: %s dragonxv2address' % sys.argv[0])
|
|
|
|
address = sys.argv[1]
|
|
# convert given address to a KMD address
|
|
print(addr_convert('3c', address,2))
|