Recipient address:
Percentage (0 to 100):
"Submit" should then use recipient's address to find recipient's public key.
Use recipient's public key to generate proxy private key.
Use proxy private key to calculate proxy public key.
use proxy public key to build and submit PROXY_FORGING transaction.
If minting address's private key is not available decrypted then do pop-up asking for password then decrypt and save into cachedPrivateKeys.
See <script> code in this page's source.
If recipient does not have public key yet (fetch using API) then do pop-up asking if minting account should send small amount of QORT.
When recipient receives QORT they need to do a transaction, for example: JOIN_GROUP 2, which will make their public key available from the blockchain/API.
Minting relationships: (found by API call GET /addresses/proxying)
Minting address | Recipient address | Percentage | Blocks | Status | Actions |
---|---|---|---|---|---|
QgV4s3xnzLhVBEJxcYui4u4q11yhUHsd9v | QaUpHNhT3Ygx6avRiKobuLdusppR5biXjL | 20% | 14 | Active | |
QgV4s3xnzLhVBEJxcYui4u4q11yhUHsd9v | QcFmNxSArv5tWEzCtTKb2Lqc5QkKuQ7RNs | 0% | 3 | Stopped | |
QgV4s3xnzLhVBEJxcYui4u4q11yhUHsd9v | Qci5m9k4rcwe4ruKrZZQKka4FzUUMut3er | 40% | Pending | ||
QgV4s3xnzLhVBEJxcYui4u4q11yhUHsd9v | QaUpHNhT3Ygx6avRiKobuLdusppR5biXjL | 20% | 14 | Active |
"Active" means proxy private key for minting & recipient pair is listed by API call GET /admin/forgingaccounts.
"Pending" means PROXY_FORGING transaction for this relationship has not yet confirmed.
"Stopped" means proxy private key is NOT listed by API call GET /admin/forgingaccounts but also that the PROXY_FORGING transaction for this relationship has confirmed.
"Edit" button could fill in the form above with current details?
"Start" button adds relationship's proxy private key to node via API call POST /admin/forgingaccounts.
"Stop" button removes relationship's proxy private key to node via API call DELETE /admin/forgingaccounts.
Again, if minting/recipient's private key (to calculate proxy private key to send to API) is not available
then do pop-up asking for password to decrypt and save into cachedPrivateKeys.
Last entry in the table (above) is an example when node is instead run by recipient "QaUpHNhT3Ygx6avRiKobuLdusppR5biXjL" and so "Edit" is disabled.
Password:
Use mnemonic phrase to calculate private key and address.
Encrypt private key using password and store with window.localStorage.setItem(address, encryptedPrivateKey).
Add address & unencrypted private key to cache, e.g. cachedPrivateKeys[address] = privateKey.
Minting accounts:
Address | Status | Actions |
---|---|---|
QgV4s3xnzLhVBEJxcYui4u4q11yhUHsd9v | Locked | |
QixPbJUwsaHsVEofJdozU9zgVqkK6aYhrK | Unlocked |
Table rows made from addresses found in window.localStorage entries and "unlocked" if also in cachedPrivateKeys.