Manage Private Key Easily
The primary task of the wallet is to hold the owner’s private key(s) in a secure and safe manner. The key(s) will be stored on the local device and will be encrypted by a user-defined password.
To start up the wallet app the user will only need eto supply the password to decrypt their private key. The wallet does not need any outside authentication services to be unlocked.
Handle Numerous Transaction Queue
As only one transaction from a wallet address can be submitted to a blockchain at one time, the wallet will hold all submitted transactions in a queue and will submit them to the relevant blockchain one at a time. That is, there will be one queue for the public blockchain and one queue for each private blockchain the Wallet gets to know about.
The queues will be dynamically allocated so that when the Wallet receives a new transaction it will examine the endpoint defined in the transaction and will check if it already has a queue for that endpoint. If not, it will create a new queue and the necessary handlers and add the transaction to it.
This method allows the applications to send as many transactions as they wish and when they wish.
With interface for integration
Quanta Pay will expose an API which will enable other software products to pass transactions through the wallet to a defined blockchain. A web page running an application such as a Lottery Ticket purchase can call the local Wallet API with details of the blockchain endpoint (the access URL to the public or private blockchain) and the transaction string. The wallet will then sign the transaction with the user’s private key and forward on the transaction to the endpoint via a transaction queue.
Manage Crypto Assets and Token in one platform
Quanta Pay will manage ETH, QNTU on the public blockchain and QGT on private blockchains by default. Users will be able to add other tokens as long as they can supply the location of the responsible token contract – this will only work securely on the public blockchain.
Quanta Pay users will be able to send any defined token to other Ethereum addresses on the public or private blockchains. For public blockchain transactions, the user will need to have a balance in ETH to pay for the transaction gas.
Users can receive tokens (naturally) and will be able to send another user their wallet address by QR code and other methods such as email, messaging apps and social media.
Poll Wallet for progress update
As the Wallet has no idea how long a transaction will take, communication between the application and the wallet is asynchronous in nature. Each transaction submitted by an application will receive some form of reference id so that the application can subsequently enquire as to the status of a submitted transaction. The application needs to know the Ethereum Transaction Hash that relates to the transaction as submitted to the relevant blockchain as well.This information can be returned to the application so that the application can enquire on the blockchain any information that is needed directly without having to go through the wallet.
With Transaction Log for easy checking
The wallet owner will be able to list their transactions based on wallet address, time and date with the most recent transactions being at the top of the list. Other information relating to the transaction such as the transaction hash can also be stored. The outcome of the transaction – success / fail – can also be stored. Therefore, the wallet owner can refer back and check the reason and the outcome of the transaction.