Selected BIPs "schematically"
bips_selected | 
bips
| 
AgamaPoint | 
bip39 | 
mm_mind | 
mm_chart | 
iTing | 
g_m_s | 
G | 
 +/- BIP39
 +/- BIP39
graph LR;
%% left-right
 bin(
randomcoins
dice
cards
...)--binary (base2)
1-6 (base6)
(base52)-->e;
 t(
TrezorModel ONE, T)-.->e;
 cat(
catropyHW entropy generator)-->e;
 e(( 
entropy.: ..: :.. . ::.
128b/256b ))-->|entropy_to_ 
 phrase|mp[mnemonic phrase
/words];
 ests(external
backup)-.restore.->mp;
 ests-->e;
 e-.export.->ests;
 mp-.->ms(master seed);
 seed-.->ms;
 e-.->ms;
 mp-. seed_to_ 
 entropy .->e;
 mp-->|mnemo_to_seed|seed(( 
seedbytes/hex ));
 pp( + passphrase).->seed;
 mp-.->pp;
 t<--init / restore-->mp;
 linkStyle 4 stroke:#f00,stroke-width:3px,stroke-dasharray: 5, 5;
 linkStyle 5 stroke:#00f,stroke-width:3px,stroke-dasharray: 3, 5;
 linkStyle 7 stroke:#555,stroke-width:3px,stroke-dasharray: 2, 5;
 linkStyle 8 stroke:#555,stroke-width:3px,stroke-dasharray: 2, 5;
 linkStyle 10 stroke:#f00,stroke-width:3px,stroke-dasharray: 5, 5;
 linkStyle 14 stroke:#f00,stroke-width:3px;
 classDef redB stroke:#f00,stroke-width:3px;
 class mp redB;
Mnemonic code for generating deterministic keys - 
BIP39
... AgamaPoint Python testing lib:
entropy = entropy_normalize(entropy) # entropy bin, dec or hex // hex_to_bin(e)..
phrase = bip39f.entropy_to_phrase(entropy) # mnemonic phrase == words
binary_seed = phrase_to_key(phrase)
mnemo_seed = mnemo_to_seed(phrase)
seed_bytes = mnemo.to_seed(phrase, passphrase) # hexadecimal_str: seed_bytes.hex()
root_key = create_root_key(seed_bytes)
...
Calculate I = HMAC-SHA512(Key = "Bitcoin seed", Data = S)
Split I into two 32-byte sequences, IL and IR.
Use parse256(IL) as master secret key, and IR as master chain code.
+/- BIP32
graph LR;
  seed(( seed
bytes/hex 

));
  seed-->privk(private key 

);
  subgraph simple_tx Alice
  TX?;
  privk-->|ECC|pubk[public key 

];
  privk-->sig(signature
or encrypt
with shared key);
  pubk-.->verif(verification);
  verif-->yn(yes/no);
  msg(message
or hash_msg)-.->sig;
  msg-.->verif;
  sig-.->verif;
end
pubk-->|SHA-256
Hierarchical
Deterministic
Wallets
|addr(address);
bob(...send BTC to:)-->addr
bob-.P2PK.->pubk
  
addr-.1***
P2PKH.->std(
BIP44  Standard)
addr-.3***
P2SH.->sqw(
BIP49  Segwit)
addr-.bc1p
P2WPKH.->nsq(
BIP84  New Segwit)
addr-.bc1q.->tap(Taproot)
addr-.bc1x.->etc(...)
classDef plain fill:#ddd,stroke:#fff,stroke-width:3px,color:#000;
classDef k8s fill:#326ce5,stroke:#fff,stroke-width:3px,color:#fff;
classDef cluster fill:#333,stroke:#00ff00,stroke-width:2px,color:#00ff00;
classDef redB stroke:#f00,stroke-width:3px;
classDef bluB stroke:#00f,stroke-width:3px;
classDef greB stroke:#0f0,stroke-width:3px;
class service,pod1,pod2 k8s;
class client plain;
class cluster cluster;
class privk redB;
class pubk bluB;
class addr greB;
Hierarchical Deterministic Wallets - 
BIP32
m / purpose’ / coin_type’ / account’ / change / address_index
coin = Bitcoin() # Main default
# BIP39-BIP44 | Standard Wallets
# Multi-Account Hierarchy for Deterministic Wallets
wallet = coin.wallet(words)
addr0 = wallet.new_receiving_address()
# BIP39-BIP49 | Segwit Wallets 
# Derivation scheme for P2WPKH-nested-in-P2SH based accounts
wallet = coin.p2wpkh_p2sh_wallet(words)
...
# BIP39-BIP84 | New Segwit Wallets
# Derivation scheme for P2WPKH based accounts
wallet = coin.p2wpkh_wallet(words)
...
mm_bips | 
mm_mind | 
mm_chart | 
github/mermaid | 
diagram gide | 
live/edit | 
py/agama_point_crypto