Guide to Using NF Catapult Testnet Beta Wallet

Guide to Using NF Catapult Testnet Beta Wallet

This wallet was created to test Catapult features within the testnet. The NEM Foundation would like to give credit to Planethouki for creating wallet found here.

NEM Wallet Guide from Matthew Kim on Vimeo.

Getting Started

To begin using the wallet, login by first selecting an endpoint to connect to from two predefined options, or selecting “other” and manually entering an IP address. At the bottom of the login screen, you will note your private key. You can generate a different private key by clicking on the refresh icon. If you have already created an account and would like to log back into it, you can paste your backed up private key in the textbox.

Account Information

Once you’ve logged in, all of the features load onto one page you can scroll through. At the top, you’ll see your address, public key, and any mosaics. If you are logging into a new account, you won’t have a public key until you send or receive a transaction and your mosaics will be empty. If you do have a mosaic, it will be displayed as hexMosaicID::absolute amount.

You can acquire testnet XEM in one of two ways:

  1. Default Account - You can log in to the default account and send XEM (hexMosaicID 77A1969932D987D7; alias @cat.currency) to your desired address.
  2. Faucet - You can also get testnet XEM from the faucet. Navigate here, indicate the amount of XEM you want to send and the address to it to, and click “CLAIM!” You can click the wallet refresh icon to refresh your balance to see your testnet XEM balance.


Finally, there is a logout button if you wish to exit, switch accounts, or change endpoints. Remember to backup your private key if you want to use this account again.

Transfer Transaction

To announce a transfer to the blockchain, enter the recipient’s address with or without dashes. In the “Mosaics” field indicate how much of which mosaics you wish to send. A basic transaction is formatted as follows:

hexMosaicID1::absolute amount1

If you want to send more than one mosaic, separate them with commas as follows:

hexMosaicID1::absolute amount1,hexMosaicID2::absolute amount2, …

and so on. If you assign an alias to your mosaic, you can use @aliasName instead of the hexMosaicID. You may include a message if you wish and indicate a maximum fee. Initiate the transaction with the “Announce” button. Any previous transactions will appear under “History”. You can click the transaction hash link to verify that the transaction was successful and confirmed.

Register Namespace and Sub Namespace

You can register a namespace by conducting a namespace registration transaction through the wallet. Simply enter the desired name, duration in blocks (legnth of ownership), and maximum fee before clicking the “Announce” button.


Once your namespace is confirmed, you can then create a sub-namespace under the parent namespace. Indicate your desired subnamespace name, the pre-registered parent namespace, maximum fee, and click the “Announce” button.

Previously announced namespace and sub-namespace transactions will appear under their respective “History” sections. You can click the transaction hash link to verify that the transaction was successful and confirmed. Note that you must have at least 1,000,000,000 in absolute amount of cat.currency in order to register a namespace or 1,000,000 for a sub namespace. Since you can only claim 1,000 cat.currency at a time from the testnet faucet, it is most practical to send it to your address from the default account if you want to register a namespace.

Create Mosaic

To create a mosaic, enter a nonce (non-negative integer), supply amount, divisibility (an integer between zero and six), duration in blocks, and maximum fee. After you click the “Announce” button, the transaction will appear under “History”. Click the hash to verify it is confirmed and successful. Once the transaction is confirmed, you can refresh your wallet to see your updated mosaic (referred to by its hexMosaicID) balance. Note that you must have at least 500,000,000 in absolute amount of cat.currency in order to register a mosaic.


You should now be able to see your newly created mosaic in your wallet.

Multisignature Wallets

To convert an account to multisignature account, select the approval and removal parameters for the account. By default, there are two example cosignatories already added. If you do not wish to add them as cosignatories to your multisignature account, you must remove them by clicking the “x” icon to the right. To add a new cosignatory, enter the public key of the account you wish to add and click the “+” icon to the right of “Add Cosignatory” field. If you wish to add a new account as a cosignatory, you will have to send or receive a transaction from that account first in order to get its public key. Remember that the minimum number for approval and removal cannot exceed the number of cosignatories you add. When you are ready to create the multisignature account, click the “Announce” button. Confirm its successful creation by clicking the hash in the “History” section.

Modify Multisignature Wallet

To modify your multisig account, enter the public key of the multisig account. Remember that this transaction must be initiated from one of the cosignatories, not the multisig account itself. Indicate by how many the minimum approval and removal parameters will be updated. You can toggle the transaction to add or remove a public key from the multisig by clicking the add/remove button to the left of the “Modification” field. Enter the public key you wish to add or remove and click “Announce”. You can verify that the modification was successful by clicking the link in the “History” section.

Escrow with Aggregate Bonded Transaction

Use an aggregate bonded transaction to simulate an exchange through an escrow service. In the “Payment” box, enter the recipient’s address, mosaic (formatted hexMosaicID::absolute amount, comma separated if more than one), and a message. In the “Invoice” box, enter the partner’s public key, the expected mosaic to receive, and a message. Below, set the mosaic and the amount (hexMosaicID::absolute amount) to lock until the cosignature is received and the duration after which the locked mosaic is released failing reception of the cosignature. Enter the maximum fees for the aggregate bonded transaction and the lock and click the “Announce” button. The hashes for the aggregate bonded transaction and the lock will appear in the “History” section.

Cosignature Transaction

Enter the aggregate bonded transaction hash you wish to cosign and click “Announce”. The confirmation transaction hash will appear in the “History” section.

Cosignature Transaction of Multisig

Enter the public key for the multisig account you wish to cosign and the aggregate bonded transaction hash that requires the cosignature from the current account. Click “Announce” and the confirmation transaction hash will appear in the “History” section. Once the minimum number of required cosignatures have been confirmed, the multisig transaction or multisig modification transaction will be confirmed.

Secret Lock Transaction

To initiate a secret lock transaction, first select your prefered hash type. Enter the hashed version of your proof (random set of bytes) as the secret, the amount of the mosaic to lock (formatted hexMosaicID::absoluteAmount), the address to send it to, the duration in blocks for the mosaic to remain locked, and the maximum fee.

Example:

Hash type - Sha3-256
Proof- b522305a4bb48c90a82cf40cb502dcb20446b09ae6da4336cd4245a640d7187d
Secret -15DF954FF7DCFCE501A3A23A692D294BFEC07F2C688B99053EE949D6D06851DF

In this instance, you would need to obtain the secret by hashing b522305a4bb48c90a82cf40cb502dcb20446b09ae6da4336cd4245a640d7187d with the Sha3-256 protocol, producing 15DF954FF7DCFCE501A3A23A692D294BFEC07F2C688B99053EE949D6D06851DF as the secret. For the Secret Lock Transition, the secret is needed as an input and the proof needs to be remembered.

Click “Announce” and the confirmation transaction hash will appear in the “History” section.

Secret Proof Transaction

To initiate a secret proof transaction, select the algorithm used to hash the proof from the secret lock transaction. Enter the original hex value of the proof. The secret is automatically hashed for you according to the selected hash algorithm. Indicate the maximum fee, click “Announce”, and the confirmation transaction hash will appear in the “History” section.

Continuing with the example given in the Secret Lock Transaction portion, you need to provide the appropriate proof to provide the matching hashed secret. When the proof b522305a4bb48c90a82cf40cb502dcb20446b09ae6da4336cd4245a640d7187d is input into the appropriate space, you should see an identical secret will be generated as what was inserted in the Secret Lock Transaction.


When the transaction is successful, you should see something similar to the following image when you click the corresponding History link:

Mosaic Alias

Indicate whether you want to link or unlink your alias. Enter the pre-registered namespace or subnamespace name to link or unlink to/from your mosaic. Enter the hexMosaicID and the maximum fee. Click “Announce” and the confirmation transaction hash will appear in the “History” section. Note that even once linked, the mosaic will still be displayed as its hexMosaicID in your wallet balance. You can now use the format @namespaceName or @namespaceName.subnamespaceName to refer to your mosaic. Using the example namespaces registered above, you would use @guide or @guide.subguide to use the (sub)namespace as an alias. Recall that setting an alias to a mosaic is only possible if the account announcing the transaction has created the namespace and mosaic involved. Furthermore, an account can only associate a name with one mosaic, but that mosaic can have many aliases linked to it.

Address Alias

Indicate whether you want to link or unlink your alias. Enter the pre-registered namespace name to link or unlink to/from your address. Enter the address and the maximum fee. Click “Announce” and the confirmation transaction hash will appear in the “History” section. A namespace can be assigned to any account present in the network (as long as the account permits incoming AddressNamespaceTransactions , but an account can only associate a name with one account. However, the aliased account can have many aliases linked to it.

Current Account Property Status Box

The current account property status box summarizes your account’s currently activated account properties. After you add or remove an account property, you can refresh the status box to see which addresses, mosaics, and transaction types have been allowed or blocked.

Account Property Address

Indicate whether you want to allow or block one or more address account properties. By default, there are two example modifications already added. If you do not wish to add them to your account, you must remove them by clicking the “x” icon to the right. To add an address to your account’s whitelist (allow) or blacklist (block): enter the address, toggle the button to the left of the address field to “Add”, click the “+” icon to the right of the address field. If you wish to remove an address from your whitelist or blacklist, repeat these steps but toggle the button on the left to “Remove”. Again, to remove any addresses added accidentally, click the “x” icon to the right of the address. Once you have selected to white or blacklist, entered all of the desired addresses, and indicated a maximum fee, click “Announce”. The confirmation transaction hash will appear in the “History” section.

Say you want to block the address (SB65GK-M2WF2Q-BYOJXI-TFK5T3-B5N4LZ-FD5JBN-I5RO). You would simply need to choose “block”, get rid of other listed addresses, and insert the appropriate address. Then you to press “Announce” to finish the process.

Account Property Mosaic

Indicate whether you want to allow or block one or more mosaic account properties. By default, one example modification is already added. If you do not wish to add it to your account, you must remove it by clicking the “x” icon to the right. To add a mosaic to your account’s whitelist (allow) or blacklist (block): enter the hexMosaicID, toggle the button to the left of the hexMosaicID field to “Add”, click the “+” icon to the right of the hexMosaicID field. If you wish to remove a mosaic from your whitelist or blacklist, repeat these steps but toggle the button on the left to “Remove”. Again, to remove any mosaics added accidentally, click the “x” icon to the right of the hexMosaicID. Once you have selected to white or blacklist, entered all of the desired mosaics, and indicated a maximum fee, click “Announce”. The confirmation transaction hash will appear in the “History” section.

Account Property Entity Type

Indicate whether you want to allow or block one or more entity type account properties. By default, one example modification is already added. If you do not wish to add it to your account, you must remove it by clicking the “x” icon to the right. To add an entity (transaction) type to your account’s whitelist (allow) or blacklist (block): enter the hexEntityType (see above links) or select it from the optional drop down box, toggle the button to the left of the entity type field to “Add”, click the “+” icon to the right of the hexEntityType field. If you wish to remove an entity type from your whitelist or blacklist, repeat these steps but toggle the button on the left to “Remove”. Again, to remove any entity types added accidentally, click the “x” icon to the right of the hexEntityType. Once you have selected to white or blacklist, entered all of the desired entity types, and indicated a maximum fee, click “Announce”. The confirmation transaction hash will appear in the “History” section.

For example, let’s say you wanted to block “Remote Harvesting” transactions from your account. First you would first find the corresponding hexEntityType ID, which happens to be 414C. Choose property type as “block”, add 414C, and click “announce”.

Current Linked Public Key Status Box

The current linked public key status box displays public keys currently linked to your account. After you link or unlink an account, you can refresh the status box to see which public keys are linked to your account.

Account Link

Indicate whether you want to link or unlink a remote account. Enter the public key for the remote account you wish to (un)link. Select a maximum fee and click “Announce”. The confirmation transaction hash will appear in the “History” section.

5 Likes