Introduction to XRB Nano (Previously RaiBlocks) Part 7

Nodes on XRB network. Components of the XRB currency.

Grouping multiple transactions into one also allows the network to have smaller and more effective nodes. Because the nodes can double-check the validity of the transactions occurring on the network by checking the total amount of funds in the accounts, all the nodes do not need to retain a copy of the entire blockchain. All the nodes really need is to have a record of the latest blocks of the accounts. This allows the nodes to maintain the network while discarding the historical data.

To further prevent the possibility of abuse on the network, XRB Nano/Raiblocks has two types of incoming transactions, settled and unsettled. Settled transactions are the ones that have been accepted by the blockchain of the receiving account. Unsettled ones are the ones that have not yet been added to the receiver’s blockchain.


Components of the XRB Nano/RaiBlocks network

Just like with Bitcoin, for users to engage in transactions on the XRB Nano/RaiBlocks network, they need both a public key and a private key.

The public key on the XRB Nano/RaiBlocks network is also called “an account” or “an address.” When data is signed by a private-key portion, the network knows that the owner of the private key has approved the transaction. One user on the network can have many accounts, or addresses, but an account on the network can only have one public address.

Each account on the XRB Nano/RaiBlocks network has a balance associated with it. The entire XRB Nano/RaiBlocks has been initiated with the genesis balance that can’t change at any point in the future. This balance has been divided during the distribution stage and will keep dividing and re-distributing in the future. As such, the total of all balances in all XRB Nano/RaiBlocks accounts will never be greater than the original balance. This is one of the ways how the networks verifies that it is functioning properly.

Because on the XRB Nano/RaiBlocks users have their individual blockchains, the words “block” and “transaction” on the XRB Nano/RaiBlocks network mean the same thing. A block on the XRB Nano/RaiBlocks network contains one transaction. Block 0 for each account is the open transaction for the account.

Sending funds on the XRB Nano/RaiBlocks network requires two transactions. The first one is a send transaction that deducts a balance from the sending account. The second one is a transaction that adds a balance to the receiving account. The receiver does not have to be online when a sending account initiates the first transaction in a pair.

The introduction of two transactions per one transfer of funds accomplishes several purposes. First, it orders the incoming funds into an account. Second, by keeping the data about transfers on blockchains related to the transfers it minimized the data footprint. Finally, it divides settled transactions from the transactions still in process.

To send funds on the XRB Nano/Raiblocks network, a user needs an address, which is the same as an account. The account needs to have an existing open block, which is the same as to say that the account needs to have a balance.

In the blocks of an account’s blockchain, the “previous” field has a hash of the previous block of the blockchain of the account, which guarantees the succession of the blocks on the blockchain and tracks the available funds for all accounts. The user will put the address to which he or she is sending the funds into the “destination” field.

It is impossible to change a send block once it is confirmed. During sending, the network immediately updates the balance of the sending account by subtracting the send amount.

While the transaction may have a pending status before the receiver accepts it, pending transactions are the same as spent for the senders in the sense that the funds are gone from the sender’s account and the sender can’t reverse a transaction.

To complete the process of sending funds, the receiver needs to create a block on his or her account’s blockchain. The block has a “source” field that would consist of a hash for the send transaction. This is how the XRB Nano/Raiblocks blockchain links the sending and receiving accounts and transactions. Once the blockchain creates the block, the network updates the balance of the account.

The ledger on the XRB Nano/RaiBlocks network is a set of all accounts on the network, each of which has its own blockchain. A node on the XRB Nano/RaiBlocks network may either contain a copy of the entire ledger or a history with just several last blocks for the blockchains of the accounts. Because the account blockchains use fast and easy proof-of-work to create new blocks, the network is protected with spam. The total amount of coins on the network is also known, which makes checking the validity of the ledger somewhat easy.