3 research outputs found

    Storing IOT Data Securely in a Private Ethereum Blockchain

    Full text link
    Internet of Things (IoT) is a set of technologies that enable network-connected devices to perform an action or share data among several connected devices or to a shared database. The actions can be anything from switching on an Air Conditioning device remotely to turning on the ignition of a car through a command issued from a remote location or asking Alexa or Google Assistant to search for weather conditions in an area. IoT has proved to be game-changing for many industries such as Supply Chain, Shipping and Transportation providing updates on the status of shipments in real time. This has resulted in a huge amount of data created by a lot of these devices all of which need to be processed in real time. In this thesis, we propose a method to collect sensor data from IoT devices and use blockchain to store and retrieve the collected data in a secure and decentralized fashion within a closed system, suitable for a single enterprise or a group of companies in industries like shipping where sharing data with each other is required. Much like blockchain, we envision a future where IoT devices can connect and disconnect to distributed systems without causing downtime for the data collection or storage or relying on a cloud-based storage system for synchronizing data between devices. We also look at how the performance of some of these distributed systems like Inter Planetary File System (IPFS) and Ethereum Swarm compare on low-powered devices like the raspberry pi

    Benchmarking and evaluation of blockchain systems and applications

    Get PDF
    Ph. D. ThesisIn the past ten years, we have witnessed the evolution of cryptocurrencies. With market capitalizations of 189bnand189bn and 19bn respectively in September 2019, Bitcoin and Ethereum are the world’s most successful cryptocurrencies. Blockchain, which is a public ledger that is immutable, is the main innovation behind these cryptocurrencies. In Bitcoin, the blockchain is introduced to exchange and trade a single asset, whereas in Ethereum it is used to store and execute a smart contract with a Turing Complete Machine. Ethereum’s Gas mechanism, which charges the execution of each operation code, ensures the termination of smart contracts that run in the EVM (Ethereum Virtual Machine) and to compensate the computational usage. Thus, the gas awarded should be proportional to the required computational, to ensure aligned incentives and to avoid denial of services attacks. Currently, in Ethereum, gas awarded is set statically for each opcode in the smart contract, but it is unknown whether these values are correct for various computer architectures. Therefore, in this thesis, firstly, we propose a benchmark approach to measure the CPU times required to deploy and execute real smart contracts obtained from the Ethereum blockchain and compare it with the gas award in the PyEthApp client running over a single machine. The result of our benchmark study shows the collected Gas is not always proportional to the invested CPU for both deploying and executing smart contracts. Secondly, we focus more in-depth on the operational codes (opcodes) and conduct a benchmark study to investigate whether the Gas cost set by Ethereum for each opcode is aligned with the CPU usage. The experiments are conducted on three Ethereum clients running over different hardware platforms and operating systems. The results show that the Gas cost is not always proportional to CPU usage. Finally, we implement and analyze the performance of blockchain and smart contract technologies in different domains, in particular cloud computing and distributed database management systems. In cloud computing, we create the first smart contract implementation that achieves both verifiability and cost-efficiency using any two client providers. For distributed database management systems, we implement the first smart contract-based two-phase commit protocol in Ethereum’s blockchain. For both systems, we investigate the cost, the performance and trade-offs in the blockchain. We tested the implementations of these systems on Ethereum’s official, test and private networks. We also provide a financial and computational analysis of their costs

    Models and simulation of blockchain systems

    Get PDF
    Ph. D. ThesisIn the literature, there are a variety of proposed blockchain systems (e.g., Bitcoin and Ethereum), each of which with its own design decisions. Both in the design and the deployment of blockchain systems, many configuration choices and design decisions need to be made. Investigating different implementation and design choices is neither feasible nor practical on real blockchain systems. Simulation models emerge as an excellent technique to study blockchains without either implementing a new system or interrupting an existing one. Despite some attempts in the literature to utilise simulation models to evaluate specific aspects of blockchain systems, there is a lack of a general-purpose, flexible, extensible and widely usable simulation tool for blockchains. In this thesis, we contribute to the field of blockchain analysis by proposing BlockSim as a generic framework to build discrete-event dynamic system models for blockchain systems. BlockSim aims to provide flexible and extensible simulation constructs to study a variety of blockchains and a set of design and deployment questions. BlockSim is implemented as a publicly available simulation tool and thoroughly validated against reallife systems and measurement studies. Another contribution of this thesis is an extensive analysis to estimate the distributions for Ethereum smart contract using data for over 300,000 real transactions. To run realistic simulation studies, we integrate these distributions into the simulator to generate representative transactions. Furthermore, this thesis offers two extensive data-driven simulation studies related to Ethereum smart contracts that demonstrate the applicability and usefulness of BlockSim. The first study is the analysis of the Ethereum Verifier’s Dilemma and the proposal of two approaches (parallelisation and active insertion of invalid blocks) to mitigate its implications. The second study is the analysis of the uncertainty that miners face about the fee and cost of transactions and its impact on the received profits.Ministry of Education and Taibah Universit
    corecore