Image Alt

THE BITSHARES BLOCKCHAIN

BitShares Blockchain Foundation Officially approved spokesperson of the BitShares Blockchain www.bitshares.foundation

Abstract The BitShares Blockchain

is an industrial-gradedecentralized platform built for high-performance financialsmart contracts. It represents the first decentralized au-tonomous community that lets its core token holder decideon its future direction and products.

1. Introduction

BitShares Blockchain, as it exists today, was launched on13th October 2015 with its community being established alreadyin 2013. It implements an industrial-grade decentralized platformbuilt for high-performance smart contracts with focus on thefinancial technologies sector.Furthermore, BitShares represents the first decentralized au-tonomous cooperation that lets holders of its core native tokenBTS decide on its future direction and governance aspects. Forsake of clarity and to avoid confusion with other smart contract-ing platforms, the BitShares Blockchain implements its contractsin form of operations . Even though the BitShares Blockchaincomes with over 50 already implemented operations which de-serve to be presented, this document focuses on the descriptionof the BitShares Blockchain as a platform, its architecture as wellas its governance system using the core native token BTS

2. Architecture

The BitShares Blockchain constitutes the following componentswhich are described individually.

2.1 Transactions

When users want to interact with any Blockchain, they constructso called transactions and transmit to the network (see sec-tion 2.3). These present messages that contain instructions aboutwhat particular operation(s) a user wants to use. A common op-eration is the simple transfer operation that comes with transfer-specific instructions that provides the necessary information forthis action, such as the sender, receiver, the amount to transferas well as an optional encrypted memo. To allow multiple op-erations to take place subsequently, multiple operations can bebundled into a single transaction.To identify against the system, transactions are cryptographicallysigned by the users. These signatures authenticate a user andprovide authorization for the operations in the transaction.

2.2 Blockchain

The Blockchain serves as a journal (e.g. a ledger) of user-signedinstructions that become a binding agreement as soon as theyare included into a block. After inclusion into a block, theagreements are stored indefinitely by means of a hash-linked-list (the Blockchain). From this ordered sequence of transactions,a current state (think: account balances) can be determined byprocessing all transactions consecutively starting at the veryfirst block. As we will see later, the software will ensure thatinstructions that are stored in the Blockchain have been success-fully authenticated and validated. For validating and processingof operations, a common set of rules define the consequencesof particular actions, which are part of the of the blockchainprotocol (see section 2.5).

2.3 Networking

A blockchain merely defines a means of storage and can beused in a non-distributed, single-participant fashion as well asin a distributed internet-based mesh network often referred to asPeer-2-Peer (P2P) network. In the latter case, multiple parties areconnected with each other in a way that incoming transactionsare forwarded to every other connected participant. A transactionultimately reaches a so called block producer. A block producerverifies incoming transactions against a hard-coded protocol andbundles them into a single block that is added to the existingblockchain. At this point, a transaction is considered confirmedand executed. The effects of an executed operation on the currentstate are defined in the blockchain protocol (see section 2.5).

2.4 Consensus

Consensus is the process by which a community comes to auniversally recognized, unambiguous agreement on a piece of in-formation. In the context of blockchains, consensus means agree-ment about the validity rules for transactions (i.e. the blockchainprotocol – see section 2.5), and the order in which they havebeen observed by the blockchain. This ultimately results in anagreement about the current state that is build deterministicallyfrom those validity rules and the sequence of transactions.The most commonly known consensus scheme is Proof-of-Work (PoW). Most dominant disadvantage is the heavy powerconsumption and the scalability in terms of transactions persecond and confirmation times. The BitShares Blockchain makesuse of an algorithm called Delegated Proof of Stake (DPoS)that was developed specifically to replace the wasteful ’mining’process, increase throughput and reduce reaction times of the blockchain. It is a tremendous improvement when it comes toconsumption of electricity.DPoS allows to generate a new block at fixed rate (blockproduction/confirmation time) with minimal computational re-quirements. This means that the blockchain can process moretransactions in significantly less time and at almost no costwhen compared to PoW-based Blockchains. Block productionis performed by a set of so called witnesses (block producers)that take turns. After every turn, the order of block producers israndomized in a deterministic manner such that all parties agreeon the new order.

2.5 Protocol

The most essential part of blockchain technologies is here re-ferred to as blockchain protocol. It defines the behavior of theentire system including consequences and side-effects when pro-cessing transactions. Users utilize particular features by craftinga transaction that contains a particular letter-of-interest (alsoreferred to as operation).Since the Blockchain, as a storage, only stores incrementalchanges (e.g. transfers), the final balance of each account to-gether with other information needs to be tracked separately inthe current state.It is important to note that the protocol is deterministic in thesense that the very same state is generated when applying thesame sequence of operations (as provided by the blockchain).This makes blockchain technologies tamper proof and auditable.In BitShares, over 50 operations are available (as of early2018). Each of them hooks into the Blockchain protocol at leastthree times:

• Validation: During validation, the raw instructions (alsoreferred to as payload) are checked for consistency. E.g.,in case of a transfer, we ensure that the amount to transfer ispositive.

• Evaluation: In the evaluation step, the operation-specificinstruction is validated against the current state of theblockchain. In case of a transfer, we here ensure that theamount to be transferred is available in the account of thesender.

• Application: This step takes action in the sense that itmodifies the current state. In the case of a transfer, we herereduce the account balance of the sender and increase theaccount balance of the receiver according to the amount oftokens transferred.

Example: Transfer operation Consider a simple transferoperation that sends funds from one account to another. Here, theprotocol defines the validation rules such that negative amountsare prevented. The evaluation ensures that the sender cannottransfer more than what is in his account balance. When applyinga transfer from Alice to Bob, Alice is credited the transferredamount while Bob receives the amount. Here, transfer refersto the operation type, while the sender, receiver, and amountrefers to the operation-specific instructions. Obviously, differentoperation types come with different instructions.

2.6 Extensibility

The Software behind the BitShares Blockchain is extensivelymodularized and implements its operations independently ofeach other. This allows for adding new features once the corre-sponding code, which the implements validation, evaluation andapplication methods, reaches maturity. In a sense, operations onthe BitShares Blockchain are smart-contracts and allows for ex-tending the range of functions of the system. In contrast to othersmart-contracting platforms, however, the BitShares Blockchainrequires new features to be vetted by the core developers andapproved by the BTS holders before they can be installed bymeans of a network-wide protocol upgrade. As a consequencethe platform is considered much more solid as new featuresrequire to go through multiple stages of quality assurance. Theseprotocol upgrades are well coordinated and already happened 28times (Q3/2018) in the past.

2.7 Performance and Scalability

The BitShares Blockchain publicly demonstrated sustaining over3,000 (three thousand) transactions per second and over 22,000operations per second on a distributed test network. This tech-nology can easily scale to over 100,000 (hundred thousand)or more transactions per second with relatively straightforwardimprovements to server capacity and communication protocols.To achieve this industry-leading performance, BitShares hasborrowed lessons learned from the LMAX Exchange, which isable to process 6 million transactions per second. Among theselessons are the following key points:

• Keep everything in memory.

• Keep the core business logic in a single thread.

• Keep cryptographic operations (hashes and signatures) outof the core business logic.

• Divide validation into state-dependent and state-independent checks.

• Use an object oriented data model.

By following these simple rules, BitShares is theoretically able toprocess >10,000 (ten thousand) transactions per second withoutany significant effort devoted to optimization. To put thingsinto perspective, at peak times, the Ethereum and BitcoinBlockchain jointly process roughly 0.7% of the peak capacityof the BitShares Blockchain (Q1/2018) as prove from distributedstress testing.

3. Identity

BitShares makes use of human-readable account names that haveto be registered together with public-keys in the blockchain priorto its usage. Thus, the blockchain acts as a name-to-public-keyresolver similar to the traditional domain name service (DNS).These named accounts enable users to easily remember andcommunicate their account information instead of using error-prone addresses. Depending on individual needs, applicationsmaking use of the BitShares Blockchain can create environments which have full KYC (Know Your Customer) support throughso called whitelisting which enables a maximum of control ortransparency when so desired.

3.1 Permissions

The BitShares Blockchain designs permissions around accounts,rather than around cryptography, making it easier to use. Everyaccount can be controlled by weighted combination of otheraccounts and/or keys. This creates a hierarchical structure thatreflects how permissions are organized in real life, and makesmulti-user control over funds easier for users. Hence, BitSharesdoes technically not have multi-signature accounts, but hasmulti-account permissions. That said, each public/private keypair is assigned a weight, and a threshold is defined for theauthority (see definition below). In order for a transaction to bevalid, enough entities must sign so that the sum of their weightsmeets or exceeds the threshold.

3.2 Authorities

The BitShares Blockchain employs a first of its kind hierarchicalprivate key system to facilitate regular keys and backup keys.Regular (active) keys are for day-to-day usage, while a separatebackup (owner) key can be used to recover access to an accountin case of loss of the regular keys. Ideally the owner key ismeant to be stored offline, and only used when the account’s keysneed to be changed or to recover a lost key. Most software thatsupports the BitShares Blockchain also facilitates the use of aMaster Password that encrypts the client’s keys locally

3.3 Encrypted Memos

An account on the BitShares Blockchain has a so called memopublic key associated with it that allows for initiating encryptedcommunications between two parties by means of a shared secret obtain via the Elliptic-curve Diffie-Hellman Algorithm.This allows to attach encrypted messages to transfers that onlysender and receiver can decrypt

3.4 Referral Program

Furthermore, the BitShares Blockchain has an integrated one-level referral system. Basically, everyone interacting on the Bit-Shares blockchain needs to deduct a transaction fee. From thatfee (currently) 20% go into the Working Budget (for future fund-ing of development etc.) and the other 80% go into the referralprogram from where, the registrar (who pays the registration feeand assisted the registration process) as well as the referrer (whobrought the user to the registrar) receive a reward. To opt-out ofthe referral program, an account can be upgraded to a so calledLife-Time Member (LTM) which replaces registrar and referrerfor the original user to receive a 80% refund on his fees.

3.5 Fees

Similar to most other Blockchains, interacting with the BitSharesBlockchains comes with a fee for using its features (i.e. oper-ations). Each operation comes with its own fee. However, anyother token that is registered on the BitShares Blockchain, nextto the core native BTS token, can be used as fee, if the governorof the other token chooses to support that.

4. BTS - The Utility Token

The core native token of the BitShares Blockchain, BTS, servesas a utility token and offers governance properties to its holders.Governance describes the progress of governing the Blockchainsmany variable aspects in a way it it can adapt to future changesmore easily.

4.1 Governance

On the BitShares Blockchain, decisions are made by the holdersof BTS core native token weighted by the amount of BTS owned.In order to improve voting participation and simplify the life ofBTS holders, voters can either vote directly or delegate votingpower to so called proxies. This is similar to a representativedemocracy, where selected persons decide the course of action.Those leaders have to account for their actions and can beunelected by the core token holders. Unwanted actions includescensoring, favoring, or simply failure to produce blocks in atimely manner. However, the difference to a democracy is thatvoters in the community have their vote weighted by the amountof BTS that they own in their account.At any time, voters have to decide on the following aspects ofthe BitShares Blockchain.

 

Members for Block Production (Witnesses) Block pro-duction in BitShares is arranged through DPoS which requiresblock producers to run for witness and campaign for sufficientvotes from BTS holders before they can produce blocks on theblockchain and consequently get rewarded per produced block.Given the governance system and quick re-tallying of votes, amisbehaving block producer can be dismissed within hours. Nextto the actual selection of block producers, the voters also have asay over how many block producers should exist.

 

Members for Blockchain Governance (Committee)The Committee comprises a board that has control over a fewblockchain parameters such as block size, block time, witnessreward, and over 30 others. Additionally, the committee canchange the fee schedule which defines the minimum fee for eachoperation offered by the system. Voters can cast a vote for howmany members the committee should constitute as well as votefor a particular set of members.

 

Project Funding (Workers) Last but not least, the votershave control over who receives funding from the Working Budgetof the Blockchain. A worker applies for project funding andneeds to campaign for sufficient votes before being rewarded.Similar to block producers and committee members, the rigorous voting system allows almost immediate removal by BTS holdersand proxies.

4.2 Initial Allocation

The way that BitShares, as it exists today, came into existenceis well documented in the archives of bitsharestalk.org. TheBitShares Blockchain was created on 13th of October 2015by the community and block producers of BitShares 0.9 whodecided to start a new token with a distribution identical to where0.9 had evolved. It was based on code developed with privateresources and given to the world for anyone to use under the MITlicense. The previous BitShares 0.9 Blockchain was abandonedby the community who had the option to continue that chain butdeclined to do so.In the genesis block of the BitShares Blockchain a total of2,412,042,197.37963 BTS have been distributed to individualkeys accordingly. These BTS can still be claimed by provingownership of the corresponding private key.The BTS token comes with a limited supply that is dif-ferent from circulating (liquid) supply. A max supply of3,600,570,502.10207 BTS has been put in place on theblockchain. This can never change. The difference of initialroughly 1.1B was set aside for future project funding and reward-ing block producers, and is only accessible with approval by theBTS holders through the worker system. This so called workingbudget is also often referred to as reserves. It is worth notingthat revenues made from transactions fees are not shared withholders of BTS but instead go back into the working budget tofurther allow future development. There is no reward for holdingthe core BTS token in any way.

4.3 Supply

In this section, we would like to discuss the actual supply ofthe core BTS token in more detail. Firstly, we define the maxsupply as that supply that can at most be in circulation, similar tohow there will only ever be up to 21 million BTC on the BitcoinBlockchain. Furthermore, the circulating supply represents thatamount that currently is in circulation and held by participants onthe Blockchain. Obviously, the circulating supply will always besmaller than or equal to the max supply. Furthermore, for voting,only the circulating supply applies.

4.4 Working Budge

The difference between max supply and circulating supply iscalled the Working Budget and has often in the past been referredto as the reserves. The BitShares Blockchain has a daily budgetto use for development. This budget has a hard-coded upper limitof

Total funds in the working budget/2924.

From this daily budget, block production as well as for projectfunding are made. Of course, the BTS holders have the choiceand need to approve BTS tokens leaving the working budget.

 

Block Production (Witnesses) Block production comes ata cost for running and maintaining equipment. The BitSharesBlockchain acknowledges this fact by rewarding block producersin core BTS tokens per produced block. Depending on thevaluation of BTS, the committee can modify the amount of BTSrewarded per block. As of Q1/2018, each block is rewarded with1 BTS. Those BTS are taken from the working budget.

 

Project Funding (Workers) A certain amount of the dailyavailable tokens can be allocated to make development possibleby means of workers. Anyone can set up a worker on theBitShares Blockchain and ask for a daily allowance in BTS. If theBTS holders approve a particular worker, the BTS are transferredfrom the daily budget. A soft-limit defines the maximum amountof the daily budget that is given to all approved workers. Conse-quently, those workers that have received more votes from BTSholders will receive their funds first. This means that workers,even if approved, may not be funded if the aforementionedthreshold is hit. Furthermore, workers constantly stand under thescrutiny of the BTS holders who can disapprove (i.e. retract theirvote, ’fire’) workers that do not deliver.

4.5 Transaction Fees & Fee Schedule

Additional to block production and project funding which candrain tokens from the working budget, there are transaction feespaid by users of the BitShares Blockchain that go back into theworking budget. As a consequence, the total amount of BTS inthe working budget as well as the total in- and out-flow highlyvaries over time. However, if compared to most proof-of-work-based Blockchains that constantly reward a (more or less) fixedamount of tokens to miners, the BitShares Blockchain has achance to have the working budget grow and consequently thecirculating supply shrink. This is the case if the total transactionsfees outweigh the tokens used for block production and projectfunding.While, the BTS holders have choices to either increase or de-crease the funds used for block production and project fund-ing, the committee has the choice to adapt the transaction feesby means of updating the fee schedule. In contrast to otherBlockchains, the BitShares Blockchain comes with fixed feesinstead of a fee market. The schedule defines which featureof the Blockchain requires which amount of transaction fee forusing it.

4.6 Legality of the BTS token

It is worth noting that the BitShares Blockchain is not a tra-ditional registered entity and has no seat. The core token BTSdoes not imply any ownership rights. The core token merelyserves as a utility for governance, arranging transaction feesand operating other features that are solely implemented on theBitShares Blockchain.