Current blockchains often are designed with one use case in mind, such as currency transfer in Bitcoin or record storage in Namecoin. While application-specific blockchains are powerful tools for fulfilling their niche use cases, there are blockchains like Ethereum that have a set of use cases comprising a superset of the use cases of many blockchains. These generalized blockchains are powerful tools for extending decentralization to new use cases without designing entirely new blockchains. This paper considers tradeoffs in the design and implementation of blockchain systems that intend to deliver general functionality and examines various current and Merged-mining, fragmentation, the network effect, scalability, and generalized blockchain approaches are all considered and put into context. Bitcoin, Ethereum, Cardano, and Rootstock are considered in various aspects of the current limitations, and potential future solutions to problems noted. This paper weighs the chances of success of various generalized blockchain paradigms, including the network effect scalability and potential client-side use. We conclude that the network effect likely favors a Bitcoin/sidechain solution while scalability favors a direct Ethereum solution. The likelihood of success of mainstream adoption of any single decentralized application appears to favor an Ethereum solution.
Blockchain Technology Applications and Security
Physical Unclonable Functions (PUFs) and Hardware Security
Omnia Mahmoud, Henning Kopp, Amr T. Abdel-Hamid, Frank Kargl
Insurances are a way of financial risk mitigation that pay the user in case of damage. However, once the event happens, the user does not get paid immediately due to the large degree of human interaction required. In this paper, we automate insurance payment by using smart contracts. As additional contribution, our design supports integration of IoT devices to register events that trigger insurance contracts and offers additional privacy-protection even on public blockchains. In order to allow users to retrieve their payment from the insurance contract anonymously we remove the linkability and traceability between events that triggers the contract and the insurance holder by applying ring signatures. Using a prototypical implementation based on Ethereum, we study the additional overhead and cost that our design incurs and can show that exploiting latest features of Ethereum, gas cost can be driven down substantially compared to earlier approaches. In sum, we propose, implement, and evaluate a design for smart insurance contracts integrating IoT sensors and including additional privacy protection using ring signatures.
Damiano Di Francesco Maesa, Paolo Mori, Laura Ricci
This paper presents a new design approach for Access Control services leveraging smart contracts provided by blockchain technology. The key idea of our proposal is to codify Access Control policies as executable smart contracts on a blockchain. This transforms the policy evaluation process into completely distributed smart contract executions. In our fully blockchain based approach also the Attribute Managers required for the evaluation of the Access Control policies are managed by the blockchain, i.e., they are implemented as smart contracts as well. To study the feasibility of our proposal we present a working reference implementation using XACML policies and Solidity written smart contracts deployed on Ethereum. Finally we evaluate the advantages and drawbacks of the proposal, making also use of experimental results of our reference implementation.
Growing consumer awareness as well as manufacturers' internal quality requirements lead to novel demands on supply chain traceability. Existing centralized solutions suffer from isolated data storage and lacking trust when multiple parties are involved. Decentralized blockchain-based approaches attempt to overcome these shortcomings by creating digital representations of physical goods to facilitate tracking across multiple entities. However, they currently do not capture the transformation of goods in manufacturing processes. Therefore, the relation between ingredients and product is lost, limiting the ability to trace a product's provenance. We propose a blockchain-based supply chain traceability system using smart contracts. In such contracts, manufacturers define the composition of products in the form of recipes. Each ingredient of the recipe is a non-fungible token that corresponds to a batch of physical goods. When the recipe is applied, its ingredients are consumed and a new token is produced. This mechanism preserves the traceability of product transformations. The system is implemented for the Ethereum Virtual Machine and is applicable to any blockchain configuration that supports it. Our evaluation reveals that the gas costs scale linearly with the number of products considered in the system. This leads to the conclusion that the solution can handle complex use cases.
Mobile peer to peer (P2P) networks offer a huge potential for distributed mobile P2P crowd services (MPCS), which enable data and computational tasks to be offloaded and executed directly between mobile devices. Similar to centralised mobile crowd services, such as mobile crowdsensing, incentivisation mechanisms are core to encouraging mobile users to participate in MPCS systems. However, due to the impact of task execution failures and unreliable behaviours of mobile users (particularly task requesters), it is a daunting task to design and implement an incentivisation mechanism to cater for the needs of MPCS systems. In this paper, we propose a fault-tolerant incentivisation mechanism (FTIM) for MPCS systems. With conditional payment strategies, FTIM is proven to accommodate the requirements of two important application scenarios by achieving mechanism properties such as incentive compatibility, economic efficiency, individual rationality, and weak budget balance. Moreover, to tackle the practical challenges in implementing FTIM in the real world, we design a MPCSTo-ken smart contract to facilitate its service auction, task execution and payment settlement process. We implement the MPCSToken contract on Ethereum blockchain. Both real-world experiment and simulation results show that the system is cost effective for deployments and improves the overall mobile users' utility by exploring the opportunities offered by MPCS.
As blockchain technologies mature and ecosystems over blockchain evolve, peers on blockchain networks often face situations in which they need to conduct voting for decision-making; as happened in the case of the DAO hard fork event on Ethereum. However, a natively built-in voting mechanism is not available on any of the existing blockchain platforms. Thus, the decision making either is delegated to a few network members who make such decisions offline or is dependent on third party online voting services. In both cases, peers directly or indirectly rely on trusted parties or centralized systems. This is against the basic decentralization principle of blockchain and exposes the election to frauds. To facilitate decision-making in a decentralized and secure manner, we propose a native blockchain voting protocol for peers to vote over their existing blockchain network without the need of any trusted or third party. Our protocol preserves end-to-end privacy and possesses desirable properties such as detectability and correctability against cheating. A reference implementation of our protocol on Hyperledger Fabric that demonstrates the validity and practical applicability of our protocol is also provided.
C. Kouzinopoulos, Konstantinos M. Giannoutakis, Konstantinos Votis, Dimitrios Tzovaras · 10 authors
The H2020 European research project Safe-Guarding Home IoT Environments with Personalised Real-time Risk Control (GHOST) aims to develop a cyber-security layer on IoT smart home installations. The proposed system analyses packet-level data flows for building patterns of communications between IoT devices and external entities. To ensure non-repudiation, integrity and authentication of the data captured, they are stored in a Blockchain, a distributed ledger network, as digitally-signed transactions. Since the data can potentially include sensitive user information, it is imperative to promote trust by informing users about the operating principles of the network as well as to request the acceptance of a consent form by them. This paper presents the design and implementation of a Forms of Consent application, a Distributed Application that interacts with a set of Smart Contracts deployed on a private Ethereum network. The application is being developed as part of the GHOST project.
Sara Rouhani, Luke Butterworth, Adam D. Simmons, Darryl G. Humphery · 5 authors
The set of distributed ledger architectures known as blockchain is best known for cryptocurrency applications such as Bitcoin and Ethereum. These permissionless block chains are showing the potential to be disruptive to the financial services industry. Their broader adoption is likely to be limited by the maximum block size, the cost of the Proof of Work consensus mechanism, and the increasing size of any given chain overwhelming most of the participating nodes. These factors have led to many cryptocurrency blockchains to become centralized in the nodes with enough computing power and storage to be a dominant miner and validator. Permissioned chains operate in trusted environments and can, therefore, avoid the computationally expensive consensus mechanisms. Permissioned chains are still susceptible to asset storage demands and non-standard user interfaces that will impede their adoption. This paper describes an approach to addressing these limitations: permissioned blockchain that uses off-chain storage of the data assets and this is accessed through a standard browser and mobile app. The implementation in the Hyperledger framework is described as is an example use of patient-centered health data management.
A review system is a valuable component in E-commerce applications. Existing centralized review systems are prone to review frauds and manipulations. A decentralized, immutable and auditable blockchain system is a natural fit to prevent fraudulent and manipulated reviews. We develop and implement ReviewChain, a decentralized review system using Ethereum smart contract. ReviewChain validates new reviews by querying the identity of purchasers from a supply chain system. We assume that the supply chain system is based on blockchain technology. We develop and implement a mechanism to tie two disparate Ethereum based blockchain networks. Ethereum smart contract code is limited and cannot make external procedure calls. Therefore, we introduce multi-blockchain gateway nodes called notaries. Our proposed smart contracts and notaries allow us to interface two blockchains effectively. We run ReviewChain and discuss how various design parameters impact the system performance.
Blockchain based supply chain systems benefit from immutability and auditability properties. We develop and implement a blockchain based supply chain system in Ethereum platform. We find and address several challenges both in system design and performance issues. We focus on system design for transaction validation, information retrieval efficiency and fault-tolerant query mechanism. We describe our implementation details to bypass some of the limitations in Ethereum and smart contracts. We design a smart contract to efficiently organize miners' local data structure for transaction validation and information retrieval. We design Ethereum smart contract that allows transaction validation based on a priori knowledge of product life cycle. Our system achieves constant time latency per query independent of the blockchain length. We also consider supply chain systems with malicious miners that respond with false data upon query. We develop a sampling query and majority voting method accordingly. We evaluate our system's performance in emulated setting and show that even with 30% malicious miners, we still achieve reasonable accuracy in only 0.0723 seconds response time on average.
In the future, ecosystems for managing travel and all the associated services will be more diverse and innovative. These Mobility-as-a-Service (MaaS) ecosystems will combine services in an unforeseen way to enable fluent travel experiences. However, to succeed, MaaS ecosystems require integrators and enablers. Blockchains can serve as an technology enabler, but to reach their best potential blockchains need to tackle new business needs. MaaS ecosystems form an excellent arena for this. We present a model of a MaaS ecosystem, enabling easy, quick and trusted transactions taking advantage of artificial intelligence and blockchain-enabled smart contracts. We also present a subset demonstration of this model, TravelToken, which utilizes QR code that stores and uses travel information in smart contract over Ethereum. The benefits are that all travel data can be stored in one ticket, information stays unaltered in blockchain, and value-share as well as compensations in case of delays will be automatic.
We design and implement the first private and anonymous decentralized crowdsourcing system ZebraLancer, and overcome two fundamental challenges of decentralizing crowdsourcing, i.e. data leakage and identity breach. First, our outsource-then-prove methodology resolves the tension between blockchain transparency and data confidentiality, which is critical in crowdsourcing use-case. ZebraLancer ensures: (i) a requester will not pay more than what data deserve, according to a policy announced when her task is published via the blockchain; (ii) each worker indeed gets a payment based on the policy, if he submits data to the blockchain; (iii) the above properties are realized not only without a central arbiter, but also without leaking the data to the open blockchain. Furthermore, the transparency of blockchain allows one to infer private information about workers and requesters through their participation history. On the other hand, allowing anonymity will enable a malicious worker to submit multiple times to reap rewards. ZebraLancer overcomes this problem by allowing anonymous requests/submissions without sacrificing the accountability. The idea behind is a subtle linkability: if a worker submits twice to a task, anyone can link the submissions, or else he stays anonymous and unlinkable across tasks. To realize this delicate linkability, we put forward a novel cryptographic concept, i.e. the common-prefix-linkable anonymous authentication. We remark the new anonymous authentication scheme might be of independent interest. Finally, we implement our protocol for a common image annotation task and deploy it in a test net of Ethereum. The experiment results show the applicability of our protocol with the existing real-world blockchain.
Kwame-Lante Wright, Martin Martinez, Uday Chadha, Bhaskar Krishnamachari
Edge computing has emerged as an effective offloading strategy for constrained devices. It enables low-capability devices to leverage nearby resources for assistance with computationally-intensive tasks. We envision a future where Internet of Things (IoT) devices may autonomously transact with other more powerful devices to request such offloading services. We believe blockchain-based technologies can help facilitate this process by tracking usage and managing payments. In this work we introduce SmartEdge, an Ethereum-based smart contract for edge computing and show that it is a low-cost, low-overhead tool for compute-resource management.
Sambit Nayak, Nanjangud C. Narendra, Anshu Shukla, James Kempf
While blockchains and smart contracts are primarily known for their use as the technologies underlying cryptocurrencies like Bitcoin and Ethereum, these technologies also have applicability in other areas. In this paper, we present an application of smart contracts running on a permissioned distributed ledger (essentially a private blockchain where only credentialed participants are allowed to read and write) to managing tenant and service accounts in a cloud computing data center. The system is called Saranyu and it supports four services: identity management, authentication, authorization, and charging. Identity management and authentication are handled using client-generated public/private key pairs in the usual fashion. Authorization is handled as a contract from a grantee of service access rights to a recipient which is a tenant or other service. Charging is supported by Saranyu integration with payment gateways for payments related to service resource usage. We describe an implementation of Saranyu on top of the Quorum blockchain system. We believe the security, non-repudiation, tamper-resistance, and easy transaction history access brought by blockchain technology will increase transparency and trust in cloud tenant and service management and that the fundamentally distributed nature of the blockchain will make Saranyu an excellent match with developing distributed cloud architectures.
DAO attack showed that formal verification of smart contracts is an important issue that should be addressed to prevent irreversible consequences due to design faults activation in Blockchain applications. This paper proposes a modeling method of an Ethereum application based on smart contracts, with the aim of applying a formal method, namely Model-Checking, to verify that the application implementation complies with its specification, formalized by a set of temporal logic propositions. NuSMV tool has been chosen to support this first approach. The proposed model template is shaped by three layers capturing respectively the behavior of Ethereum blockchain, the smart contracts themselves and the execution framework. The approach is illustrated by a case study coming from energy market field.
Mallikarjun Reddy Dorsala, V. N. Sastry, Chapram Sudhakar
Outsourcing a computation has been a major research area in cryptography. A delegatorDoutsources a computation to a workerW, who expects to get paid in return for delivering correct outputs. The delegator has to verify the output returned, to guard against malicious or malfunctioning worker. The worker may not trust the delegator to pay for computations performed by him. Blockchain systems like Bitcoin and Ethereum offer public verifiability of transactions generated in their networks. These transactions are of the form of a set of opcodes in Bitcoins or initiate execution of a contract in Ethereum, thus offering execution of small programs publicly. A fair protocol for verifiable computation between two parties$D$and$W$must provide the following guarantee: (1) Fast verification: The work performed to verify the correctness of output of a function is less than the work performed to compute function. (2) Pay to learn output: W obtains pay from D iff D received the correct output of the computation from W. In this work, we design two ideal functionalities$\mathcal{F}_{CRR}^{\ast}$for single worker case and$\mathcal{F}_{CCRR}^{\ast}$for multiple workers case. Existing methods do not allow Mutual revocation of deposit transaction which reduces the cost of script execution. Our ideal functionalities offer mutual revocation of the deposit transaction made byD. We show the realization of our ideal functionality$\mathcal{F}_{CRR}^{\ast}$in Bitcoin, and we also discuss fair protocols for verifiable computations of GCD of two large numbers and optimization problems. As our final work, we show a fair protocol for proof-based verifiable computing schemes.
Voice over Long Term Evolution (VoLTE) technology defines standards to deliver real-time services such as voice and video over LTE based on IP Multimedia Subsystem (IMS) networks. The security implementation in VoLTE is End-to-Access (e2a), which means that the sessions are only encrypted between the mobile terminals and the IMS network. In this paper we propose a new approach for securing End-to-End (e2e) VoLTE media based the Ethereum Blockchain. The solution consists of creating public and private keypairs for VoLTE user equipments (UEs) and storing the public keys in the Ethereum Blockchain. The media is encrypted e2e using the Secure Real Time Protocol (SRTP) protocol with a variety of session key distribution mechanisms. Results showed that the solution implementation has minimal impact on the existing IMS network, and the secure call setup time between two terminals is negligible compared to the original VoLTE setup time.
In this paper we propose a system that moves the bytecode of an Ethereum contract creation transaction off-chain. As blockchains are append-only we present a way to help reduce the chain size and growth for Ethereum. Contract creation transaction data is replaced with hashes which identify a file in InterPlanetary File System (IPFS). Doing so reduces the size of data stored in such transactions by 93.86% in our dataset. The proposed system retains the assurance provided by blockchain and reduces network traffic under certain conditions.
Jul 1, 2018·2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData)
The idea to digitally facilitate contract law and business practices through computer programs has led to the notion of smart contracts. Today's most prominent smart contract ecosystem is Ethereum, a blockchain based distributed computing platform. Due to the inherent nature of blockchain based contract execution, missing low level programming abstractions, and the constant evolution of platform features and security considerations, writing correct and secure smart contracts for Ethereum is a difficult task. Based on a Multivocal Literature Research and an analysis of the gathered data based on qualitative research methods, we mined a number of design patterns providing design guidelines. We describe those patterns in detail and provide exemplary code for better illustration. Our research shows that the patterns are widely used to address application requirements and common problems. We expect generalizability of some or all of the patterns for other smart contract ecosystems, but this is outside of the scope of this study, which studied only smart contract patterns in Ethereum.
A developing field of interest for the distributed systems and applied cryptography communities is that of smart contracts: self-executing financial instruments that synchronize their state, often through a blockchain. One such smart contract system that has seen widespread practical adoption is Ethereum, which has grown to a market capacity of 100 billion USD and clears an excess of 500,000 daily transactions. Unfortunately, the rise of these technologies has been marred by a series of costly bugs and exploits. Increasingly, the Ethereum community has turned to formal methods and rigorous program analysis tools. This trend holds great promise due to the relative simplicity of smart contracts and bounded-time deterministic execution inherent to the Ethereum Virtual Machine (EVM). Here we present KEVM, an executable formal specification of the EVM's bytecode stack-based language built with the K Framework, designed to serve as a solid foundation for further formal analyses. We empirically evaluate the correctness and performance of KEVM using the official Ethereum test suite. To demonstrate the usability, several extensions of the semantics are presented. and two different-language implementations of the ERC20 Standard Token are verified against the ERC20 specification. These results are encouraging for the executable semantics approach to language prototyping and specification.
Mathis Steichen, Beltran Fiz, Robert Norvill, Wazen M. Shbair · 5 authors
Large files cannot be efficiently stored on blockchains. On one hand side, the blockchain becomes bloated with data that has to be propagated within the blockchain network. On the other hand, since the blockchain is replicated on many nodes, a lot of storage space is required without serving an immediate purpose, especially if the node operator does not need to view every file that is stored on the blockchain. It furthermore leads to an increase in the price of operating blockchain nodes because more data needs to be processed, transferred and stored. IPFS is a file sharing system that can be leveraged to more efficiently store and share large files. It relies on cryptographic hashes that can easily be stored on a blockchain. Nonetheless, IPFS does not permit users to share files with selected parties. This is necessary, if sensitive or personal data needs to be shared. Therefore, this paper presents a modified version of the InterPlanetary Filesystem (IPFS) that leverages Ethereum smart contracts to provide access controlled file sharing. The smart contract is used to maintain the access control list, while the modified IPFS software enforces it. For this, it interacts with the smart contract whenever a file is uploaded, downloaded or transferred. Using an experimental setup, the impact of the access controlled IPFS is analyzed and discussed.
Anamika Chauhan, Om Prakash Malviya, Madhav Verma, Tejinder Singh Mor
Bitcoin has shown great utility around the world with the drastic increase in its value and global consensus method of proof-of-work (POW). Over the years after the revolution in the digital transaction space, we are looking at major scalability issue with old POW consensus method and bitcoin peak limit of processing only 7 transactions per second. With more companies trying to adopt blockchain to modify their existing systems, blockchain working on old consensus methods and with scalability issues can't deliver the optimal solution. Specifically, with new trends like smart contracts and DAPPs, much better performance is needed to support any actual business applications. Such requirements are pushing the new platforms away from old methods of consensus and adoption of off-chain solutions. In this paper, we discuss various scalability issues with the Bitcoin and Ethereum blockchain and recent proposals like the lighting protocol, sharding, super quadratic sharding, DPoS to solve these issues. We also draw the comparison between these proposals on their ability to overcome scalability limits and highlighting major problems in these approaches. In the end, we propose our solution to suffice the scalability issue and conclude with the fact that with better scalability, blockchain has the potential to outrageously support varied domains of the industry.
The rise of fraudulent cases seems to be a nuisance to an organization as they're an investment of money. Various resources also gives the impression to be on someone else, who has false claims. The verification process of these organizations are long and tedious process where the organization would have lost its time and resource on. Blockchain technology was introduced fairly recently in literature, which is the underlying technology behind the very popular cryptocurrency Bitcoin. The blockchain is a decentralized approach, it is secured by design network which was to overcome double spending problem by a central server. The concept of servers is eradicated in this architecture, where the data is distributed across geographically on separate ledgers. Blockchain applications have diversified as MIT Media Labs introduced Blockcerts for certification of academic records. Ethereum is platform for developing these decentralized applications using Blockchain ledgers. Ethereum uses a concept called Merkle trees which is the concept used for verification through hashing. As per the working in the literature; this application would make verification of academic documents simple and quick with the usage of Blockchain clients such as Ethereum and an IPFS hash. In this paper we propose a system that provides a solution that addresses the above mentioned issues.