A Taxonomy of Blockchain-Based Systems for Architecture Design

ICSA, pp. 243-252, 2017.

Cited by: 357|Views56
EI
Weibo:
We propose a taxonomy of blockchains and blockchain-based systems

Abstract:

Blockchain is an emerging technology for decentralised and transactional data sharing across a large network of untrusted participants. It enables new forms of distributed software architectures, where agreement on shared states can be established without trusting a central integration point. A major difficulty for architects designing ap...More

Code:

Data:

0
Full Text
Bibtex
Weibo
Introduction
  • Blockchain is the technology behind Bitcoin [16], which is a digital currency based on a peer-to-peer network and cryptographic tools.
  • A blockchain provides a kind of appendonly data store of transactions replicated between peers.
  • The first generation of blockchains, like Bitcoin, provided a public ledger to store cryptographically-signed financial transactions [20].
  • The second generation of blockchains provides a general-purpose programmable infrastructure with a public ledger that records the computational results.
  • Smart contracts can express triggers, conditions and business logic [25] to enable more complex programmable transaction.
  • Ethereum6 is the most widely-used blockchain that supports general-purpose (Turing-complete) smart contracts
Highlights
  • Blockchain is the technology behind Bitcoin [16], which is a digital currency based on a peer-to-peer network and cryptographic tools
  • Many banks are involved in trials of blockchain technology, including through the global R3 consortium1, which is applying blockchain to trade finance and cross-border payments
  • Financial transactions are the first, but not the only use case being investigated for blockchain technology
  • We propose a taxonomy that captures major architecturally-relevant characteristics of various blockchains, and indicate their support for various quality attributes
  • We propose a taxonomy of blockchains and blockchain-based systems
  • Our taxonomy captures the major architectural characteristics of blockchains, and the impact of different decision decisions. This taxonomy is intended to help with important architectural considerations about the performance and quality attributes of blockchainbased systems
Methods
  • Design Taxonomy

    Taxonomies have been used in the software architecture community to understand existing technologies [14], [11].
  • It is intended to help software architects evaluate and compare blockchains, and to enable research into architectural decision-making frameworks for blockchains and blockchain-based systems.
  • The authors' discussion of architectural design issues for blockchainbased systems is structured in four sections below: the level ofcentralisation, support for client storage and computation, blockchain infrastructural configuration, and other issues.
  • Taxonomy can be used during the process of architecting software systems to guid the system design [11].
Results
  • The value 6 of Bitcoin blockchain was chosen based on the assumption that an attacker is unlikely to amass more than 10% of the hashrate, and that a negligible risk of less than 0.1% is acceptable37.
Conclusion
  • Blockchain is an emerging technology for decentralised and transactional data sharing across a large network of participant who do not need to trust each other
  • It enables new forms of distributed software architectures, where components can find agreement on their shared states without trusting a central integration point or any particular participating components.
  • The authors' taxonomy captures the major architectural characteristics of blockchains, and the impact of different decision decisions.
  • This taxonomy is intended to help with important architectural considerations about the performance and quality attributes of blockchainbased systems.
  • Patterns is a mechanism to classify and organise the existing solutions
Summary
  • Introduction:

    Blockchain is the technology behind Bitcoin [16], which is a digital currency based on a peer-to-peer network and cryptographic tools.
  • A blockchain provides a kind of appendonly data store of transactions replicated between peers.
  • The first generation of blockchains, like Bitcoin, provided a public ledger to store cryptographically-signed financial transactions [20].
  • The second generation of blockchains provides a general-purpose programmable infrastructure with a public ledger that records the computational results.
  • Smart contracts can express triggers, conditions and business logic [25] to enable more complex programmable transaction.
  • Ethereum6 is the most widely-used blockchain that supports general-purpose (Turing-complete) smart contracts
  • Methods:

    Design Taxonomy

    Taxonomies have been used in the software architecture community to understand existing technologies [14], [11].
  • It is intended to help software architects evaluate and compare blockchains, and to enable research into architectural decision-making frameworks for blockchains and blockchain-based systems.
  • The authors' discussion of architectural design issues for blockchainbased systems is structured in four sections below: the level ofcentralisation, support for client storage and computation, blockchain infrastructural configuration, and other issues.
  • Taxonomy can be used during the process of architecting software systems to guid the system design [11].
  • Results:

    The value 6 of Bitcoin blockchain was chosen based on the assumption that an attacker is unlikely to amass more than 10% of the hashrate, and that a negligible risk of less than 0.1% is acceptable37.
  • Conclusion:

    Blockchain is an emerging technology for decentralised and transactional data sharing across a large network of participant who do not need to trust each other
  • It enables new forms of distributed software architectures, where components can find agreement on their shared states without trusting a central integration point or any particular participating components.
  • The authors' taxonomy captures the major architectural characteristics of blockchains, and the impact of different decision decisions.
  • This taxonomy is intended to help with important architectural considerations about the performance and quality attributes of blockchainbased systems.
  • Patterns is a mechanism to classify and organise the existing solutions
Tables
  • Table1: Blockchain-related design decisions regarding (de)centralisation, with an indication of their relative impact on quality properties (⊕: Less favourable, ⊕⊕: Neutral, ⊕⊕⊕: More favourable)
  • Table2: Blockchain-related design decisions regarding storage and computation, with an indication of their relative impact on quality properties (⊕: Least favourable, ⊕⊕: Less favourable, ⊕⊕⊕: More favourable, ⊕⊕⊕⊕: Most favourable)
  • Table3: Blockchain-related design decisions regarding blockchain configuration (⊕: Less favourable, ⊕⊕: Neutral, ⊕⊕⊕: More favorable
Download tables as Excel
Reference
  • Distributed ledger technology: beyond blockchain. Technical report, 2016. UK Government Chief Scientific Adviser.
    Google ScholarFindings
  • The future of financial infrastructure - an ambitious look at how blockchain can reshape financial services. Technical report, 2016. WEF report.
    Google ScholarFindings
  • M. Ali, J. Nelson, R. Shea, and M. J. Freedman. Blockstack: A global naming and storage system secured by blockchains. In USENIX ATC, Santa Clara, CA, 2016.
    Google ScholarLocate open access versionFindings
  • A. Back, G. Maxwell, M. Corallo, M. Friedenbach, and L. Dashjr. Enabling blockchain innovations with pegged sidechains. 2014.
    Google ScholarFindings
  • R. G. Brown. The “Unbundling of trust”: How to identify good cryptocurrency opportunities?, 2014.
    Google ScholarFindings
  • V. Buterin. On public and private blockchains, 2015/08.
    Google ScholarFindings
  • C. Decker and R. Wattenhofer. Information propagation in the Bitcoin network. In P2P, Trento, Italy, 2013.
    Google ScholarLocate open access versionFindings
  • I. Eyal, A. E. Gencer, E. G. Sirer, and R. van Renesse. Bitcoin-NG: A scalable blockchain protocol. In USENIX NSDI, Santa Clara, CA, 2016.
    Google ScholarLocate open access versionFindings
  • I. Eyal and E. G. Sirer. Majority is not enough: Bitcoin mining is vulnerable. In FC, Christ Church, Barbados, 2014.
    Google ScholarLocate open access versionFindings
  • A. Gervais, G. O. Karame, K. Wüst, V. Glykantzis, H. Ritzdorf, and S. Čapkun. On the security and performance of proof of work blockchains. In ACM CCS 2016), Vienna, Austria, 2016.
    Google ScholarLocate open access versionFindings
  • I. Gorton, J. Klein, and A. Nurgaliev. Architecture knowledge for evaluating scalable databases. In WICSA, Montréal, Canada, 2015.
    Google ScholarLocate open access versionFindings
  • T. D. Joseph Poon. The Bitcoin lightning network: Scalable off-chain instant payments. 2016.
    Google ScholarFindings
  • Y. Lewenberg, Y. Sompolinsky, and A. Zohar. Inclusive block chain protocols. In FC, San Juan, Puerto Rico, 2015.
    Google ScholarFindings
  • N. R. Mehta, N. Medvidovic, and S. Phadke. Towards a taxonomy of software connectors. In ICSE, 2000.
    Google ScholarLocate open access versionFindings
  • A. Miller, A. Juels, E. Shi, B. Parno, and J. Katz. Permacoin: Repurposing Bitcoin work for data preservation. In IEEE S&P, San Jose, CA, 2014.
    Google ScholarLocate open access versionFindings
  • S. Nakamoto. Bitcoin: A Peer-to-Peer electronic cash system, 2008.
    Google ScholarFindings
  • C. Natoli and V. Gramoli. The blockchain anomaly. In NCA’16. IEEE, Oct 2016.
    Google ScholarLocate open access versionFindings
  • S. Omohundro. Cryptocurrencies, smart contracts, and artificial intelligence. AI Matters, 1(2):19–21, Dec. 2014.
    Google ScholarLocate open access versionFindings
  • Y. Sompolinsky and A. Zohar. Accelerating Bitcoin’s transaction processing - fast money grows on trees, not chains. Cryptology ePrint Archive, Report 2013/881, 2013.
    Google ScholarLocate open access versionFindings
  • M. Swan. Blockchain: Blueprint for a New Economy. O’Reilly, US, 2015.
    Google ScholarFindings
  • T. Swanson. Consensus-as-a-service: a brief report on the emergence of permissioned, distributed ledger systems. 2015.
    Google ScholarFindings
  • F. Tschorsch and B. Scheuermann. Bitcoin and beyond: A technical survey on decentralized digital currencies. IEEE Communications Surveys & Tutorials, 18(3):464, 2016.
    Google ScholarLocate open access versionFindings
  • L. Valenta and B. Rowan. Blindcoin: Blinded, accountable mixes for Bitcoin. In FC, San Juan, Puerto Rico, 2015.
    Google ScholarLocate open access versionFindings
  • M. Vukolić. The quest for scalable blockchain Fabric: Proof-of-Work vs. BFT replication. In iNetSec, Zurich, Switzerland, 2015.
    Google ScholarLocate open access versionFindings
  • I. Weber, X. Xu, R. Riveret, G. Governatori, A. Ponomarev, and J. Mendling. Untrusted business process monitoring and execution using blockchain. In BPM, Rio de Janeiro, Brazil, Sept. 2016.
    Google ScholarLocate open access versionFindings
  • G. Wood. Ethereum: A secure decentralized generalised transaction ledger — homestead draft. Technical report, 2016.
    Google ScholarFindings
  • P. Wuille. Segregated witness and deploying it for Bitcoin, 12 2015.
    Google ScholarLocate open access versionFindings
  • X. Xu, C. Pautasso, L. Zhu, V. Gramoli, A. Ponomarev, A. B. Tran, and S. Chen. The blockchain as a software connector. In WICSA, 2016.
    Google ScholarLocate open access versionFindings
Your rating :
0

 

Tags
Comments