BIP84 derivation of per-user P2WPKH addresses and the pool address from the encrypted master xprv (app/wallet/hd.py, keystore.py), the PLM mainnet chain params (plm_network.py), and PSBT construction for bets/ payouts/withdrawals with change-output and fee-estimation logic (psbt_builder.py). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
29 lines
935 B
Python
29 lines
935 B
Python
"""PLM mainnet params for embit, verified against PalladiumWallet/src/Core/Chain/ChainProfiles.cs.
|
|
|
|
Threaded explicitly through every embit call via `network=PLM_MAINNET` rather than
|
|
registered globally, since this is a long-lived async server (embit has no
|
|
concept of "current network" beyond what you pass in).
|
|
"""
|
|
|
|
PLM_MAINNET = {
|
|
"name": "PLM Mainnet",
|
|
"wif": bytes([0x80]),
|
|
"p2pkh": bytes([55]),
|
|
"p2sh": bytes([5]),
|
|
"bech32": "plm",
|
|
"xprv": bytes.fromhex("0488ade4"),
|
|
"xpub": bytes.fromhex("0488b21e"),
|
|
"yprv": bytes.fromhex("049d7878"),
|
|
"ypub": bytes.fromhex("049d7cb2"),
|
|
"zprv": bytes.fromhex("04b2430c"),
|
|
"zpub": bytes.fromhex("04b24746"),
|
|
"Yprv": bytes.fromhex("0295b005"),
|
|
"Ypub": bytes.fromhex("0295b43f"),
|
|
"Zprv": bytes.fromhex("02aa7a99"),
|
|
"Zpub": bytes.fromhex("02aa7ed3"),
|
|
"bip32": 0,
|
|
}
|
|
|
|
BIP44_COIN_TYPE = 746
|
|
ACCOUNT_PATH = f"m/84h/{BIP44_COIN_TYPE}h/0h"
|