Blockchain Papers

Follow blockchain research across journals, conferences, and preprint repositories.

639 papersLast indexed Aug 31, 2026
Search papers

Paper index

639 results · page 18 of 27

Clear filters
Aug 2, 2022·arXiv
0 cites
Using Software Product Lines to Create Blockchain Products: Application to Supply Chain Traceability

Nicolas Six, Nicolas Herbaut, Roberto Erick Lopez-Herrejon, Camille Salinesi

In recent years, blockchain has been growing rapidly from a niche technology to a promising solution for many sectors, due to its unique properties that empower the design of innovative applications. Nevertheless, the development of blockchain applications is still a challenge. Due to the technological novelty, only a few developers are familiar with blockchain technologies and smart contracts. Others might face a steep learning curve or difficulties to reuse existing code to build blockchain applications. This study proposes a novel approach to tackle these issues, through software product line engineering. To support the approach, a web platform to configure and generate a blockchain application for on-chain traceability is introduced. First, a feature model has been designed to model core features of the chosen domain, based on the existing literature. Then, a configurator has been implemented to support the feature selection phase. Finally, a generator is able to ingest such configurations to generate on-the-shelf blockchain products. The generalizability of the contribution is validated by reproducing on-chain traceability applications proposed in the literature by using the platform. This work provides the first evidence that the implementation of blockchain applications using software product lines enhances the quality of produced applications and reduces the time to market.

Open access
cs.SE
Original source
Jul 27, 2022·Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
14 cites
Declarative smart contracts

Haoxian Chen, Gerald Whitters, Mohammad Javad Amiri, Yuepeng Wang · 5 authors

This paper presents DeCon, a declarative programming language for implementing smart contracts and specifying contract-level properties. Driven by the observation that smart contract operations and contract-level properties can be naturally expressed as relational constraints, DeCon models each smart contract as a set of relational tables that store transaction records. This relational representation of smart contracts enables convenient specification of contract properties, facilitates run-time monitoring of potential property violations, and brings clarity to contract debugging via data provenance. Specifically, a DeCon program consists of a set of declarative rules and violation query rules over the relational representation, describing the smart contract implementation and contract-level properties, respectively. We have developed a tool that can compile DeCon programs into executable Solidity programs, with instrumentation for run-time property monitoring. Our case studies demonstrate that DeCon can implement realistic smart contracts such as ERC20 and ERC721 digital tokens. Our evaluation results reveal the marginal overhead of DeCon compared to the open-source reference implementation, incurring 14% median gas overhead for execution, and another 16% median gas overhead for run-time verification.

Open access
3 source records
Blockchain Technology Applications and Security
Security and Verification in Computing
Advanced Data Storage Technologies
Original source
Jun 21, 2022·arXiv
0 cites
ProML: A Decentralised Platform for Provenance Management of Machine Learning Software Systems

Nguyen Khoi Tran, Bushra Sabir, M. Ali Babar, Nini Cui · 6 authors

Large-scale Machine Learning (ML) based Software Systems are increasingly developed by distributed teams situated in different trust domains. Insider threats can launch attacks from any domain to compromise ML assets (models and datasets). Therefore, practitioners require information about how and by whom ML assets were developed to assess their quality attributes such as security, safety, and fairness. Unfortunately, it is challenging for ML teams to access and reconstruct such historical information of ML assets (ML provenance) because it is generally fragmented across distributed ML teams and threatened by the same adversaries that attack ML assets. This paper proposes ProML, a decentralised platform that leverages blockchain and smart contracts to empower distributed ML teams to jointly manage a single source of truth about circulated ML assets' provenance without relying on a third party, which is vulnerable to insider threats and presents a single point of failure. We propose a novel architectural approach called Artefact-as-a-State-Machine to leverage blockchain transactions and smart contracts for managing ML provenance information and introduce a user-driven provenance capturing mechanism to integrate existing scripts and tools to ProML without compromising participants' control over their assets and toolchains. We evaluate the performance and overheads of ProML by benchmarking a proof-of-concept system on a global blockchain. Furthermore, we assessed ProML's security against a threat model of a distributed ML workflow.

Open access
cs.SE
Original source
Jun 21, 2022·arXiv (Cornell University)
1 cites
Deep dive into Interledger: Understanding the Interledger ecosystem

Lucian Trestioreanu, Cyril Cassagnes, Radu State

At the technical level, the goal of Interledger is to provide an architecture and a minimal set of protocols to enable interoperability between any value transfer systems. The Interledger protocol is a protocol for inter-blockchain payments which can also accommodate FIAT currencies. To understand how it is possible to achieve this goal, several aspects of the technology require a deeper analysis. For this reason, in our journey to become knowledgeable and active contributors we decided to create our own test-bed on our premises. By doing so, we noticed that some aspects are well documented but we found that others might need more attention and clarification. Despite a large community effort, the task to keep information on a fast evolving software ecosystem up-to-date is tedious and not always the main priority for such a project. The purpose of this tutorial is to guide, through several examples and hands-on activities, community members who want to engage at different levels. The tutorial consolidates all the relevant information from generating a simple payment to ultimately creating a test-bed with the Interledger protocol suite between Ripple and other distributed ledger technologies.

Open access
2 source records
cs.SE
Blockchain Technology Applications and Security
Cloud Computing and Resource Management
Original source
Jun 21, 2022·arXiv (Cornell University)
23 cites
FlashSyn: Flash Loan Attack Synthesis via Counter Example Driven Approximation

Zhiyang Chen, Sidi Mohamed Beillahi, Fan Long

In decentralized finance (DeFi), lenders can offer flash loans to borrowers, i.e., loans that are only valid within a blockchain transaction and must be repaid with fees by the end of that transaction. Unlike normal loans, flash loans allow borrowers to borrow large assets without upfront collaterals deposits. Malicious adversaries use flash loans to gather large assets to exploit vulnerable DeFi protocols. In this paper, we introduce a new framework for automated synthesis of adversarial transactions that exploit DeFi protocols using flash loans. To bypass the complexity of a DeFi protocol, we propose a new technique to approximate the DeFi protocol functional behaviors using numerical methods (polynomial linear regression and nearest-neighbor interpolation). We then construct an optimization query using the approximated functions of the DeFi protocol to find an adversarial attack constituted of a sequence of functions invocations with optimal parameters that gives the maximum profit. To improve the accuracy of the approximation, we propose a novel counterexample driven approximation refinement technique. We implement our framework in a tool named FlashSyn. We evaluate FlashSyn on 16 DeFi protocols that were victims to flash loan attacks and 2 DeFi protocols from Damn Vulnerable DeFi challenges. FlashSyn automatically synthesizes an adversarial attack for 16 of the 18 benchmarks. Among the 16 successful cases, FlashSyn identifies attack vectors yielding higher profits than those employed by historical hackers in 3 cases, and also discovers multiple distinct attack vectors in 10 cases, demonstrating its effectiveness in finding possible flash loan attacks.

Open access
3 source records
cs.PL
cs.SE
Blockchain Technology Applications and Security
Original source
Jun 17, 2022·Empirical Software Engineering
19 cites
What makes Ethereum blockchain transactions be processed fast or slow? An empirical study

Michael Pacheco, Gustavo A. Oliva, Gopi Krishnan Rajbahadur, Ahmed E. Hassan

The Ethereum platform allows developers to implement and deploy applications called Dapps onto the blockchain for public use through the use of smart contracts. To execute code within a smart contract, a paid transaction must be issued towards one of the functions that are exposed in the interface of a contract. However, such a transaction is only processed once one of the miners in the peer-to-peer network selects it, adds it to a block, and appends that block to the blockchain This creates a delay between transaction submission and code execution. It is crucial for Dapp developers to be able to precisely estimate when transactions will be processed, since this allows them to define and provide a certain Quality of Service (QoS) level (e.g., 95% of the transactions processed within 1 minute). However, the impact that different factors have on these times have not yet been studied. Processing time estimation services are used by Dapp developers to achieve predefined QoS. Yet, these services offer minimal insights into what factors impact processing times. Considering the vast amount of data that surrounds the Ethereum blockchain, changes in processing times are hard for Dapp developers to predict, making it difficult to maintain said QoS. In our study, we build random forest models to understand the factors that are associated with transaction processing times. We engineer several features that capture blockchain internal factors, as well as gas pricing behaviors of transaction issuers. By interpreting our models, we conclude that features surrounding gas pricing behaviors are very strongly associated with transaction processing times. Based on our empirical results, we provide Dapp developers with concrete insights that can help them provide and maintain high levels of QoS.

Open access
3 source records
Blockchain Technology Applications and Security
Cloud Computing and Resource Management
Data Stream Mining Techniques
Original source
Jun 17, 2022·ACM Transactions on Software Engineering and Methodology
47 cites
Is My Transaction Done Yet? An Empirical Study of Transaction Processing Times in the Ethereum Blockchain Platform

Michael Pacheco, Gustavo A. Oliva, Gopi Krishnan Rajbahadur, Ahmed E. Hassan

Ethereum is one of the most popular platforms for the development of blockchain-powered applications. These applications are known as ÐApps. When engineering ÐApps, developers need to translate requests captured in the front-end of their application into one or more smart contract transactions. Developers need to pay for these transactions and, the more they pay (i.e., the higher the gas price), the faster the transaction is likely to be processed. Developing cost-effective ÐApps is far from trivial, as developers need to optimize the balance between cost (transaction fees) and user experience (transaction processing times). Online services have been developed to provide transaction issuers (e.g., ÐApp developers) with an estimate of how long transactions will take to be processed given a certain gas price. These estimation services are crucial in the Ethereum domain and several popular wallets such as Metamask rely on them. However, despite their key role, their accuracy has not been empirically investigated so far. In this article, we quantify the transaction processing times in Ethereum, investigate the relationship between processing times and gas prices, and determine the accuracy of state-of-the-practice estimation services. Our results indicate that transactions are processed in a median of 57 seconds and that 90% of the transactions are processed within 8 minutes. We also show that higher gas prices result in faster transaction processing times with diminishing returns. In particular, we observe no practical difference in processing time between expensive and very expensive transactions. With regards to the accuracy of processing time estimation services, we observe that they are equivalent. However, when stratifying transactions by gas prices, we observe that Etherscan’s Gas Tracker is the most accurate estimation service for the very cheap and cheap transactions. EthGasStation’s Gas Price API, in turn, is the most accurate estimation service for regular, expensive, and very expensive transactions. In a post-hoc study, we design a simple linear regression model with only one feature that outperforms the Gas Tracker for very cheap and cheap transactions and that performs as accurately as the EthGasStation model for the remaining categories. Based on our findings, ÐApp developers can make more informed decisions concerning the choice of the gas price of their application-issued transactions.

Open access
3 source records
Blockchain Technology Applications and Security
Cloud Computing and Resource Management
Software Engineering Research
Original source
Jun 1, 2022·arXiv (Cornell University)
1 cites
Formal Analysis of Lending Pools in Decentralized Finance

Massimo Bartoletti, J. Chiang, Tommi Junttila, Alberto Lluch Lafuente · 6 authors

Decentralised Finance (DeFi) applications constitute an entire financial ecosystem deployed on blockchains. Such applications are based on complex protocols and incentive mechanisms whose financial safety is hard to determine. Besides, their adoption is rapidly growing, hence imperilling an increasingly higher amount of assets. Therefore, accurate formalisation and verification of DeFi applications is essential to assess their safety. We have developed a tool for the formal analysis of one of the most widespread DeFi applications: Lending Pools (LP). This was achieved by leveraging an existing formal model for LPs, the Maude verification environment and the MultiVeStA statistical analyser. The tool supports several analyses including reachability analysis, LTL model checking and statistical model checking. In this paper we show how the tool can be used to analyse several parameters of LPs that are fundamental to assess and predict their behaviour. In particular, we use statistical analysis to search for threshold and reward parameters that minimize the risk of unrecoverable loans.

Open access
2 source records
Blockchain Technology Applications and Security
Scientific Computing and Data Management
Peer-to-Peer Network Technologies
Original source
May 25, 2022·2022 IEEE/ACIS 20th International Conference on Software Engineering Research, Management and Applications (SERA)
36 cites
Software Engineering Process and Methodology in Blockchain-Oriented Software Development: A Systematic Study

Md Jobair Hossain Faruk, Santhiya Subramanian, Hossain Shahriar, Maria Valero · 6 authors

Software Engineering is the process of systematic, disciplined, quantifiable approach that has significant impact on large-scale and complex software development. Scores of well-established software process models have long been adopted in the software development life cycle that pour stakeholders towards the completion of final software products development. Within the boundary of advanced technology, various emerging and futuristic technology is evolving that really need the attention of software engineering community whether the conventional software process techniques are capable to inherit the core fundamental into the futuristic software development. In this paper, we study the impact of existing software engineering processes and models including Agile, and DevOps in Blockchain-Oriented Software Engineering. We also examine the essentiality of adopting state-of-art concepts and evolving the current soft-ware engineering process for blockchain-oriented systems. We discuss the insight of software project management practices in BOS development. The findings of this study indicate that utilizing state-of-art techniques in software processes for futur-istic technology would be challenging and promising research is needed extensively towards addressing and improving state-of - the-art software engineering processes and methodology for novel technologies.

Open access
2 source records
cs.SE
Blockchain Technology Applications and Security
Cloud Computing and Resource Management
Original source
May 25, 2022·arXiv (Cornell University)
4 cites
Cloud Computing -- Everything As A Service

Michael Howard

Compute infrastructure hosted by a cloud provider allows an application to scale without limit. The application developer no longer needs to worry about the up-front investment in a server farm provisioned for a worst-case load scenario. However, managing cloud deployments requires a sophisticated framework that can autoscale the infrastructure and guarantee the up-time of running container images. This paper surveys existing research addressing the management and orchestration of cloud deployments as well as the modelling framework to abstract away the low-level details of the host infrastructure. We investigate blockchain distributed ledgers, quantum computing and Internet of Things application stacks to show how they can utilize cloud deployments.

Open access
2 source records
cs.DC
cs.SE
Cloud Computing and Resource Management
Original source
May 17, 2022·arXiv
14 cites
An Empirical Study of Blockchain Repositories in GitHub

Ajoy Das, Gias Uddin, Guenther Ruhe

Blockchain is a distributed ledger technique that guarantees the traceability of transactions. Blockchain is adopted in multiple domains like finance (e.g., cryptocurrency), healthcare, security, and supply chain. In the open-source software (OSS) portal GitHub, we observe a growing adoption of Blockchain-based solutions. Given the rapid emergence of Blockchain-based solutions in our daily life and the evolving cryptocurrency market, it is important to know the status quo, how developers generally interact in those repos, and how much freedom they have in applying code changes. We report an empirical study of 3,664 Blockchain software repositories from GitHub. We divide the Blockchain repositories into two categories: Tool (e.g., SDKs) and Applications (e.g., service/solutions developed using SDKs). The Application category is further divided into two sub-categories: Crypto and Non-Crypto applications. In all Blockchain repository categories, the contribution interactions on commits are the most common interaction type. We found that more organizations contributing to the Blockchain repos than individual users. The median numbers of internal and external users in tools are higher than the application repos. We observed a higher degree of collaboration (e.g., for maintenance efforts) among users in Blockchain tools than those in the application repos. Among the artifacts, issues have a greater number of interactions than commits and pull requests. Related to autonomy we found that less than half of total project contributions are autonomous. Our findings offer implications to Blockchain stakeholders, like developers to stay aware of OSS practices around Blockchain software.

Open access
2 source records
cs.CR
cs.SE
Blockchain Technology Applications and Security
Original source
May 17, 2022·arXiv (Cornell University)
0 cites
Moving Smart Contracts -- A Privacy Preserving Method for Off-Chain Data Trust

Simon Tschirner, Shashank Tripathi, Mathias Roeper, Markus M. Becker · 5 authors

Blockchains provide environments where parties can interact transparently and securely peer-to-peer without needing a trusted third party. Parties can trust the integrity and correctness of transactions and the verifiable execution of binary code on the blockchain (smart contracts) inside the system. Including information from outside of the blockchain remains challenging. A challenge is data privacy. In a public system, shared data becomes public and, coming from a single source, often lacks credibility. A private system gives the parties control over their data and sources but trades in positive aspects as transparency. Often, not the data itself is the most critical information but the result of a computation performed on it. An example is research data certification. To keep data private but still prove data provenance, researchers can store a hash value of that data on the blockchain. This hash value is either calculated locally on private data without the chance for validation or is calculated on the blockchain, meaning that data must be published and stored on the blockchain -- a problem of the overall data amount stored on and distributed with the ledger. A system we called moving smart contracts bypasses this problem: Data remain local, but trusted nodes can access them and execute trusted smart contract code stored on the blockchain. This method avoids the system-wide distribution of research data and makes it accessible and verifiable with trusted software.

Open access
2 source records
cs.CR
cs.DC
cs.MA
Original source
May 17, 2022·2022 IEEE 46th Annual Computers, Software, and Applications Conference (COMPSAC)
20 cites
Self-Sovereign Identity as a Service: Architecture in Practice

Yepeng Ding, Hiroyuki Sato

Self-sovereign identity (SSI) has gained a large amount of interest. It enables physical entities to retain ownership and control of their digital identities, which naturally forms a conceptual decentralized architecture. With the support of the distributed ledger technology (DLT), it is possible to implement this conceptual decentralized architecture in practice and further bring technical advantages such as privacy protection, security enhancement, high availability. However, developing such a relatively new identity model has high costs and risks with uncertainty. To facilitate the use of the DLT-based SSI in practice, we formulate Self-Sovereign Identity as a Service (SSIaaS), a concept that enables a system, especially a system cluster, to readily adopt SSI as its identity model for identification, authentication, and authorization. We propose a practical architecture by elaborating the service concept, SSI, and DLT to implement SSIaaS platforms and SSI services. Besides, we present an architecture for constructing and customizing SSI services with a set of architectural patterns and provide corresponding evaluations. Furthermore, we demonstrate the feasibility of our proposed architecture in practice with Selfid, an SSIaaS platform based on our proposed architecture.

Open access
3 source records
cs.SE
Blockchain Technology Applications and Security
Peer-to-Peer Network Technologies
Original source
May 10, 2022·IEICE Transactions on Communications
12 cites
Operations Smart Contract to Realize Decentralized System Operations Workflow for Consortium Blockchain

Tatsuya Sato, Taku Shimosawa, Yosuke Himura

Enterprises have paid attention to consortium blockchains like Hyperledger Fabric, which is one of the most promising platforms, for efficient decentralized transactions without depending on any particular organization. A consortium blockchain-based system will be typically built across multiple organizations. In such blockchain-based systems, system operations across multiple organizations in a decentralized manner are essential to maintain the value of introducing consortium blockchains. Decentralized system operations have recently been becoming realistic with the evolution of consortium blockchains. For instance, the release of Hyperledger Fabric v2.x, in which individual operational tasks for a blockchain network, such as command execution of configuration change of channels (Fabric's sub-networks) and upgrade of chaincodes (Fabric's smart contracts), can be partially executed in a decentralized manner. However, the operations workflows also include the preceding procedure of pre-sharing, coordinating, and pre-agreeing the operational information (e.g., configuration parameters) among organizations, after which operation executions can be conducted, and this preceding procedure relies on costly manual tasks. To realize efficient decentralized operations workflows for consortium blockchain-based systems in general, we propose a decentralized inter-organizational operations method that we call Operations Smart Contract (OpsSC), which defines an operations workflow as a smart contract. Furthermore, we design and implement OpsSC for blockchain network operations with Hyperledger Fabric v2.x. This paper presents OpsSC for operating channels and chaincodes, which are essential for managing the blockchain networks, through clarifying detailed workflows of those operations. A cost evaluation based on an estimation model shows that the total operational cost for executing a typical operational scenario to add an organization to a blockchain network having ten organizations could be reduced by 54 percent compared with a conventional script-based method. The implementation of OpsSC has been open-sourced and registered as one of Hyperledger Labs projects, which hosts experimental projects approved by Hyperledger.

Open access
2 source records
Blockchain Technology Applications and Security
Cloud Computing and Resource Management
IoT and Edge/Fog Computing
Original source
May 6, 2022·arXiv (Cornell University)
4 cites
From Trade-only to Zero-Value NFTs: The Asset Proxy NFT Paradigm in Web3

Denis Avrilionis, Thomas Hardjono

Many implementations of smart contracts available in NFT marketplaces today allow the modification of NFT token attributes, without any specific mechanism to control the consistency with off-chain metadata. We believe this is a weakness in overall design of NFTs today. We propose a computation model called the Asset Proxy NFT that guarantees the consistency between the NFT token (on-chain) and its corresponding asset metadata (off-chain). In general, the proposed model can be applied to any type of NFT that requires immutability or controlled mutability of metadata. A second contribution of this paper is the notion of the NFT design patterns which recognizes that a coherent framework for dealing with hybrid assets is required, and that for specific hybrid-asset deployments, suitable technological components must be utilized under the framework.

Open access
2 source records
Digital Rights Management and Security
Auction Theory and Applications
Private Equity and Venture Capital
Original source
Apr 27, 2022·arXiv
0 cites
Release as a Contract: A Concept of Meta-Maintenance for the Entire FLOSS Ecosystem

Hideaki Hata

We advocate for a paradigm shift in supporting free/libre and open source software (FLOSS) ecosystem maintenance, from focusing on individual projects to monitoring a whole organic system of the entire FLOSS ecosystem, which we call software meta-maintenance. We discuss challenges of building a global source code management system, a global issue management system, and FLOSS human capital index, based on the blockchain technologies.

Open access
cs.SE
Original source
Apr 24, 2022·arXiv (Cornell University)
4 cites
Exploring Security Practices of Smart Contract Developers

Tanusree Sharma, Zhixuan Zhou, Andrew Miller, Yan Wang

Smart contracts are self-executing programs that run on blockchains (e.g., Ethereum). 680 million US dollars worth of digital assets controlled by smart contracts have been hacked or stolen due to various security vulnerabilities in 2021. Although security is a fundamental concern for smart contracts, it is unclear how smart contract developers approach security. To help fill this research gap, we conducted an exploratory qualitative study consisting of a semi-structured interview and a code review task with 29 smart contract developers with diverse backgrounds, including 10 early stage (less than one year of experience) and 19 experienced (2-5 years of experience) smart contract developers. Our findings show a wide range of smart contract security perceptions and practices including various tools and resources they used. Our early-stage developer participants had a much lower success rate (15%) of identifying security vulnerabilities in the code review task than their experienced counterparts (55%). Our hierarchical task analysis of their code reviews implies that just by accessing standard documentation, reference implementations and security tools is not sufficient. Many developers checked those materials or used a security tool but still failed to identify the security issues. In addition, several participants pointed out shortcomings of current smart contract security tooling such as its usability. We discuss how future education and tools could better support developers in ensuring smart contract security.

Open access
2 source records
Blockchain Technology Applications and Security
Advanced Malware Detection Techniques
Cloud Data Security Solutions
Original source
Apr 18, 2022·arXiv
0 cites
Zero-Shot Program Representation Learning

Nan Cui, Yuze Jiang, Xiaodong Gu, Beijun Shen

Learning program representations has been the core prerequisite of code intelligent tasks such as code search and code clone detection. The state-of-the-art pre-trained models such as CodeBERT require the availability of large-scale code corpora. However, gathering training samples can be costly and infeasible for domain-specific languages such as Solidity for smart contracts. In this paper, we propose Zecoler, a zero-shot learning approach for code representations. Zecoler is built upon a pre-trained programming language model. In order to elicit knowledge from the pre-trained models efficiently, Zecoler casts the downstream tasks to the same form of pre-training tasks by inserting trainable prompts into the original input. Then, it employs the prompt learning technique which optimizes the pre-trained model by merely adjusting the original input. This enables the representation model to efficiently fit the scarce task-oriented data while reusing pre-trained knowledge. We evaluate Zecoler in three code intelligent tasks in two program languages that have no training samples, namely, Solidity and Go, with model trained in corpora of common languages such as Java. Experimental results show that our approach significantly outperforms baseline models in both zero-shot and few-shot settings.

Open access
cs.SE
Original source
Mar 29, 2022·arXiv
0 cites
Constructing Effective Customer Feedback Systems -- A Design Science Study Leveraging Blockchain Technology

Mark C. Ballandies, Valentin Holzwarth, Barry Sunderland, Evangelos Pournaras · 5 authors

Organizations have to adjust to changes in the ecosystem, and customer feedback systems (CFS) provide important information to adapt products and services to changing customer preferences. However, current systems are limited to single-dimensional rating scales and are subject to self-selection biases. This work contributes design principles for CFS and implements a CFS that advances current systems by means of contextualized feedback according to specific organizational objectives. We apply Design Science Research (DSR) methodology and report on a longitudinal DSR journey considering multiple stakeholder values by utilizing value-sensitive design methods. We conducted expert interviews, design workshops, demonstrations, and a four-day experiment in an organizational setup, involving 132 customers of a major Swiss library. In the process, we validated the identified design principles and the implemented software artifact both qualitatively and quantitatively and drew conclusions for their efficient instantiation. In particular, we found that i) blockchain technology can afford three design principles of effective CFS. Also, ii) combining DSR with value-sensitive design methods explicitly provides rationale for design principles in the form of identified important values. Moreover, iii) utilizing this methodology makes the construction of software artifacts more efficient it terms of design time by restricting the design space of a software artefact to those options that align with stakeholder values. Hence, the findings of this work advance the knowledge on the design of CFS and provides both, for researchers a theoretical contribution to reason about design principles and a guideline to managers and decision makers for designing software artefacts efficiently.

Open access
cs.SE
cs.CY
Original source
Mar 28, 2022·arXiv (Cornell University)
3 cites
A Fly in the Ointment: An Empirical Study on the Characteristics of Ethereum Smart Contracts Code Weaknesses and Vulnerabilities

Majd Soud, Grischa Liebel, Mohammad Hamdaqa

Context: Smart contracts are computer programs that are automatically executed on the blockchain. Vulnerabilities in their implementation have led to severe loss of cryptocurrency. Smart contracts become immutable when deployed to the Ethereum blockchain. Therefore, it is essential to understand the nature of vulnerabilities in Ethereum smart contracts to prevent them in the future. Existing classifications exist, but are limited in several ways. Objective: We aim to characterize vulnerabilities in Ethereum smart contracts written in Solidity, and unify existing classifications schemes. Method: We extracted 2143 vulnerabilities from public coding platforms and popular vulnerability databases and categorized them using a card sorting approach. We targeted the Ethereum blockchain in this paper, as it is the first and most popular blockchain to support the deployment of smart contracts, and Solidity as the most widely used language to implement smart contracts. We devised a classification scheme of smart contract vulnerabilities according to their error source and impact. Afterwards, we mapped existing classification schemes to our classification. Results: The resulting classification consists of 11 categories describing the error source of a vulnerability and 13 categories describing potential impacts. Our findings show that the language specific coding and the structural data flow categories are the dominant categories, but that the frequency of occurrence differs substantially between the data sources. Conclusions: Our findings enable researchers to better understand smart contract vulnerabilities by defining various dimensions of the problem and supporting our classification with mappings with literature-based classifications and frequency distributions of the defined categories.

Open access
2 source records
Blockchain Technology Applications and Security
Advanced Malware Detection Techniques
Cryptography and Data Security
Original source
Mar 20, 2022·Journal of Network and Computer Applications
21 cites
A Framework for Automating Deployment and Evaluation of Blockchain Network

Nguyen Khoi Tran, Muhammad Ali Babar, Andrew J. Walters

Blockchain network deployment and evaluation have become prevalent due to the demand for private blockchains by enterprises, governments, and edge computing systems. Whilst a blockchain network's deployment and evaluation are driven by its architecture, practitioners still need to learn and carry out many repetitive and error-prone activities to transform architecture into an operational blockchain network and evaluate it. Greater efficiency could be gained if practitioners focus solely on the architecture design, a valuable and hard-to-automate activity, and leave the implementation steps to an automation framework. This paper proposes an automation framework called NVAL (Network Deployment and Evaluation Framework), which can deploy and evaluate blockchain networks based on their architecture specifications. The key idea of NVAL is reusing and combining the existing automation scripts and utilities of various blockchain types to deploy and evaluate incoming blockchain network architectures. We propose a novel meta-model to capture blockchain network architectures as computer-readable artefacts and employ a state-space search approach to plan and conduct their deployment and evaluation. An evaluative case study shows that NVAL successfully combines seven deployment and evaluation procedures to deploy 65 networks with 12 different architectures and generate 295 evaluation datasets whilst incurring a negligible processing time overhead.

Open access
2 source records
cs.SE
Blockchain Technology Applications and Security
IoT and Edge/Fog Computing
Original source
Mar 1, 2022·arXiv
9 cites
A Pattern Language for Blockchain Governance

Yue Liu, Qinghua Lu, Guangsheng Yu, Hye-Young Paik · 6 authors

Blockchain technology has been used to build next-generation applications taking advantage of its decentralised nature. Nevertheless, there are some serious concerns about the trustworthiness of blockchain due to the vulnerabilities in on-chain algorithmic mechanisms, and tedious disputes and debates in off-chain communities. Accordingly, blockchain governance has received great attention for improving the trustworthiness of all decisions that direct a blockchain platform. However, there is a lack of systematic knowledge to guide practitioners to perform blockchain governance. We have performed a systematic literature review to understand the state-of-the-art of blockchain governance. We identify the lifecycle stages of a blockchain platform, and present 14 architectural patterns for blockchain governance in this study. This pattern language can provide guidance for the effective use of patterns for blockchain governance in practice, and support the architecture design of governance-driven blockchain systems.

Open access
2 source records
cs.CR
cs.SE
Blockchain Technology Applications and Security
Original source
Mar 1, 2022·2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)
8 cites
Blockchain-Oriented Software Variant Forks: A Preliminary Study

Henrique Rocha, John Businge

In collaborative social development platforms such as GitHub, forking a repository is a common activity. A variant fork wants to split the development from the original repository and grow towards a different direction. In this preliminary exploratory research, we analyze the possible reasons for creating a variant fork in blockchain-oriented software. By collecting repositories in GitHub, we created a dataset with repositories and their variants, from which we manually analyzed 86 variants. Based on the variants we studied, the main reason to create a variant in blockchain-oriented software is to support a different blockchain platform (65%).

Open access
2 source records
cs.SE
Blockchain Technology Applications and Security
IoT and Edge/Fog Computing
Original source
Mar 1, 2022·arXiv (Cornell University)
0 cites
Mining Domain Models in Ethereum DApps using Code Cloning

Noama Fatima Samreen, Manar H. Alalfi

This research study explores the use of near-miss clone detection to support the characterization of domain models of smart contracts for each of the popular domains in which smart contracts are being rapidly adopted. In this paper, we leverage the code clone detection techniques to detect similarities in functions of the smart contracts deployed onto the Ethereum blockchain network. We analyze the clusters of code clones and the semantics of the code fragments in the clusters in an attempt to categorize them and discover the structural models of the patterns in code clones.

Open access
2 source records
Digital Rights Management and Security
Blockchain Technology Applications and Security
Open Source Software Innovations
Original source