Blockchain is a disruptive technology intended to implement secure decentralised distributed systems, in which transactional data can be shared, stored and verified by participants of the system without needing a central authentication/verification authority. Blockchain-based systems have several architectural components and variants, which architects can leverage to build secure software systems. However, there is a lack of studies to assist architects in making architecture design and configuration decisions for blockchain-based systems. This knowledge gap may increase the chance of making unsuitable design decisions and producing configurations prone to potential security risks. To address this limitation, we report our comprehensive systematic literature review to derive a taxonomy of commonly used architecture design decisions in blockchain-based systems. We map each of these decisions to potential security attacks and their posed threats. The Microsoft STRIDE threat modelling approach is used to systematically classify threats and their associated attacks to identify potential threats in blockchain-based systems. Our mapping approach aims to guide architects to make justifiable design decisions that will result in more secure implementations.
|Number of pages||45|
|Journal||ACM Transactions on Software Engineering and Methodology|
|Publication status||Published - 1 Apr 2022|
- security hreat classification,
- architecture decision
- design decisions