Radium SmartChain/Printable version


Radium SmartChain

The current, editable version of this book is available in Wikibooks, the open-content textbooks collection, at
https://en.wikibooks.org/wiki/Radium_SmartChain

Permission is granted to copy, distribute, and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike 3.0 License.


walkthrough

SmartChain Walkthrough GuidesEdit

Account Registration WalkthroughEdit

One Click Verify WalkthroughEdit

Verify A File WalkthroughEdit

Record A File WalkthroughEdit

Record A Text Note WalkthroughEdit

SmartChain ElectionsEdit



Scenarios

Usage ScenariosEdit

Prevention of Download Link Hijacking during Linux Mint HackEdit

Prevention of Ransom-ware downloading in the Transmission BitTorrent UpdateEdit

Prevention of Link Hijacking by using Smartchain as Proof of AuthorEdit



FAQs

A list of Frequently Asked Questions about the Radium SmartChain

Who are the developers for Radium?Edit

Timothy Mesker: Founder and developer, MGR Project Radium, LLC

Justin J.: Founder and SmartChain developer, SmartChain Software Solutions, LLC

Alaniz: Radium Core Developer and Community Manager

Lamptoast: Assistant SmartChain Developer

Goblynn: Social Media and Beta Testing

BanzaiBTC: 3rd Party Support

Is the SmartChain Open Source?Edit

No, for now it is a closed source project. Perhaps sometime in the future, the source will be published, but there are no current plans to release the source.

What platforms are supported?Edit

The Radium Coin wallet is supported for Windows, Linux, and Mac.

The Radium SmartChain is supported for Windows. A version compatible with Mono is being planned, but is not currently a priority.

When will Radium be added to XYZ Exchange?Edit

Nearly every respectable exchange does not comment on new coin additions. The development team does not know in advance of any exchange additions.

Is Radium Proof of Stake?Edit

Yes.

Can Radium run on a Raspberry Pi?Edit

Radium is an open source Proof Of Stake coin, and should compile and run on a Raspberry Pi.

Was there a Premine/Instamine for the Radium Coin?Edit

No. The coin was launched in May 2015. There was an approximately 2 week Scrypt Proof of Work period, followed by decreasing PoS rewards. The PoS reward has recently declined to 0.75 coins per block plus Spread Fees.

Will it become too expensive to use the Radium SmartChain if the price of Radium goes up?Edit

No. If/When this becomes an issue, there is code in place to adjust the cost per operation, if need be.

Do you use OP_RETURN to encode the data?Edit

No. The current protocol encodes the data into fake public keys.

How many connections should I have?Edit

Wallet connections is a question that comes up pretty frequently, so lets here is a brief explanation!

TL:DR: More than 3 is good. You can not have more than 16 outgoing connections, but you may get more if other nodes connect to you.


In order for the wallet to work correctly, it needs to have a MINIMUM of one connection. A wallet can work perfectly fine, using only one high quality connection to the network. It is desired that a wallet have more than one connection in case your one connection is of low quality. A total of three to five connections is more than enough for the wallet to work correctly.

But arnt more connections better?

Well, it CAN be, in terms of the health of the entire network, however after 3-5 connections there really is little improvement in wallet function. Each connection requires resources to maintain, and the more connections you have the harder your computer will need to work in order to communicate with all the other nodes. Once your wallet has a stable connection to the network, more connections will not increase the speed or improve staking.

I have 16, BUT I WANT MORRRR!

Well, then, be patient. First, connections require more CPU power for the connected wallets. There are two types of connections used by the wallet, outgoing and incoming. An outgoing is established when your wallet reaches out and initiates a connection to another node. An incoming connection occurs when someone else connects to you. There is a hard coded limit of 16 outgoing connections, so that your wallet does not create more work for more nodes than necessary. To help new wallets gain connections even if your already have 16, the incoming connection default limit is set at 125. This means your wallet can not ask for more than 16 connections, but it can accept more connections from other nodes with low connection counts. In summary, only way to get more than 16 connections is to have your wallet open for a long period of time and allow other new nodes to connect to you.



Development History

Stuff in the Works (updated 8/6/16)Edit

SmartChain 3.0Edit

SmartChain 3.0 will be the third major release of the SmartChain, and will include the following features:

(windows only)

  • Removal of Radon and Radon Decay
  • Brand new XAML GUI
  • Release date was on March 27th 2017

Radium SmartChain Development historyEdit

Phase 2.4Edit

Public release March 30 2016

  • SmartChain Radon cost adjustment
    • Cost to register a username changed from 10 Radon to 5
    • Cost for other operations reduced to 1 Radon per 40 bytes
  • User Experience
    • All new graphics
    • Columns can now be re-sized, re-ordered, and sorted ascending/descending.
    • Full Radium Send history now visible.
    • Full Radium Decay history now visible.
    • Added filtering and searching to registered user fields.
    • Fully automated Radium Wallet launch.
  • Performance
    • Transition back-end data handling to a relational database structure.
    • Added low resource usage sync.
    • improved sync loop speed
  • Technical
    • Added Custom RPC credentials.
    • Added Custom wallet data directory.
    • Added wallet sync state checking.
    • Added wallet connection state checking.
    • Added sync queue length stats on the syncing splash page.
    • Sync data and required files moved to /appdata/SmartChain

Phase 2.3Edit

Released Feb 2 2016

  • Fixed various issues and bugs related to handling orphan blocks.
  • Reduced maximum slow decay rate to to allow confirmation time.
  • Fixed "disappearing user" bug, related to orphan blocks.
  • Removed wallet sync checking that was causing random bugs.

Phase 2.2Edit

Released Jan 28 2016

  • Fixed issue preventing some users from registering.
  • Fixed code for displaying update warnings.

Phase 2Edit

Released Jan 26 2016

  • NEW FUNCTION Proof of Existence: Text Notes
  • NEW FUNCTION Proof of Existence: File Hashing + Verification
  • NEW FUNCTION Radium Send
  • NEW FUNCTION Blockchain announcements for leisure/major/critical updates
  • Added session history for Radium Decay
  • Multi-Threaded Sync Engine for improved sync speed
  • Various minor GUI Updates and Improvements
  • Various code optimizations

Phase 1.2Edit

Released Jan 19 2016

  • SmartChain Client updated to work with re branded Radium wallet.

Phase 1.1Edit

Released Jan 12 2016

  • Fixed incorrect display of Radium and Rad balances

Phase 1Edit

Released Jan 12 2016

  • Phase 1 Release, and ANN posted.



SmartChain Verify Docs

OverviewEdit

SmartChain Verify allows you to verify any downloadable file with as little as: copy, paste, click. This documentation will cover the usage of SmartChain Verify, the SmartChain Verify API, and the application of SmartChain Verify Links.

UsageEdit

To use SmartChain Verify, simply enter a direct download link. A direct download link is a link to a file download which does not go through redirects or any other interruptions.
If you forget the http/https prefix of the link, SmartChain Verify will attempt to fix the link. While it is likely that SmartChain Verify will be able to fix the link, it is recommended to include the proper prefix to avoid any undesired results.

Registering a FileEdit

Please use the below tutorial for registering a download on SmartChain Verify.

How to record a file on the SmartChainEdit

Link/Button UtilityEdit

If you would like to provide a SmartChain Verify download link to a file that you host for your users, you may use the following utility:

<a href="https://www.verify.software/link?link={{ insert your download link here }}">{{ insert your download button styling here }}</a>

APIEdit

Base URL:Edit

https://api.verify.software/api?url=

CURL Example:Edit

$ curl https://api.verify.software/api?url=https://github.com/ProjectRadium/Radium/releases/download/v1.4.2.1/radiumd-1.4.2.1.exe

{"message": "File successfully verified by a verified user.", "code": 0, "data": {"username": "tm2013", "verified": true, "title": "radiumd-1.4.2.1.exe", "timestamp": 1467084970, "timestamp_utc": "2016-06-28 03:36:10", "user_verified": true, "block": 558321}, "error": false}

Python ExampleEdit

#/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
data = requests.get("https://api.verify.software/api?url=https://github.com/ProjectRadium/Radium/releases/download/v1.4.2.1/radiumd-1.4.2.1.exe").content
print data

{"message": "File successfully verified by a verified user.", "code": 0, "data": {"username": "tm2013", "verified": true, "title": "radiumd-1.4.2.1.exe", "timestamp": 1467084970, "timestamp_utc": "2016-06-28 03:36:10", "user_verified": true, "block": 558321}, "error": false}