The Radium SmartChain is both a software and a protocol under development by JJ12880 for expanding the functionality of the Radium blockchain. The Radium SmartChain software connects to the standard Radium wallet via RPC. The first beta release is scheduled for the first half of January 2016.
Overview[edit | edit source]
The Radium SmartChain is a combination of several new protocols which provide the framework for the development of advanced blockchain based functions. All functions are 100% distributed and do not rely on centralized servers or infrastructure. Included in the framework is the new 'Proof-Of-Contribution' protocol, a custom implementation of 'Smart Transactions', and the 'Radon' asset that is generated through 'SlowDecay". Each of these individual components are explained in more detail below.
Supported Functions[edit | edit source]
User Accounts[edit | edit source]
User accounts are created when an Radium address is paired with a username and an optional memo line, and the pairing is recorded in the blockchain. Usernames and memos can consist of any combination of English upper and lower case letters and numbers. Once a username is recorded in the blockchain, the username can be used instead of the difficult to remember Radium address.
Third Party Verification[edit | edit source]
Users can request that their accounts be verified by a third party who holds a verification key. Currently, only JJ12880 holds a verification keys, however keys will be issued to senior community members as the system expands. Verification is designed to provide confidence in user accounts, and prevent scamming from accounts with misleading usernames. In order to become verified, a user must prove their identity through an outside medium, such as through Slack or Bitcointalk.
Sending Radon[edit | edit source]
Once Radon is generated, it can be sent to users or Radium addresses just like regular coins. Authority to transfer or spend Radon lies with the private key of the Radium address which generated or received the Radon.
Blockchain Documents[edit | edit source]
++ Will be included in phase 2 release ++
Users can create a text document and store it in the blockchain. All text documents are signed by the authors private key, providing proof of ownership, and the block in which the transaction is included provides proof of the approximate time the document was created.
It is highly recommended that users only store short documents or document hashes in the blockchain, in order to reduce bloat. In order to deter abuse of blockchain documents, Radon must be burned to complete the transaction. Larger documents require increasingly more Radon to process.
To further reduce bloat, a special text encoding algorithm is used, based on the assumption that the majority of the letters in the document are lowercase English letters and numbers. This algorithm uses a novel base-32 binary encoding to achieve up to 30% reduction in data size, over standard ASCII encoding. This algorithm may be revisited for further refinement in the future.
Functions Under Development[edit | edit source]
- Sending Radium to usernames rather than address. COMPLETED
- Adding or removing multiple secondary addresses to an account.
- Marking an address compromised in event of a hack.
- Deleting user accounts and releasing the username.
Smart Transactions[edit | edit source]
A Smart Transaction is a blockchain transaction that contains specially encoded data that becomes immortalized in the blockchain. Each Smart-transaction sends a very small amount of Radium to specially generated data addresses which contain hexadecimal data. There are no known private keys to the data addresses, so the dust Radium used in the transaction is effectively burned. Unfortunately Smart Transactions inherently cause blockchain bloat, an issue that is addressed below.
Proof-of-Network-Contribution[edit | edit source]
Proof-of-Network-Contribution is a new protocol where a user is rewarded with an asset for sending high-fee asset generation transactions. In the case of the Radium Radon asset, the standard transaction fee is 1 Radium per generation transaction. The transactions are structured in such a way that that they use one input, and generate one output, in order to reduce blockchain bloat. In most cases, the asset that is generated is awarded to the sending address. Transactions with other structures are ignored and are not recognized as a Proof-of-Netowrk-Contribution transaction. The fees are recovered by the those staking coins, and are designed to increase the block reward.
Radon[edit | edit source]
Radon is a blockchain asset that is required to utilize the SmartChain. Different operations on the SmartChain require the burning of Radon, the exact amount determined by the impact each corresponding smart-transaction will have on the blockchain. When Radon is spent to perform an operation on the SmartChain, it is burned and disappears forever. Unlike most other coins and assets, there is no cap on the amount of Radon that can be generated. Every user can generate as much Radon as they wish, so long as they have the Radium required to do so. (see SlowDecay) The base code allows Radon to be devisable, however the current protocol layer does not support sending rad in values other than whole numbers. This will be updated in the near future so Radon will function as a fully devisable asset.
SlowDecay[edit | edit source]
SlowDecay is the process of generating Radon through Proof-of-Network-Contribution. Slow decay is rate limited, meaning each user can only generate Radon at a set range of speeds. The slowest speed of Radon generation is 3 Radon per hour, at a cost of 1 Radium per Radon, and a contribution rate of 3 Radium per hour. The fastest rate of Radon generation is 30 Radon per hour, at a cost of 2.8 Radium per Radon, and a contribution rate of 84 Radium per hour. The Radium that is contributed to the network is a payment that is sent to yourself, and once it has been confirmed by the network, you will have access to it again.
Release Schedule[edit | edit source]
There is currently no set schedule for future phases. New functions will be added as they are developed and tested.