Wallet and User Account in Several Cryptocurrency Systems - NEM

We now take a look on NEM wallet.


NEM is another public ledger ready for application development. Unlike Ethereum which is a contract platform allowing coding at blockchain level, NEM comes with several unique and handy services ready for application developers. For example, multi-signatory accounts, message encryption, smart assets, etc. I have another article comparing NEM and Ethereum in terms of application development. Here is the link.

Despite the different approaches in application development, both Ethereum and NEM are quite similar in user account. The native currency in NEM, called XEM, is a state associated to the address. And every transaction is initiated from an address.

We do not repeat the detail of NEM as it is similar to Ethereum. Rather, we take a look on the NEM Wallet, which comes with user interfaces for those unique NEM services.

NEM comes with a Nano Wallet. It is an executable application and does not require complex installation process.

When we login, we are asked to choose one account. Each account corresponding to an address. Remember that all transactions require a specific address (an account).

Image for post
Image for post

Here we simply choose an account, and see the XEM amount this account has, and all transactions relevant to it.

Image for post
Image for post

Although there are many interesting services on NEM platform, to align the objective of this series of articles, here we will take a look on the Smart Assets.

Smart assets (called Mosaics) in NEM is anything that can be represented as digital asset. One of the most common uses (but not limited to) is as tokens or coins.

If we see how Token is created on Ethereum platform, we can appreciate how NEM takes a user-friendly way. In Ethereum, the token issuer needs to deploy a token contract on Ethereum platform. Although there are many templates available for the contract code, it still requires certain skills in customizing the code to meet the requirement, and the issuer is always responsible for the security inside the code.

Rather than coding by issuer, NEM has built-in the Smart Asset system. Token issuer can build Mosaic directly and configure the options. Issuer can specify the initial supply (quantity) of tokens, select whether the quantity can be modified or not, whether the token is transferable, and whether a levy is applied and how if so. These options basically cover most scenarios when issuing tokens. The tokens are also organized under the namespace system by NEM.

Here is a screen shot how a Mosaic to be created.

Image for post
Image for post

And one can easily check how many Mosaics one is having. In this example I have two Mosaics (kcfirsttoken and be-coin).

Image for post
Image for post

As you can see, everything can be done through the Nano Wallet, without any coding on the public ledger directly: NEM does this on issuer’s behalf.

Security in NEM Wallet is again similar to Ethereum. When creating an account, a password is required. The wallet can be downloaded as the wallet file (wlt). Both this file and the password are being used later for wallet import or recovery when needed.

NEM is following the basic model and therefore the security is on the private key. Sufficient warning is given during signing up a new account, although Nano Wallet allows user to see the private key on screen.

Nano Wallet comes with a step to add entropy by moving mouse randomly before generating a private key.

Image for post
Image for post
Moving mouse around the window to add entropy on randomness

Again, when someone gets hold of your private key, he can perform transaction without using the Nano Wallet. For example, one can perform transaction through command line or API directly.

Next: IOTA, or jump to Introduction, Bitcoin, Ethereum.

Written by

Happy to share what I learn on blockchain. Visit http://www.ledgertech.biz/kcarticles.html for my works. or reach me on https://www.linkedin.com/in/ktam1/.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store