Wallet¶
The implementation of Hierarchical Deterministic (HD) wallets generator for XinFin blockchain.
- class swap.providers.xinfin.wallet.Wallet(network: str = 'mainnet', provider: str = 'http')¶
XinFin Wallet class.
- Parameters
network (str) – XinFin network, defaults to
mainnet
.provider (str) – XinFin network provider, defaults to
http
.
- Returns
Wallet – XinFin wallet instance.
Note
XinFin has only two networks,
mainnet
,apothem
andtestnet
.- from_entropy(entropy: str, language: str = 'english', passphrase: Optional[str] = None) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from entropy.
- Parameters
entropy (str) – XinFin wallet entropy.
language (str) – XinFin wallet language, default to
english
.passphrase (str) – XinFin wallet passphrase, default to
None
.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_mnemonic(mnemonic: str, language: Optional[str] = None, passphrase: Optional[str] = None) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from mnemonic.
- Parameters
mnemonic (str) – XinFin wallet mnemonic.
language (str) – XinFin wallet language, default to
english
.passphrase (str) – XinFin wallet passphrase, default to
None
.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_mnemonic(mnemonic="unfair divorce remind addict add roof park clown build renew illness fault") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_seed(seed: str) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from seed.
- Parameters
seed (str) – XinFin wallet seed.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_seed(seed="1cfd5df8a523d53a36cee369a93fac4e9efab5e4e138d479da2fb6df730697574409d572fe8325ec22e8ed25dea7495f498c3f5235fe6ae6d47b989267b6777c") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_root_xprivate_key(xprivate_key: str, strict: bool = True) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from root xprivate key.
- Parameters
xprivate_key (str) – XinFin wallet root xprivate key.
strict (bool) – Strict for must be root xprivate key, default to
True
.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_root_xprivate_key(xprivate_key="xprv9s21ZrQH143K3Y3pdbkbjreZQ9RVmqTLhRgf86uZyCJk2ou36YdUJt5frjwihGWmV1fQEDioiGZXWXUbHLy3kQf5xmhvhp8dZ2tfn6tgGUj") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_xprivate_key(xprivate_key: str) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from xprivate key.
- Parameters
xprivate_key (str) – XinFin wallet xprivate key.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_xprivate_key(xprivate_key="xprvA3QFrUVTkKpfRhqjgPq897uDFAYtt9VhMdDuZVbPboVf9uPMcMmr7W8sTsrd8nFCsVGSBCpGC3jreRpu8Zs1xsG5U98GZL24AqXYNPuo1rg") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_wif(wif: str) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from wallet important format (WIF).
- Parameters
wif (str) – XinFin wallet important format.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_wif(wif="L1rYHjuxQtgTeU4qMUP6qnGqW9nstFt5drQktRuFGFSuGcCpZoJq") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_private_key(private_key) swap.providers.xinfin.wallet.Wallet ¶
Initialize wallet from private key.
- Parameters
private_key (str) – XinFin wallet private key.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_private_key(private_key="8a4bc8131e99a5d1064cdbca6949aa2ec16152967b19f2cee3096daefd5ca857") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_path(path: str) swap.providers.xinfin.wallet.Wallet ¶
Drive XinFin wallet from path.
- Parameters
path (str) – XinFin wallet path.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- from_index(index: int, hardened: bool = False) swap.providers.xinfin.wallet.Wallet ¶
Drive XinFin wallet from index.
- Parameters
index (int) – XinFin wallet index.
hardened (bool) – Use hardened index, default to
False
.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_index(44, harden=True) >>> wallet.from_index(550, harden=True) >>> wallet.from_index(0, harden=True) >>> wallet.from_index(0) >>> wallet.from_index(0) <swap.providers.xinfin.wallet.Wallet object at 0x040DA268>
- clean_derivation() swap.providers.xinfin.wallet.Wallet ¶
Clean derivation XinFin wallet.
- Returns
Wallet – XinFin wallet instance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path("m/44'/550'/0'/0/0") >>> wallet.path() "m/44'/550'/0'/0/0" >>> wallet.clean_derivation() <swap.providers.xinfin.wallet.Wallet object at 0x040DA268> >>> wallet.path() None
- strength() Optional[int] ¶
Get XinFin wallet strength.
- Returns
int – XinFin wallet strength.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.strength() 128
- entropy() Optional[str] ¶
Get XinFin wallet entropy.
- Returns
str – XinFin wallet entropy.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.entropy() "ed0802d701a033776811601dd6c5c4a9"
- mnemonic() Optional[str] ¶
Get XinFin wallet mnemonic.
- Returns
str – XinFin wallet mnemonic.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.mnemonic() "unfair divorce remind addict add roof park clown build renew illness fault"
- passphrase() Optional[str] ¶
Get XinFin wallet passphrase.
- Returns
str – XinFin wallet passphrase.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9", passphrase="meherett") >>> wallet.passphrase() "meherett"
- language() Optional[str] ¶
Get XinFin wallet language.
- Returns
str – XinFin wallet language.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.language() "english"
- seed() Optional[str] ¶
Get XinFin wallet seed.
- Returns
str – XinFin wallet seed.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.seed() "1cfd5df8a523d53a36cee369a93fac4e9efab5e4e138d479da2fb6df730697574409d572fe8325ec22e8ed25dea7495f498c3f5235fe6ae6d47b989267b6777c"
- root_xprivate_key(encoded: bool = True) Optional[str] ¶
Get XinFin wallet root xprivate key.
- Parameters
encoded (bool) – Encoded root xprivate key, default to
True
.- Returns
str – XinFin wallet root xprivate key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.root_xprivate_key() "xprv9s21ZrQH143K3Y3pdbkbjreZQ9RVmqTLhRgf86uZyCJk2ou36YdUJt5frjwihGWmV1fQEDioiGZXWXUbHLy3kQf5xmhvhp8dZ2tfn6tgGUj"
- root_xpublic_key(encoded: bool = True) Optional[str] ¶
Get XinFin wallet root xpublic key.
- Parameters
encoded (bool) – Encoded root xprivate key, default to
True
.- Returns
str – XinFin wallet root xpublic key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.root_xpublic_key() "xpub661MyMwAqRbcG28HjdHc6zbHxBFzBJBC4ecFvVKBXXqiucEBe5wirgQ9hzY2WQMjnurVjJbTjMWRskHi7jnSRkJdj4oRu4Vdh7Ln1F83mLJ"
- xprivate_key(encoded=True) Optional[str] ¶
Get XinFin wallet xprivate key.
- Parameters
encoded (bool) – Encoded xprivate key, default to True.
- Returns
str – XinFin wallet xprivate key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.xprivate_key() "xprvA3QFrUVTkKpfRhqjgPq897uDFAYtt9VhMdDuZVbPboVf9uPMcMmr7W8sTsrd8nFCsVGSBCpGC3jreRpu8Zs1xsG5U98GZL24AqXYNPuo1rg"
- xpublic_key(encoded: bool = True) Optional[str] ¶
Get XinFin wallet xpublic key.
- Parameters
encoded (bool) – Encoded xprivate key, default to
True
.- Returns
str – XinFin wallet xpublic key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.xpublic_key() "xpub6GPcFz2MahNxeBvCnRN8WFqwoCPPHcDYir9WMt11A92e2hiW9u66fJTMKAB81ns7kpAT3vsKi4QHWVSNt7V6crGXc8ie3yjn1GvD1inKxEw"
- uncompressed() str ¶
Get XinFin wallet uncompressed public key.
- Returns
str – XinFin wallet uncompressed public key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.uncompressed() "33fbc2f498d145a1827ee894a2ed5f14928523712047ad9fffc59cdda7d314e6707f731cc5b9a5018878fdfd503a8502c6d714a2cef1161603a002845b83310f"
- compressed() str ¶
Get XinFin wallet compressed public key.
- Returns
str – XinFin wallet compressed public key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.compressed() "0333fbc2f498d145a1827ee894a2ed5f14928523712047ad9fffc59cdda7d314e6"
- chain_code() str ¶
Get XinFin wallet chain code.
- Returns
str – XinFin wallet chain code.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.chain_code() "ba8572f00241c17616903b07fed8ddcc1442677fa54ccd38e85049eee2310246"
- private_key() str ¶
Get XinFin wallet private key.
- Returns
str – XinFin wallet private key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.private_key() "8a4bc8131e99a5d1064cdbca6949aa2ec16152967b19f2cee3096daefd5ca857"
- public_key() str ¶
Get XinFin wallet public key.
- Returns
str – XinFin wallet public key.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path("m/44'/550'/0'/0/0") >>> wallet.public_key() "0333fbc2f498d145a1827ee894a2ed5f14928523712047ad9fffc59cdda7d314e6"
- path() Optional[str] ¶
Get XinFin wallet path.
- Returns
str – XinFin wallet path.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.path() "m/44'/550'/0'/0/0"
- address() str ¶
Get XinFin wallet address.
- Returns
str – XinFin wallet address.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.address() "xdc2224caA2235DF8Da3D2016d2AB1137D2d548A232"
- wif() str ¶
Get XinFin wallet important format (WIF).
- Returns
str – XinFin wallet important format.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.wif() "L1rYHjuxQtgTeU4qMUP6qnGqW9nstFt5drQktRuFGFSuGcCpZoJq"
- hash(private_key: Optional[str] = None) str ¶
Get XinFin wallet public key/address hash.
- Returns
str – XinFin wallet public key/address hash.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.hash() "dc8f505fccd7cb6f6ba93fd3795174f97efb43ae"
- balance(unit: str = 'Wei') Union[Wei, int, float] ¶
Get XinFin wallet balance.
- Parameters
unit (str) – XinFin unit, default to
Wei
.- Returns
Wei, int, float – XinFin wallet balance.
>>> from swap.providers.xinfin.wallet import Wallet >>> wallet: Wallet = Wallet(network="testnet") >>> wallet.from_entropy(entropy="ed0802d701a033776811601dd6c5c4a9") >>> wallet.from_path(path="m/44'/550'/0'/0/0") >>> wallet.balance(unit="XDC") 96.96263982