Blockchain Transaction Processing

Blockchain Transaction Processing

Blockchain Transaction Processing Suyash Gupta, Mohammad Sadoghi Synonyms Overview • Blockchain Data Management In 2008, Satoshi Nakamoto (Satoshi • Blockchain Consensus 2008) came up with the design of an • Cryptocurrency unanticipated technology that revolu- tionized the research in the distributed systems community. Nakamoto pre- sented the design of a peer-to-peer Definitions money exchange process that was shared, yet distributed. Nakamoto A blockchain is a linked-list of im- named his transactional token as Bit- mutable tamper-proof blocks, which coin, and brought forth design of a new is stored at each participating node. paradigm Blockchain. Each block records a set of transac- The key element of any blockchain tions and the associated metadata. system is the existence of an immutable Blockchain transactions act on the tamper-proof block. In its simplest form identical ledger data stored at each a block is an encrypted aggregation of node. Blockchain was first perceived by a set of transactions. The existence of a Satoshi Nakamoto (Satoshi 2008), as a block acts as a guarantee that the trans- peer-to-peer money exchange system. actions have been executed, and verified. Nakamoto referred to the transactional A newly created block is appended tokens exchanged among clients in his to an existing chain of blocks. This system, as Bitcoins. chain of blocks is predominantly a linked list which associates one block with the other. The initial block of any 1 2 Suyash Gupta, Mohammad Sadoghi the Merkle tree, as given the root, it is easy to verify the immutability. The preceding discussion allows us to summarize that a blockchain aims at Fig. 1: Basic Blockchain Representations securely storing a set of transactions. In the succeeding sections, we discuss in detail the transaction processing in a such list is a genesis block (Decker and blockchain system. We also study mech- Wattenhofer 2013). Genesis block is anisms to validate these transactions and a special block that is numbered zero, analyze some blockchain applications and is hard-coded in the blockchain that employ the same. application. Each other block links to some previously existing block. Hence, a blockchain grows by appending new blocks to the existing chain. Key Research Findings A transaction in a blockchain system is identical to any distributed or OLTP Transactions in a blockchain system are transaction (TPP Council 2010) that acts identical to their traditional database on some data. Traditional blockchain counterparts. These transactions are applications (such as Bitcoin) consist issued by the clients to the servers of the of transactions that represent an ex- blockchain system (Nawab 2018). These change of money between two entities transactions act on the data stored on all (or users). Each valid transaction is the participating servers. In its vanilla recorded in a block, which can can con- form, a blockchain transaction could tain multiple transactions, for efficiency. be visualized as a set of read / write Immutability is achieved by leveraging operations performed on each node strong cryptographic properties such of a replicated distributed database. as hashing (Katz and Lindell 2007). To determine an ordering for all the Figure 1 presents the structure of a incoming transactions each blockchain simple blockchain. application employs a consensus (Steen A blockchain is a linked-list in a and Tanenbaum 2017) protocol. true sense, as each block stores the A distributed consensus algo- hash of the previous block in its chain. rithm (Lamport 1998; Gray and Each block also digitally signs its Lamport 2006) allows a system to reach contents by storing the hash of its a common decision, respected by the contents inside the block. These hashes majority of nodes. Recent blockchain provide cryptographic integrity, as any technologies present several strategies adversary intending to modify a block for establishing consensus: Proof- needs to also modify all the previous of-Work (Jakobsson and Juels 1999; blocks in a chain, which makes the Satoshi 2008), Proof-of-Stake (King and attack cryptographically infeasible. A Nadal 2012), Proof-of-Authority (Par- key design strategy is to construct a ity Technologies 2018), Practical Merkle tree (Katz and Lindell 2007) to Byzantine Fault Tolerance (Castro and efficiently store and verify the hashes. Liskov 1999; Cachin 2016) and so on. Thus, each block only stores the root of To quantify the allowed set of nodes Blockchain Transaction Processing 3 Fig. 2: Blockchain Flow: Three main phases in any blockchain application are represented. (a) Client sends a transaction to one of the server, which it disseminates to all the other servers. (b) Servers run the underlying consensus protocol, to determine the block creator. (c) New block is created, and transmitted to each node, which also implies adding to global ledger. that can create a block (or participate Blockchain Topologies in the consensus process), it is also necessary to characterize the topologies A key parameter that renders the design for blockchain systems. of a blockchain application is the cat- egorization of nodes to be part of the application. Recent works (Pilkington Blockchain Execution 2015; Cachin and Vukolic 2017) cat- egorize blockchain systems as either public, private or permissioned and Figure 2 illustrates the three main phases hybrid. Although, the characteristics required by any blockchain application of a public blockchain is clearly stated to create a new block. The client trans- in the community, but there is not a mits a transactional request to one of common consensus on the terminology the servers. This server multicasts the pertaining to the other terms. request to all other servers. We term this We categorize blockchain systems phase as Transaction Dissemination. under four heads: public, private, per- Once, all the servers have a copy of missioned and hybrid. Figure 3 presents client request, they initiate a consensus a pictorial representation of the different protocol. The choice of underlying categories. In these figures nodes that consensus protocol affects the time are not allowed to participate in the complexity and resource consumption. activities pertaining to the network, The winner of the consensus phase, lack connections to any node in the generates the next block, and transmits network. We use different circles to it to all other servers. This transmission demarcate different zones of operation; process is equivalent to adding an entry certain nodes are allowed to lead (or (block) to the global distributed ledger. create the block), and some are al- lowed to participate in the consensus protocol. Public Blockchain systems such as Bitcoin (Satoshi 2008) and 4 Suyash Gupta, Mohammad Sadoghi (a) Public Blockchain. (b) Hybrid Blockchain. (c) Permissioned Blockchain. (d) Private Blockchain. Fig. 3: Topologies for Blockchain Systems. Ethereum (Wood 2015) allow any node Hybrid Blockchain systems attain to participate in the consensus process, a middle ground between the two and any node can generate the next extremes. These systems allow any node valid block. Hence, if all the nodes have to be part of the consensus process, but same resources, then each node has only some designated nodes are allowed equal probability of creating a block1. to form the next block. Cryptocurrency Private Blockchain systems are at the Ripple (Schwartz et al 2014) supports a other end of the spectrum, as they variant of the hybrid model, where some allow only some nodes to be part of the public institutions can act as transaction consensus process, and only a subset validators. Permissioned Blockchain of these nodes can generate the next systems are the restricted variant of pub- block. These systems could be utilized lic blockchain systems. These systems at a banking organization which only enlist few nodes as the members with allows its customers to participate in equal rights, that is each node part of the the consensus, while its employees are system can form a block. These systems only permitted to commit the results by allow us to represent internal working of creating a block. any organization, social media groups and an early stage startup. 1 We are assuming fair and ideal conditions, where each node works independently Blockchain Transaction Processing 5 Blockchain Consensus the network. This theoretical possibility has practical implications as a group of The common denominator for all miners can share resources to generate the blockchain applications is the blocks faster, skewing the decentralized underlying distributed consensus nature of the network. algorithm. Nakamoto suggested Proof- Proof-of-stake (King and Nadal of-work (Satoshi 2008) (henceforth 2012) (henceforth referred at PoS), aims referred as PoW) for achieving con- at preserving the decentralized nature sensus among the participating nodes. of the blockchain network. In PoS PoW requires each node to demonstrate algorithm a node with n% resources gets its ability to solve a non-trivial task. n% time opportunity to create a block. The participating nodes compete among Hence, the underlying principle in PoS themselves to solve a complex puzzle is that the node with higher stake lays (such as computation of a 256-bit SHA claim to generation of the next block. To value). The node which computes the determine a node’s stake, a combination solution gets the opportunity to generate of one or more factors such as wealth, the next block. It also disseminates the resources and so on, could be utilized. block to all the nodes, which marks PoS algorithm requires a set of nodes to as the proof that it performed some act as validators. Any node that wants non-trivial computation. Hence, all to act as a validator needs to lockout its other nodes respect the winner’s ability, resources, as a proof of its stake. and reach the consensus by continuing PoS only permits a validator to create to chain ahead of this block. new blocks. To create a new block, a set In PoW the accessibility to larger of validators participate in the consensus computational resources determines the algorithm.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    14 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us